SlideShare una empresa de Scribd logo
1 de 19
o   In this session, you will learn to:
          Identify various dimensions of quality processes
          Define extension mechanisms of UML
o   The purpose of quality processes is to examine the quality of software models and products developed during the software development process.
o   Quality process includes:
         Quality of the software development process that is used to develop the software system.
         Quality of the software models that are used for the software development process.
         Quality of the software product obtained at the end of the software development process.
         Quality of the quality process itself.
o   The dimensions that need to be considered to produce a quality product are:
         Technology: Describes the tools required for the software development process and the output generated.
         Methodology: Describes the sequence of actions that need to be performed during the software development process to generate output.
         Sociology: Describes the human resources, environmental conditions, and skills required for the software development process.
o   Quality checks that you need to apply to ensure the quality of software products are:
         Data quality
         Code quality
         Model or architecture quality
         Process quality
         Management quality
         Quality environment
o   Which of the following quality checks ensures that the series of activities and tasks performed to develop software products are correct?
     1.  Code quality
     2.  Process quality
     3.  Management quality
     4.  Model or architectural quality




o   Answer:
        Process quality
o   Modeling enhances the quality of software products because it enables you to understand the existing software system and create the desired
    software system.
o   To improve the quality of software products, you need to analyze the effect of UML on the following quality aspects:
         Quality of visualization: Refers to the quality of visual representation of the artifacts, diagrams, and models.
         Quality of specification: Refers to the quality of the specifications that provide detailed description of UML artifacts and diagrams.
         Quality of construction: Refers to the quality of the code generated from the UML models.
         Quality of documentation: Refers to the quality of the document that provides guidelines for creating UML artifacts and diagrams in
          software models.
o   To verify and validate the quality of the software models, you need to apply quality assurance techniques.
o   The quality assurance techniques check the following:
         Syntax: To ensure that the software models are syntactically correct.
         Semantics: To ensure that the software models represent their intended meaning and their representation is consistent across the
          project.
         Aesthetics: To ensure that the software models are symmetric and complete.
o   Quality process metamodel:
         Defines a language for representing another model.
         Enables you to understand and describe the elements of a quality process that are applicable to software development process.
         Depicts the rules that describe how the elements of a quality process are connected and related to each other.
o   UML Notations for Elements of Quality Process:

                          Notation                   Quality Process Element
                                                     Process-component

                                                     Start of process-component

                                                     End of process-component

                                                     Role

                                                     Activity

                                                     Flow of activity
                                                     Task

                                                     Output

                                                     Iteration
o   Process-Component:
         A process-component is a set of activities, tasks, roles, and output of the quality process.
         The people who perform roles of a process-components execute activities and tasks to produce desired output.
         For example: Requirement modeling, system designing, and testing can be process-components in an UML-based project.
o   Which of the following process-components indicates the execution of a sequence of process-components with varying intensity?
     1.  Iteration
     2.  Output
     3.  Task
     4.  Activity




o   Answer:
        Iteration
o   UML provides several extension mechanisms that enable developers to modify the software models without changing the existing notations.
o   UML also provides additional modeling constructs that represent flow of events in a software system.
o   UML can be tailored according to a particular application domain.
o   The three types of extension elements provided by UML are:
         Stereotypes: Extends the vocabulary of UML
         Constraints: Extends the semantics of building blocks of UML
         Tagged values: Extends the properties of building blocks of UML
o   Stereotypes:
         Represent model elements for which UML does not have a specific notation.
         Enable you to distinguish between representation of two similar elements in a UML diagram.
         Are represented as a text string enclosed within guillemets
          (<< >>).
o   Constraints:
         Represent restrictions and relationships that cannot be represented using UML notations.
         Represent global conditions or conditions that affect several elements of UML diagrams.
         Are enclosed within braces in UML diagrams.
o   Tagged values:
         Store project management related information, such as date of creating an element and the development and test status of the element.
         Store information about stereotyped model elements.
         Can be attached to any model element.
         Are represented as a pair of strings within braces.
o   While modeling a software system using UML, you need to consider the concurrency and synchronization of the events.
o   UML provides two standard stereotypes that apply to active classes for modeling the concurrent flow of events in a software system:
         process: Represents that a process can execute concurrently with other processes.
         thread: Represents that a thread can execute concurrently with other threads within the same process.
o   Steps to model multiple flows of events in UML class and interaction diagrams are:
     1.    Identify the concurrent flow of events in a software system.
     2.    Identify active objects based on the concurrent flow of events.
     3.    Group the common set of active objects into an active class.
     4.    Balance the distribution of responsibilities among the active classes.
     5.    Ensure that each active class is both tightly cohesive and loosely coupled.
     6.    Create class diagrams to represent static semantics of the system.
     7.    Create interaction diagrams to represent dynamic semantics of the system.
     8.    Apply the various types of communication methods among objects.
     9.    Attach constraints to ensure synchronization among objects.
o   History state enables a sequential composite state to remember the last sub-state that was active before the composite state.
o   UML provides two types of history states:
         Shallow: Enables an application to remember and reactivate a state that is at the same nesting depth as the history state.
         Deep: Enables an application to remember and reactivate a state that is nested at some depth within the composite state.
o   System designers use comments in UML diagrams to provide additional information to the programmers about a model element or a group of
    model elements.
o   You depict a comment in UML diagrams by using a note symbol.
o   In this session, you learned that:
          The quality process is implemented between iterations and increments of the software development process to ensure the quality of
           software products.
          The quality process checks the quality of output after each phase of software development process.
          The software development and quality processes are together known as the quality software process.
          The quality process consists of three dimensions:
               Technology: Describes what the software development process produces.
               Methodology: Describes how the software development process produces the software.
               Sociology: Describes who produces the software in the software development process.
   The activities of each dimension of quality process occur simultaneously.
   UML affects the quality of visualization, specification, construction, and documentation of software models.
   To ensure the quality of software models, you need to check their syntax, semantics, and aesthetics.
   The quality process metamodel depicts the elements of quality process and their relationships.
   The elements of quality process are process-components, roles, activities, tasks, outputs, and iterations.
   To modify UML, you can use the extension elements: stereotypes, constraints, and tagged values.
   UML also provides additional modeling constructs, such as history states, notes, and comments.

Más contenido relacionado

La actualidad más candente

Java quick reference
Java quick referenceJava quick reference
Java quick referenceArthyR3
 
Lecture-03 Introduction to UML
Lecture-03 Introduction to UMLLecture-03 Introduction to UML
Lecture-03 Introduction to UMLartgreen
 
Uml Diagrams for Web Developers
Uml Diagrams for Web DevelopersUml Diagrams for Web Developers
Uml Diagrams for Web DevelopersDave Kelleher
 
Experiences with Migration from SPEM 2.0 to Essence 1.0 for the REMICS Method...
Experiences with Migration from SPEM 2.0 to Essence 1.0 for the REMICS Method...Experiences with Migration from SPEM 2.0 to Essence 1.0 for the REMICS Method...
Experiences with Migration from SPEM 2.0 to Essence 1.0 for the REMICS Method...Brian Elvesæter
 
Fitri haryati (testing throughout the software life cycle)
Fitri haryati (testing throughout the software life cycle)Fitri haryati (testing throughout the software life cycle)
Fitri haryati (testing throughout the software life cycle)Fitri Haryati
 
SE2018_Lec 18_ Design Principles and Design Patterns
SE2018_Lec 18_ Design Principles and Design PatternsSE2018_Lec 18_ Design Principles and Design Patterns
SE2018_Lec 18_ Design Principles and Design PatternsAmr E. Mohamed
 

La actualidad más candente (13)

Java quick reference
Java quick referenceJava quick reference
Java quick reference
 
SE18_Lec 03_ RUP
SE18_Lec 03_ RUPSE18_Lec 03_ RUP
SE18_Lec 03_ RUP
 
02 uml
02 uml02 uml
02 uml
 
Ch10
Ch10Ch10
Ch10
 
Ch 10
Ch 10Ch 10
Ch 10
 
A Multi-level Methodology for Developing UML Sequence Diagrams
A Multi-level Methodology for Developing UML Sequence DiagramsA Multi-level Methodology for Developing UML Sequence Diagrams
A Multi-level Methodology for Developing UML Sequence Diagrams
 
Lecture-03 Introduction to UML
Lecture-03 Introduction to UMLLecture-03 Introduction to UML
Lecture-03 Introduction to UML
 
Sdlc
SdlcSdlc
Sdlc
 
Uml Diagrams for Web Developers
Uml Diagrams for Web DevelopersUml Diagrams for Web Developers
Uml Diagrams for Web Developers
 
Experiences with Migration from SPEM 2.0 to Essence 1.0 for the REMICS Method...
Experiences with Migration from SPEM 2.0 to Essence 1.0 for the REMICS Method...Experiences with Migration from SPEM 2.0 to Essence 1.0 for the REMICS Method...
Experiences with Migration from SPEM 2.0 to Essence 1.0 for the REMICS Method...
 
Fitri haryati (testing throughout the software life cycle)
Fitri haryati (testing throughout the software life cycle)Fitri haryati (testing throughout the software life cycle)
Fitri haryati (testing throughout the software life cycle)
 
SE2018_Lec 18_ Design Principles and Design Patterns
SE2018_Lec 18_ Design Principles and Design PatternsSE2018_Lec 18_ Design Principles and Design Patterns
SE2018_Lec 18_ Design Principles and Design Patterns
 
modeling concepts
modeling conceptsmodeling concepts
modeling concepts
 

Destacado

60780174 49594067-cs1403-case-tools-lab-manual
60780174 49594067-cs1403-case-tools-lab-manual60780174 49594067-cs1403-case-tools-lab-manual
60780174 49594067-cs1403-case-tools-lab-manualChitrarasan Kathiravan
 
87683689 ooad-lab-record
87683689 ooad-lab-record87683689 ooad-lab-record
87683689 ooad-lab-recordPon Venkatesh
 
Employee Management System in C++
Employee Management System in C++Employee Management System in C++
Employee Management System in C++Jayant Gope
 
School Management System ppt
School Management System pptSchool Management System ppt
School Management System pptMohsin Ali
 

Destacado (7)

uml test
uml testuml test
uml test
 
Chapter 12
Chapter 12Chapter 12
Chapter 12
 
Ulm
UlmUlm
Ulm
 
60780174 49594067-cs1403-case-tools-lab-manual
60780174 49594067-cs1403-case-tools-lab-manual60780174 49594067-cs1403-case-tools-lab-manual
60780174 49594067-cs1403-case-tools-lab-manual
 
87683689 ooad-lab-record
87683689 ooad-lab-record87683689 ooad-lab-record
87683689 ooad-lab-record
 
Employee Management System in C++
Employee Management System in C++Employee Management System in C++
Employee Management System in C++
 
School Management System ppt
School Management System pptSchool Management System ppt
School Management System ppt
 

Similar a Chapter 11

12 ooad uml-16
12 ooad uml-1612 ooad uml-16
12 ooad uml-16Niit Care
 
Introduction to Unified Modeling Language
Introduction to Unified Modeling LanguageIntroduction to Unified Modeling Language
Introduction to Unified Modeling LanguageAMITJain879
 
Chapter 1-Object Oriented Software Engineering.pptx
Chapter 1-Object Oriented Software Engineering.pptxChapter 1-Object Oriented Software Engineering.pptx
Chapter 1-Object Oriented Software Engineering.pptxaroraritik30
 
Software Engineering Tools and Practices.pdf
Software Engineering Tools and Practices.pdfSoftware Engineering Tools and Practices.pdf
Software Engineering Tools and Practices.pdfMeagGhn
 
Introduction To Uml
Introduction To UmlIntroduction To Uml
Introduction To Umlguest514814
 
Modeling software with UML
Modeling software with UMLModeling software with UML
Modeling software with UML6020 peaks
 
Uml Presentation
Uml PresentationUml Presentation
Uml Presentationanasz3z3
 
Minimal Testcase Generation for Object-Oriented Software with State Charts
Minimal Testcase Generation for Object-Oriented Software with State ChartsMinimal Testcase Generation for Object-Oriented Software with State Charts
Minimal Testcase Generation for Object-Oriented Software with State Chartsijseajournal
 
fdocuments.in_unit-2-ooad.ppt
fdocuments.in_unit-2-ooad.pptfdocuments.in_unit-2-ooad.ppt
fdocuments.in_unit-2-ooad.pptRAJESH S
 
Object oriented methodologies
Object oriented methodologiesObject oriented methodologies
Object oriented methodologiesnaina-rani
 

Similar a Chapter 11 (20)

12 ooad uml-16
12 ooad uml-1612 ooad uml-16
12 ooad uml-16
 
Case stydy cs701
Case stydy cs701 Case stydy cs701
Case stydy cs701
 
Chapter1
Chapter1Chapter1
Chapter1
 
Uml
UmlUml
Uml
 
l1_introuml.pdf
l1_introuml.pdfl1_introuml.pdf
l1_introuml.pdf
 
Introduction to Unified Modeling Language
Introduction to Unified Modeling LanguageIntroduction to Unified Modeling Language
Introduction to Unified Modeling Language
 
Object oriented analysis and design unit- ii
Object oriented analysis and design unit- iiObject oriented analysis and design unit- ii
Object oriented analysis and design unit- ii
 
Chapter 1-Object Oriented Software Engineering.pptx
Chapter 1-Object Oriented Software Engineering.pptxChapter 1-Object Oriented Software Engineering.pptx
Chapter 1-Object Oriented Software Engineering.pptx
 
Software Engineering Tools and Practices.pdf
Software Engineering Tools and Practices.pdfSoftware Engineering Tools and Practices.pdf
Software Engineering Tools and Practices.pdf
 
Case Study Uml
Case Study UmlCase Study Uml
Case Study Uml
 
Introduction To Uml
Introduction To UmlIntroduction To Uml
Introduction To Uml
 
Intoduction to uml
Intoduction to umlIntoduction to uml
Intoduction to uml
 
Ch 2.1
Ch 2.1Ch 2.1
Ch 2.1
 
Modeling software with UML
Modeling software with UMLModeling software with UML
Modeling software with UML
 
Uml Presentation
Uml PresentationUml Presentation
Uml Presentation
 
Minimal Testcase Generation for Object-Oriented Software with State Charts
Minimal Testcase Generation for Object-Oriented Software with State ChartsMinimal Testcase Generation for Object-Oriented Software with State Charts
Minimal Testcase Generation for Object-Oriented Software with State Charts
 
fdocuments.in_unit-2-ooad.ppt
fdocuments.in_unit-2-ooad.pptfdocuments.in_unit-2-ooad.ppt
fdocuments.in_unit-2-ooad.ppt
 
Object oriented methodologies
Object oriented methodologiesObject oriented methodologies
Object oriented methodologies
 
Design UML diagrams
Design UML diagramsDesign UML diagrams
Design UML diagrams
 
Design UML diagrams
Design UML diagramsDesign UML diagrams
Design UML diagrams
 

Último

Syngulon - Selection technology May 2024.pdf
Syngulon - Selection technology May 2024.pdfSyngulon - Selection technology May 2024.pdf
Syngulon - Selection technology May 2024.pdfSyngulon
 
Optimizing NoSQL Performance Through Observability
Optimizing NoSQL Performance Through ObservabilityOptimizing NoSQL Performance Through Observability
Optimizing NoSQL Performance Through ObservabilityScyllaDB
 
AI presentation and introduction - Retrieval Augmented Generation RAG 101
AI presentation and introduction - Retrieval Augmented Generation RAG 101AI presentation and introduction - Retrieval Augmented Generation RAG 101
AI presentation and introduction - Retrieval Augmented Generation RAG 101vincent683379
 
Oauth 2.0 Introduction and Flows with MuleSoft
Oauth 2.0 Introduction and Flows with MuleSoftOauth 2.0 Introduction and Flows with MuleSoft
Oauth 2.0 Introduction and Flows with MuleSoftshyamraj55
 
WebAssembly is Key to Better LLM Performance
WebAssembly is Key to Better LLM PerformanceWebAssembly is Key to Better LLM Performance
WebAssembly is Key to Better LLM PerformanceSamy Fodil
 
Linux Foundation Edge _ Overview of FDO Software Components _ Randy at Intel.pdf
Linux Foundation Edge _ Overview of FDO Software Components _ Randy at Intel.pdfLinux Foundation Edge _ Overview of FDO Software Components _ Randy at Intel.pdf
Linux Foundation Edge _ Overview of FDO Software Components _ Randy at Intel.pdfFIDO Alliance
 
Choosing the Right FDO Deployment Model for Your Application _ Geoffrey at In...
Choosing the Right FDO Deployment Model for Your Application _ Geoffrey at In...Choosing the Right FDO Deployment Model for Your Application _ Geoffrey at In...
Choosing the Right FDO Deployment Model for Your Application _ Geoffrey at In...FIDO Alliance
 
Unpacking Value Delivery - Agile Oxford Meetup - May 2024.pptx
Unpacking Value Delivery - Agile Oxford Meetup - May 2024.pptxUnpacking Value Delivery - Agile Oxford Meetup - May 2024.pptx
Unpacking Value Delivery - Agile Oxford Meetup - May 2024.pptxDavid Michel
 
TEST BANK For, Information Technology Project Management 9th Edition Kathy Sc...
TEST BANK For, Information Technology Project Management 9th Edition Kathy Sc...TEST BANK For, Information Technology Project Management 9th Edition Kathy Sc...
TEST BANK For, Information Technology Project Management 9th Edition Kathy Sc...marcuskenyatta275
 
IESVE for Early Stage Design and Planning
IESVE for Early Stage Design and PlanningIESVE for Early Stage Design and Planning
IESVE for Early Stage Design and PlanningIES VE
 
AI revolution and Salesforce, Jiří Karpíšek
AI revolution and Salesforce, Jiří KarpíšekAI revolution and Salesforce, Jiří Karpíšek
AI revolution and Salesforce, Jiří KarpíšekCzechDreamin
 
Portal Kombat : extension du réseau de propagande russe
Portal Kombat : extension du réseau de propagande russePortal Kombat : extension du réseau de propagande russe
Portal Kombat : extension du réseau de propagande russe中 央社
 
What's New in Teams Calling, Meetings and Devices April 2024
What's New in Teams Calling, Meetings and Devices April 2024What's New in Teams Calling, Meetings and Devices April 2024
What's New in Teams Calling, Meetings and Devices April 2024Stephanie Beckett
 
Behind the Scenes From the Manager's Chair: Decoding the Secrets of Successfu...
Behind the Scenes From the Manager's Chair: Decoding the Secrets of Successfu...Behind the Scenes From the Manager's Chair: Decoding the Secrets of Successfu...
Behind the Scenes From the Manager's Chair: Decoding the Secrets of Successfu...CzechDreamin
 
TopCryptoSupers 12thReport OrionX May2024
TopCryptoSupers 12thReport OrionX May2024TopCryptoSupers 12thReport OrionX May2024
TopCryptoSupers 12thReport OrionX May2024Stephen Perrenod
 
The Value of Certifying Products for FDO _ Paul at FIDO Alliance.pdf
The Value of Certifying Products for FDO _ Paul at FIDO Alliance.pdfThe Value of Certifying Products for FDO _ Paul at FIDO Alliance.pdf
The Value of Certifying Products for FDO _ Paul at FIDO Alliance.pdfFIDO Alliance
 
Where to Learn More About FDO _ Richard at FIDO Alliance.pdf
Where to Learn More About FDO _ Richard at FIDO Alliance.pdfWhere to Learn More About FDO _ Richard at FIDO Alliance.pdf
Where to Learn More About FDO _ Richard at FIDO Alliance.pdfFIDO Alliance
 
How Red Hat Uses FDO in Device Lifecycle _ Costin and Vitaliy at Red Hat.pdf
How Red Hat Uses FDO in Device Lifecycle _ Costin and Vitaliy at Red Hat.pdfHow Red Hat Uses FDO in Device Lifecycle _ Costin and Vitaliy at Red Hat.pdf
How Red Hat Uses FDO in Device Lifecycle _ Costin and Vitaliy at Red Hat.pdfFIDO Alliance
 
Google I/O Extended 2024 Warsaw
Google I/O Extended 2024 WarsawGoogle I/O Extended 2024 Warsaw
Google I/O Extended 2024 WarsawGDSC PJATK
 
Structuring Teams and Portfolios for Success
Structuring Teams and Portfolios for SuccessStructuring Teams and Portfolios for Success
Structuring Teams and Portfolios for SuccessUXDXConf
 

Último (20)

Syngulon - Selection technology May 2024.pdf
Syngulon - Selection technology May 2024.pdfSyngulon - Selection technology May 2024.pdf
Syngulon - Selection technology May 2024.pdf
 
Optimizing NoSQL Performance Through Observability
Optimizing NoSQL Performance Through ObservabilityOptimizing NoSQL Performance Through Observability
Optimizing NoSQL Performance Through Observability
 
AI presentation and introduction - Retrieval Augmented Generation RAG 101
AI presentation and introduction - Retrieval Augmented Generation RAG 101AI presentation and introduction - Retrieval Augmented Generation RAG 101
AI presentation and introduction - Retrieval Augmented Generation RAG 101
 
Oauth 2.0 Introduction and Flows with MuleSoft
Oauth 2.0 Introduction and Flows with MuleSoftOauth 2.0 Introduction and Flows with MuleSoft
Oauth 2.0 Introduction and Flows with MuleSoft
 
WebAssembly is Key to Better LLM Performance
WebAssembly is Key to Better LLM PerformanceWebAssembly is Key to Better LLM Performance
WebAssembly is Key to Better LLM Performance
 
Linux Foundation Edge _ Overview of FDO Software Components _ Randy at Intel.pdf
Linux Foundation Edge _ Overview of FDO Software Components _ Randy at Intel.pdfLinux Foundation Edge _ Overview of FDO Software Components _ Randy at Intel.pdf
Linux Foundation Edge _ Overview of FDO Software Components _ Randy at Intel.pdf
 
Choosing the Right FDO Deployment Model for Your Application _ Geoffrey at In...
Choosing the Right FDO Deployment Model for Your Application _ Geoffrey at In...Choosing the Right FDO Deployment Model for Your Application _ Geoffrey at In...
Choosing the Right FDO Deployment Model for Your Application _ Geoffrey at In...
 
Unpacking Value Delivery - Agile Oxford Meetup - May 2024.pptx
Unpacking Value Delivery - Agile Oxford Meetup - May 2024.pptxUnpacking Value Delivery - Agile Oxford Meetup - May 2024.pptx
Unpacking Value Delivery - Agile Oxford Meetup - May 2024.pptx
 
TEST BANK For, Information Technology Project Management 9th Edition Kathy Sc...
TEST BANK For, Information Technology Project Management 9th Edition Kathy Sc...TEST BANK For, Information Technology Project Management 9th Edition Kathy Sc...
TEST BANK For, Information Technology Project Management 9th Edition Kathy Sc...
 
IESVE for Early Stage Design and Planning
IESVE for Early Stage Design and PlanningIESVE for Early Stage Design and Planning
IESVE for Early Stage Design and Planning
 
AI revolution and Salesforce, Jiří Karpíšek
AI revolution and Salesforce, Jiří KarpíšekAI revolution and Salesforce, Jiří Karpíšek
AI revolution and Salesforce, Jiří Karpíšek
 
Portal Kombat : extension du réseau de propagande russe
Portal Kombat : extension du réseau de propagande russePortal Kombat : extension du réseau de propagande russe
Portal Kombat : extension du réseau de propagande russe
 
What's New in Teams Calling, Meetings and Devices April 2024
What's New in Teams Calling, Meetings and Devices April 2024What's New in Teams Calling, Meetings and Devices April 2024
What's New in Teams Calling, Meetings and Devices April 2024
 
Behind the Scenes From the Manager's Chair: Decoding the Secrets of Successfu...
Behind the Scenes From the Manager's Chair: Decoding the Secrets of Successfu...Behind the Scenes From the Manager's Chair: Decoding the Secrets of Successfu...
Behind the Scenes From the Manager's Chair: Decoding the Secrets of Successfu...
 
TopCryptoSupers 12thReport OrionX May2024
TopCryptoSupers 12thReport OrionX May2024TopCryptoSupers 12thReport OrionX May2024
TopCryptoSupers 12thReport OrionX May2024
 
The Value of Certifying Products for FDO _ Paul at FIDO Alliance.pdf
The Value of Certifying Products for FDO _ Paul at FIDO Alliance.pdfThe Value of Certifying Products for FDO _ Paul at FIDO Alliance.pdf
The Value of Certifying Products for FDO _ Paul at FIDO Alliance.pdf
 
Where to Learn More About FDO _ Richard at FIDO Alliance.pdf
Where to Learn More About FDO _ Richard at FIDO Alliance.pdfWhere to Learn More About FDO _ Richard at FIDO Alliance.pdf
Where to Learn More About FDO _ Richard at FIDO Alliance.pdf
 
How Red Hat Uses FDO in Device Lifecycle _ Costin and Vitaliy at Red Hat.pdf
How Red Hat Uses FDO in Device Lifecycle _ Costin and Vitaliy at Red Hat.pdfHow Red Hat Uses FDO in Device Lifecycle _ Costin and Vitaliy at Red Hat.pdf
How Red Hat Uses FDO in Device Lifecycle _ Costin and Vitaliy at Red Hat.pdf
 
Google I/O Extended 2024 Warsaw
Google I/O Extended 2024 WarsawGoogle I/O Extended 2024 Warsaw
Google I/O Extended 2024 Warsaw
 
Structuring Teams and Portfolios for Success
Structuring Teams and Portfolios for SuccessStructuring Teams and Portfolios for Success
Structuring Teams and Portfolios for Success
 

Chapter 11

  • 1. o In this session, you will learn to:  Identify various dimensions of quality processes  Define extension mechanisms of UML
  • 2. o The purpose of quality processes is to examine the quality of software models and products developed during the software development process. o Quality process includes:  Quality of the software development process that is used to develop the software system.  Quality of the software models that are used for the software development process.  Quality of the software product obtained at the end of the software development process.  Quality of the quality process itself.
  • 3. o The dimensions that need to be considered to produce a quality product are:  Technology: Describes the tools required for the software development process and the output generated.  Methodology: Describes the sequence of actions that need to be performed during the software development process to generate output.  Sociology: Describes the human resources, environmental conditions, and skills required for the software development process.
  • 4. o Quality checks that you need to apply to ensure the quality of software products are:  Data quality  Code quality  Model or architecture quality  Process quality  Management quality  Quality environment
  • 5. o Which of the following quality checks ensures that the series of activities and tasks performed to develop software products are correct? 1. Code quality 2. Process quality 3. Management quality 4. Model or architectural quality o Answer:  Process quality
  • 6. o Modeling enhances the quality of software products because it enables you to understand the existing software system and create the desired software system. o To improve the quality of software products, you need to analyze the effect of UML on the following quality aspects:  Quality of visualization: Refers to the quality of visual representation of the artifacts, diagrams, and models.  Quality of specification: Refers to the quality of the specifications that provide detailed description of UML artifacts and diagrams.  Quality of construction: Refers to the quality of the code generated from the UML models.  Quality of documentation: Refers to the quality of the document that provides guidelines for creating UML artifacts and diagrams in software models.
  • 7. o To verify and validate the quality of the software models, you need to apply quality assurance techniques. o The quality assurance techniques check the following:  Syntax: To ensure that the software models are syntactically correct.  Semantics: To ensure that the software models represent their intended meaning and their representation is consistent across the project.  Aesthetics: To ensure that the software models are symmetric and complete.
  • 8. o Quality process metamodel:  Defines a language for representing another model.  Enables you to understand and describe the elements of a quality process that are applicable to software development process.  Depicts the rules that describe how the elements of a quality process are connected and related to each other.
  • 9. o UML Notations for Elements of Quality Process: Notation Quality Process Element Process-component Start of process-component End of process-component Role Activity Flow of activity Task Output Iteration
  • 10. o Process-Component:  A process-component is a set of activities, tasks, roles, and output of the quality process.  The people who perform roles of a process-components execute activities and tasks to produce desired output.  For example: Requirement modeling, system designing, and testing can be process-components in an UML-based project.
  • 11. o Which of the following process-components indicates the execution of a sequence of process-components with varying intensity? 1. Iteration 2. Output 3. Task 4. Activity o Answer:  Iteration
  • 12. o UML provides several extension mechanisms that enable developers to modify the software models without changing the existing notations. o UML also provides additional modeling constructs that represent flow of events in a software system.
  • 13. o UML can be tailored according to a particular application domain. o The three types of extension elements provided by UML are:  Stereotypes: Extends the vocabulary of UML  Constraints: Extends the semantics of building blocks of UML  Tagged values: Extends the properties of building blocks of UML o Stereotypes:  Represent model elements for which UML does not have a specific notation.  Enable you to distinguish between representation of two similar elements in a UML diagram.  Are represented as a text string enclosed within guillemets (<< >>).
  • 14. o Constraints:  Represent restrictions and relationships that cannot be represented using UML notations.  Represent global conditions or conditions that affect several elements of UML diagrams.  Are enclosed within braces in UML diagrams. o Tagged values:  Store project management related information, such as date of creating an element and the development and test status of the element.  Store information about stereotyped model elements.  Can be attached to any model element.  Are represented as a pair of strings within braces.
  • 15. o While modeling a software system using UML, you need to consider the concurrency and synchronization of the events. o UML provides two standard stereotypes that apply to active classes for modeling the concurrent flow of events in a software system:  process: Represents that a process can execute concurrently with other processes.  thread: Represents that a thread can execute concurrently with other threads within the same process.
  • 16. o Steps to model multiple flows of events in UML class and interaction diagrams are: 1. Identify the concurrent flow of events in a software system. 2. Identify active objects based on the concurrent flow of events. 3. Group the common set of active objects into an active class. 4. Balance the distribution of responsibilities among the active classes. 5. Ensure that each active class is both tightly cohesive and loosely coupled. 6. Create class diagrams to represent static semantics of the system. 7. Create interaction diagrams to represent dynamic semantics of the system. 8. Apply the various types of communication methods among objects. 9. Attach constraints to ensure synchronization among objects.
  • 17. o History state enables a sequential composite state to remember the last sub-state that was active before the composite state. o UML provides two types of history states:  Shallow: Enables an application to remember and reactivate a state that is at the same nesting depth as the history state.  Deep: Enables an application to remember and reactivate a state that is nested at some depth within the composite state. o System designers use comments in UML diagrams to provide additional information to the programmers about a model element or a group of model elements. o You depict a comment in UML diagrams by using a note symbol.
  • 18. o In this session, you learned that:  The quality process is implemented between iterations and increments of the software development process to ensure the quality of software products.  The quality process checks the quality of output after each phase of software development process.  The software development and quality processes are together known as the quality software process.  The quality process consists of three dimensions:  Technology: Describes what the software development process produces.  Methodology: Describes how the software development process produces the software.  Sociology: Describes who produces the software in the software development process.
  • 19. The activities of each dimension of quality process occur simultaneously.  UML affects the quality of visualization, specification, construction, and documentation of software models.  To ensure the quality of software models, you need to check their syntax, semantics, and aesthetics.  The quality process metamodel depicts the elements of quality process and their relationships.  The elements of quality process are process-components, roles, activities, tasks, outputs, and iterations.  To modify UML, you can use the extension elements: stereotypes, constraints, and tagged values.  UML also provides additional modeling constructs, such as history states, notes, and comments.