SlideShare a Scribd company logo
1 of 22
Software Architecture –
Centric Methods and
Agile Development
By
SATHISHKUMAR G
(sathishsak111@gmail.com)
The Agile Approach
• Feedback – Not just for stereos anymore
• Adaptable – Just in case you haven’t made
up your mind
• Simplicity – Let’s keep it that way
• Small Groups – Because the boss is cheap
The Agile Approach
• Short Development Iterations
• Plan
• Gather Requirements
• Design
• Code
• Test
• Document
The Agile Approach
• Iteration’s done – But the software isn’t.
• At least it works…Sort of…
• Resolution is the solution
The Agile Approach -
Extreme Programming (XP)
• Planning – User Stories, Prioritizing
• Testing – Test comes before code
• Implementation – Simplest code to fulfill
the test
• Design – System metaphors, spike
solutions, CRC cards
Extreme Programming (XP) –
Criticisms
• Doesn’t scale to large dev teams or products
• Success is a function of the dev teams
experience
• Not for critical systems
• Tends to overlook software quality
attributes
• Customer On-Site necessary
Software Architecture Centric
Methods to the Rescue!!!!
• Architecture Centric Activities
• Emphasize quality attributes
• Focus early on architecture design decisions
The Architecture Centric
Activities
• Quality Attribute workshop
• Attribute Driven Design
• Architecture Trade-off Analysis Method
(ATAM)
• Cost-Benefit Analysis Method
Quality Attribute Workshop
• Goal: To identify requirements
• Held early in development
• Includes stakeholders
• Outputs:
• Business Goals
• Quality Attribute Scenarios and Use Cases
• Scenarios are six fold (stimulus, source of the
stimulus, artifact, environment, response, and
response measure)
Attribute Driven Design
• Goal: To localize the effects of design changes
• Focuses on the overall system structure that the quality
attributes shape
• Choice of architectural tactics to satisfy quality
scenarios
• Outputs:
• Course Grain Architectural Structure
• Generate and Test architectural design model
Architecture Trade-off
Analysis Method (ATAM)
• Goal: Assess architectural decisions’
consequences with respect to requirements
and business goals
• Helps stakeholders ask the right questions
to discover problematic architectural
decisions
Cost-Benefit Analysis Method
(CBAM)
• Goal: To make the decisions made during
the ATAM part of the roadmap by
assigning priorities, costs and benefits with
each architectural decision
• Business consequences allow the dev team
to make informed choices among
architectural options
Sample Example: Bank ATM
• From XP’s user stories we receive
• Feature requirements
• From the QAW process we identify
additional quality attributes that need to be
satisfied:
• Modifiability
• Extensibility
• Performance
Sample Example: Bank ATM
Quality Attribute Workshop
• Modifiability Attribute Scenario I:
• A developer wants to add a new auditing
business rule at design time in 10 person-days
without affecting other functionality
• Modifiability Attribute Scenario II:
• A system administrator wants to employ a new
database in 18 person-months without affecting
other functionality
Sample Example: Bank ATM
Quality Attribute Workshop
• Modifiability Attribute Scenario III
• A developer needs to add a Web-based client in
90 person-days without affecting the existing
ATM client’s functionality
Modifiability Scenario I
• Stimulus – Adding a Business Rule
• Source – The Developer
• Artifact – Business Rule System
• Environment – New Business Rule
• Response – Business Rule added within 10
Days
• Response Measure – Business Rule is
added and Existing functionality is
unchanged
Modifiability Scenario II
• Stimulus – Employing a new Database
• Source – A System Administrator
• Artifact – Data Organization and Storage
• Environment – New Platform
• Response – Database employed within 18 person-
months
• Response Measure – Database Deployed and In
Use. Existing functionality is unchanged
Modifiability Scenario III
• Stimulus – Adding an Additional Client
• Source – The Developer
• Artifact – User Interface
• Environment – New Capability
• Response – Business Rule added within 10 Days
• Response Measure – Business Rule is added and
Existing functionality is unchanged
Attribute Driven Design Results
• The ADD method localizes the effect of this
design change by using the following tactics:
• Localize Changes – Identifies three separate
components of the system, Business Rules, Client, and
Database
• Use an intermediary
• These components should be separate
• The Business Rules and Database should communicate
through an abstract interface (ODBC)
• There should be a translation layer between the client and the
business rules (XML)
Cost-Benefit Analysis Method
• CBAM helps architects consider the return
on investment of any architectural decision
and provides guidance on the economic
trade-offs involved.
• Sample – Performance Quality Attributes in
the Sample Problem
Summary
• Architecture-centric methods provide explicit and
detailed guidance on eliciting architectural
requirements, designing those requirements into
the system, and analyzing the resulting design.
The results of which can be tailored to an agile
approach.
• This tactic can help to resolve one of agile
developments largest weaknesses. Improving
overall quality of the final product.
Thank you

More Related Content

What's hot

Distributed & parallel system
Distributed & parallel systemDistributed & parallel system
Distributed & parallel systemManish Singh
 
Requirements analysis and modeling
Requirements analysis and modelingRequirements analysis and modeling
Requirements analysis and modelingSyed Zaid Irshad
 
component based development model
component based development modelcomponent based development model
component based development modelMuneeba Qamar
 
Multithreading models.ppt
Multithreading models.pptMultithreading models.ppt
Multithreading models.pptLuis Goldster
 
unit 5 Architectural design
 unit 5 Architectural design unit 5 Architectural design
unit 5 Architectural designdevika g
 
Chapter 13 software testing strategies
Chapter 13 software testing strategiesChapter 13 software testing strategies
Chapter 13 software testing strategiesSHREEHARI WADAWADAGI
 
McCall Software Quality Model in Software Quality Assurance
McCall Software Quality Model in Software Quality Assurance McCall Software Quality Model in Software Quality Assurance
McCall Software Quality Model in Software Quality Assurance sundas Shabbir
 
UML Class Diagram G-3-122139
UML Class Diagram G-3-122139UML Class Diagram G-3-122139
UML Class Diagram G-3-122139Hansi Thenuwara
 
Rational Unified Process
Rational Unified ProcessRational Unified Process
Rational Unified ProcessKumar
 
An architecture-centric approach for systems design
An architecture-centric approach for systems designAn architecture-centric approach for systems design
An architecture-centric approach for systems designsathish sak
 
Chapter 7 software reliability
Chapter 7 software reliabilityChapter 7 software reliability
Chapter 7 software reliabilitydespicable me
 
Architectural views
Architectural viewsArchitectural views
Architectural viewsSaleem Khan
 
Socio-technical System
Socio-technical SystemSocio-technical System
Socio-technical SystemRahul Hada
 
Software Measurement and Metrics.pptx
Software Measurement and Metrics.pptxSoftware Measurement and Metrics.pptx
Software Measurement and Metrics.pptxubaidullah75790
 

What's hot (20)

Distributed & parallel system
Distributed & parallel systemDistributed & parallel system
Distributed & parallel system
 
Underlying principles of parallel and distributed computing
Underlying principles of parallel and distributed computingUnderlying principles of parallel and distributed computing
Underlying principles of parallel and distributed computing
 
8 system models (1)
8 system models (1)8 system models (1)
8 system models (1)
 
Requirements analysis and modeling
Requirements analysis and modelingRequirements analysis and modeling
Requirements analysis and modeling
 
component based development model
component based development modelcomponent based development model
component based development model
 
Cluster computing
Cluster computingCluster computing
Cluster computing
 
Multithreading models.ppt
Multithreading models.pptMultithreading models.ppt
Multithreading models.ppt
 
unit 5 Architectural design
 unit 5 Architectural design unit 5 Architectural design
unit 5 Architectural design
 
Chapter 13 software testing strategies
Chapter 13 software testing strategiesChapter 13 software testing strategies
Chapter 13 software testing strategies
 
McCall Software Quality Model in Software Quality Assurance
McCall Software Quality Model in Software Quality Assurance McCall Software Quality Model in Software Quality Assurance
McCall Software Quality Model in Software Quality Assurance
 
UML Class Diagram G-3-122139
UML Class Diagram G-3-122139UML Class Diagram G-3-122139
UML Class Diagram G-3-122139
 
Software engineering unit 1
Software engineering unit 1Software engineering unit 1
Software engineering unit 1
 
Rational Unified Process
Rational Unified ProcessRational Unified Process
Rational Unified Process
 
An architecture-centric approach for systems design
An architecture-centric approach for systems designAn architecture-centric approach for systems design
An architecture-centric approach for systems design
 
Software development process
Software development processSoftware development process
Software development process
 
Chapter 7 software reliability
Chapter 7 software reliabilityChapter 7 software reliability
Chapter 7 software reliability
 
Architectural views
Architectural viewsArchitectural views
Architectural views
 
Functional and non functional
Functional and non functionalFunctional and non functional
Functional and non functional
 
Socio-technical System
Socio-technical SystemSocio-technical System
Socio-technical System
 
Software Measurement and Metrics.pptx
Software Measurement and Metrics.pptxSoftware Measurement and Metrics.pptx
Software Measurement and Metrics.pptx
 

Similar to Software Architecture – Centric Methods and Agile Development

Using Benchmarking to Quantify the Benefits of Software Process Improvement
Using Benchmarking to Quantify the Benefits of Software Process ImprovementUsing Benchmarking to Quantify the Benefits of Software Process Improvement
Using Benchmarking to Quantify the Benefits of Software Process ImprovementQuantitative Software Management, Inc.
 
Why We Need Architects (and Architecture) on Agile Projects
Why We Need Architects (and Architecture) on Agile ProjectsWhy We Need Architects (and Architecture) on Agile Projects
Why We Need Architects (and Architecture) on Agile ProjectsRebecca Wirfs-Brock
 
City universitylondon devprocess_g_a_reitsch
City universitylondon devprocess_g_a_reitschCity universitylondon devprocess_g_a_reitsch
City universitylondon devprocess_g_a_reitschalanreitsch
 
Agile Network India| Kanban Day @Chennai | Statik | Sreeanand Chandran and Sa...
Agile Network India| Kanban Day @Chennai | Statik | Sreeanand Chandran and Sa...Agile Network India| Kanban Day @Chennai | Statik | Sreeanand Chandran and Sa...
Agile Network India| Kanban Day @Chennai | Statik | Sreeanand Chandran and Sa...AgileNetwork
 
Quantifying DevOps Adoption Empirically for Demonstrable ROI
Quantifying DevOps Adoption Empirically for Demonstrable ROIQuantifying DevOps Adoption Empirically for Demonstrable ROI
Quantifying DevOps Adoption Empirically for Demonstrable ROIDevOps for Enterprise Systems
 
Business Process Quality at Citrix
Business Process Quality at CitrixBusiness Process Quality at Citrix
Business Process Quality at CitrixWorksoft
 
What are IBM Rational's CLM products
What are IBM Rational's CLM productsWhat are IBM Rational's CLM products
What are IBM Rational's CLM productsShawn Doyle
 
Agile methodology in cloud computing
Agile methodology in cloud computingAgile methodology in cloud computing
Agile methodology in cloud computingAhmed M. Abed
 
CRM Implementations and Upgrades
CRM Implementations and UpgradesCRM Implementations and Upgrades
CRM Implementations and UpgradesPeter Ware PMP
 
2 speed it powered by microsoft azure
2 speed it powered by microsoft azure2 speed it powered by microsoft azure
2 speed it powered by microsoft azureMichael Stephenson
 
GLOC 2018: Automation or How We Eliminated Manual EBS R12.2 Upgrades and Beca...
GLOC 2018: Automation or How We Eliminated Manual EBS R12.2 Upgrades and Beca...GLOC 2018: Automation or How We Eliminated Manual EBS R12.2 Upgrades and Beca...
GLOC 2018: Automation or How We Eliminated Manual EBS R12.2 Upgrades and Beca...ennVee TechnoGroup Inc
 
Simplify Salesforce Testing with AI-Driven Codeless Tools
Simplify Salesforce Testing with AI-Driven Codeless ToolsSimplify Salesforce Testing with AI-Driven Codeless Tools
Simplify Salesforce Testing with AI-Driven Codeless ToolsSauce Labs
 
SE_Unit 3_System & Requirement Engineering.pdf
SE_Unit 3_System & Requirement Engineering.pdfSE_Unit 3_System & Requirement Engineering.pdf
SE_Unit 3_System & Requirement Engineering.pdfRAVALCHIRAG1
 

Similar to Software Architecture – Centric Methods and Agile Development (20)

Mg6088 spm unit-2
Mg6088 spm unit-2Mg6088 spm unit-2
Mg6088 spm unit-2
 
Using Benchmarking to Quantify the Benefits of Software Process Improvement
Using Benchmarking to Quantify the Benefits of Software Process ImprovementUsing Benchmarking to Quantify the Benefits of Software Process Improvement
Using Benchmarking to Quantify the Benefits of Software Process Improvement
 
Why We Need Architects (and Architecture) on Agile Projects
Why We Need Architects (and Architecture) on Agile ProjectsWhy We Need Architects (and Architecture) on Agile Projects
Why We Need Architects (and Architecture) on Agile Projects
 
City universitylondon devprocess_g_a_reitsch
City universitylondon devprocess_g_a_reitschCity universitylondon devprocess_g_a_reitsch
City universitylondon devprocess_g_a_reitsch
 
Agile Network India| Kanban Day @Chennai | Statik | Sreeanand Chandran and Sa...
Agile Network India| Kanban Day @Chennai | Statik | Sreeanand Chandran and Sa...Agile Network India| Kanban Day @Chennai | Statik | Sreeanand Chandran and Sa...
Agile Network India| Kanban Day @Chennai | Statik | Sreeanand Chandran and Sa...
 
Quantifying DevOps Adoption Empirically for Demonstrable ROI
Quantifying DevOps Adoption Empirically for Demonstrable ROIQuantifying DevOps Adoption Empirically for Demonstrable ROI
Quantifying DevOps Adoption Empirically for Demonstrable ROI
 
Business Process Quality at Citrix
Business Process Quality at CitrixBusiness Process Quality at Citrix
Business Process Quality at Citrix
 
CMMI V1.3
CMMI V1.3CMMI V1.3
CMMI V1.3
 
What are IBM Rational's CLM products
What are IBM Rational's CLM productsWhat are IBM Rational's CLM products
What are IBM Rational's CLM products
 
Agile methodology in cloud computing
Agile methodology in cloud computingAgile methodology in cloud computing
Agile methodology in cloud computing
 
Rup
RupRup
Rup
 
Presentation of se
Presentation of sePresentation of se
Presentation of se
 
Metrics
MetricsMetrics
Metrics
 
CRM Implementations and Upgrades
CRM Implementations and UpgradesCRM Implementations and Upgrades
CRM Implementations and Upgrades
 
2 speed it powered by microsoft azure
2 speed it powered by microsoft azure2 speed it powered by microsoft azure
2 speed it powered by microsoft azure
 
GLOC 2018: Automation or How We Eliminated Manual EBS R12.2 Upgrades and Beca...
GLOC 2018: Automation or How We Eliminated Manual EBS R12.2 Upgrades and Beca...GLOC 2018: Automation or How We Eliminated Manual EBS R12.2 Upgrades and Beca...
GLOC 2018: Automation or How We Eliminated Manual EBS R12.2 Upgrades and Beca...
 
Simplify Salesforce Testing with AI-Driven Codeless Tools
Simplify Salesforce Testing with AI-Driven Codeless ToolsSimplify Salesforce Testing with AI-Driven Codeless Tools
Simplify Salesforce Testing with AI-Driven Codeless Tools
 
Chapter 04
Chapter 04Chapter 04
Chapter 04
 
PMI Presentation2
PMI Presentation2PMI Presentation2
PMI Presentation2
 
SE_Unit 3_System & Requirement Engineering.pdf
SE_Unit 3_System & Requirement Engineering.pdfSE_Unit 3_System & Requirement Engineering.pdf
SE_Unit 3_System & Requirement Engineering.pdf
 

More from sathish sak

TRANSPARENT CONCRE
TRANSPARENT CONCRETRANSPARENT CONCRE
TRANSPARENT CONCREsathish sak
 
Stationary Waves
Stationary WavesStationary Waves
Stationary Wavessathish sak
 
Electrical Activity of the Heart
Electrical Activity of the HeartElectrical Activity of the Heart
Electrical Activity of the Heartsathish sak
 
Electrical Activity of the Heart
Electrical Activity of the HeartElectrical Activity of the Heart
Electrical Activity of the Heartsathish sak
 
Software process life cycles
Software process life cyclesSoftware process life cycles
Software process life cycles sathish sak
 
Digital Logic Circuits
Digital Logic CircuitsDigital Logic Circuits
Digital Logic Circuitssathish sak
 
Real-Time Scheduling
Real-Time SchedulingReal-Time Scheduling
Real-Time Schedulingsathish sak
 
Real-Time Signal Processing: Implementation and Application
Real-Time Signal Processing:  Implementation and ApplicationReal-Time Signal Processing:  Implementation and Application
Real-Time Signal Processing: Implementation and Applicationsathish sak
 
DIGITAL SIGNAL PROCESSOR OVERVIEW
DIGITAL SIGNAL PROCESSOR OVERVIEWDIGITAL SIGNAL PROCESSOR OVERVIEW
DIGITAL SIGNAL PROCESSOR OVERVIEWsathish sak
 
FRACTAL ROBOTICS
FRACTAL  ROBOTICSFRACTAL  ROBOTICS
FRACTAL ROBOTICSsathish sak
 
POWER GENERATION OF THERMAL POWER PLANT
POWER GENERATION OF THERMAL POWER PLANTPOWER GENERATION OF THERMAL POWER PLANT
POWER GENERATION OF THERMAL POWER PLANTsathish sak
 
mathematics application fiels of engineering
mathematics application fiels of engineeringmathematics application fiels of engineering
mathematics application fiels of engineeringsathish sak
 
ENVIRONMENTAL POLLUTION
ENVIRONMENTALPOLLUTIONENVIRONMENTALPOLLUTION
ENVIRONMENTAL POLLUTIONsathish sak
 

More from sathish sak (20)

TRANSPARENT CONCRE
TRANSPARENT CONCRETRANSPARENT CONCRE
TRANSPARENT CONCRE
 
Stationary Waves
Stationary WavesStationary Waves
Stationary Waves
 
Electrical Activity of the Heart
Electrical Activity of the HeartElectrical Activity of the Heart
Electrical Activity of the Heart
 
Electrical Activity of the Heart
Electrical Activity of the HeartElectrical Activity of the Heart
Electrical Activity of the Heart
 
Software process life cycles
Software process life cyclesSoftware process life cycles
Software process life cycles
 
Digital Logic Circuits
Digital Logic CircuitsDigital Logic Circuits
Digital Logic Circuits
 
Real-Time Scheduling
Real-Time SchedulingReal-Time Scheduling
Real-Time Scheduling
 
Real-Time Signal Processing: Implementation and Application
Real-Time Signal Processing:  Implementation and ApplicationReal-Time Signal Processing:  Implementation and Application
Real-Time Signal Processing: Implementation and Application
 
DIGITAL SIGNAL PROCESSOR OVERVIEW
DIGITAL SIGNAL PROCESSOR OVERVIEWDIGITAL SIGNAL PROCESSOR OVERVIEW
DIGITAL SIGNAL PROCESSOR OVERVIEW
 
FRACTAL ROBOTICS
FRACTAL  ROBOTICSFRACTAL  ROBOTICS
FRACTAL ROBOTICS
 
Electro bike
Electro bikeElectro bike
Electro bike
 
ROBOTIC SURGERY
ROBOTIC SURGERYROBOTIC SURGERY
ROBOTIC SURGERY
 
POWER GENERATION OF THERMAL POWER PLANT
POWER GENERATION OF THERMAL POWER PLANTPOWER GENERATION OF THERMAL POWER PLANT
POWER GENERATION OF THERMAL POWER PLANT
 
mathematics application fiels of engineering
mathematics application fiels of engineeringmathematics application fiels of engineering
mathematics application fiels of engineering
 
Plastics…
Plastics…Plastics…
Plastics…
 
ENGINEERING
ENGINEERINGENGINEERING
ENGINEERING
 
ENVIRONMENTAL POLLUTION
ENVIRONMENTALPOLLUTIONENVIRONMENTALPOLLUTION
ENVIRONMENTAL POLLUTION
 
RFID TECHNOLOGY
RFID TECHNOLOGYRFID TECHNOLOGY
RFID TECHNOLOGY
 
green chemistry
green chemistrygreen chemistry
green chemistry
 
NANOTECHNOLOGY
  NANOTECHNOLOGY	  NANOTECHNOLOGY
NANOTECHNOLOGY
 

Recently uploaded

Unit 1.1 Excite Part 1, class 9, cbse...
Unit 1.1 Excite Part 1, class 9, cbse...Unit 1.1 Excite Part 1, class 9, cbse...
Unit 1.1 Excite Part 1, class 9, cbse...aditisharan08
 
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdf
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdfThe Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdf
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdfkalichargn70th171
 
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...kellynguyen01
 
Introduction to Decentralized Applications (dApps)
Introduction to Decentralized Applications (dApps)Introduction to Decentralized Applications (dApps)
Introduction to Decentralized Applications (dApps)Intelisync
 
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer DataAdobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer DataBradBedford3
 
Engage Usergroup 2024 - The Good The Bad_The Ugly
Engage Usergroup 2024 - The Good The Bad_The UglyEngage Usergroup 2024 - The Good The Bad_The Ugly
Engage Usergroup 2024 - The Good The Bad_The UglyFrank van der Linden
 
Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)OPEN KNOWLEDGE GmbH
 
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...gurkirankumar98700
 
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...soniya singh
 
DNT_Corporate presentation know about us
DNT_Corporate presentation know about usDNT_Corporate presentation know about us
DNT_Corporate presentation know about usDynamic Netsoft
 
What is Binary Language? Computer Number Systems
What is Binary Language?  Computer Number SystemsWhat is Binary Language?  Computer Number Systems
What is Binary Language? Computer Number SystemsJheuzeDellosa
 
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...harshavardhanraghave
 
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsUnveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsAlberto González Trastoy
 
Optimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVOptimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVshikhaohhpro
 
Unlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language ModelsUnlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language Modelsaagamshah0812
 
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...MyIntelliSource, Inc.
 
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed DataAlluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed DataAlluxio, Inc.
 
A Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxA Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxComplianceQuest1
 
Building Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
Building Real-Time Data Pipelines: Stream & Batch Processing workshop SlideBuilding Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
Building Real-Time Data Pipelines: Stream & Batch Processing workshop SlideChristina Lin
 

Recently uploaded (20)

Unit 1.1 Excite Part 1, class 9, cbse...
Unit 1.1 Excite Part 1, class 9, cbse...Unit 1.1 Excite Part 1, class 9, cbse...
Unit 1.1 Excite Part 1, class 9, cbse...
 
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdf
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdfThe Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdf
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdf
 
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
 
Introduction to Decentralized Applications (dApps)
Introduction to Decentralized Applications (dApps)Introduction to Decentralized Applications (dApps)
Introduction to Decentralized Applications (dApps)
 
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer DataAdobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
 
Engage Usergroup 2024 - The Good The Bad_The Ugly
Engage Usergroup 2024 - The Good The Bad_The UglyEngage Usergroup 2024 - The Good The Bad_The Ugly
Engage Usergroup 2024 - The Good The Bad_The Ugly
 
Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)
 
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
 
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
 
Exploring iOS App Development: Simplifying the Process
Exploring iOS App Development: Simplifying the ProcessExploring iOS App Development: Simplifying the Process
Exploring iOS App Development: Simplifying the Process
 
DNT_Corporate presentation know about us
DNT_Corporate presentation know about usDNT_Corporate presentation know about us
DNT_Corporate presentation know about us
 
What is Binary Language? Computer Number Systems
What is Binary Language?  Computer Number SystemsWhat is Binary Language?  Computer Number Systems
What is Binary Language? Computer Number Systems
 
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
 
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsUnveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
 
Optimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVOptimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTV
 
Unlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language ModelsUnlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language Models
 
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
 
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed DataAlluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
 
A Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxA Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docx
 
Building Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
Building Real-Time Data Pipelines: Stream & Batch Processing workshop SlideBuilding Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
Building Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
 

Software Architecture – Centric Methods and Agile Development

  • 1. Software Architecture – Centric Methods and Agile Development By SATHISHKUMAR G (sathishsak111@gmail.com)
  • 2. The Agile Approach • Feedback – Not just for stereos anymore • Adaptable – Just in case you haven’t made up your mind • Simplicity – Let’s keep it that way • Small Groups – Because the boss is cheap
  • 3. The Agile Approach • Short Development Iterations • Plan • Gather Requirements • Design • Code • Test • Document
  • 4. The Agile Approach • Iteration’s done – But the software isn’t. • At least it works…Sort of… • Resolution is the solution
  • 5. The Agile Approach - Extreme Programming (XP) • Planning – User Stories, Prioritizing • Testing – Test comes before code • Implementation – Simplest code to fulfill the test • Design – System metaphors, spike solutions, CRC cards
  • 6. Extreme Programming (XP) – Criticisms • Doesn’t scale to large dev teams or products • Success is a function of the dev teams experience • Not for critical systems • Tends to overlook software quality attributes • Customer On-Site necessary
  • 7. Software Architecture Centric Methods to the Rescue!!!! • Architecture Centric Activities • Emphasize quality attributes • Focus early on architecture design decisions
  • 8. The Architecture Centric Activities • Quality Attribute workshop • Attribute Driven Design • Architecture Trade-off Analysis Method (ATAM) • Cost-Benefit Analysis Method
  • 9. Quality Attribute Workshop • Goal: To identify requirements • Held early in development • Includes stakeholders • Outputs: • Business Goals • Quality Attribute Scenarios and Use Cases • Scenarios are six fold (stimulus, source of the stimulus, artifact, environment, response, and response measure)
  • 10. Attribute Driven Design • Goal: To localize the effects of design changes • Focuses on the overall system structure that the quality attributes shape • Choice of architectural tactics to satisfy quality scenarios • Outputs: • Course Grain Architectural Structure • Generate and Test architectural design model
  • 11. Architecture Trade-off Analysis Method (ATAM) • Goal: Assess architectural decisions’ consequences with respect to requirements and business goals • Helps stakeholders ask the right questions to discover problematic architectural decisions
  • 12. Cost-Benefit Analysis Method (CBAM) • Goal: To make the decisions made during the ATAM part of the roadmap by assigning priorities, costs and benefits with each architectural decision • Business consequences allow the dev team to make informed choices among architectural options
  • 13. Sample Example: Bank ATM • From XP’s user stories we receive • Feature requirements • From the QAW process we identify additional quality attributes that need to be satisfied: • Modifiability • Extensibility • Performance
  • 14. Sample Example: Bank ATM Quality Attribute Workshop • Modifiability Attribute Scenario I: • A developer wants to add a new auditing business rule at design time in 10 person-days without affecting other functionality • Modifiability Attribute Scenario II: • A system administrator wants to employ a new database in 18 person-months without affecting other functionality
  • 15. Sample Example: Bank ATM Quality Attribute Workshop • Modifiability Attribute Scenario III • A developer needs to add a Web-based client in 90 person-days without affecting the existing ATM client’s functionality
  • 16. Modifiability Scenario I • Stimulus – Adding a Business Rule • Source – The Developer • Artifact – Business Rule System • Environment – New Business Rule • Response – Business Rule added within 10 Days • Response Measure – Business Rule is added and Existing functionality is unchanged
  • 17. Modifiability Scenario II • Stimulus – Employing a new Database • Source – A System Administrator • Artifact – Data Organization and Storage • Environment – New Platform • Response – Database employed within 18 person- months • Response Measure – Database Deployed and In Use. Existing functionality is unchanged
  • 18. Modifiability Scenario III • Stimulus – Adding an Additional Client • Source – The Developer • Artifact – User Interface • Environment – New Capability • Response – Business Rule added within 10 Days • Response Measure – Business Rule is added and Existing functionality is unchanged
  • 19. Attribute Driven Design Results • The ADD method localizes the effect of this design change by using the following tactics: • Localize Changes – Identifies three separate components of the system, Business Rules, Client, and Database • Use an intermediary • These components should be separate • The Business Rules and Database should communicate through an abstract interface (ODBC) • There should be a translation layer between the client and the business rules (XML)
  • 20. Cost-Benefit Analysis Method • CBAM helps architects consider the return on investment of any architectural decision and provides guidance on the economic trade-offs involved. • Sample – Performance Quality Attributes in the Sample Problem
  • 21. Summary • Architecture-centric methods provide explicit and detailed guidance on eliciting architectural requirements, designing those requirements into the system, and analyzing the resulting design. The results of which can be tailored to an agile approach. • This tactic can help to resolve one of agile developments largest weaknesses. Improving overall quality of the final product.