Lecture Introduction to software engineering - Week 6: Architectural design. In this chapter, you will learn to: Architectural design decisions, architectural views, architectural patterns, application architectures. | Week 6 Architectural Design Nguyễn Thị Minh Tuyền Adapted from slides of Ian Sommerville https tailieudientucntt Architectural Design 1. What is it 2. Who does it 3. Why is it important 4. What are the steps 5. What is the work product 6. How do I ensure that I ve done it right https tailieudientucntt Topics covered 1. Architectural design decisions 2. Architectural views 3. Architectural patterns 4. Application architectures 3 https tailieudientucntt Software architecture The design process for identifying the sub-systems making up a system and the framework for sub- system control and communication is architectural design. The output of this design process is a description of the software architecture. 4 https tailieudientucntt Architectural design Is an early stage of the system design process. Represents the critical link between specification and design processes. Often carried out in parallel with some specification activities. Involves identifying major system components and their communications. 5 https tailieudientucntt Architecture of a packing robot control system Vision system Object Arm Gripper identification controller controller system Packaging selection system Packing Conveyor system controller 6 https tailieudientucntt Architectural abstraction Architecture in the small is concerned with the architecture of individual programs. p At this level we are concerned with the way that an individual program is decomposed into components. Architecture in the large is concerned with the architecture of complex enterprise systems that include other systems programs and program components. p These enterprise systems are distributed over different computers which may be owned and managed by different companies. 7 https tailieudientucntt Advantages of explicit .