{"id":null,"code":"DTEK0072","name":{"valueFi":"Software Design and Architecture","valueEn":"Software Design and Architecture","valueSv":"Software Design and Architecture"},"credits":5.0,"minCredits":5,"maxCredits":5,"tags":[{"code":"KEKE","title":{"valueFi":"Kestävä kehitys","valueEn":"Sustainable development","valueSv":"Sustainable development"}}],"createdAt":1790534319214,"contentList":[{"title":{"valueFi":"Osaamistavoitteet","valueEn":"Learning outcomes","valueSv":""},"content":{"valueFi":"The course teaches students how to apply software design principles, design patterns, and architectural styles effectively, and document and evaluate architectures for large software systems. The student learns to:\r\n- understand the theoretical aspects of design patterns and architectural styles\r\n- apply design patterns and architectural styles in practice\r\n- follow the recommended software design principles and avoid design smells\r\n- design, document and evaluate architectures for large distributed systems\r\n- explain the stakeholder forces and central quality attributes affecting the architecture  \r\n\r\nThe course additionally introduces students to practical tools and methods for software design and documentation, such as model-driven development tools and the 4+1 architectural view model. The course strengthens the following working life skills: presentation skills, creativity, multi-professionalism, problem solving skills, project management, information and communication technology skills, communication skills and cooperation and negotiation skills.","valueEn":"The course teaches students how to apply software design principles, design patterns, and architectural styles effectively, and document and evaluate architectures for large software systems. The student learns to:\r\n- understand the theoretical aspects of design patterns and architectural styles\r\n- apply design patterns and architectural styles in practice\r\n- follow the recommended software design principles and avoid design smells\r\n- design, document and evaluate architectures for large distributed systems\r\n- explain the stakeholder forces and central quality attributes affecting the architecture  \r\n\r\nThe course additionally introduces students to practical tools and methods for software design and documentation, such as model-driven development tools and the 4+1 architectural view model. The course strengthens the following working life skills: presentation skills, creativity, multi-professionalism, problem solving skills, project management, information and communication technology skills, communication skills and cooperation and negotiation skills.","valueSv":"The course teaches students how to apply software design principles, design patterns, and architectural styles effectively, and document and evaluate architectures for large software systems. The student learns to:\r\n- understand the theoretical aspects of design patterns and architectural styles\r\n- apply design patterns and architectural styles in practice\r\n- follow the recommended software design principles and avoid design smells\r\n- design, document and evaluate architectures for large distributed systems\r\n- explain the stakeholder forces and central quality attributes affecting the architecture  \r\n\r\nThe course additionally introduces students to practical tools and methods for software design and documentation, such as model-driven development tools and the 4+1 architectural view model. The course strengthens the following working life skills: presentation skills, creativity, multi-professionalism, problem solving skills, project management, information and communication technology skills, communication skills and cooperation and negotiation skills."}},{"title":{"valueFi":"Sisältö","valueEn":"Content","valueSv":""},"content":{"valueFi":"The course gives an overview of central concepts in software design such as components and interfaces, recommended design principles and design smells, design patterns, architectural styles (e.g. microservices), software frameworks, variability management and software integration solutions. Documentation of software architecture and design decisions is also discussed. The presented design principles and architectural solutions are mostly object-oriented.","valueEn":"The course gives an overview of central concepts in software design such as components and interfaces, recommended design principles and design smells, design patterns, architectural styles (e.g. microservices), software frameworks, variability management and software integration solutions. Documentation of software architecture and design decisions is also discussed. The presented design principles and architectural solutions are mostly object-oriented.","valueSv":"The course gives an overview of central concepts in software design such as components and interfaces, recommended design principles and design smells, design patterns, architectural styles (e.g. microservices), software frameworks, variability management and software integration solutions. Documentation of software architecture and design decisions is also discussed. The presented design principles and architectural solutions are mostly object-oriented."}},{"title":{"valueFi":"Suoritustavat","valueEn":"Study methods","valueSv":""},"content":{"valueFi":"Exercise projects, examination.","valueEn":"Exercise projects, examination.","valueSv":""}},{"title":{"valueFi":"Toteutustavat","valueEn":"Course unit methods","valueSv":""},"content":{"valueFi":"Lectures (10 h), exercise projects (50 h), exercise project presentation (2 h), self-study (73 h).","valueEn":"Lectures (10 h), exercise projects (50 h), exercise project presentation (2 h), self-study (73 h).","valueSv":""}},{"title":{"valueFi":"Oppimateriaalit","valueEn":"Learning material","valueSv":""},"content":{"valueFi":"","valueEn":"","valueSv":""}},{"title":{"valueFi":"Lisätiedot","valueEn":"Further information","valueSv":""},"content":{"valueFi":"The content of the course has a connection to the following UN sustainable development goals: 8. Decent work and economic growth, 9. Industry, innovation and infrastructure, 10. Reduced inequalities, 11. Sustainable cities and communities, 13. Climate action, and 17. Partnerships for the goals.","valueEn":"The content of the course has a connection to the following UN sustainable development goals: 8. Decent work and economic growth, 9. Industry, innovation and infrastructure, 10. Reduced inequalities, 11. Sustainable cities and communities, 13. Climate action, and 17. Partnerships for the goals.","valueSv":""}},{"title":{"valueFi":"Kurssikirjallisuus","valueEn":"Literature","valueSv":""},"content":{"valueFi":"","valueEn":"","valueSv":""}},{"title":{"valueFi":"Esitietovaatimukset","valueEn":"Qualifications","valueSv":""},"content":{"valueFi":"Basic Course on Software Engineering, Advanced Course on Object Oriented Programming","valueEn":"Basic Course on Software Engineering, Advanced Course on Object Oriented Programming","valueSv":""}},{"title":{"valueFi":"Arviointiasteikko","valueEn":"Assessment scale","valueSv":""},"content":{"valueFi":"0-5","valueEn":"0-5","valueSv":"0-5"}},{"title":{"valueFi":"Arviointikriteerit","valueEn":"Assessment criteria","valueSv":""},"content":{"valueFi":"","valueEn":"","valueSv":""}},{"title":{"valueFi":"Arviointikriteerit 2","valueEn":"Assessment criteria 2","valueSv":""},"content":{"valueFi":"","valueEn":"","valueSv":""}},{"title":{"valueFi":"Arviointikriteerit 3","valueEn":"Assessment criteria 3","valueSv":""},"content":{"valueFi":"","valueEn":"","valueSv":""}},{"title":{"valueFi":"Arviointikriteerit 4","valueEn":"Assessment criteria 4","valueSv":""},"content":{"valueFi":"","valueEn":"","valueSv":""}},{"title":{"valueFi":"Kielet","valueEn":"Languages","valueSv":""},"content":{"valueFi":"englanti","valueEn":"English","valueSv":"engelska"}},{"title":{"valueFi":"Taso","valueEn":"Level","valueSv":""},"content":{"valueFi":"Syventävät opinnot","valueEn":"Advanced Studies","valueSv":""}},{"title":{"valueFi":"Oppiaine","valueEn":"Subject","valueSv":""},"content":{"valueFi":"Tietotekniikka","valueEn":"Information and Communication Technology","valueSv":"Information and Communication Technology"}},{"title":{"valueFi":"Vastuuhenkilöt","valueEn":"Person in charge","valueSv":""},"content":{"valueFi":"Sampsa Rauti","valueEn":"Sampsa Rauti","valueSv":"Sampsa Rauti"}},{"title":{"valueFi":"Luokittelu","valueEn":"Classification","valueSv":""},"content":{"valueFi":"Kestävä kehitys","valueEn":"Sustainable development","valueSv":"Sustainable development"}},{"title":{"valueFi":"Linkit","valueEn":"Links","valueSv":""},"content":{"valueFi":"","valueEn":"","valueSv":""}}]}