EVALUVATING SOFTWARE ARCHITECTURES FOR REAL-TIME SYSTEMS R.Kazman, M.Klein, P.Clements Software Engineering Institute Carnegie Mellon University.

Slides:



Advertisements
Similar presentations
ATAM Architecture Tradeoff Analysis Method
Advertisements

Vendor Briefing May 26, 2006 AMI Overview & Communications TCM.
Pedigreed Attribute eLicitation Method (PALM) Onno Dijkstra.
Evaluating a Software Architecture By Desalegn Bekele.
Software Architecture – Centric Methods and Agile Development by Craig Castaneda.
Effective Coordination of Multiple Intelligent Agents for Command and Control The Robotics Institute Carnegie Mellon University PI: Katia Sycara
ATAM Architecture Trade-off Analysis Method with case study Bart Venckeleer, inno.com.
Architecture is More Than Just Meeting Requirements Ron Olaski SE510 Fall 2003.
Active Review for Intermediate Designs [Clements, 2000]
Evaluating Software Architectures for Real- Time Systems R. Kazman, M. Klein, P. Clements Software Engineering Institute Carnegie Mellon University.
Lecture 17 Architecture Tradeoff Analysis Method ATAM
Essential Software Architecture Ian Gorton CS590 – Winter 2008.
Architectural Design Principles. Outline  Architectural level of design The design of the system in terms of components and connectors and their arrangements.
Software Architecture in Practice
Software Architecture Quality. Outline Importance of assessing software architecture Better predict the quality of the system to be built How to improve.
Software architecture evaluation
Architecture and Requirements
Software Architecture. Agenda " Why architect? " What is architecture? " What does an architect do? " What principles guide the process of architecting?
Software Architecture premaster course 1.  Israa Mosatafa Islam  Neveen Adel Mohamed  Omnia Ibrahim Ahmed  Dr Hany Ammar 2.
Architecture Tradeoff Analysis Method Based on presentations by Kim and Kazman
1 The ATAM A Comprehensive Method for rchitecture Evaluation & The CBAM A Quantitative Approach to Architecture Design Deci $ ion Making CSSE 377 Software.
Methods and Models for Evaluating Software Product Line Architecture Hyotaeg Jung Computer Science Department Univ. of Texas at Dallas Software Architecture.
Evaluating Architectures: ATAM
CPSC 871 John D. McGregor Module 4 Session 3 Architecture Evaluation.
ATAM –Cont’d SEG 3202 N. Elkadri.
Architecture Evaluation Evaluation Factors Evaluation by the designer Every time the designer makes a key design decision or completes a design milestone,
The Architecture Business Cycle. Software Architecture Definition The software architecture of a program or computing system is the structure or structures.
November 03rd, 2009 Euro Team Alauzet Pierre, Ahvenniemi Mikko, Colin Julien, Starck Benoit CS554 - Design for Software & Systems Project 2 OP6 Architectural.
Modern approaches to developing hardware and software system for operation and emergency control of large-scale power grid A.B. OSAK, A.V. DOMYSHEV, E.Y.
Software Architecture CS3300 Fall Beware the Fuzzy Front End We are already almost 1/3 of the way done Need to negotiate deliverable schedule: SDP.
SOFTWARE ARCHITECT – DESIGN.  Introduction  Architecture Drivers  POS System Architecture  Mapping Between Perspective  Evaluate Architecture  Project.
1 Computer Systems & Architecture Lesson 5 9. The ATAM.
Lecture 7: Requirements Engineering
Architectural Design Yonsei University 2 nd Semester, 2014 Sanghyun Park.
Assessing the influence on processes when evolving the software architecture By Larsson S, Wall A, Wallin P Parul Patel.
Evaluating Architectural Options Simon Field Chief Technology Officer.
Designing software architectures to achieve quality attribute requirements F. Bachmann, L. Bass, M. Klein and C. Shelton IEE Proceedings Software Tzu-Chin.
1 Advanced Software Architecture Muhammad Bilal Bashir PhD Scholar (Computer Science) Mohammad Ali Jinnah University.
Design Process for Architecture. Architectural Lifecycle Not all lifecycle plans support Architecture! It is hard to achieve architecture based design.
Documenting Software Architectures 1.Uses and Audiences for Architecture Documentation Architecture documentation serves as a means of education Architecture.
System Context and Domain Analysis Abbas Rasoolzadegan.
CPSC 871 John D. McGregor Module 3 Session 1 Architecture.
Architecture Evaluation Cost Benefit Analysis Method (CBAM)
Software Architecture Evaluation Methodologies Presented By: Anthony Register.
Architecture Analysis Techniques
Scenario-Based Analysis of Software Architecture Rick Kazman, Gregory Abowd, Len Bass, and Paul Clements Presented by Cuauhtémoc Muñoz.
Overall Evaluation of Software Architecture By Ashwin Somaiah.
New Products from NASA’s Software Architecture Review Board
Evaluating the JBoss Application Server Architecture By Yichuan CaoSupervisor: Eleni Stroulia April 22, 2004.
L ECTURE 18 Enterprise Systems Development ( CSC447 ) COMSATS Islamabad Muhammad Usman, Assistant Professor.
John D. McGregor Architecture Evaluation
Architecture Tradeoff Analysis Method Software Engineering Institute Carnegie Mellon University Presented by: Senthil ayyasamy CS 590l- winter 2003.
Chapter : 9 Architectural Design
The ATAM method. The ATAM method (1/2) Architecture Tradeoff Analysis Method Requirements for complex software systems Modifiability Performance Security.
Analyzing an Architecture. Why analyze an architecture? Decide whether it solves the problem Compare to other architectures Assess what needs to change,
CpSc 875 John D. McGregor C 12 – Security/ATAM. Attack surface of a product face_Analysis_Cheat_Sheet
Lecture 15 Attribute Driven Design Again Topics ATAM – team expertise and experience needed Chapter 24 Next Time: June 22, 2016 CSCE 742 Software Architecture.
Lecture 15 Attribute Driven Design Again Topics ATAM – team expertise and experience needed Chapter 24 Next Time: June 22, 2016 CSCE 742 Software Architecture.
Lecture 12 Attribute Driven Design Again
Software Architecture ATAM Process Presentation
Lecture 17 ATAM Team Expertise
Analyzing an Architecture
Lecture 12z ATAM Case Study Nightingale System
Vanilson Burégio The Battlefield Control System – The First Case Study in Applying the ATAM Chapter 4 of: Clements, Paul et al., Evaluating.
Analyzing an Architecture
NEW IDEAS Advanced user models  based on cognitive architecture
The ATAM – A Method for Architecture Evaluation
Software Architecture
Experience with Performing architecture Trade-off Analysis
John D. McGregor C 12 – Security/ATAM
Presentation transcript:

EVALUVATING SOFTWARE ARCHITECTURES FOR REAL-TIME SYSTEMS R.Kazman, M.Klein, P.Clements Software Engineering Institute Carnegie Mellon University

What is this presentation about ? ATAM steps ATAM steps Examples Examples Comparisons Comparisons Conclusion Conclusion

Abstract view of ATAM Architecture Trade-off Analysis: Software Quality Attributes and Evaluations - Mario R. Barbacci SEI, CMU

ATAM DEPENDENCIES

ATAM STEPS Day1and Day2 Activities Day1and Day2 Activities Lead evaluator presents ATAM Lead evaluator presents ATAM Manager/customer presents overview. Manager/customer presents overview. Architect presents architecture. Architect presents architecture. Scenarios generated. Scenarios generated. Mapping of them onto architecture. Mapping of them onto architecture. Skeleton analysis made. Skeleton analysis made. Day 3 Activities Day 3 Activities Brainstorming. Brainstorming. Prioritizations. Prioritizations. Analysis. Analysis. Debriefing. Debriefing.

ATAM STEPS (contd..) 1. Present the ATAM – Lead 2. Present Business Drivers – Project Manager 3. Present Architecture – Lead Architect 4. Identify Architecture Approaches – Architect 5. Generate Quality Attributes and Utility tree 6. Analyze architectural approaches 7. Brain storming and Prioritize scenario 8. Analyze architectural approaches 9. Present results. Material from technical report on ATAM by Kazman, Klein, Clements August 2000 SEI CMU Material from technical report on ATAM by Kazman, Klein, Clements August 2000 SEI CMU

An Example Evaluvation : BCS BCS – Battle Control System What’s the use? To control movement, strategy and operation of troops. To control movement, strategy and operation of troops.Requirements: Provide support to a commander who can control a set of soldiers and weapons Provide support to a commander who can control a set of soldiers and weapons Interface with other systems that feed command and intelligence Interface with other systems that feed command and intelligence

Scenarios in BCS

Classification of scenarios Use cases Use cases same information different format. same information different format. server chooses channel. server chooses channel. Growth scenarios Growth scenarios add new device. add new device. change of dialog. change of dialog. Exploratory scenarios Exploratory scenarios time budget for initialization is 5min to 90 sec. time budget for initialization is 5min to 90 sec. Modem baud rate is increased by factor of 4. Modem baud rate is increased by factor of 4.

System Architecture-BCS

Screening questions For what functions of the system is performance not important? For what functions of the system is performance not important? How performance is affected by scaling workload? How performance is affected by scaling workload? Q(s) = F(Qm,Qa,Qp) Q(s) = F(Qm,Qa,Qp)

Performance Scenario transition from client to server and vice-versa. Scenario transition from client to server and vice-versa. Only one channel to communicate Only one channel to communicate Qp = h(n,m,CO) sensitivity points Qp = h(n,m,CO) sensitivity points Global trade off Identification Backup time and availability are traded. Backup time and availability are traded. Qa= g(n,m) Qa= g(n,m) Trade off points are Qp and Qa

Interesting points  Large projects->many stakeholders -> own ideas->incomplete description. -> own ideas->incomplete description.  Small projects -> many redundant views.  Extent of participation from various stake holders. stake holders.  clear understanding of system.  ARID (Architectural review for intermediate design) applied to third party components. ->not much documentation, sub systems level

Comparison of Evaluating Methods Table from Scenario based Software architecture evaluation and methods : an overview by Mugurel T Ionita, Dieter K Hammer, Henk Obbink

Conclusion Young method. Young method. Applied to complex Real world Architectures. Applied to complex Real world Architectures. Reports into handbook for future use. Reports into handbook for future use.

Conclusion(contd..) It evaluates a system for all the “ility”s… It evaluates a system for all the “ility”s… Reliability Reliability Scalability Scalability Modifiability Modifiability Functionality Functionality Variability Variability Subsetability. Subsetability.

Questions ?