CT30A3204 Advanced Web Applications - Online teaching 3.6.2024-30.7.2024
? TypeScript
? Node.js
? Express
? Template engines
? MongoDB
? React
? Authentication and authorization
? APIs
- Responsible teacher: Erno Vanhala
- Teacher: Eero Suomalainen
CT30A2910 Introduction to Web Programming - Online teaching 3.6.2024-30.7.2024
Web standards: HTTP, HTML, CSS and JavaScript. The browser environment with its Document object model (DOM). The most common content management systems and building web sites with commonly used tools.
- Responsible teacher: Erno Vanhala
- Teacher: Pouya Amiri
- Teacher: Pouya Amiri
- Teacher: Katja Karhu
- Teacher: Eero Suomalainen
- Teacher: Eero Suomalainen
CT30A2803 User Interfaces and Usability - Online teaching 3.6.2024-30.7.2024
Design principles of web and mobile interfaces. Human-centered design process. Understanding users through basic HCI research methods and applying this knowledge in design. Design techniques, such as use cases, prototyping, story-boarding, and usability evaluation. Usability and user experience as concepts. Usability standards in interface design and usability testing. Design patterns and considerations of designing interfaces for modern software systems. Basics of front-end programming for user interfaces.
- Responsible teacher: Antti Knutas
- Responsible teacher: Joanna Saad-Sulonen
- Responsible teacher: Dominik Siemon
- Teacher: Sreman Chandio
- Teacher: Sreman Chandio
- Teacher: Yishak Gebremichael
- Teacher: Yishak Gebremichael
- Teacher: Yekaterina Kovaleva
CT70A9500 Holistic Digital Service Development - Blended teaching 2.9.2024-15.12.2024
Holistic Digital Service Development is a project course that combines theoretical learning with hands-on practical experience. In this project-based course, students work in teams to develop innovative digital services in close collaboration with industry partners. Each team is guided by a mentor from the partnering company, who provides valuable insights into the company's business model, needs, and portfolio. The goal of the course is to enhance the value creation of the company through the development of new digital services or the improvement of existing ones. This course offers a unique opportunity for students to apply their knowledge in real-world settings and develop valuable skills in digital service development. In this course, students apply their knowledge of cloud-based services, infrastructure, service design, and intelligent and smart systems.
- Responsible teacher: Dominik Siemon
- Teacher: Tuukka Ruotsalo
CT80A0200 Software Business - Online teaching 1.8.2024-30.7.2025
The course presents economical theories seen in the software industry as well as covers different revenue and business models. Finally, the course introduces the internationalization models of software-intensive companies.
- Responsible teacher: Sami Hyrynsalmi
CT80A0000 Data-Intensive Systems - Blended teaching 2.9.2024-15.12.2024
Introduction to distributed database systems, distributed database applications, databases systems and internet, distributed data storage and retrieval, data scalability, performance, data warehousing and data mining from the perspective of value creation and communication in distributed systems, advanced topics in databases such as security, authorization, modeling and programing for semi-structured data, secondary storage management, query execution, cloud computing.
- Responsible teacher: Jiri Musto
CT70AJ120 Grant Writing: Collaborative Grants - Seminar 28.10.2024-15.12.2024
Collaborative grant writing as a Skill. Targeted funding is EU-funding, i.e. Horizon Europe RIA or IA template is being instrument used in the course. Building a potential consortia to a potential call topic and creating a concept fitting to an existing call.
- Responsible teacher: Kari Heikkinen
CT70A9900 Foundation of Cybersecurity - Blended teaching 2.9.2024-15.12.2024
Content:
CHAPTER 1: Introduction - Introduction to cybersecurity, Confidentiality, integrity, and availability.
CHAPTER 2: Foundations - Fundamental concepts, CIA, CIA triangle, data breach at target.
CHAPTER 3: Security management, Governance, risk, and compliance (GRC)- GRC framework, security standards.
CHAPTER 4: Contingency planning - Incidence response, Disaster Recovery, BCP.
CHAPTER 5: Cybersecurity policy - ESSP, ISSP, SYSSP.
CHAPTER 6: Risk Management - Cyber Risk Identification, Assessment, and Control.
CHAPTER 7: Cybersecurity: Industry perspective - Defense Technologies, Attack, Exploits.
CHAPTER 8: Cybersecurity technologies - Access control, Encryption, Standards.
Study Materials:
Book:
· Principles of Information Security, Version 7th Edition by Michael E. Whitman (Author), Herbert J. Mattord (Author).
· Cryptography And Network Security: Principles and Practices 4th Edition by William Stallings.
· Cybersecurity: The Beginner's Guide: A comprehensive guide to getting started in cybersecurity by Dr. Erdal Ozkaya.
- Responsible teacher: Prabhat Kumar
CT70A9800 Full Stack Development - Contact teaching, Lahti 2.9.2024-15.12.2024
The course Full Stack Development covers the holistic development of web, mobile and desktop applications from front-end to back-end. The course will focus on the technologies and frameworks that are currently used in industry, such as HTML, CSS, JavaScript, and React for web, Swift and Kotlin for mobile and Electron for desktop, just to name a few. Students will learn how to design and implement full-stack applications for all platforms including user authentication and authorization, data storage, and server-side rendering. Additionally, students will learn about software development best practices, such as version control, testing, and deployment, as well as serverless applications. The course will also include an overview of no-code or low-code platforms and frameworks, which allow for the rapid development of applications without writing code, and how to integrate these into traditional full-stack development workflow. Furthermore, it will cover the concept of microservices. The course will include both lectures and hands-on coding exercises to give students practical experience in building full-stack applications. Upon completion of this course, students will be able to design, implement, and deploy full-stack applications to production for all platforms including web, mobile and desktop.
- Responsible teacher: Saddam Mukta
- Teacher: Rendall Koski
- Teacher: Dominik Siemon
CT70A9400 Foundations of Digital Transformation - Blended teaching 1.8.2024-30.7.2025
Different conceptualizations of digital transformation; analysis of digital transformation cases; privacy and ethical issues around digital transformation; emerging technologies (e.g., blockchain, AI) that have been guiding digital transformation; theories, models and methods that have been used to assess the impact of digitalization.
- Responsible teacher: Najmul Islam
- Teacher: Bahalul Haque
CT70A9200 Workshop for Scientific Writing - Blended teaching 28.10.2024-15.12.2024
Students who are starting their BSc thesis work will participate in the workshop, where fundamentals of how thesis work is written, what it should contain, and what are the basic good practices of writing a thesis on software engineering discipline are discussed. Learn the process and formulation of the content, and the written presentation of a scientific report.
- Responsible teacher: Damian Kedziora
- Responsible teacher: Annika Wolff
CT70A9150 Introduction to DevOps - Online teaching 1.8.2024-31.7.2025
Distributed version control systems (DVCS). Modern repository hosting platforms, such as GitHub and GitLab. Repository best practices, management, and administration. Solving repository errors. Continuous deployment processes and executing tests. Basics of container platforms, such as Docker. Deploying basic applications from source control systems.
- Responsible teacher: Erno Vanhala
CT70A9140 Software Development Skills: Full-Stack - Online teaching 1.8.2024-30.7.2025
This course aims give students a chance to create unique projects with a hands-on approach.
The course guides students to find their interest in software engineering skills and to help each student find their desired path in software developing in the future. There are also several other Software Development Skill courses available on different topics.
The course gives the student basic understanding of full-stack development. The goal is to create a basic front- and back-end and bundle them together as a complete system.
The focus is to understand the bigger picture and how to bundle different software components together to create a working program. You will learn how to use MEAN-stack as a full stack tool bundle to create an app from scratch.
Course is 100% online self-study.
- Responsible teacher: Erno Vanhala
CT70A9120 Software Development Skills: Mobile - Online teaching 1.8.2024-30.7.2025
This course aims give students a chance to create unique projects with a hands-on approach.
The course guides students to find their interest in software engineering skills and to help each student find their desired path in software developing in the future. There are also several other Software Development Skill courses available on different topics. The goal in this course is to make an Android app with Android Studio. The app should have basic functionality with buttons and views. This course aims to teach the basics of mobile development.
Course is 100% online self-study.
- Responsible teacher: Erno Vanhala
CT70A9110 Software Development Skills: Front-End - Online teaching 1.8.2024-30.7.2025
This course aims give students a chance to create unique projects with a hands-on approach.
The course guides students to find their interest in software engineering skills and to help each student find their desired path in software developing in the future. There are also several other Software Development Skill courses available on different topics.
The goal in this course is to make a responsive webpage using html, CSS and a little JavaScript. These are the basic tools to make today's web-frontend. Students may use Bootstrap or animations in addition. The project focuses only on the layout, styles and the overall structure of the page.
Course is 100% online self-study.
- Responsible teacher: Erno Vanhala
CT70A7000 Digital Business Platforms - Blended teaching 2.9.2024-15.12.2024
1. INNOVATIONS AND ECOSYSTEMS
Closed innovation
Open Innovation
Ecosystems for innovation
2. MARKET MODELS
Pipeline model
Two-sided markets
Platform attributes
3. LAUNCHING PLATFORM
Chicken-or-egg problem
Monetization/Commercialization
Openness
4. COMPETITION LANDSCAPE
Competing in platform economy
Competing threads
Digital platform competitiveness
5. DATA ECONOMIES
Power of data in platform economy
Data network effects
Data handling risks
6. DIGITAL SERVITIZATION
Product vs. Service
Everything as a Service
Product based platforms
- Responsible teacher: Damian Kedziora
- Teacher: Md Uddin
CT70A6201 Foundations of Software Product Management - Blended teaching 2.9.2024-15.12.2024
The course covers themes of product strategy and planning, strategic management and orchestration of related activities.
- Responsible teacher: Andrey Saltan
- Teacher: Nan Yang
CT70A5000 Impact and Benefits of Digitalization - Online teaching 2.9.2024-15.12.2024
Drivers of digitalization; The benefit vs. the challenge of digitalization (in broad and specific contexts); Industry, personal life and society digitalization, digital ecosystem(s), value and challenges of digitalization; changing business models and opportunities (because of digitalization); new / front line technology evaluation reporting; digitalization in specific industry context (e.g. DevSecOps in software engineering, IoT and robotization vs. industrial revolution, AI as digitalization driver in the society)
- Responsible teacher: Ari Happonen
- Teacher: Elizaveta Tereshchenko
CT70A3100 Service design - Contact teaching, Lahti 2.9.2024-15.12.2024
The aim of Service Design is to show the broad spectrum of services and their relevance, especially in the field of software engineering. Basic theoretical definitions, as well as comparisons with the product-dominant logic, are discussed and current perspectives such as the service-dominant logic and servicification are elaborated. The value, which can be generated by a service, i.e., the value in use and value in interaction is covered when talking about why services take such a significant role in our economy. Based on this, digital services, and aspects such as software-as-a-service will be discussed. To successfully design services, the topic of design and its various facets will then be covered. Above all, human-centeredness is an essential point, which is then concretized with methods of service design and practical exercises.
- Responsible teacher: Joanna Saad-Sulonen
- Responsible teacher: Dominik Siemon
CT70A2000 Requirements Engineering - Blended teaching 2.9.2024-15.12.2024
The focus of this course is in helping the student to choose and apply requirements engineering (RE) techniques to different types of software development situations. The course considers a variety of software development contexts such as bespoke software development, market-driven, and agile development and discusses how these contexts affect the choice of RE techniques. To this end, different RE-related techniques as well as different underlying principles and formats for documenting and maintaining requirements are covered.
- Responsible teacher: Mikhail Adisa
- Responsible teacher: Shola Oyedeji
- Teacher: Sandra Kalu