SlideShare ist ein Scribd-Unternehmen logo
1 von 10
CArD: Controlling
    Architectural
Degradation in Real
 life Applications
Overview
 Software Architecture defines the structure of the system
  in terms of its components, connectors and interactions.

 It is a key tool widely used in the industry because:
     Improves communication with stakeholders;
     Facilitates early design decisions;
     Promotes transferable abstractions of a system;
     Considered as the basis for implementation
Overview(2)
 Original design that is created prior the system’s
  implementation is known as the prescriptive
  architecture

 The architecture reflecting the current implementation is
  called the descriptive architecture.

 The inconsistency between both architectures results in
  architectural degradation.
System Evolution
Proposed System



 Mapping of an entity in the model to its corresponding entity in
  the implementation, and vice-versa.
 Compare and conform involves the detection of any architectural
  property violation between the two descriptions.
 Master and Slave. The master can alternate between model and
  implementation. The respective slave has to conform to the
  master.
What is conformance?
 Ensures that the model conforms to the implementation
  or vice-versa.

 A set of rules have been designed and implemented, such
  as Inheritance Relationship Rule:

Definition: DA conforms to PA
if and only if every entity that
inherits from another entity in PA
is required to inherit an identical
entity type in its corresponding DA.
More Structural Rules…
Definition: Communication Integrity – Absent Link Rule.
DA conforms to PA if and only if every entity that communicates
with another entity
in PA is required to
have the same
association relationship
in its corresponding DA.



+ 19 more rules.
Extension - Interaction Rules
Definition: Temporal Rule. PA conforms to DA if and only if
the same sequence of method calls is maintained between PA and
DA.
Flagging
When a violation is detected, a flagging notification is
displayed to the user, as follows:
Conclusion
CArD is:
- An Eclipse plug-in;

- Checks Conformance;

- Between Model in UML 2.0 Class Diagrams/Sequence
  Diagrams and Implementation;

Weitere ähnliche Inhalte

Was ist angesagt?

Architectural Design Report G4
Architectural Design Report G4Architectural Design Report G4
Architectural Design Report G4
Prizzl
 

Was ist angesagt? (15)

Design
DesignDesign
Design
 
Iet Prestige Lecture Coping With Complexity 7th December
Iet Prestige Lecture Coping With Complexity 7th DecemberIet Prestige Lecture Coping With Complexity 7th December
Iet Prestige Lecture Coping With Complexity 7th December
 
Software architecture in practice unit1 1
Software architecture in practice unit1 1Software architecture in practice unit1 1
Software architecture in practice unit1 1
 
Software Architecture connectors - ActiveMQ analysis
Software Architecture connectors - ActiveMQ analysisSoftware Architecture connectors - ActiveMQ analysis
Software Architecture connectors - ActiveMQ analysis
 
Slides chapter 9
Slides chapter 9Slides chapter 9
Slides chapter 9
 
Chapter 8 agent-oriented software engineering ch8-prometheus research methodo...
Chapter 8 agent-oriented software engineering ch8-prometheus research methodo...Chapter 8 agent-oriented software engineering ch8-prometheus research methodo...
Chapter 8 agent-oriented software engineering ch8-prometheus research methodo...
 
Layered architecture style
Layered architecture styleLayered architecture style
Layered architecture style
 
Chapter 7 agent-oriented software engineering ch7-agent methodology-agent met...
Chapter 7 agent-oriented software engineering ch7-agent methodology-agent met...Chapter 7 agent-oriented software engineering ch7-agent methodology-agent met...
Chapter 7 agent-oriented software engineering ch7-agent methodology-agent met...
 
Architectural styles and patterns
Architectural styles and patternsArchitectural styles and patterns
Architectural styles and patterns
 
Slides chapter 10
Slides chapter 10Slides chapter 10
Slides chapter 10
 
Ch 6
Ch 6Ch 6
Ch 6
 
Architectural styles 2
Architectural styles   2Architectural styles   2
Architectural styles 2
 
Architectural Design Report G4
Architectural Design Report G4Architectural Design Report G4
Architectural Design Report G4
 
Lecture 18 design concepts (3)
Lecture 18   design concepts (3)Lecture 18   design concepts (3)
Lecture 18 design concepts (3)
 
Hw5 proxy, chain of responsability, command
Hw5 proxy, chain of responsability, commandHw5 proxy, chain of responsability, command
Hw5 proxy, chain of responsability, command
 

Ähnlich wie CARD - Controlling Architectural Degradation in Real life Applications

term paper for cbd models
term paper for cbd modelsterm paper for cbd models
term paper for cbd models
Sukhdeep Singh
 
Run-time Monitoring-based Evaluation and Communication Integrity Validation o...
Run-time Monitoring-based Evaluation and Communication Integrity Validation o...Run-time Monitoring-based Evaluation and Communication Integrity Validation o...
Run-time Monitoring-based Evaluation and Communication Integrity Validation o...
Ana Nicolaescu
 
Software engg. pressman_ch-10
Software engg. pressman_ch-10Software engg. pressman_ch-10
Software engg. pressman_ch-10
Dhairya Joshi
 
An agent based approach for building complex software systems
An agent based approach for building complex software systemsAn agent based approach for building complex software systems
An agent based approach for building complex software systems
Icaro Santos
 
Software Architecture and Project Management module III : PATTERN OF ENTERPRISE
Software Architecture and Project Management module III : PATTERN OF ENTERPRISESoftware Architecture and Project Management module III : PATTERN OF ENTERPRISE
Software Architecture and Project Management module III : PATTERN OF ENTERPRISE
sreeja_rajesh
 
Cs 1023 lec 2 (week 1) edit 1
Cs 1023  lec 2 (week 1) edit 1Cs 1023  lec 2 (week 1) edit 1
Cs 1023 lec 2 (week 1) edit 1
stanbridge
 
Cs 1023 lec 2 (week 1) edit 1
Cs 1023  lec 2 (week 1) edit 1Cs 1023  lec 2 (week 1) edit 1
Cs 1023 lec 2 (week 1) edit 1
stanbridge
 
Ch7-Software Engineering 9
Ch7-Software Engineering 9Ch7-Software Engineering 9
Ch7-Software Engineering 9
Ian Sommerville
 

Ähnlich wie CARD - Controlling Architectural Degradation in Real life Applications (20)

SWE-401 - 5. Software Design Basics
SWE-401 - 5. Software Design BasicsSWE-401 - 5. Software Design Basics
SWE-401 - 5. Software Design Basics
 
The Clean Architecture
The Clean ArchitectureThe Clean Architecture
The Clean Architecture
 
term paper for cbd models
term paper for cbd modelsterm paper for cbd models
term paper for cbd models
 
Soft arch archevol
Soft arch archevolSoft arch archevol
Soft arch archevol
 
Lecture-_-5-_SDA_software design and architecture.doc
Lecture-_-5-_SDA_software design and architecture.docLecture-_-5-_SDA_software design and architecture.doc
Lecture-_-5-_SDA_software design and architecture.doc
 
Class notes
Class notesClass notes
Class notes
 
Run-time Monitoring-based Evaluation and Communication Integrity Validation o...
Run-time Monitoring-based Evaluation and Communication Integrity Validation o...Run-time Monitoring-based Evaluation and Communication Integrity Validation o...
Run-time Monitoring-based Evaluation and Communication Integrity Validation o...
 
Software engg. pressman_ch-10
Software engg. pressman_ch-10Software engg. pressman_ch-10
Software engg. pressman_ch-10
 
Nina Grantcharova - Approach to Separation of Concerns via Design Patterns
Nina Grantcharova - Approach to Separation of Concerns via Design PatternsNina Grantcharova - Approach to Separation of Concerns via Design Patterns
Nina Grantcharova - Approach to Separation of Concerns via Design Patterns
 
Se ii unit2-software_design_principles
Se ii unit2-software_design_principlesSe ii unit2-software_design_principles
Se ii unit2-software_design_principles
 
An agent based approach for building complex software systems
An agent based approach for building complex software systemsAn agent based approach for building complex software systems
An agent based approach for building complex software systems
 
Chapter1
Chapter1Chapter1
Chapter1
 
Controller Placement Problem resiliency evaluation in SDN-based architectures
Controller Placement Problem resiliency evaluation in SDN-based architecturesController Placement Problem resiliency evaluation in SDN-based architectures
Controller Placement Problem resiliency evaluation in SDN-based architectures
 
Controller Placement Problem Resiliency Evaluation in SDN-based Architectures
Controller Placement Problem Resiliency Evaluation in SDN-based ArchitecturesController Placement Problem Resiliency Evaluation in SDN-based Architectures
Controller Placement Problem Resiliency Evaluation in SDN-based Architectures
 
Software Architecture and Project Management module III : PATTERN OF ENTERPRISE
Software Architecture and Project Management module III : PATTERN OF ENTERPRISESoftware Architecture and Project Management module III : PATTERN OF ENTERPRISE
Software Architecture and Project Management module III : PATTERN OF ENTERPRISE
 
Cs 1023 lec 2 (week 1) edit 1
Cs 1023  lec 2 (week 1) edit 1Cs 1023  lec 2 (week 1) edit 1
Cs 1023 lec 2 (week 1) edit 1
 
Cs 1023 lec 2 (week 1) edit 1
Cs 1023  lec 2 (week 1) edit 1Cs 1023  lec 2 (week 1) edit 1
Cs 1023 lec 2 (week 1) edit 1
 
UNIT 3-DEMONSTRATING A COMPREHENSIVE UNDERSTANDING OF SOFTWARE DESIGN.pptx
UNIT 3-DEMONSTRATING A COMPREHENSIVE UNDERSTANDING OF SOFTWARE DESIGN.pptxUNIT 3-DEMONSTRATING A COMPREHENSIVE UNDERSTANDING OF SOFTWARE DESIGN.pptx
UNIT 3-DEMONSTRATING A COMPREHENSIVE UNDERSTANDING OF SOFTWARE DESIGN.pptx
 
Ch7-Software Engineering 9
Ch7-Software Engineering 9Ch7-Software Engineering 9
Ch7-Software Engineering 9
 
Software design
Software designSoftware design
Software design
 

Kürzlich hochgeladen

EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
Earley Information Science
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
Enterprise Knowledge
 

Kürzlich hochgeladen (20)

The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024
 

CARD - Controlling Architectural Degradation in Real life Applications

  • 1. CArD: Controlling Architectural Degradation in Real life Applications
  • 2. Overview  Software Architecture defines the structure of the system in terms of its components, connectors and interactions.  It is a key tool widely used in the industry because:  Improves communication with stakeholders;  Facilitates early design decisions;  Promotes transferable abstractions of a system;  Considered as the basis for implementation
  • 3. Overview(2)  Original design that is created prior the system’s implementation is known as the prescriptive architecture  The architecture reflecting the current implementation is called the descriptive architecture.  The inconsistency between both architectures results in architectural degradation.
  • 5. Proposed System  Mapping of an entity in the model to its corresponding entity in the implementation, and vice-versa.  Compare and conform involves the detection of any architectural property violation between the two descriptions.  Master and Slave. The master can alternate between model and implementation. The respective slave has to conform to the master.
  • 6. What is conformance?  Ensures that the model conforms to the implementation or vice-versa.  A set of rules have been designed and implemented, such as Inheritance Relationship Rule: Definition: DA conforms to PA if and only if every entity that inherits from another entity in PA is required to inherit an identical entity type in its corresponding DA.
  • 7. More Structural Rules… Definition: Communication Integrity – Absent Link Rule. DA conforms to PA if and only if every entity that communicates with another entity in PA is required to have the same association relationship in its corresponding DA. + 19 more rules.
  • 8. Extension - Interaction Rules Definition: Temporal Rule. PA conforms to DA if and only if the same sequence of method calls is maintained between PA and DA.
  • 9. Flagging When a violation is detected, a flagging notification is displayed to the user, as follows:
  • 10. Conclusion CArD is: - An Eclipse plug-in; - Checks Conformance; - Between Model in UML 2.0 Class Diagrams/Sequence Diagrams and Implementation;