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




               Prepared by Gio Friginal
Copyright © 2011 Pearson Education, Inc. Publishing as Prentice Hall
Learning Objectives

• Understand what object-oriented systems analysis
  and design is and appreciate its usefulness.
• Comprehend the concepts of unified modeling
  language (UML), the standard approach for modeling
  a system in the object-oriented world.
• Apply the steps used in UML to break down the
  system into a use case model and then a class
  model.
• Diagram systems with the UML toolset so they can be
  described and properly designed.
• Document and communicate the newly modeled
  object-oriented system to users and other analysts.

                                                 10-2
Introduction

• There have been basically 3 approaches in information system
  development area
    • process-oriented
    • data-oriented
    • object-oriented approaches
• As information technology (both hardware and software) has
  been advancing, people have moved from the earliest process-
  oriented approach to data-oriented approach and now begun to
  adopt the latest object-oriented analysis methodology
• Unlike its two predecessors that focus either on process or data,
  the object-oriented approach combines data and processes
  (called methods) into single entities called objects


                                                              10-3
Object-Oriented Analysis and
Design
• Works well in situations where
  complicated systems are undergoing
  continuous maintenance, adaptation,
  and design
• Objects, classes are reusable
• The Unified Modeling Language (UML)
  is an industry standard for modeling
  object-oriented systems.

                                     10-4
Object-Oriented Analysis and
Design (Continued)
• Reusability
  • Recycling of program parts should reduce
    the costs of development in computer-
    based systems.
• Maintaining systems
  • Making a change in one object has a
    minimal impact on other objects.


                                          10-5
Major Topics

•   Object-oriented concepts
•   CRC cards and object think
•   Unified Modeling Language
•   Use case and other UML diagrams
•   Packages
•   Using UML


                                      10-6
Object-Oriented Concepts

•   Class
•   Object
•   Inheritance
•   Polymorphism
•   Encapsulation



                           10-7
Class

• Defines the set of shared attributes and
  behaviors found in each object in the class
• Should have a name that differentiates it
  from all other classes
• Instantiate is when an object is created from
  a class




                                             10-8
Class




        10-9
Objects

• Persons, places, or things that are
  relevant to the system being analyzed
• May be customers, items, orders, and
  so on
• May be GUI displays or text areas on a
  display


                                      10-10
Objects




          10-11
Objects




          10-12
Inheritance

• When a derived class inherits all the
  attributes and behaviors of the base
  class
• Reduces programming labor by using
  common objects easily
• A feature only found in object-oriented
  systems

                                       10-13
A Class Diagram Showing Inheritance (Figure 10.2)
                     Car and truck are specific
                     examples of vehicles and
                     inherit the characteristics of
                     the more general class
                     vehicle.




                                                      10-14
Polymorphism

• Message gives different meanings to
  different objects




                                        10-15
Encapsulation

• All data and methods are self-contained




                                      10-16
CRC Cards and Object Think

• CRC
  • Class
  • Responsibilities
  • Collaborators
• CRC cards are used to represent the
  responsibilities of classes and the
  interaction between the classes.

                                        10-17
Four CRC Cards for Course Offerings Show How Analysts Fill in the
Details for Classes, Responsibilities, and Collaborators, as well as for
Object Think Statements and Property Names (Figure 10.3)




                                                                   10-18
Interacting during a CRC Session


• Identify all the classes you can.
• Create scenarios.
• Identify and refine responsibilities.




                                          10-19
The Unified Modeling Language
(UML) Concepts and Diagrams
• Things
• Relationships
• Diagrams




                                10-20
Things

• Structural things are
   • Classes, interfaces, use cases, and other elements that
     provide a way to create models
• Behavioral things
   • Describe how things work
   • Interactions and state machines
• Group things
   • Used to define boundaries
• Annotational things
   • Can add notes to the diagrams



                                                               10-21
Relationships

• Structural relationships
  • Tie things together in structural diagrams
• Behavioral relationships
  • Used in behavioral diagrams




                                            10-22
Diagrams

• Structural diagrams
  • Used to describe the relation between
    classes
• Behavior diagrams
  • Used to describe the interaction between
    people (actors) and a use case (how the
    actors use the system)


                                            10-23
Commonly Used UML Diagrams

• Use case diagram
  • Describing how the system is used
  • The starting point for UML modeling
• Use case scenario
  • A verbal articulation of exceptions to the main
    behavior described by the primary use case
• Activity diagram
  • Illustrates the overall flow of activities


                                                      10-24
Commonly Used UML Diagrams
(Continued)
• Sequence diagrams
  • Show the sequence of activities and class
    relationships.
• Class diagrams
  • Show classes and relationships.
• Statechart diagrams
  • Show the state transitions.


                                           10-25
An Overview of UML Diagrams Showing How Each
Diagram Leads to the Development of Other UML
Diagrams (Figure 10.5)




                                                10-26
1. Use Case Modeling

    • Describes what a system does without
      describing how the system does
            • A logical model of the system
    • Use case is a view of the system
      requirements
    • Analyst works with business experts to
      develop requirements

                       Copyright © 2011 Pearson Education, Inc. Publishing as
Kendall & Kendall                         Prentice Hall                         2-27
Use Case Diagram

    • Actor
            • Refers to a particular role of a user of the system
            • Similar to external entities; they exist outside of
              the system
    • Use case symbols
            • An oval indicating the task of the use case
    • Connecting lines
            • Arrows and lines used to diagram behavioral
              relationships

                         Copyright © 2011 Pearson Education, Inc. Publishing as
Kendall & Kendall                           Prentice Hall                         2-28
Actor

    • Divided into two groups
            • Primary actors:
                    • Supply data or receive information from the
                      system.
                    • Provide details on what the use case should do.
            • Supporting actors:
                    • Help to keep the system running or provide
                      help.
                    • The people who run the help desk, the
                      analysts, programmers, and so on.

                             Copyright © 2011 Pearson Education, Inc. Publishing as
Kendall & Kendall                               Prentice Hall                         2-29
A Use Case Always Provides
 Three Things
    • An actor that initiates an event
    • The event that triggers a use case
    • The use case that performs the actions
      triggered by the event




                    Copyright © 2011 Pearson Education, Inc. Publishing as
Kendall & Kendall                      Prentice Hall                         2-30
Some Components of Use Case Diagrams Showing
 Actors, Use Cases, and Relationships for a Student
 Enrollment Example (Figure 2.13)




                    Copyright © 2011 Pearson Education, Inc. Publishing as
Kendall & Kendall                      Prentice Hall                         2-31
Examples of Use Cases, Behavioral Relationships
 for Student Enrollment (Figure 2.14)




                    Copyright © 2011 Pearson Education, Inc. Publishing as
Kendall & Kendall                      Prentice Hall                         2-32
Example




          10-33
Scope

    • System scope defines its boundaries:
            • What is in or outside the system
            • Project has a budget that helps to define
              scope
            • Project has a start and an end time
    • Actors are always outside of scope
    • Communication lines are the boundaries
      and define the scope

                       Copyright © 2011 Pearson Education, Inc. Publishing as
Kendall & Kendall                         Prentice Hall                         2-34
Example of Scope




                   10-35
Developing Use Case Diagrams

    • Review the business specifications and identify the
      actors involved.
    • Identify the high-level events and develop the
      primary use cases that describe those events and
      how the actors initiate them.
    • Review each primary use case to determine the
      possible variations of flow through the use case.
    • The context-level data flow diagram could act as a
      starting point for creating a use case.



                    Copyright © 2011 Pearson Education, Inc. Publishing as
Kendall & Kendall                      Prentice Hall                         2-36
A Use Case Diagram Representing a System
 Used to Plan a Conference (Figure 2.15 )




                    Copyright © 2011 Pearson Education, Inc. Publishing as
Kendall & Kendall                      Prentice Hall                         2-37
10-38
2. Developing the Use Case
 Scenarios
    • The description of the use case
    • Three main areas:
            • Use case identifiers and initiators
            • Steps performed
            • Conditions, assumptions, and questions




                       Copyright © 2011 Pearson Education, Inc. Publishing as
Kendall & Kendall                         Prentice Hall                         2-39
A Use Case Scenario Is Divided into Three Sections (Figure 2.16)
Use case name: Register for Conference                                                                                UniqueID: Conf RG 003

Area:              Conference Planning

Actor(s):          Participant

Stakeholder        Conference Sponsor, Conference Speakers

Level              Blue

Description:       Allow conference participant to register online for the conference using a secure Web site.

Triggering Event: Participant uses Conference Registration Web site, enters userID and password, and clicks the logon button.

Trigger type:       External      Temporal

Steps Performed (Main Path)                                                                                    Information for Steps

1.      Participant logs in using the secure Web server                                                        userID, Password


More steps included here…
12.     Successful Registration Confirmation Web page is sent to the participant                               Registration Record Confirmation Number


Preconditions:                       Participant has already registered and has created a user account.

Postconditions:                      Participant has successfully registered for the conference.

Assumptions:                         Participant has a browser and a valid userID and password.

Success Guarantee:                   Participant has registered for the conference and is enrolled in all selected sessions.

Minimum Guarantee:                   Participant was able to logon.

Requirements Met:                    Allow conference participants to be able to register for the conference using a secure Web site.


Outstanding Issues:                  How should a rejected credit card be handled?

Priority:                            High

Risk:                                Medium



                                                          Copyright © 2011 Pearson Education, Inc. Publishing as
      Kendall & Kendall                                                      Prentice Hall                                                               2-40
Use Case Header Area

    •     Has a name and a unique ID.
    •     Include application area.
    •     List actors.
    •     Include stakeholders.
    •     Include the level.
    •     Has a brief description of the use case.

                    Copyright © 2011 Pearson Education, Inc. Publishing as
Kendall & Kendall                      Prentice Hall                         2-41
Use Case Levels

    • Use case levels describe how global or
      detailed the use case description is:
            •       White (like clouds): enterprise level
            •       Kite: business unit or department level
            •       Blue (sea level): user goals
            •       Indigo (or fish): functional or subfunctional
            •       Black (or clam): most detailed


                              Copyright © 2011 Pearson Education, Inc. Publishing as
Kendall & Kendall                                Prentice Hall                         2-42
Alternative Scenarios

   • Extensions or exceptions to the main
     use case
   • Number with an integer, decimal point,
     integer
   • Steps that may or may not always be
     used


                    Copyright © 2011 Pearson Education, Inc. Publishing as
Kendall & Kendall                      Prentice Hall                         2-43
Use Case Footer Area

    • Preconditions—need to be met before use
      case can be performed
    • Postconditions or the state of the system
      after the use case has finished
    • Assumptions
    • Minimal guarantee
    • Success guarantee
    • Outstanding issues
    • Optional priority and risk
                    Copyright © 2011 Pearson Education, Inc. Publishing as
Kendall & Kendall                      Prentice Hall                         2-44
A Use Case Example of Student
Enrollment (Figure 10.6)




                                10-45
A Use Case Scenario Is Divided into Three Sections:
Identification and Initiation, Steps Performed, and
Conditions, Assumptions, and Questions (Figure 10.7)




                                                   10-46
3. Activity Diagrams

• Show the sequence of activities in a process,
  including sequential and parallel activities,
  and decisions that are made.
• Symbols
  •   Rectangle with rounded ends
  •   Arrow
  •   Diamond
  •   Long, flat rectangle
  •   Filled-in circle
  •   Black circle surrounded by a white circle
  •   Swimlanes

                                                  10-47
Specialized Symbols Are Used to Draw an
Activity Diagram (Figure 10.8)




                                     10-48
Creating Activity Diagrams

• Created by asking what happens first, what
  happens second, and so on
• Must determine what activities are done in
  sequence or in parallel
• The sequence of activities can be determined
  from physical data flow diagrams.
• Can be created by examining all the scenarios
  for a use case

                                           10-49
Swimlanes

• Useful to show how the data must be
  transmitted or converted
• Help to divide up the tasks in a team
• Makes the activity diagram one that
  people want to use to communicate
  with others


                                      10-50
This Activity Diagram Shows Three Swimlanes: Client
Web Page, Web Server, and Mainframe (Figure 10.9)




                                                      10-51
Activity Diagrams and Test Plans


• Activity diagrams may be used to
  construct test plans.
• Each event must be tested to see if the
  system goes to the next state.
• Each decision must be tested.




                                      10-52
Activity Diagrams Not Created for
All Use Cases
• Use an activity diagram when:
  • It helps to understand the activities of a
    use case
  • The flow of control is complex
  • There is a need to model workflow
  • When all scenarios for a use case need to
    be shown


                                            10-53
4. Sequence Diagrams

• Illustrate a succession of interactions
  between classes or object instances
  over time
• Often used to show the processing
  described in use case scenarios
• Used to show the overall pattern of the
  activities or interactions in a use case

                                       10-54
Specialized Symbols Used to Draw a
Sequence Diagram (Figure 10.10)




                                 10-55
A Sequence Diagram for Student Admission: Sequence
Diagrams Emphasize the Time Ordering of Messages
(Figure 10.11)




                                                10-56
5. Communication
Diagrams
• Describes the interactions of two or more
  things in the system that perform a behavior
  that is more than any one of the things can
  do alone
• Shows the same information as a sequence
  diagram, but may be more difficult to read
• Emphasizes the organization of objects
• Made up of objects, communication links, and
  the messages that can be passed along those
  links

                                          10-57
A Communication Diagram for Student
Admission (Figure 10.12)




 Communication diagrams show the same information that is depicted in
 a sequence diagram but emphasize the organization of objects rather
 than the time ordering.


                                                                  10-58
6. Class Diagrams

• Show the static features of the system
  and do not represent any particular
  processing.
• Show the nature of the relationships
  between classes.
• Show data storage requirements as well
  as processing requirements.

                                     10-59
Class Diagrams (Continued)

• Classes
• Attributes
  • Private
  • Public
  • Protected
• Methods
  • Standard
  • Custom

                             10-60
A Class Diagram for Course Offerings: The Filled-In
Diamonds Show Aggregation and the Empty Diamond
Shows a Whole-Part Relationship (Figure 10.13)




                                                  10-61
Types of Classes

•   Entity classes
•   Interface classes
•   Abstract classes
•   Control classes




                        10-62
Entity Classes

• Represent real-world items
• The entities represented on an entity-
  relationship diagram




                                       10-63
Interface or Boundary Classes

• Provide a means for users to work with
  the system.
• Human interfaces may be a display,
  window, Web form, dialogue box,
  touch-tone telephone, or other way for
  users to interact with the system.
• System interfaces involve sending data
  to or receiving data from others.

                                     10-64
Abstract Classes

• Linked to concrete classes in a
  generalization/specialization relationship
• Cannot be directly instantiated




                                        10-65
Control Classes

• Used to control the flow of activities
• Many small control classes can be used
  to achieve classes that are reusable.




                                     10-66
Relationships

• The connections between classes
  • Associations
  • Whole/part




                                    10-67
Relationships




                10-68
7. State chart Diagrams

• Used to examine the different states that an object
  may have
• Created for a single class
   • Objects are created, go through changes, and are deleted or
     removed.
• Objects
• States
• Events
   • Signals or asynchronous messages
   • Synchronous
   • Temporal events


                                                           10-69
Statechart Diagrams
(Continued)
• Created when:
  • A class has a complex life cycle.
  • An instance of a class may update its
    attributes in a number of ways through the
    life cycle.
  • A class has an operational life cycle.
  • Two classes depend on each other.
  • The object’s current behavior depends on
    what happened previously.

                                          10-70
A Statechart Diagram Showing How a Student
Progresses from a Potential Student to a Graduated
Student (Figure 10.22)




                                                     10-71
Packages

•   Containers for other UML things
•   Show system partitioning
•   Can be component packages
•   Can be physical subsystems
•   Use a folder symbol
•   May have relationships


                                      10-72
Use Cases Can Be Grouped into
Packages (Figure 10.23)




                                10-73
Putting UML to Work

 The steps used in UML are:
  • Define the use case model.
  • Continue UML diagramming to model the system
    during the systems analysis phase.
  • Develop the class diagrams.
  • Draw statechart diagrams.
  • Begin systems design by refining the UML
    diagrams.
  • Document your system design in detail.


                                             10-74
Summary

• Object-oriented systems
  • Objects
  • Classes
  • Inheritance
• CRC cards
• UML and use case modeling
• Components of UML
  • Things
  • Relationships
  • Diagrams

                              10-75
Summary (Continued)

• UML diagrams
  •   Use case diagrams
  •   Activity diagrams
  •   Sequence diagrams
  •   Communication diagrams
  •   Class diagrams
  •   Statechart diagrams
• Using UML

                               10-76
References

• Kendall K. (2011). Systems Analysis and Design, Eight Edition.
  PEARSON.
• Shelly G. (2012). System Analysis and Design, Ninth Edition.
  CENGAGE Learning.
• Object-Oriented Analysis
  Methodology(http://www.umsl.edu/~sauterv/analysis/488_f01_
  papers/wang.htm)




                                                           10-77

Weitere ähnliche Inhalte

Was ist angesagt?

Was ist angesagt? (20)

Data Types, Variables, and Operators
Data Types, Variables, and OperatorsData Types, Variables, and Operators
Data Types, Variables, and Operators
 
Uml Activity Diagram
Uml Activity DiagramUml Activity Diagram
Uml Activity Diagram
 
11. transaction sql
11. transaction sql11. transaction sql
11. transaction sql
 
UNIFIED MODELING LANGUAGE
UNIFIED MODELING LANGUAGEUNIFIED MODELING LANGUAGE
UNIFIED MODELING LANGUAGE
 
Thread presentation
Thread presentationThread presentation
Thread presentation
 
Uml Presentation
Uml PresentationUml Presentation
Uml Presentation
 
MVC Architecture
MVC ArchitectureMVC Architecture
MVC Architecture
 
GUI programming
GUI programmingGUI programming
GUI programming
 
Properties and indexers in C#
Properties and indexers in C#Properties and indexers in C#
Properties and indexers in C#
 
UML
UMLUML
UML
 
Fragment
Fragment Fragment
Fragment
 
Wrapper class
Wrapper classWrapper class
Wrapper class
 
LINQ
LINQLINQ
LINQ
 
Fundamental programming structures in java
Fundamental programming structures in javaFundamental programming structures in java
Fundamental programming structures in java
 
Object diagram
Object diagramObject diagram
Object diagram
 
Introduction to Data Flow Diagram (DFD)
Introduction to Data Flow Diagram (DFD)Introduction to Data Flow Diagram (DFD)
Introduction to Data Flow Diagram (DFD)
 
Unified modeling language diagrams
Unified modeling language diagramsUnified modeling language diagrams
Unified modeling language diagrams
 
Understanding java streams
Understanding java streamsUnderstanding java streams
Understanding java streams
 
Overview of UML Diagrams
Overview of UML DiagramsOverview of UML Diagrams
Overview of UML Diagrams
 
Unified Modeling Language
Unified Modeling LanguageUnified Modeling Language
Unified Modeling Language
 

Andere mochten auch

Ppt slides 05
Ppt slides 05Ppt slides 05
Ppt slides 05locpx
 
System Analysis and Design - Unified Modeling Language (UML)
System Analysis and Design - Unified Modeling Language (UML)System Analysis and Design - Unified Modeling Language (UML)
System Analysis and Design - Unified Modeling Language (UML)Dudy Ali
 
Object diagram
Object diagramObject diagram
Object diagramRahul Pola
 
Business Analyst Modules
Business Analyst ModulesBusiness Analyst Modules
Business Analyst Modulessfsugis
 
Information Systems Analysis and Design Overview of OOAD, UML, and RUP
 Information Systems Analysis and Design Overview of OOAD, UML, and RUP Information Systems Analysis and Design Overview of OOAD, UML, and RUP
Information Systems Analysis and Design Overview of OOAD, UML, and RUPDang Tuan
 
Structured Vs, Object Oriented Analysis and Design
Structured Vs, Object Oriented Analysis and DesignStructured Vs, Object Oriented Analysis and Design
Structured Vs, Object Oriented Analysis and DesignMotaz Saad
 

Andere mochten auch (7)

Ch01
Ch01Ch01
Ch01
 
Ppt slides 05
Ppt slides 05Ppt slides 05
Ppt slides 05
 
System Analysis and Design - Unified Modeling Language (UML)
System Analysis and Design - Unified Modeling Language (UML)System Analysis and Design - Unified Modeling Language (UML)
System Analysis and Design - Unified Modeling Language (UML)
 
Object diagram
Object diagramObject diagram
Object diagram
 
Business Analyst Modules
Business Analyst ModulesBusiness Analyst Modules
Business Analyst Modules
 
Information Systems Analysis and Design Overview of OOAD, UML, and RUP
 Information Systems Analysis and Design Overview of OOAD, UML, and RUP Information Systems Analysis and Design Overview of OOAD, UML, and RUP
Information Systems Analysis and Design Overview of OOAD, UML, and RUP
 
Structured Vs, Object Oriented Analysis and Design
Structured Vs, Object Oriented Analysis and DesignStructured Vs, Object Oriented Analysis and Design
Structured Vs, Object Oriented Analysis and Design
 

Ähnlich wie Unified Modeling Language

analysis and design with uml
analysis and design with umlanalysis and design with uml
analysis and design with umlsabin kafle
 
1. introduction to uml
1. introduction to uml1. introduction to uml
1. introduction to umlPRABU M
 
UML (Hemant rajak)
UML (Hemant rajak)UML (Hemant rajak)
UML (Hemant rajak)hrajak5
 
Ooad lab manual
Ooad  lab manualOoad  lab manual
Ooad lab manualPraseela R
 
Chapter-2 UML and UML Diagrams.pdf
Chapter-2 UML and UML Diagrams.pdfChapter-2 UML and UML Diagrams.pdf
Chapter-2 UML and UML Diagrams.pdfAkfeteAssefa
 
DCI ANUG - 24th November 2010
DCI ANUG - 24th November 2010DCI ANUG - 24th November 2010
DCI ANUG - 24th November 2010Christian Horsdal
 
DCI - ANUG 24th November 2010
DCI - ANUG 24th November 2010DCI - ANUG 24th November 2010
DCI - ANUG 24th November 2010Christian Horsdal
 
Object-Oriented Systems Analysis and Design Using UML.pptx
Object-Oriented Systems Analysis and Design Using UML.pptxObject-Oriented Systems Analysis and Design Using UML.pptx
Object-Oriented Systems Analysis and Design Using UML.pptxXanGwaps
 
4+1 View Model of Software Architecture
4+1 View Model of Software Architecture4+1 View Model of Software Architecture
4+1 View Model of Software Architecturebashcode
 
Object Oriented Analysis Design using UML
Object Oriented Analysis Design using UMLObject Oriented Analysis Design using UML
Object Oriented Analysis Design using UMLAjit Nayak
 
6 Use Case Modeling.pptx
6 Use Case Modeling.pptx6 Use Case Modeling.pptx
6 Use Case Modeling.pptxNALESVPMEngg
 
Unified Modeling Language (UML)
Unified Modeling Language (UML)Unified Modeling Language (UML)
Unified Modeling Language (UML)Ajeng Savitri
 
lecture8UML Diagrams.pptx
lecture8UML Diagrams.pptxlecture8UML Diagrams.pptx
lecture8UML Diagrams.pptxGracePeter10
 
Kendall sad8e ch02
Kendall sad8e ch02Kendall sad8e ch02
Kendall sad8e ch02N/A
 
CS6502 OOAD - Question Bank and Answer
CS6502 OOAD - Question Bank and AnswerCS6502 OOAD - Question Bank and Answer
CS6502 OOAD - Question Bank and AnswerGobinath Subramaniam
 
UML and Case study
UML and Case study UML and Case study
UML and Case study Mihika-QA
 

Ähnlich wie Unified Modeling Language (20)

UML Modeling in Java
UML Modeling in JavaUML Modeling in Java
UML Modeling in Java
 
analysis and design with uml
analysis and design with umlanalysis and design with uml
analysis and design with uml
 
1. introduction to uml
1. introduction to uml1. introduction to uml
1. introduction to uml
 
ITSE_10(UML,OO).pptx
ITSE_10(UML,OO).pptxITSE_10(UML,OO).pptx
ITSE_10(UML,OO).pptx
 
UML (Hemant rajak)
UML (Hemant rajak)UML (Hemant rajak)
UML (Hemant rajak)
 
Ooad lab manual
Ooad  lab manualOoad  lab manual
Ooad lab manual
 
Chapter-2 UML and UML Diagrams.pdf
Chapter-2 UML and UML Diagrams.pdfChapter-2 UML and UML Diagrams.pdf
Chapter-2 UML and UML Diagrams.pdf
 
DCI ANUG - 24th November 2010
DCI ANUG - 24th November 2010DCI ANUG - 24th November 2010
DCI ANUG - 24th November 2010
 
DCI - ANUG 24th November 2010
DCI - ANUG 24th November 2010DCI - ANUG 24th November 2010
DCI - ANUG 24th November 2010
 
Object-Oriented Systems Analysis and Design Using UML.pptx
Object-Oriented Systems Analysis and Design Using UML.pptxObject-Oriented Systems Analysis and Design Using UML.pptx
Object-Oriented Systems Analysis and Design Using UML.pptx
 
UML Intro
UML IntroUML Intro
UML Intro
 
4+1 View Model of Software Architecture
4+1 View Model of Software Architecture4+1 View Model of Software Architecture
4+1 View Model of Software Architecture
 
Object Oriented Analysis Design using UML
Object Oriented Analysis Design using UMLObject Oriented Analysis Design using UML
Object Oriented Analysis Design using UML
 
6 Use Case Modeling.pptx
6 Use Case Modeling.pptx6 Use Case Modeling.pptx
6 Use Case Modeling.pptx
 
Unified Modeling Language (UML)
Unified Modeling Language (UML)Unified Modeling Language (UML)
Unified Modeling Language (UML)
 
lecture8UML Diagrams.pptx
lecture8UML Diagrams.pptxlecture8UML Diagrams.pptx
lecture8UML Diagrams.pptx
 
Kendall sad8e ch02
Kendall sad8e ch02Kendall sad8e ch02
Kendall sad8e ch02
 
Introduction to OOAD
Introduction to OOADIntroduction to OOAD
Introduction to OOAD
 
CS6502 OOAD - Question Bank and Answer
CS6502 OOAD - Question Bank and AnswerCS6502 OOAD - Question Bank and Answer
CS6502 OOAD - Question Bank and Answer
 
UML and Case study
UML and Case study UML and Case study
UML and Case study
 

Kürzlich hochgeladen

Inclusivity Essentials_ Creating Accessible Websites for Nonprofits .pdf
Inclusivity Essentials_ Creating Accessible Websites for Nonprofits .pdfInclusivity Essentials_ Creating Accessible Websites for Nonprofits .pdf
Inclusivity Essentials_ Creating Accessible Websites for Nonprofits .pdfTechSoup
 
TEACHER REFLECTION FORM (NEW SET........).docx
TEACHER REFLECTION FORM (NEW SET........).docxTEACHER REFLECTION FORM (NEW SET........).docx
TEACHER REFLECTION FORM (NEW SET........).docxruthvilladarez
 
Incoming and Outgoing Shipments in 3 STEPS Using Odoo 17
Incoming and Outgoing Shipments in 3 STEPS Using Odoo 17Incoming and Outgoing Shipments in 3 STEPS Using Odoo 17
Incoming and Outgoing Shipments in 3 STEPS Using Odoo 17Celine George
 
ANG SEKTOR NG agrikultura.pptx QUARTER 4
ANG SEKTOR NG agrikultura.pptx QUARTER 4ANG SEKTOR NG agrikultura.pptx QUARTER 4
ANG SEKTOR NG agrikultura.pptx QUARTER 4MiaBumagat1
 
AUDIENCE THEORY -CULTIVATION THEORY - GERBNER.pptx
AUDIENCE THEORY -CULTIVATION THEORY -  GERBNER.pptxAUDIENCE THEORY -CULTIVATION THEORY -  GERBNER.pptx
AUDIENCE THEORY -CULTIVATION THEORY - GERBNER.pptxiammrhaywood
 
GRADE 4 - SUMMATIVE TEST QUARTER 4 ALL SUBJECTS
GRADE 4 - SUMMATIVE TEST QUARTER 4 ALL SUBJECTSGRADE 4 - SUMMATIVE TEST QUARTER 4 ALL SUBJECTS
GRADE 4 - SUMMATIVE TEST QUARTER 4 ALL SUBJECTSJoshuaGantuangco2
 
INTRODUCTION TO CATHOLIC CHRISTOLOGY.pptx
INTRODUCTION TO CATHOLIC CHRISTOLOGY.pptxINTRODUCTION TO CATHOLIC CHRISTOLOGY.pptx
INTRODUCTION TO CATHOLIC CHRISTOLOGY.pptxHumphrey A Beña
 
Daily Lesson Plan in Mathematics Quarter 4
Daily Lesson Plan in Mathematics Quarter 4Daily Lesson Plan in Mathematics Quarter 4
Daily Lesson Plan in Mathematics Quarter 4JOYLYNSAMANIEGO
 
Grade 9 Quarter 4 Dll Grade 9 Quarter 4 DLL.pdf
Grade 9 Quarter 4 Dll Grade 9 Quarter 4 DLL.pdfGrade 9 Quarter 4 Dll Grade 9 Quarter 4 DLL.pdf
Grade 9 Quarter 4 Dll Grade 9 Quarter 4 DLL.pdfJemuel Francisco
 
EMBODO Lesson Plan Grade 9 Law of Sines.docx
EMBODO Lesson Plan Grade 9 Law of Sines.docxEMBODO Lesson Plan Grade 9 Law of Sines.docx
EMBODO Lesson Plan Grade 9 Law of Sines.docxElton John Embodo
 
Field Attribute Index Feature in Odoo 17
Field Attribute Index Feature in Odoo 17Field Attribute Index Feature in Odoo 17
Field Attribute Index Feature in Odoo 17Celine George
 
4.18.24 Movement Legacies, Reflection, and Review.pptx
4.18.24 Movement Legacies, Reflection, and Review.pptx4.18.24 Movement Legacies, Reflection, and Review.pptx
4.18.24 Movement Legacies, Reflection, and Review.pptxmary850239
 
Integumentary System SMP B. Pharm Sem I.ppt
Integumentary System SMP B. Pharm Sem I.pptIntegumentary System SMP B. Pharm Sem I.ppt
Integumentary System SMP B. Pharm Sem I.pptshraddhaparab530
 
MULTIDISCIPLINRY NATURE OF THE ENVIRONMENTAL STUDIES.pptx
MULTIDISCIPLINRY NATURE OF THE ENVIRONMENTAL STUDIES.pptxMULTIDISCIPLINRY NATURE OF THE ENVIRONMENTAL STUDIES.pptx
MULTIDISCIPLINRY NATURE OF THE ENVIRONMENTAL STUDIES.pptxAnupkumar Sharma
 
How to Add Barcode on PDF Report in Odoo 17
How to Add Barcode on PDF Report in Odoo 17How to Add Barcode on PDF Report in Odoo 17
How to Add Barcode on PDF Report in Odoo 17Celine George
 
4.16.24 Poverty and Precarity--Desmond.pptx
4.16.24 Poverty and Precarity--Desmond.pptx4.16.24 Poverty and Precarity--Desmond.pptx
4.16.24 Poverty and Precarity--Desmond.pptxmary850239
 
Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)
Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)
Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)lakshayb543
 

Kürzlich hochgeladen (20)

Inclusivity Essentials_ Creating Accessible Websites for Nonprofits .pdf
Inclusivity Essentials_ Creating Accessible Websites for Nonprofits .pdfInclusivity Essentials_ Creating Accessible Websites for Nonprofits .pdf
Inclusivity Essentials_ Creating Accessible Websites for Nonprofits .pdf
 
TEACHER REFLECTION FORM (NEW SET........).docx
TEACHER REFLECTION FORM (NEW SET........).docxTEACHER REFLECTION FORM (NEW SET........).docx
TEACHER REFLECTION FORM (NEW SET........).docx
 
Incoming and Outgoing Shipments in 3 STEPS Using Odoo 17
Incoming and Outgoing Shipments in 3 STEPS Using Odoo 17Incoming and Outgoing Shipments in 3 STEPS Using Odoo 17
Incoming and Outgoing Shipments in 3 STEPS Using Odoo 17
 
ANG SEKTOR NG agrikultura.pptx QUARTER 4
ANG SEKTOR NG agrikultura.pptx QUARTER 4ANG SEKTOR NG agrikultura.pptx QUARTER 4
ANG SEKTOR NG agrikultura.pptx QUARTER 4
 
AUDIENCE THEORY -CULTIVATION THEORY - GERBNER.pptx
AUDIENCE THEORY -CULTIVATION THEORY -  GERBNER.pptxAUDIENCE THEORY -CULTIVATION THEORY -  GERBNER.pptx
AUDIENCE THEORY -CULTIVATION THEORY - GERBNER.pptx
 
GRADE 4 - SUMMATIVE TEST QUARTER 4 ALL SUBJECTS
GRADE 4 - SUMMATIVE TEST QUARTER 4 ALL SUBJECTSGRADE 4 - SUMMATIVE TEST QUARTER 4 ALL SUBJECTS
GRADE 4 - SUMMATIVE TEST QUARTER 4 ALL SUBJECTS
 
Paradigm shift in nursing research by RS MEHTA
Paradigm shift in nursing research by RS MEHTAParadigm shift in nursing research by RS MEHTA
Paradigm shift in nursing research by RS MEHTA
 
FINALS_OF_LEFT_ON_C'N_EL_DORADO_2024.pptx
FINALS_OF_LEFT_ON_C'N_EL_DORADO_2024.pptxFINALS_OF_LEFT_ON_C'N_EL_DORADO_2024.pptx
FINALS_OF_LEFT_ON_C'N_EL_DORADO_2024.pptx
 
INTRODUCTION TO CATHOLIC CHRISTOLOGY.pptx
INTRODUCTION TO CATHOLIC CHRISTOLOGY.pptxINTRODUCTION TO CATHOLIC CHRISTOLOGY.pptx
INTRODUCTION TO CATHOLIC CHRISTOLOGY.pptx
 
Daily Lesson Plan in Mathematics Quarter 4
Daily Lesson Plan in Mathematics Quarter 4Daily Lesson Plan in Mathematics Quarter 4
Daily Lesson Plan in Mathematics Quarter 4
 
Grade 9 Quarter 4 Dll Grade 9 Quarter 4 DLL.pdf
Grade 9 Quarter 4 Dll Grade 9 Quarter 4 DLL.pdfGrade 9 Quarter 4 Dll Grade 9 Quarter 4 DLL.pdf
Grade 9 Quarter 4 Dll Grade 9 Quarter 4 DLL.pdf
 
INCLUSIVE EDUCATION PRACTICES FOR TEACHERS AND TRAINERS.pptx
INCLUSIVE EDUCATION PRACTICES FOR TEACHERS AND TRAINERS.pptxINCLUSIVE EDUCATION PRACTICES FOR TEACHERS AND TRAINERS.pptx
INCLUSIVE EDUCATION PRACTICES FOR TEACHERS AND TRAINERS.pptx
 
EMBODO Lesson Plan Grade 9 Law of Sines.docx
EMBODO Lesson Plan Grade 9 Law of Sines.docxEMBODO Lesson Plan Grade 9 Law of Sines.docx
EMBODO Lesson Plan Grade 9 Law of Sines.docx
 
Field Attribute Index Feature in Odoo 17
Field Attribute Index Feature in Odoo 17Field Attribute Index Feature in Odoo 17
Field Attribute Index Feature in Odoo 17
 
4.18.24 Movement Legacies, Reflection, and Review.pptx
4.18.24 Movement Legacies, Reflection, and Review.pptx4.18.24 Movement Legacies, Reflection, and Review.pptx
4.18.24 Movement Legacies, Reflection, and Review.pptx
 
Integumentary System SMP B. Pharm Sem I.ppt
Integumentary System SMP B. Pharm Sem I.pptIntegumentary System SMP B. Pharm Sem I.ppt
Integumentary System SMP B. Pharm Sem I.ppt
 
MULTIDISCIPLINRY NATURE OF THE ENVIRONMENTAL STUDIES.pptx
MULTIDISCIPLINRY NATURE OF THE ENVIRONMENTAL STUDIES.pptxMULTIDISCIPLINRY NATURE OF THE ENVIRONMENTAL STUDIES.pptx
MULTIDISCIPLINRY NATURE OF THE ENVIRONMENTAL STUDIES.pptx
 
How to Add Barcode on PDF Report in Odoo 17
How to Add Barcode on PDF Report in Odoo 17How to Add Barcode on PDF Report in Odoo 17
How to Add Barcode on PDF Report in Odoo 17
 
4.16.24 Poverty and Precarity--Desmond.pptx
4.16.24 Poverty and Precarity--Desmond.pptx4.16.24 Poverty and Precarity--Desmond.pptx
4.16.24 Poverty and Precarity--Desmond.pptx
 
Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)
Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)
Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)
 

Unified Modeling Language

  • 1. Object-Oriented Systems Analysis and Design Using UML Prepared by Gio Friginal Copyright © 2011 Pearson Education, Inc. Publishing as Prentice Hall
  • 2. Learning Objectives • Understand what object-oriented systems analysis and design is and appreciate its usefulness. • Comprehend the concepts of unified modeling language (UML), the standard approach for modeling a system in the object-oriented world. • Apply the steps used in UML to break down the system into a use case model and then a class model. • Diagram systems with the UML toolset so they can be described and properly designed. • Document and communicate the newly modeled object-oriented system to users and other analysts. 10-2
  • 3. Introduction • There have been basically 3 approaches in information system development area • process-oriented • data-oriented • object-oriented approaches • As information technology (both hardware and software) has been advancing, people have moved from the earliest process- oriented approach to data-oriented approach and now begun to adopt the latest object-oriented analysis methodology • Unlike its two predecessors that focus either on process or data, the object-oriented approach combines data and processes (called methods) into single entities called objects 10-3
  • 4. Object-Oriented Analysis and Design • Works well in situations where complicated systems are undergoing continuous maintenance, adaptation, and design • Objects, classes are reusable • The Unified Modeling Language (UML) is an industry standard for modeling object-oriented systems. 10-4
  • 5. Object-Oriented Analysis and Design (Continued) • Reusability • Recycling of program parts should reduce the costs of development in computer- based systems. • Maintaining systems • Making a change in one object has a minimal impact on other objects. 10-5
  • 6. Major Topics • Object-oriented concepts • CRC cards and object think • Unified Modeling Language • Use case and other UML diagrams • Packages • Using UML 10-6
  • 7. Object-Oriented Concepts • Class • Object • Inheritance • Polymorphism • Encapsulation 10-7
  • 8. Class • Defines the set of shared attributes and behaviors found in each object in the class • Should have a name that differentiates it from all other classes • Instantiate is when an object is created from a class 10-8
  • 9. Class 10-9
  • 10. Objects • Persons, places, or things that are relevant to the system being analyzed • May be customers, items, orders, and so on • May be GUI displays or text areas on a display 10-10
  • 11. Objects 10-11
  • 12. Objects 10-12
  • 13. Inheritance • When a derived class inherits all the attributes and behaviors of the base class • Reduces programming labor by using common objects easily • A feature only found in object-oriented systems 10-13
  • 14. A Class Diagram Showing Inheritance (Figure 10.2) Car and truck are specific examples of vehicles and inherit the characteristics of the more general class vehicle. 10-14
  • 15. Polymorphism • Message gives different meanings to different objects 10-15
  • 16. Encapsulation • All data and methods are self-contained 10-16
  • 17. CRC Cards and Object Think • CRC • Class • Responsibilities • Collaborators • CRC cards are used to represent the responsibilities of classes and the interaction between the classes. 10-17
  • 18. Four CRC Cards for Course Offerings Show How Analysts Fill in the Details for Classes, Responsibilities, and Collaborators, as well as for Object Think Statements and Property Names (Figure 10.3) 10-18
  • 19. Interacting during a CRC Session • Identify all the classes you can. • Create scenarios. • Identify and refine responsibilities. 10-19
  • 20. The Unified Modeling Language (UML) Concepts and Diagrams • Things • Relationships • Diagrams 10-20
  • 21. Things • Structural things are • Classes, interfaces, use cases, and other elements that provide a way to create models • Behavioral things • Describe how things work • Interactions and state machines • Group things • Used to define boundaries • Annotational things • Can add notes to the diagrams 10-21
  • 22. Relationships • Structural relationships • Tie things together in structural diagrams • Behavioral relationships • Used in behavioral diagrams 10-22
  • 23. Diagrams • Structural diagrams • Used to describe the relation between classes • Behavior diagrams • Used to describe the interaction between people (actors) and a use case (how the actors use the system) 10-23
  • 24. Commonly Used UML Diagrams • Use case diagram • Describing how the system is used • The starting point for UML modeling • Use case scenario • A verbal articulation of exceptions to the main behavior described by the primary use case • Activity diagram • Illustrates the overall flow of activities 10-24
  • 25. Commonly Used UML Diagrams (Continued) • Sequence diagrams • Show the sequence of activities and class relationships. • Class diagrams • Show classes and relationships. • Statechart diagrams • Show the state transitions. 10-25
  • 26. An Overview of UML Diagrams Showing How Each Diagram Leads to the Development of Other UML Diagrams (Figure 10.5) 10-26
  • 27. 1. Use Case Modeling • Describes what a system does without describing how the system does • A logical model of the system • Use case is a view of the system requirements • Analyst works with business experts to develop requirements Copyright © 2011 Pearson Education, Inc. Publishing as Kendall & Kendall Prentice Hall 2-27
  • 28. Use Case Diagram • Actor • Refers to a particular role of a user of the system • Similar to external entities; they exist outside of the system • Use case symbols • An oval indicating the task of the use case • Connecting lines • Arrows and lines used to diagram behavioral relationships Copyright © 2011 Pearson Education, Inc. Publishing as Kendall & Kendall Prentice Hall 2-28
  • 29. Actor • Divided into two groups • Primary actors: • Supply data or receive information from the system. • Provide details on what the use case should do. • Supporting actors: • Help to keep the system running or provide help. • The people who run the help desk, the analysts, programmers, and so on. Copyright © 2011 Pearson Education, Inc. Publishing as Kendall & Kendall Prentice Hall 2-29
  • 30. A Use Case Always Provides Three Things • An actor that initiates an event • The event that triggers a use case • The use case that performs the actions triggered by the event Copyright © 2011 Pearson Education, Inc. Publishing as Kendall & Kendall Prentice Hall 2-30
  • 31. Some Components of Use Case Diagrams Showing Actors, Use Cases, and Relationships for a Student Enrollment Example (Figure 2.13) Copyright © 2011 Pearson Education, Inc. Publishing as Kendall & Kendall Prentice Hall 2-31
  • 32. Examples of Use Cases, Behavioral Relationships for Student Enrollment (Figure 2.14) Copyright © 2011 Pearson Education, Inc. Publishing as Kendall & Kendall Prentice Hall 2-32
  • 33. Example 10-33
  • 34. Scope • System scope defines its boundaries: • What is in or outside the system • Project has a budget that helps to define scope • Project has a start and an end time • Actors are always outside of scope • Communication lines are the boundaries and define the scope Copyright © 2011 Pearson Education, Inc. Publishing as Kendall & Kendall Prentice Hall 2-34
  • 36. Developing Use Case Diagrams • Review the business specifications and identify the actors involved. • Identify the high-level events and develop the primary use cases that describe those events and how the actors initiate them. • Review each primary use case to determine the possible variations of flow through the use case. • The context-level data flow diagram could act as a starting point for creating a use case. Copyright © 2011 Pearson Education, Inc. Publishing as Kendall & Kendall Prentice Hall 2-36
  • 37. A Use Case Diagram Representing a System Used to Plan a Conference (Figure 2.15 ) Copyright © 2011 Pearson Education, Inc. Publishing as Kendall & Kendall Prentice Hall 2-37
  • 38. 10-38
  • 39. 2. Developing the Use Case Scenarios • The description of the use case • Three main areas: • Use case identifiers and initiators • Steps performed • Conditions, assumptions, and questions Copyright © 2011 Pearson Education, Inc. Publishing as Kendall & Kendall Prentice Hall 2-39
  • 40. A Use Case Scenario Is Divided into Three Sections (Figure 2.16) Use case name: Register for Conference UniqueID: Conf RG 003 Area: Conference Planning Actor(s): Participant Stakeholder Conference Sponsor, Conference Speakers Level Blue Description: Allow conference participant to register online for the conference using a secure Web site. Triggering Event: Participant uses Conference Registration Web site, enters userID and password, and clicks the logon button. Trigger type:  External  Temporal Steps Performed (Main Path) Information for Steps 1. Participant logs in using the secure Web server userID, Password More steps included here… 12. Successful Registration Confirmation Web page is sent to the participant Registration Record Confirmation Number Preconditions: Participant has already registered and has created a user account. Postconditions: Participant has successfully registered for the conference. Assumptions: Participant has a browser and a valid userID and password. Success Guarantee: Participant has registered for the conference and is enrolled in all selected sessions. Minimum Guarantee: Participant was able to logon. Requirements Met: Allow conference participants to be able to register for the conference using a secure Web site. Outstanding Issues: How should a rejected credit card be handled? Priority: High Risk: Medium Copyright © 2011 Pearson Education, Inc. Publishing as Kendall & Kendall Prentice Hall 2-40
  • 41. Use Case Header Area • Has a name and a unique ID. • Include application area. • List actors. • Include stakeholders. • Include the level. • Has a brief description of the use case. Copyright © 2011 Pearson Education, Inc. Publishing as Kendall & Kendall Prentice Hall 2-41
  • 42. Use Case Levels • Use case levels describe how global or detailed the use case description is: • White (like clouds): enterprise level • Kite: business unit or department level • Blue (sea level): user goals • Indigo (or fish): functional or subfunctional • Black (or clam): most detailed Copyright © 2011 Pearson Education, Inc. Publishing as Kendall & Kendall Prentice Hall 2-42
  • 43. Alternative Scenarios • Extensions or exceptions to the main use case • Number with an integer, decimal point, integer • Steps that may or may not always be used Copyright © 2011 Pearson Education, Inc. Publishing as Kendall & Kendall Prentice Hall 2-43
  • 44. Use Case Footer Area • Preconditions—need to be met before use case can be performed • Postconditions or the state of the system after the use case has finished • Assumptions • Minimal guarantee • Success guarantee • Outstanding issues • Optional priority and risk Copyright © 2011 Pearson Education, Inc. Publishing as Kendall & Kendall Prentice Hall 2-44
  • 45. A Use Case Example of Student Enrollment (Figure 10.6) 10-45
  • 46. A Use Case Scenario Is Divided into Three Sections: Identification and Initiation, Steps Performed, and Conditions, Assumptions, and Questions (Figure 10.7) 10-46
  • 47. 3. Activity Diagrams • Show the sequence of activities in a process, including sequential and parallel activities, and decisions that are made. • Symbols • Rectangle with rounded ends • Arrow • Diamond • Long, flat rectangle • Filled-in circle • Black circle surrounded by a white circle • Swimlanes 10-47
  • 48. Specialized Symbols Are Used to Draw an Activity Diagram (Figure 10.8) 10-48
  • 49. Creating Activity Diagrams • Created by asking what happens first, what happens second, and so on • Must determine what activities are done in sequence or in parallel • The sequence of activities can be determined from physical data flow diagrams. • Can be created by examining all the scenarios for a use case 10-49
  • 50. Swimlanes • Useful to show how the data must be transmitted or converted • Help to divide up the tasks in a team • Makes the activity diagram one that people want to use to communicate with others 10-50
  • 51. This Activity Diagram Shows Three Swimlanes: Client Web Page, Web Server, and Mainframe (Figure 10.9) 10-51
  • 52. Activity Diagrams and Test Plans • Activity diagrams may be used to construct test plans. • Each event must be tested to see if the system goes to the next state. • Each decision must be tested. 10-52
  • 53. Activity Diagrams Not Created for All Use Cases • Use an activity diagram when: • It helps to understand the activities of a use case • The flow of control is complex • There is a need to model workflow • When all scenarios for a use case need to be shown 10-53
  • 54. 4. Sequence Diagrams • Illustrate a succession of interactions between classes or object instances over time • Often used to show the processing described in use case scenarios • Used to show the overall pattern of the activities or interactions in a use case 10-54
  • 55. Specialized Symbols Used to Draw a Sequence Diagram (Figure 10.10) 10-55
  • 56. A Sequence Diagram for Student Admission: Sequence Diagrams Emphasize the Time Ordering of Messages (Figure 10.11) 10-56
  • 57. 5. Communication Diagrams • Describes the interactions of two or more things in the system that perform a behavior that is more than any one of the things can do alone • Shows the same information as a sequence diagram, but may be more difficult to read • Emphasizes the organization of objects • Made up of objects, communication links, and the messages that can be passed along those links 10-57
  • 58. A Communication Diagram for Student Admission (Figure 10.12) Communication diagrams show the same information that is depicted in a sequence diagram but emphasize the organization of objects rather than the time ordering. 10-58
  • 59. 6. Class Diagrams • Show the static features of the system and do not represent any particular processing. • Show the nature of the relationships between classes. • Show data storage requirements as well as processing requirements. 10-59
  • 60. Class Diagrams (Continued) • Classes • Attributes • Private • Public • Protected • Methods • Standard • Custom 10-60
  • 61. A Class Diagram for Course Offerings: The Filled-In Diamonds Show Aggregation and the Empty Diamond Shows a Whole-Part Relationship (Figure 10.13) 10-61
  • 62. Types of Classes • Entity classes • Interface classes • Abstract classes • Control classes 10-62
  • 63. Entity Classes • Represent real-world items • The entities represented on an entity- relationship diagram 10-63
  • 64. Interface or Boundary Classes • Provide a means for users to work with the system. • Human interfaces may be a display, window, Web form, dialogue box, touch-tone telephone, or other way for users to interact with the system. • System interfaces involve sending data to or receiving data from others. 10-64
  • 65. Abstract Classes • Linked to concrete classes in a generalization/specialization relationship • Cannot be directly instantiated 10-65
  • 66. Control Classes • Used to control the flow of activities • Many small control classes can be used to achieve classes that are reusable. 10-66
  • 67. Relationships • The connections between classes • Associations • Whole/part 10-67
  • 68. Relationships 10-68
  • 69. 7. State chart Diagrams • Used to examine the different states that an object may have • Created for a single class • Objects are created, go through changes, and are deleted or removed. • Objects • States • Events • Signals or asynchronous messages • Synchronous • Temporal events 10-69
  • 70. Statechart Diagrams (Continued) • Created when: • A class has a complex life cycle. • An instance of a class may update its attributes in a number of ways through the life cycle. • A class has an operational life cycle. • Two classes depend on each other. • The object’s current behavior depends on what happened previously. 10-70
  • 71. A Statechart Diagram Showing How a Student Progresses from a Potential Student to a Graduated Student (Figure 10.22) 10-71
  • 72. Packages • Containers for other UML things • Show system partitioning • Can be component packages • Can be physical subsystems • Use a folder symbol • May have relationships 10-72
  • 73. Use Cases Can Be Grouped into Packages (Figure 10.23) 10-73
  • 74. Putting UML to Work The steps used in UML are: • Define the use case model. • Continue UML diagramming to model the system during the systems analysis phase. • Develop the class diagrams. • Draw statechart diagrams. • Begin systems design by refining the UML diagrams. • Document your system design in detail. 10-74
  • 75. Summary • Object-oriented systems • Objects • Classes • Inheritance • CRC cards • UML and use case modeling • Components of UML • Things • Relationships • Diagrams 10-75
  • 76. Summary (Continued) • UML diagrams • Use case diagrams • Activity diagrams • Sequence diagrams • Communication diagrams • Class diagrams • Statechart diagrams • Using UML 10-76
  • 77. References • Kendall K. (2011). Systems Analysis and Design, Eight Edition. PEARSON. • Shelly G. (2012). System Analysis and Design, Ninth Edition. CENGAGE Learning. • Object-Oriented Analysis Methodology(http://www.umsl.edu/~sauterv/analysis/488_f01_ papers/wang.htm) 10-77