Design and Architecture of Complex Software Systems 3

  • Slides: 7
Download presentation
Design and Architecture of Complex Software Systems 3 rd year, Software Engineering Conf. dr.

Design and Architecture of Complex Software Systems 3 rd year, Software Engineering Conf. dr. ing. Ioana Şora http: //staff. cs. upt. ro/~ioana/arhit-engl/ ioana. sora@cs. upt. ro

Why ? Programming, Coding, Algorithms, … are essential knowledge But: Designing real software is

Why ? Programming, Coding, Algorithms, … are essential knowledge But: Designing real software is an exercise of managing complexity of: Requirements (functional and non-functional) Concerns (distribution, data access). Thus, we need methods for “Design in the large”

What ? • Course goals: – Understanding principles and methods of architectural design –

What ? • Course goals: – Understanding principles and methods of architectural design – Investigating properties of proven software architectures

How ? • Start from general design principles • Identify classes of problems/applications and

How ? • Start from general design principles • Identify classes of problems/applications and their solutions as architectural styles and patterns • Learn by case-studies: – Successful systems and their software architectures – Identify the architectural patterns used in representative software for: • • Adaptive systems Distributed systems Data access Interoperability – Focus on the common design principles behind wellknown systems, technologies, frameworks

Design problem Our focus in this course: “How it’s made ? ” Architectural design

Design problem Our focus in this course: “How it’s made ? ” Architectural design principles (Architectural styles and patterns) Object Request Broker Pattern Metalayer Architecture Data Access Patterns Tehnologies, Frameworks APIs RMI, . NET Remoting Reflection (in Java, . NET) Object-Relational Mappers

Lab • • • Applying the learned concepts in practice is essential 3 -4

Lab • • • Applying the learned concepts in practice is essential 3 -4 projects - design and implementation Final grade = 50% written exam + 50% projects

WWW • http: //staff. cs. upt. ro/~ioana/arhit-engl/ – Lecture slides: http: //staff. cs. upt.

WWW • http: //staff. cs. upt. ro/~ioana/arhit-engl/ – Lecture slides: http: //staff. cs. upt. ro/~ioana/arhit- engl/2016/curs. html – Lab assignments: engl/2016/laborator. html http: //staff. cs. upt. ro/~ioana/arhit-