SlideShare ist ein Scribd-Unternehmen logo
1 von 23
Object-Oriented Analysis and Design Using UML
Objectives


               In this session, you will learn to:
                  Identify various dimensions of quality processes
                  Define extension mechanisms of UML




    Ver. 1.0                                                         Slide 1 of 23
Object-Oriented Analysis and Design Using UML
Introducing Quality Process


               The purpose of quality processes is to examine the quality
               of software models and products developed during the
               software development process.
               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.




    Ver. 1.0                                                             Slide 2 of 23
Object-Oriented Analysis and Design Using UML
Identifying Dimensions of Quality Process


               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.




    Ver. 1.0                                                          Slide 3 of 23
Object-Oriented Analysis and Design Using UML
Identifying Dimensions of Quality Process (Contd.)


               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




    Ver. 1.0                                                        Slide 4 of 23
Object-Oriented Analysis and Design Using UML
Just a minute


               •   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




                   Answer:
                         Process quality


    Ver. 1.0                                                            Slide 5 of 23
Object-Oriented Analysis and Design Using UML
Quality by UML


               Modeling enhances the quality of software products
               because it enables you to understand the existing software
               system and create the desired software system.
               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.

    Ver. 1.0                                                               Slide 6 of 23
Object-Oriented Analysis and Design Using UML
Quality by UML (Contd.)


               To verify and validate the quality of the software models,
               you need to apply quality assurance techniques.
               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.




    Ver. 1.0                                                            Slide 7 of 23
Object-Oriented Analysis and Design Using UML
Describing Quality Process Metamodels


               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.




    Ver. 1.0                                                             Slide 8 of 23
Object-Oriented Analysis and Design Using UML
Describing Quality Process Metamodels (Contd.)


               UML Notations for Elements of Quality Process:




    Ver. 1.0                                                    Slide 9 of 23
Object-Oriented Analysis and Design Using UML
Describing Quality Process Metamodels (Contd.)


               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.




    Ver. 1.0                                                           Slide 10 of 23
Object-Oriented Analysis and Design Using UML
Just a minute


               •   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




                   Answer:
                         Iteration


    Ver. 1.0                                                         Slide 11 of 23
Object-Oriented Analysis and Design Using UML
Demo: Identifying Dimensions of Process-Components


               Problem Statement:
                  The supermarket stocks a set of items. Customers take the
                  items from different counters in required quantities and deposit
                  them at the billing counter. The clerk enters the code number
                  of the items and their respective quantity/units. The manager of
                  the super market plans to automate the existing system by
                  implementing Supermarket Automation Software (SAS).
                  The SAS should provide the following features:
                     Print the bill containing the serial number of the sales transaction,
                     the name of each item, code number, quantity, unit price and the
                     total price at the end of a sales transaction. The bill should indicate
                     the total amount payable.
                     Print the sales statistics for items that are sold in the supermarket
                     for any particular period. The sales statistics should indicate the
                     quantity of an item sold, the price realized, and the profit.




    Ver. 1.0                                                                      Slide 12 of 23
Object-Oriented Analysis and Design Using UML
Demo: Identifying Dimensions of Process-Components (Contd.)



                  Maintain the inventory of the various items of the super market.
                  The manager upon query should be able to see the inventory
                  details. In order to support inventory management, the inventory of
                  an item should be updated whenever an item is sold.
                  Enable an employee to update the inventory when a new supply
                  arrives.
               Which of the SDLC model is best suited for developing SAS?
               What are the roles, activities, tasks, and deliverables for the
               design process-component of the development process?
               Create a quality process metamodel for the design process
               component.




    Ver. 1.0                                                                Slide 13 of 23
Object-Oriented Analysis and Design Using UML
Demo: Identifying Dimensions of Process-Components (Contd.)


               Solution:



                     Microsoft Word
                        Document




    Ver. 1.0                                           Slide 14 of 23
Object-Oriented Analysis and Design Using UML
Understanding Extension Mechanism of UML


               UML provides several extension mechanisms that enable
               developers to modify the software models without changing
               the existing notations.
               UML also provides additional modeling constructs that
               represent flow of events in a software system.




    Ver. 1.0                                                     Slide 15 of 23
Object-Oriented Analysis and Design Using UML
Tailoring UML


               UML can be tailored according to a particular application
               domain.
               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
               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
                  (<< >>).
    Ver. 1.0                                                            Slide 16 of 23
Object-Oriented Analysis and Design Using UML
Tailoring UML (Contd.)


               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.
               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.



    Ver. 1.0                                                             Slide 17 of 23
Object-Oriented Analysis and Design Using UML
Modeling Additional Constructs


               While modeling a software system using UML, you need to
               consider the concurrency and synchronization of the events.
               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.




    Ver. 1.0                                                          Slide 18 of 23
Object-Oriented Analysis and Design Using UML
Modeling Additional Constructs (Contd.)


               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.




    Ver. 1.0                                                              Slide 19 of 23
Object-Oriented Analysis and Design Using UML
Modeling Additional Constructs (Contd.)


               1. Apply the various types of communication methods among
                  objects.
               2. Attach constraints to ensure synchronization among objects.




    Ver. 1.0                                                           Slide 20 of 23
Object-Oriented Analysis and Design Using UML
Modeling Additional Constructs (Contd.)


               History state enables a sequential composite state to
               remember the last sub-state that was active before the
               composite state.
               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.
               System designers use comments in UML diagrams to
               provide additional information to the programmers about a
               model element or a group of model elements.
               You depict a comment in UML diagrams by using a note
               symbol.



    Ver. 1.0                                                            Slide 21 of 23
Object-Oriented Analysis and Design Using UML
Summary


               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.



    Ver. 1.0                                                                Slide 22 of 23
Object-Oriented Analysis and Design Using UML
Summary (Contd.)


               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.



    Ver. 1.0                                                        Slide 23 of 23

Weitere ähnliche Inhalte

Was ist angesagt?

OO Development 3 - Models And UML
OO Development 3 - Models And UMLOO Development 3 - Models And UML
OO Development 3 - Models And UMLRandy Connolly
 
5 - Architetture Software - Metamodelling and the Model Driven Architecture
5 - Architetture Software - Metamodelling and the Model Driven Architecture5 - Architetture Software - Metamodelling and the Model Driven Architecture
5 - Architetture Software - Metamodelling and the Model Driven ArchitectureMajong DevJfu
 
CS8592 Object Oriented Analysis & Design - UNIT IV
CS8592 Object Oriented Analysis & Design - UNIT IV CS8592 Object Oriented Analysis & Design - UNIT IV
CS8592 Object Oriented Analysis & Design - UNIT IV pkaviya
 
08 ooad uml-10
08 ooad uml-1008 ooad uml-10
08 ooad uml-10Niit Care
 
[2015/2016] Modern development paradigms
[2015/2016] Modern development paradigms[2015/2016] Modern development paradigms
[2015/2016] Modern development paradigmsIvano Malavolta
 
A&D - Object Oriented Analysis using UML
A&D - Object Oriented Analysis using UMLA&D - Object Oriented Analysis using UML
A&D - Object Oriented Analysis using UMLvinay arora
 
Unit 1- OOAD ppt
Unit 1- OOAD  pptUnit 1- OOAD  ppt
Unit 1- OOAD pptPRIANKA R
 
2 trasnformation design_patterns-sandeep_katoch
2 trasnformation design_patterns-sandeep_katoch2 trasnformation design_patterns-sandeep_katoch
2 trasnformation design_patterns-sandeep_katochIBM
 
Uml Diagrams for Web Developers
Uml Diagrams for Web DevelopersUml Diagrams for Web Developers
Uml Diagrams for Web DevelopersDave Kelleher
 
4+1view architecture
4+1view architecture4+1view architecture
4+1view architecturedrewz lin
 
Uml Explained Step ByStep
Uml Explained Step ByStepUml Explained Step ByStep
Uml Explained Step ByStepWaseem Khan
 
Introducing Uml And Development Process
Introducing Uml And Development ProcessIntroducing Uml And Development Process
Introducing Uml And Development ProcessTerry Cho
 
Architectural views
Architectural viewsArchitectural views
Architectural viewsSaleem Khan
 
Patterns in Python
Patterns in PythonPatterns in Python
Patterns in Pythondn
 
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 ENTERPRISEsreeja_rajesh
 

Was ist angesagt? (18)

Software Patterns
Software PatternsSoftware Patterns
Software Patterns
 
OO Development 3 - Models And UML
OO Development 3 - Models And UMLOO Development 3 - Models And UML
OO Development 3 - Models And UML
 
5 - Architetture Software - Metamodelling and the Model Driven Architecture
5 - Architetture Software - Metamodelling and the Model Driven Architecture5 - Architetture Software - Metamodelling and the Model Driven Architecture
5 - Architetture Software - Metamodelling and the Model Driven Architecture
 
CS8592 Object Oriented Analysis & Design - UNIT IV
CS8592 Object Oriented Analysis & Design - UNIT IV CS8592 Object Oriented Analysis & Design - UNIT IV
CS8592 Object Oriented Analysis & Design - UNIT IV
 
08 ooad uml-10
08 ooad uml-1008 ooad uml-10
08 ooad uml-10
 
[2015/2016] Modern development paradigms
[2015/2016] Modern development paradigms[2015/2016] Modern development paradigms
[2015/2016] Modern development paradigms
 
A&D - Object Oriented Analysis using UML
A&D - Object Oriented Analysis using UMLA&D - Object Oriented Analysis using UML
A&D - Object Oriented Analysis using UML
 
Unit 1- OOAD ppt
Unit 1- OOAD  pptUnit 1- OOAD  ppt
Unit 1- OOAD ppt
 
Design patterns
Design patternsDesign patterns
Design patterns
 
2 trasnformation design_patterns-sandeep_katoch
2 trasnformation design_patterns-sandeep_katoch2 trasnformation design_patterns-sandeep_katoch
2 trasnformation design_patterns-sandeep_katoch
 
Uml Diagrams for Web Developers
Uml Diagrams for Web DevelopersUml Diagrams for Web Developers
Uml Diagrams for Web Developers
 
4+1view architecture
4+1view architecture4+1view architecture
4+1view architecture
 
Uml Explained Step ByStep
Uml Explained Step ByStepUml Explained Step ByStep
Uml Explained Step ByStep
 
Introducing Uml And Development Process
Introducing Uml And Development ProcessIntroducing Uml And Development Process
Introducing Uml And Development Process
 
Architectural views
Architectural viewsArchitectural views
Architectural views
 
Patterns in Python
Patterns in PythonPatterns in Python
Patterns in Python
 
Design techniques
Design techniquesDesign techniques
Design techniques
 
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
 

Andere mochten auch

Introduction to Sql
Introduction to SqlIntroduction to Sql
Introduction to SqlUmair Shakir
 
04 ooad uml-04
04 ooad uml-0404 ooad uml-04
04 ooad uml-04Niit Care
 
0531-981-01-90 VE 0532-335-75-06 İKİNCİ EL KİTAP ALANLAR ÇUKURCUMADA KİTAP A...
0531-981-01-90 VE  0532-335-75-06 İKİNCİ EL KİTAP ALANLAR ÇUKURCUMADA KİTAP A...0531-981-01-90 VE  0532-335-75-06 İKİNCİ EL KİTAP ALANLAR ÇUKURCUMADA KİTAP A...
0531-981-01-90 VE 0532-335-75-06 İKİNCİ EL KİTAP ALANLAR ÇUKURCUMADA KİTAP A...antika alanlar
 
Arunava Datta_Portfolio 2015
Arunava Datta_Portfolio 2015Arunava Datta_Portfolio 2015
Arunava Datta_Portfolio 2015Arunava Datta
 
استدراكي - تكنولوجيا عاشر
استدراكي -  تكنولوجيا  عاشراستدراكي -  تكنولوجيا  عاشر
استدراكي - تكنولوجيا عاشرHaneen Droubi
 

Andere mochten auch (12)

Introduction to Sql
Introduction to SqlIntroduction to Sql
Introduction to Sql
 
Updated cv talib hossain
Updated cv talib hossainUpdated cv talib hossain
Updated cv talib hossain
 
ibrahim cv 1
ibrahim cv 1ibrahim cv 1
ibrahim cv 1
 
04 ooad uml-04
04 ooad uml-0404 ooad uml-04
04 ooad uml-04
 
COCA COLA
COCA COLACOCA COLA
COCA COLA
 
Chocolate death
Chocolate deathChocolate death
Chocolate death
 
0531-981-01-90 VE 0532-335-75-06 İKİNCİ EL KİTAP ALANLAR ÇUKURCUMADA KİTAP A...
0531-981-01-90 VE  0532-335-75-06 İKİNCİ EL KİTAP ALANLAR ÇUKURCUMADA KİTAP A...0531-981-01-90 VE  0532-335-75-06 İKİNCİ EL KİTAP ALANLAR ÇUKURCUMADA KİTAP A...
0531-981-01-90 VE 0532-335-75-06 İKİNCİ EL KİTAP ALANLAR ÇUKURCUMADA KİTAP A...
 
tesis
tesistesis
tesis
 
Arunava Datta_Portfolio 2015
Arunava Datta_Portfolio 2015Arunava Datta_Portfolio 2015
Arunava Datta_Portfolio 2015
 
Perang Jamal dan Perang Siffin
Perang Jamal dan Perang SiffinPerang Jamal dan Perang Siffin
Perang Jamal dan Perang Siffin
 
استدراكي - تكنولوجيا عاشر
استدراكي -  تكنولوجيا  عاشراستدراكي -  تكنولوجيا  عاشر
استدراكي - تكنولوجيا عاشر
 
Golongan Buwayh
Golongan BuwayhGolongan Buwayh
Golongan Buwayh
 

Ähnlich wie 12 ooad uml-16

14 ooad uml-19
14 ooad uml-1914 ooad uml-19
14 ooad uml-19Niit Care
 
Software Process in software engineering
Software Process in software engineeringSoftware Process in software engineering
Software Process in software engineeringMuhammadTalha436
 
Power point presentation 1
Power point presentation 1Power point presentation 1
Power point presentation 1Student
 
Book of Uml
Book of UmlBook of Uml
Book of UmlNiit
 
01 ooad uml-01
01 ooad uml-0101 ooad uml-01
01 ooad uml-01Niit Care
 
BIS09 Application Development - III
BIS09 Application Development - IIIBIS09 Application Development - III
BIS09 Application Development - IIIPrithwis Mukerjee
 
Agile in Action - Act 1 (Set Up, Planning, Requirements and Architecture)
Agile in Action - Act 1 (Set Up, Planning, Requirements and Architecture)Agile in Action - Act 1 (Set Up, Planning, Requirements and Architecture)
Agile in Action - Act 1 (Set Up, Planning, Requirements and Architecture)Spiffy
 
CS8494 SOFTWARE ENGINEERING Unit-1
CS8494 SOFTWARE ENGINEERING Unit-1CS8494 SOFTWARE ENGINEERING Unit-1
CS8494 SOFTWARE ENGINEERING Unit-1SIMONTHOMAS S
 
Best Practices in Object Oriented Analysis and Design
Best Practices in Object Oriented Analysis and DesignBest Practices in Object Oriented Analysis and Design
Best Practices in Object Oriented Analysis and Designnguyencraft01
 
A generic view of software engineering
A generic view of software engineeringA generic view of software engineering
A generic view of software engineeringInocentshuja Ahmad
 
MODEL: MOdel DrivEn and quaLity
MODEL: MOdel DrivEn and quaLityMODEL: MOdel DrivEn and quaLity
MODEL: MOdel DrivEn and quaLityFederico Villa
 
Chapter-2 ppt for the MBA 4rh seme6y.pdf
Chapter-2 ppt for the MBA 4rh seme6y.pdfChapter-2 ppt for the MBA 4rh seme6y.pdf
Chapter-2 ppt for the MBA 4rh seme6y.pdfVikasRai405977
 

Ähnlich wie 12 ooad uml-16 (20)

uml test
uml testuml test
uml test
 
Chapter 11
Chapter 11Chapter 11
Chapter 11
 
14 ooad uml-19
14 ooad uml-1914 ooad uml-19
14 ooad uml-19
 
Software Process in software engineering
Software Process in software engineeringSoftware Process in software engineering
Software Process in software engineering
 
SE chapter 2
SE chapter 2SE chapter 2
SE chapter 2
 
Slides chapter 2
Slides chapter 2Slides chapter 2
Slides chapter 2
 
Power point presentation 1
Power point presentation 1Power point presentation 1
Power point presentation 1
 
Book of Uml
Book of UmlBook of Uml
Book of Uml
 
01 ooad uml-01
01 ooad uml-0101 ooad uml-01
01 ooad uml-01
 
BIS09 Application Development - III
BIS09 Application Development - IIIBIS09 Application Development - III
BIS09 Application Development - III
 
UNIT 01 SMD.pptx
UNIT 01 SMD.pptxUNIT 01 SMD.pptx
UNIT 01 SMD.pptx
 
Agile in Action - Act 1 (Set Up, Planning, Requirements and Architecture)
Agile in Action - Act 1 (Set Up, Planning, Requirements and Architecture)Agile in Action - Act 1 (Set Up, Planning, Requirements and Architecture)
Agile in Action - Act 1 (Set Up, Planning, Requirements and Architecture)
 
Ch02 process a generic view
Ch02 process a generic viewCh02 process a generic view
Ch02 process a generic view
 
Chapter1
Chapter1Chapter1
Chapter1
 
CS8494 SOFTWARE ENGINEERING Unit-1
CS8494 SOFTWARE ENGINEERING Unit-1CS8494 SOFTWARE ENGINEERING Unit-1
CS8494 SOFTWARE ENGINEERING Unit-1
 
Unit_I.pptx
Unit_I.pptxUnit_I.pptx
Unit_I.pptx
 
Best Practices in Object Oriented Analysis and Design
Best Practices in Object Oriented Analysis and DesignBest Practices in Object Oriented Analysis and Design
Best Practices in Object Oriented Analysis and Design
 
A generic view of software engineering
A generic view of software engineeringA generic view of software engineering
A generic view of software engineering
 
MODEL: MOdel DrivEn and quaLity
MODEL: MOdel DrivEn and quaLityMODEL: MOdel DrivEn and quaLity
MODEL: MOdel DrivEn and quaLity
 
Chapter-2 ppt for the MBA 4rh seme6y.pdf
Chapter-2 ppt for the MBA 4rh seme6y.pdfChapter-2 ppt for the MBA 4rh seme6y.pdf
Chapter-2 ppt for the MBA 4rh seme6y.pdf
 

Mehr von Niit Care (20)

Ajs 1 b
Ajs 1 bAjs 1 b
Ajs 1 b
 
Ajs 4 b
Ajs 4 bAjs 4 b
Ajs 4 b
 
Ajs 4 a
Ajs 4 aAjs 4 a
Ajs 4 a
 
Ajs 4 c
Ajs 4 cAjs 4 c
Ajs 4 c
 
Ajs 3 b
Ajs 3 bAjs 3 b
Ajs 3 b
 
Ajs 3 a
Ajs 3 aAjs 3 a
Ajs 3 a
 
Ajs 3 c
Ajs 3 cAjs 3 c
Ajs 3 c
 
Ajs 2 b
Ajs 2 bAjs 2 b
Ajs 2 b
 
Ajs 2 a
Ajs 2 aAjs 2 a
Ajs 2 a
 
Ajs 2 c
Ajs 2 cAjs 2 c
Ajs 2 c
 
Ajs 1 a
Ajs 1 aAjs 1 a
Ajs 1 a
 
Ajs 1 c
Ajs 1 cAjs 1 c
Ajs 1 c
 
Dacj 4 2-c
Dacj 4 2-cDacj 4 2-c
Dacj 4 2-c
 
Dacj 4 2-b
Dacj 4 2-bDacj 4 2-b
Dacj 4 2-b
 
Dacj 4 2-a
Dacj 4 2-aDacj 4 2-a
Dacj 4 2-a
 
Dacj 4 1-c
Dacj 4 1-cDacj 4 1-c
Dacj 4 1-c
 
Dacj 4 1-b
Dacj 4 1-bDacj 4 1-b
Dacj 4 1-b
 
Dacj 4 1-a
Dacj 4 1-aDacj 4 1-a
Dacj 4 1-a
 
Dacj 1-2 b
Dacj 1-2 bDacj 1-2 b
Dacj 1-2 b
 
Dacj 1-3 c
Dacj 1-3 cDacj 1-3 c
Dacj 1-3 c
 

Kürzlich hochgeladen

08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?Igalia
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024The Digital Insurer
 
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 2024The Digital Insurer
 
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 AutomationSafe Software
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonAnna Loughnan Colquhoun
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Servicegiselly40
 
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 MountPuma Security, LLC
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 
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...Igalia
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxKatpro Technologies
 
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessPixlogix Infotech
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
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...Drew Madelung
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...apidays
 
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 SolutionsEnterprise Knowledge
 

Kürzlich hochgeladen (20)

08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
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
 
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
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
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
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
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...
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
 
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your Business
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
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...
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
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
 

12 ooad uml-16

  • 1. Object-Oriented Analysis and Design Using UML Objectives In this session, you will learn to: Identify various dimensions of quality processes Define extension mechanisms of UML Ver. 1.0 Slide 1 of 23
  • 2. Object-Oriented Analysis and Design Using UML Introducing Quality Process The purpose of quality processes is to examine the quality of software models and products developed during the software development process. 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. Ver. 1.0 Slide 2 of 23
  • 3. Object-Oriented Analysis and Design Using UML Identifying Dimensions of Quality Process 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. Ver. 1.0 Slide 3 of 23
  • 4. Object-Oriented Analysis and Design Using UML Identifying Dimensions of Quality Process (Contd.) 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 Ver. 1.0 Slide 4 of 23
  • 5. Object-Oriented Analysis and Design Using UML Just a minute • 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 Answer: Process quality Ver. 1.0 Slide 5 of 23
  • 6. Object-Oriented Analysis and Design Using UML Quality by UML Modeling enhances the quality of software products because it enables you to understand the existing software system and create the desired software system. 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. Ver. 1.0 Slide 6 of 23
  • 7. Object-Oriented Analysis and Design Using UML Quality by UML (Contd.) To verify and validate the quality of the software models, you need to apply quality assurance techniques. 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. Ver. 1.0 Slide 7 of 23
  • 8. Object-Oriented Analysis and Design Using UML Describing Quality Process Metamodels 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. Ver. 1.0 Slide 8 of 23
  • 9. Object-Oriented Analysis and Design Using UML Describing Quality Process Metamodels (Contd.) UML Notations for Elements of Quality Process: Ver. 1.0 Slide 9 of 23
  • 10. Object-Oriented Analysis and Design Using UML Describing Quality Process Metamodels (Contd.) 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. Ver. 1.0 Slide 10 of 23
  • 11. Object-Oriented Analysis and Design Using UML Just a minute • 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 Answer: Iteration Ver. 1.0 Slide 11 of 23
  • 12. Object-Oriented Analysis and Design Using UML Demo: Identifying Dimensions of Process-Components Problem Statement: The supermarket stocks a set of items. Customers take the items from different counters in required quantities and deposit them at the billing counter. The clerk enters the code number of the items and their respective quantity/units. The manager of the super market plans to automate the existing system by implementing Supermarket Automation Software (SAS). The SAS should provide the following features: Print the bill containing the serial number of the sales transaction, the name of each item, code number, quantity, unit price and the total price at the end of a sales transaction. The bill should indicate the total amount payable. Print the sales statistics for items that are sold in the supermarket for any particular period. The sales statistics should indicate the quantity of an item sold, the price realized, and the profit. Ver. 1.0 Slide 12 of 23
  • 13. Object-Oriented Analysis and Design Using UML Demo: Identifying Dimensions of Process-Components (Contd.) Maintain the inventory of the various items of the super market. The manager upon query should be able to see the inventory details. In order to support inventory management, the inventory of an item should be updated whenever an item is sold. Enable an employee to update the inventory when a new supply arrives. Which of the SDLC model is best suited for developing SAS? What are the roles, activities, tasks, and deliverables for the design process-component of the development process? Create a quality process metamodel for the design process component. Ver. 1.0 Slide 13 of 23
  • 14. Object-Oriented Analysis and Design Using UML Demo: Identifying Dimensions of Process-Components (Contd.) Solution: Microsoft Word Document Ver. 1.0 Slide 14 of 23
  • 15. Object-Oriented Analysis and Design Using UML Understanding Extension Mechanism of UML UML provides several extension mechanisms that enable developers to modify the software models without changing the existing notations. UML also provides additional modeling constructs that represent flow of events in a software system. Ver. 1.0 Slide 15 of 23
  • 16. Object-Oriented Analysis and Design Using UML Tailoring UML UML can be tailored according to a particular application domain. 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 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 (<< >>). Ver. 1.0 Slide 16 of 23
  • 17. Object-Oriented Analysis and Design Using UML Tailoring UML (Contd.) 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. 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. Ver. 1.0 Slide 17 of 23
  • 18. Object-Oriented Analysis and Design Using UML Modeling Additional Constructs While modeling a software system using UML, you need to consider the concurrency and synchronization of the events. 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. Ver. 1.0 Slide 18 of 23
  • 19. Object-Oriented Analysis and Design Using UML Modeling Additional Constructs (Contd.) 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. Ver. 1.0 Slide 19 of 23
  • 20. Object-Oriented Analysis and Design Using UML Modeling Additional Constructs (Contd.) 1. Apply the various types of communication methods among objects. 2. Attach constraints to ensure synchronization among objects. Ver. 1.0 Slide 20 of 23
  • 21. Object-Oriented Analysis and Design Using UML Modeling Additional Constructs (Contd.) History state enables a sequential composite state to remember the last sub-state that was active before the composite state. 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. System designers use comments in UML diagrams to provide additional information to the programmers about a model element or a group of model elements. You depict a comment in UML diagrams by using a note symbol. Ver. 1.0 Slide 21 of 23
  • 22. Object-Oriented Analysis and Design Using UML Summary 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. Ver. 1.0 Slide 22 of 23
  • 23. Object-Oriented Analysis and Design Using UML Summary (Contd.) 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. Ver. 1.0 Slide 23 of 23

Hinweis der Redaktion

  1. Initiate the session by explaining the session objectives to the students. Tell the students that the quality of software models and products can be examined by using certain processes called quality processes. These processes involve examining the development process, the software model, the product, and the quality process itself. The quality of a software product depends largely on how well the requirements are modeled and how well the requirements are translated into a design. UML is used to model the requirements and create a design for a software system. Therefore, UML plays an important role in the quality processes of an organization.
  2. Explain the purpose of a quality process. Also explain that a quality process includes the quality of the development process, the software models, the product, and the quality process itself. Also explain quality software process by using the figure given on the slide.
  3. Explain the dimensions that need to be considered to produce a quality product. Also explain the orthogonal relationship among the quality process dimensions.
  4. Tell the students that the quality process helps developers to produce software products according to customer needs. It also improves productivity by minimizing the cost required to fix errors. Also tell the students that the earlier in the software development life cycle a defect is found, the less expensive it is to fix. Next, explain the checks that you need to apply to ensure the quality of software products. Organizing people, also known as team organization, is an important aspect of quality environment. You may discuss about team organization in your session. The following topic provides information on team organization. Team Organization The people who are a part of the development and quality teams are responsible for producing quality software products. Therefore, you need to organize and manage people based on their responsibilities in the software development and quality processes. This is known as team organization. The responsibilities of people can be organized in the following three spaces: Problem space Solution space Background space Problem Space In the problem space, you document and analyze the requirements to understand the problem. The problem space includes business analyst, user, end user and domain expert. A business analyst understands and documents the customer requirements using UML notations and diagrams to provide input to system designers. A user is the person who uses the software system within the business environment. For example, in case of the bank ATM system, the branch managers and cashiers of the bank are users. An end user is the person who interacts with the software system and initiates the operations of the software system. For example, in case of the bank ATM system, the bank customers are the end users. A domain expert provides input to re-factor and correct the requirements of the software system that helps the business analyst to create accurate requirements models. In the problem space, the business analyst needs to interact with the user, end user, and domain expert to understand the customer requirements, as shown in the following figure. &lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;INSERT FIGURE&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; Solution Space In the solution space, you understand and describe the solution for the problem described in the problem space. The solution space includes system designer, database designer, interface designer, programmer, prototype developer, and tester. A system designer creates a model for the solution that is implemented by the programmer. Therefore, the system designer needs to interact with the business analyst to understand the requirements. The system designer also needs to interact with the programmer to explain the design. A database designer creates database schemas with the help of UML class diagrams. An interface designer is concerned with the layout, design, and navigation of the interfaces. A tester controls and checks the quality of the code that is generated by a programmer. A prototype developer is a person who creates a prototype before the actual system is developed. In the solution space, the system designer needs to interact with the database designer, interface designer, programmer, prototype developer, and tester to create a model of the software system, as shown in the following figure. &lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;INSERT FIGURE&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; Background Space In the background space, you control the managerial and architectural aspects of software development process. The managerial aspect includes planning resources, budgeting, and scheduling the project. The architectural aspect includes understanding the architecture of the existing system and creating the architecture of the desired software system or solution. The background space includes system architect, prototype developer, database manager, project manager, business sponsor, and steering committee members. A system architect creates the architecture of the system and verifies whether or not the design developed by the system designer can be implemented in the real world. The system designer and prototype developer together examine the application servers and packages before implementing them. A database manager manages the database created by the database designer in the solution space. A project manager plans and organizes the project, obtains resources, and reports the progress of the project to the steering committee. A project manager also performs risk management. The steering committee members analyze the prototypes and output of the project to check the quality of the software product. The steering committee members include business sponsors and domain experts. A business sponsor initiates the project and tracks the progress of the project. The following figure shows the interaction between the system architect, prototype developer, database manager, project manager, business sponsor, and steering committee members of a project in background space. &lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;INSERT FIGURE&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;
  5. Explain the role of modeling in producing quality software products. Also explain the effect of UML on the various quality aspects.
  6. Explain the elements that are checked to verify and validate the quality of the software models. Students might get confused between quality assurance and testing or quality control. Quality assurance is not the same as quality control or testing. The goal of quality control is to: Measure the software products against pre-defined standards. Identify errors and correct them to obtain an error-free, quality product. On the contrary, quality assurance deals with overall management of quality. Management of quality includes organizing people, processes, and the physical environment. In other words, quality assurance creates and manages quality environment for developing the product. After the product is completely developed, the product is tested where quality control comes into action.
  7. Tell the students that to understand the dimensions of a quality process, they need to create a quality process metamodel. Explain the concept of a quality process metamodel by using the example given in the student guide.
  8. Explain the UML notations for the elements of a quality process.
  9. Explain role, activity, task, output, and iteration.
  10. Tell the students that developers may need to modify the software models to improve the quality of the output. The extension mechanism of UML enables developers to modify the software models without changing the existing notations.
  11. Enumerate the extension elements of UML. Explain the use of stereotypes by using the examples given in the student guide.
  12. Explain the use of constraints and tagged values by using the examples given in the student guide.
  13. Explain the process and thread stereotypes provided by UML by using the examples given in the student guide. Also explain synchronization of the flow of events by using the example given in the student guide.
  14. Explain that UML class and interaction diagrams allow you to depict active classes and objects and represent communication and synchronization among them. Next, explain the steps to model multiple flows of events in UML class and interaction diagrams.
  15. Explain the two types of history states and how they are denoted in a UML diagram. Next, explain comments and notes in a UML diagram by using the example given in the student guide.