overview of saip and lssa
DESCRIPTION
Overview of SAIP and LSSA. Software Architecture in Practice. Provides a set of techniques, not a prescriptive method for architectural design. - PowerPoint PPT PresentationTRANSCRIPT
![Page 1: Overview of SAIP and LSSA](https://reader036.vdocuments.us/reader036/viewer/2022062315/56814c50550346895db960fb/html5/thumbnails/1.jpg)
Overview of SAIP and LSSA
![Page 2: Overview of SAIP and LSSA](https://reader036.vdocuments.us/reader036/viewer/2022062315/56814c50550346895db960fb/html5/thumbnails/2.jpg)
Software Architecture in Practice
• Provides a set of techniques, not a prescriptive method for architectural design.
• Based on belief that software architecture is the development product that gives the highest return on investment with respect to quality, schedule, and cost.
![Page 3: Overview of SAIP and LSSA](https://reader036.vdocuments.us/reader036/viewer/2022062315/56814c50550346895db960fb/html5/thumbnails/3.jpg)
SAIP: Evisioning Architecture
1 - The Architecture Business Cycle
2 - What is Software Architecture?
3 - A-7E: A Case Study in Utilizing Architectural Structures
![Page 4: Overview of SAIP and LSSA](https://reader036.vdocuments.us/reader036/viewer/2022062315/56814c50550346895db960fb/html5/thumbnails/4.jpg)
SAIP: Creating and Analyzing an Architecture
4 - Quality attributes
5 - Architectural styles
6 - Unit Operations
7 - The WWW: A Case Study
8 - CORBA: A Case Study
9 - The Software Architecture Analysis Method
10 - Architecture Reviews
11 - Air Traffic Control: A Case Study
![Page 5: Overview of SAIP and LSSA](https://reader036.vdocuments.us/reader036/viewer/2022062315/56814c50550346895db960fb/html5/thumbnails/5.jpg)
SAIP: Moving from Architectures to Systems
12 - Architecture Description Languages
13 - Architecture-Based Development
14 - Flight Simulation: A Case Study
![Page 6: Overview of SAIP and LSSA](https://reader036.vdocuments.us/reader036/viewer/2022062315/56814c50550346895db960fb/html5/thumbnails/6.jpg)
SAIP: Reusing Architectures
15 - Product Lines: Reusing Architectural Assets within an Organization
16 - CelsiusTech: A Case Study
17 - Communitywide Reuse
18 - Meteorological Anchor Desk: A Case Study
19 - Software Architecture in the Future
![Page 7: Overview of SAIP and LSSA](https://reader036.vdocuments.us/reader036/viewer/2022062315/56814c50550346895db960fb/html5/thumbnails/7.jpg)
Architecture Business Cycle
• Architecture is about things not normally thought of as part of the requirements, such as security, modifiability, reliability
• Different organizations with the same requirements will produce different architectures
![Page 8: Overview of SAIP and LSSA](https://reader036.vdocuments.us/reader036/viewer/2022062315/56814c50550346895db960fb/html5/thumbnails/8.jpg)
• What are system stakeholders?• How can their priorities conflict?• How can technical constraints affect the
architecture?– Caterpillar
• How does the experience of architects and developers affect the architecture?– Innoverse
![Page 9: Overview of SAIP and LSSA](https://reader036.vdocuments.us/reader036/viewer/2022062315/56814c50550346895db960fb/html5/thumbnails/9.jpg)
Architecture Business Cycle
• Many influences on architect• Architect makes an architecture• System is developed from architecture• System (and architecture) become an influence
• What is good about this model?• What is bad?
![Page 10: Overview of SAIP and LSSA](https://reader036.vdocuments.us/reader036/viewer/2022062315/56814c50550346895db960fb/html5/thumbnails/10.jpg)
Architecture Business CYCLE
• Architecture affects structure of developing organization
• Architecture affects goals of developing organization
• Architecture affects customer requirements
• Building this systems develops experience
• A few systems change S.E. culture
![Page 11: Overview of SAIP and LSSA](https://reader036.vdocuments.us/reader036/viewer/2022062315/56814c50550346895db960fb/html5/thumbnails/11.jpg)
SAIP2: What is Software Architecture?
• Document produced early in the project
• The software architecture of a program or computing system is the structure or structures of the system, which comprise software components, the externally visible properties of those components, and the relationships between them. (page 23)
![Page 12: Overview of SAIP and LSSA](https://reader036.vdocuments.us/reader036/viewer/2022062315/56814c50550346895db960fb/html5/thumbnails/12.jpg)
What is the difference between?
• Architectural style
• Reference model
• Reference architecture
• Architecture
![Page 13: Overview of SAIP and LSSA](https://reader036.vdocuments.us/reader036/viewer/2022062315/56814c50550346895db960fb/html5/thumbnails/13.jpg)
Why is Software Architecture Important?
• Communication among stakeholders– Why do users care about components?
• Early design decisions
• Transferable abstractions of a system– Can be applied to other systems with similar
requirements
![Page 14: Overview of SAIP and LSSA](https://reader036.vdocuments.us/reader036/viewer/2022062315/56814c50550346895db960fb/html5/thumbnails/14.jpg)
Architectural Structures
• Module• Conceptual• Process• Physical• Uses• Calls• Data flow• Control flow• Class
![Page 15: Overview of SAIP and LSSA](https://reader036.vdocuments.us/reader036/viewer/2022062315/56814c50550346895db960fb/html5/thumbnails/15.jpg)
Large-Scale Software Architecture
• What is large?– More than 50 developers– Several hardware platforms– Many operating systems processes– Over half a million lines of code
![Page 16: Overview of SAIP and LSSA](https://reader036.vdocuments.us/reader036/viewer/2022062315/56814c50550346895db960fb/html5/thumbnails/16.jpg)
LSSA
1 - What is architecture?
2 - The software architect
3 - SA and the development process
4 - Techniques
5 - Example
![Page 17: Overview of SAIP and LSSA](https://reader036.vdocuments.us/reader036/viewer/2022062315/56814c50550346895db960fb/html5/thumbnails/17.jpg)
LSSA
6 - System context and domain analysis
7 - Component design
8 - Subsystem design
9 - Transaction and data design
10 - Process and deployment design
![Page 18: Overview of SAIP and LSSA](https://reader036.vdocuments.us/reader036/viewer/2022062315/56814c50550346895db960fb/html5/thumbnails/18.jpg)
Software Architecture is
• The set of entities, the properties of those entities, and relationships among them that define structure of the system.
• The set of software components, packages, relationships, interactions, the properties of each of these elements, and the set of guiding principles that together constitute the fundamental properties and constraints of a software system.
![Page 19: Overview of SAIP and LSSA](https://reader036.vdocuments.us/reader036/viewer/2022062315/56814c50550346895db960fb/html5/thumbnails/19.jpg)
Software architecture is not
• Specific implementation mechanisms like– compiler optimizations – shared versus static libraries– implementation languages– COTS class or method names– file format
![Page 20: Overview of SAIP and LSSA](https://reader036.vdocuments.us/reader036/viewer/2022062315/56814c50550346895db960fb/html5/thumbnails/20.jpg)
Attributes of Software Architecture
• Cultural adaptibility
• Data integrity
• Maintainability (portable, changeable, understandable, debugable)
• Testability
• Availability, upgradeability, reliability
• Safety, security
![Page 21: Overview of SAIP and LSSA](https://reader036.vdocuments.us/reader036/viewer/2022062315/56814c50550346895db960fb/html5/thumbnails/21.jpg)
Why Architecture is Important
• Systems are big• Some decisions are hard to change• Most developers weren’t there at the
beginning of a project and need the big picture
• Properties like reliability require hard work, they do not happen by accident, and they are properties of the entire system