CT60A5531 Software Project Management - Monimuoto-opetus 8.1.2024-19.4.2024
The Software Project Management course introduces the fundamentals of project management, beginning with project definition through the post-project review. There will be an emphasis placed on applying project management concepts and techniques to software development projects. The following topics will be covered in the course:
Introduction to Software Project Management
Project Methodologies and Processes
Measurable Organizational Value and the Business Case
Project Managers, Teams, and Stakeholders
Project Scope, Structure, and Scheduling
Project Infrastructure, Resources, and Costs
Managing Project Quality
Managing Project Risks
Project Execution, Completion, and Control
- Responsible teacher: Micheal Tuape
- Teacher: Anastasiia Gurzhii
CT60A5531 Software Project Management - Blended teaching, Lahti 8.1.2024-19.4.2024
The Software Project Management course introduces the fundamentals of project management, beginning with project definition through the post-project review. There will be an emphasis placed on applying project management concepts and techniques to software development projects. The following topics will be covered in the course:
Introduction to Software Project Management
Project Methodologies and Processes
Measurable Organizational Value and the Business Case
Project Managers, Teams, and Stakeholders
Project Scope, Structure, and Scheduling
Project Infrastructure, Resources, and Costs
Managing Project Quality
Managing Project Risks
Project Execution, Completion, and Control
- Responsible teacher: Andrey Saltan
- Teacher: Wardah Awan
- Teacher: David Vigh
- Teacher: David Vigh
CT60A5521 Ohjelmistojärjestelmien tietoturva - Blended teaching, in English 8.1.2024-19.4.2024
Tietoturvan peruskäsitteet ja sisältö. Uhat ja uhkaajat. Tavallisimmat hyökkäys- ja suojausmenetelmät. Tietoturvan merkitys ja lähtökohdat. Tietoturvapolitiikka. Tietoturva ohjelmistotekniikan näkökulmasta.
- Responsible teacher: Syed Naqvi
- Teacher: Daria Levaniuk
CT60A5511 Software Quality Management - Online teaching, in English in Lahti 4.9.2023-30.7.2024
Laadunhallinnan mallit, menetelmät ja mittarit. Testauksen ja laadunhallinan työkalut ja tavallisimmat dokumentit. Laadunhallinta organisaation toimintana, toiminnan kehittäminen. Laatuun liittyvät standardit ja sertifikaatit, laadunhallinta ja -valvonta käytännössä.
- Responsible teacher: Azeem Akbar
- Teacher: Muhammad Zohaib
CT60A5500 Quality Assurance in Software Development - Online teaching 4.9.2023-15.12.2023
Software quality in software development. Four dimensions of quality (specification, design, development, conformance). Quality management processes. Quality in software construction. Software validation and the role of software verification in SQA. Quality tools. Quality measurement and metrics. Software QA standards. SQA in practise and SQA for small projects.
- Responsible teacher: Azeem Akbar
- Teacher: Muhammad Hamza
- Teacher: Muhammad Zohaib
CT60A5401 Game Development Project - Itsenäinen projekti verkossa 1.8.2023-30.7.2024
Applied software engineering course. The objective for this course is for students to learn how to use their software engineering knowledge in an entertainment software engineering context. With the selected game development tools, student is capable to independently design and develop a small game program on some modern game engine platform, or work as a part of a team developing a larger game product. List of Topics: lectures and project works:- Games as software products- Basics of processes and models applied in the entertainment software industry- Basics of the game development tools- Introduction to game engines and their functions - Basics of 3D objects- Introduction to game development-related programming problem.- Basics of artificial intelligence in entertainment software engineering context.- Basics of sound engineering-Gamification and Serious games
-Basic principles of AR and VR development
- Responsible teacher: Jussi Kasurinen
- Teacher: Mahyar Mohammadi
- Teacher: Emma Pakarinen
- Teacher: Micheal Tuape
- Teacher: Micheal Tuape
- Teacher: Micheal Tuape
CT60A5103 Software Engineering Models and Modeling - Monimuoto-opetus 4.9.2023-15.12.2023
Modeling in Software Engineering Body of Knowledge (SWEBOK). Principles and foundations of software engineering. Prototyping techniques. Object-oriented modeling. Data-centric models. Model-driven architecture (MDA). Modeling techniques. Importance of modeling in software development projects and processes.
- Responsible teacher: Antti Knutas
- Teacher: Roshan Devullapalli
- Teacher: Roshan Devullapalli
- Teacher: Md Hasan
CT60A4800 Fundamentals of smart systems - Lähiopetus (Lahti) 4.9.2023-15.12.2023
The aim of Fundamentals of Smart Systems is to introduce the broad spectrum of smart and intelligent systems, especially from a software engineering aspect. This includes mostly non-physical systems such as conversational agents, robotic process automation, prediction, and detection systems but also basics on how cyber-physical systems work and rely on data and sensors. Therefore, this course mostly uncovers the software side of smart systems, as software is crucial to make the systems "smart", by combining and analyzing data, for example from sensors.
- Responsible teacher: Dominik Siemon
CT60A4700 Advanced networks - Monimuoto-opetus (Lahti) 30.10.2023-15.12.2023
Introduction to Computer Networks
Client/Server Model
Basic Network Concepts and Java I/O
OSI vs TCP/IP layer model
IP, TCP and UDP
IP Addresses, Domain Names and Ports
Internet, Firewalls and Proxy Servers
Streams
Basic Web Concepts and Network Programming
Internet Addresses
Uniform Resource Identifier (URI)
Uniform Resource Locator (URL)
Hypertext Transfer Protocol (HTTP)
URLConnections
Sockets for Clients
Sockets for Servers
The UDP Protocol
- Responsible teacher: Prabhat Kumar
- Teacher: Muhammad Hamza
CT60A4304 Basics of database systems - Monimuoto-opetus, Lahti 8.1.2024-23.2.2024
Database systems. Database design. Object-centric modeling and ER-modeling. Specifying relational models. SQL and object languages.
Perspectives into database design: How database is designed, how data is modeled, and what are data storage structures and access methods.
Transforming ER models to relational models, and then to relational databases. Basics to database programming: queries and other operations, database management, such as triggers. Implementing databases in practice and how to use SQL databases from other programs.
- Responsible teacher: Iflaah Salman
- Responsible teacher: Marianne Seppänen
CT60A4304 Basics of database systems - Monimuoto-opetus 8.1.2024-23.2.2024
Database systems. Database design. Object-centric modeling and ER-modeling. Specifying relational models. SQL and object languages.
Perspectives into database design: How database is designed, how data is modeled, and what are data storage structures and access methods.
Transforming ER models to relational models, and then to relational databases. Basics to database programming: queries and other operations, database management, such as triggers. Implementing databases in practice and how to use SQL databases from other programs.
- Responsible teacher: Jiri Musto
CT60A4160 Ohjelmistotestauksen periaatteet - Monimuoto-opetus (Lappeenranta) 4.9.2023-20.10.2023
Ohjelmistotestauksen tekniikat, tasot, automatisointi, työkalut, toimiminen testaustiimissä testaajana.
- Responsible teacher: Erno Vanhala
- Teacher: Lauri Pyykkö
- Teacher: Lauri Pyykkö
- Teacher: Eero Suomalainen
- Teacher: Eero Suomalainen
CT60A4160 Fundamentals of Software Testing - Blended teaching (in English, Lahti) 4.9.2023-20.10.2023
Ohjelmistotestauksen tekniikat, tasot, automatisointi, työkalut, toimiminen testaustiimissä testaajana.
- Responsible teacher: Azeem Akbar
- Teacher: Savita Kaushal
CT60A4002 Software Engineering - Blended teaching (in English, Lahti) 4.9.2023-15.12.2023
Johdanto, ohjelmistontuotannon rooli erilaisten organisaatioiden toiminnassa, ohjelmistotuotantoprosessi, vaatimusmäärittely, mallinnus, UML, arkkitehtuurit, prosessin kehittäminen, projektinhallinta, GDPR, etiikka.
- Responsible teacher: Andrey Saltan
- Teacher: Isselmou Abd El Kader
- Teacher: Khanh Kieu
- Teacher: Marianne Seppänen
- Teacher: Micheal Tuape
CT60A4002 Ohjelmistotuotanto - Monimuoto-opetus 4.9.2023-15.12.2023
Johdanto, ohjelmistontuotannon rooli erilaisten organisaatioiden toiminnassa, ohjelmistotuotantoprosessi, vaatimusmäärittely, mallinnus, UML, arkkitehtuurit, prosessin kehittäminen, projektinhallinta, GDPR, etiikka.
- Responsible teacher: Jussi Kasurinen
- Teacher: Ville Felin
- Teacher: Ville Felin
- Teacher: Oskari Lehtonen
- Teacher: Oskari Lehtonen
- Teacher: François Pakkanen
CT60A2500 Principles of C-Programming - Monimuoto-opetus, Lahti 4.3.2024-19.4.2024
C-ohjelmointikielen syöttö ja tulostus sekä tietovirrat; valinta- ja toistorakenteet; teksti- ja binaaritiedostojen käsittely; tietotyypit ml. tietue, taulukko ja linkitetty lista; rakenteinen ohjelmointi, aliohjelmat, parametrit ja paluuarvot, muuttujien näkyvyys; virheenkäsittely; kirjastot; rekursio; osoittimet; dynaaminen muistinhallinta; hyvä ohjelmointityyli ja make.
- Responsible teacher: Jouni Järvinen
CT60A2500 C-ohjelmoinnin perusteet - Monimuoto-opetus 8.1.2024-23.2.2024
C-ohjelmointikielen syöttö ja tulostus sekä tietovirrat; valinta- ja toistorakenteet; teksti- ja binaaritiedostojen käsittely; tietotyypit ml. tietue, taulukko ja linkitetty lista; rakenteinen ohjelmointi, aliohjelmat, parametrit ja paluuarvot, muuttujien näkyvyys; virheenkäsittely; kirjastot; rekursio; osoittimet; dynaaminen muistinhallinta; hyvä ohjelmointityyli ja make.
- Responsible teacher: Uolevi Nikula
- Teacher: Ilpo Kainulainen
- Teacher: Roope Luukkainen
- Teacher: Emma Pakarinen
- Teacher: Rami Saarivuori
- Teacher: Demo Teacher1
CT60A2411 Olio-ohjelmointi - Monimuoto-opetus 8.1.2024-19.4.2024
Oliopohjaisuus, luokat, periytyminen, luokkamallintamisen perusteet, Javan periaatteet, lauseet ja perustietorakenteet, abstraktit tietotyypit, poikkeukset, graafinen käyttöliittymä.
- Responsible teacher: Erno Vanhala
- Teacher: Pouya Amiri
- Teacher: Ilpo Kainulainen
- Teacher: Eerika Peltonen
- Teacher: Rami Saarivuori
CT60A2411 Object-Oriented Programming - Monimuoto-opetus, Lahti 8.1.2024-19.4.2024
Oliopohjaisuus, luokat, periytyminen, luokkamallintamisen perusteet, Javan periaatteet, lauseet ja perustietorakenteet, abstraktit tietotyypit, poikkeukset, graafinen käyttöliittymä.
- Responsible teacher: Katja Karhu
- Responsible teacher: Venkata Marella
- Responsible teacher: Erno Vanhala
- Teacher: Đức Dương
- Teacher: Jiayao Liu
- Teacher: Eerika Peltonen
- Teacher: Rami Saarivuori
- Teacher: Cheng Xiao
CT60A0250 Fundamentals of Programming for international programs - Monimuoto-opetus 4.9.2023-15.12.2023
The topics of the course include but are not limited to:
Writing and running Python programs using IDLE development environment
Inputting and outputting text
How to comment the program code
Different data types (strings, integers, floats, Booleans) and their operations
Type conversions between data types
Control structures: selection (if-else selection) iterations (for, while loops)
Functions, their parameters and return values. The structure of the program
Reading and writing files
Basic data structures (lists, dictionaries, tuples, sets)
Graphical user interfaces (GUIs) using Tkinter
Using some essential modules (math, datetime, random, urllib, json, NumPy) and writing own modules
Typical errors types and error messages. Exception handling
Algorithmics and recursive functions
- Responsible teacher: Jouni Järvinen