Kursusoversigt
Kursusbeskrivelse
Kursusnavn (dansk):
Softwarearkitektur
Kursusnavn (engelsk):
Software Architecture
Semester:
Efterår 2010
Udbydes under:
Master i it, softwarekonstruktion (sok)
Omfang i ECTS:
7,50
Kursussprog:
Engelsk
Kursushjemmeside:
https://blog.itu.dk/MSAR-E2010/
Min. antal deltagere:
15
Forventet antal deltagere:
25
Maks. antal deltagere:
50
Formelle forudsætninger:
To sign up for the course you should have good knowledge on object-oriented programming, e.g. by working as a software developer with object oriented languages for at least 2 years.
For M.Sc. students: you should have skills in object oriented programming at least on a level comparable to the object oriented programming course offered at the IT University. Preferably, you have experience with object oriented software development through participating in a small or medium size software engineering project. You should be familiar with the notion and usage of object oriented design patterns like 'facade', 'factory', or 'observer pattern'.
Læringsmål:
At the conclusion of the course, the students are expected to be able to:
• Argue the importance and role of software architecture in large scale software systems.
• Design and motivate software architecture for large scale software systems.
• Recognise major software architectural styles, design patterns, and frameworks.
• Describe a software architecture using various documentation approaches and architectural description languages.
• Generate architectural alternatives for a problem and select among them.
• Use well-understood paradigms for designing new systems.
• Identify and assess the quality attributes of a system at the architectural level.
• Motivate the architectural concerns and approach for families of products.
• Discuss and evaluate the current trends and technologies such as model-driven, service-oriented, and aspect-oriented architectures.
• Evaluate the coming attractions in software architecture research and practice.
Fagligt indhold:
The objective of the course is to provide postgraduate students with a sound technical exposure to the concepts, principles, methods, and best practices in software architecture. Following is the key topics covered in this course:
• Introduction to the fundamentals of software architecture.
• Role of software architecture in software quality.
• Fundamental principles and guidelines for software architecture design, architectural styles, patterns, and frameworks.
• Methods, techniques, and tools for describing software architecture and documenting design rationale.
• Software architecture design and evaluation processes.
• Design and analysis of architectures for middleware software for large scale distributed systems.
• Rationale and architectural knowledge management in software architecting.
• Software architectures for product lines.
• Model Driven approaches and tools for designing and evaluating architectures.
• Domain Specific, component-Based, Service-Based, Architectures.
• Future challenges and emerging trends in software architecture discipline.
Læringsaktiviteter:
14 ugers undervisning bestående af forelæsninger og øvelser
The course will also involve guest lectures, students presentations, and project work.
Eksamensform og -beskrivelse:
X. experimental examination form (7-scale; external exam), 7-trins-skala, Ekstern censur
Litteratur udover forskningsartikler:
The students will be expected to work with the course curriculum based on one of the following books:
1. Bass, L., Clements, P. and Kazman, R. 2003. Software Architecture in Practice, Addison-Wesley.
2. Gorton, I. 2006. Essential Software Architecture, Springer.
3. Taylor, R., Medvidovic, N., Dashofy, E., Software Architecture: Foundations, Theory, and Practice, Wiley.
4. Bosch, J. 2000. Design & Use of Software Architectures: Adopting and evolving a product-line approach, Addison-Wesley.
Some material for the course will also be drawn from other complementary books such as the followings:
• Clements, P., Bachmann, F., Bass, L., Garlan, D., Ivers, j., Little, R., Nord, R. and Stafford, J. 2002a. Documenting Software Architectures: Views and Beyond, Addison-Wesley.
• Clements, P., Kazman, R. and Klein, M. 2002b. Evaluating Software Architectures: Methods and Case Studies, Addison-Wesley.
Afholdelse (tid og sted)
Kurset afholdes på følgende tid og sted:
Ugedag
Tidspunkt
Forelæsning/Øvelser
Sted
Lokale
Mandag
17.00-19.00
Forelæsning
ITU
Aud 4
Mandag
19.00-21.00
Øvelser
ITU
Aud 4, 4A56, 4A58
Eksamen afholdes på følgende tid og sted:
Eksamensdato
Tidspunkt
Eksamenstype
Sted
Lokale
2011-01-10
09.00-13.00
Skriftlig eksamen
ITU
4A14 og 4A16