SlideShare a Scribd company logo
1 of 55
UML:
An Introduction
By, Namita Parati
Introduction to UML 2
Object Oriented Analysis and Design
CDAC (Formerly NCST)
Contents
 Why model ?
 Principles of modeling
 What is UML ?
 Conceptual Model of the UML
 Building Blocks
 Rules
 Common Mechanisms
Introduction to UML 3
Object Oriented Analysis and Design
CDAC (Formerly NCST)
Why Model ?
 Analyse the problem-domain
 simplify reality
 capture requirements
 visualize the system in its entirety
 specify the structure and/or behaviour of the
system
 Design the solution
 document the solution - in terms of its
structure, behaviour, etc.
Introduction to UML 4
Object Oriented Analysis and Design
CDAC (Formerly NCST)
CS 3300 Object- Object-Oriented 4
Importance of Modeling
 Models help us
to visualize a system as it is or as we want it
to be.
to specify the structure or behavior of a
system.
in providing a template that guides us in
constructing a system.
in providing documenting the decisions we
have made.
Introduction to UML 5
Object Oriented Analysis and Design
CDAC (Formerly NCST)
Principles of Modeling
 Choose your model well - the choice of model profoundly
impacts the analysis of the problem and the design of the solution.
 Every model may be expressed at different levels
of precision - the same model can be scaled up (or down) to
different granularities.
 The best models are connected to reality - simplify
the model, but don’t hide important details.
 No single model suffices - every nontrivial system has
different dimensions to the problem and its solution.
Introduction to UML 6
Object Oriented Analysis and Design
CDAC (Formerly NCST)
CS 3300 Object- Object-Oriented 6
Object-Oriented Modeling
 Two most common ways in modeling software
systems are
Algorithmic
• Procedures or functions
Object oriented
• Objects or classes
Introduction to UML 7
Object Oriented Analysis and Design
CDAC (Formerly NCST)
What is UML ?
 UML - Unified Modeling language
 UML is a modeling language, not a methodology
or process
 Fuses the concepts of the Booch, OMT, OOSE
methods
 Developed by Grady Booch, James Rumbaugh
and Ivar Jacobson at Rational Software.
 Accepted as a standard by the Object
Management Group (OMG), in 1997.
Introduction to UML 8
Object Oriented Analysis and Design
CDAC (Formerly NCST)
CS 3300 Object- Object-Oriented 8
What is UML?
 UML is a language for
Visualizing
Specifying
Constructing
Documenting
Introduction to UML 9
Object Oriented Analysis and Design
CDAC (Formerly NCST)
More on UML...
UML is a modeling language for visualising,
specifying, constructing and documenting the
artifacts of software systems.
Visualising - a picture is worth a thousand
words; a graphical notation articulates and
unambiguously communicates the overall view
of the system (problem-domain).
Introduction to UML 10
Object Oriented Analysis and Design
CDAC (Formerly NCST)
More on UML...
Specifying - UML provides the means to model
precisely, unambiguously and completely, the
system in question.
Constructing - models built with UML
have a “design” dimension to it; these are
language independent and can be
implemented in any programming language.
Introduction to UML 11
Object Oriented Analysis and Design
CDAC (Formerly NCST)
More on UML...
Documenting - every software
project involves a lot of documentation -
from the inception phase to the
deliverables.
• Requirements
• Design
• Tests
Documentation is
(among others) for:
UML provides the
notations for
documenting some
of these artifacts
Introduction to UML 12
Object Oriented Analysis and Design
CDAC (Formerly NCST)
 Specifications
 Adornments
 Common Divisions
 Extensibility Mechanisms
Conceptual Model of UML
 Building Blocks
 Rules
 Common Mechanisms
 Things
 Relationships
 Diagrams
Introduction to UML 13
Object Oriented Analysis and Design
CDAC (Formerly NCST)
UML Building Blocks
 Things
 Relationships
 Structural
 Behavioral
 Grouping
 Annotational
 Dependency
 Association
 Generalisation
 Realization
 Diagrams
 Class Diagram
 Object Diagram
 Use Case Diagram
 Behaviour Diagram
 Implementation Diagram
Introduction to UML 14
Object Oriented Analysis and Design
CDAC (Formerly NCST)
Structural Things
The nouns of UML models; usually the static
parts of the system in question.
 Class - an abstraction of a set of things in the problem-
domain that have similar properties and/or functionality.
Notation: customer
Notation:
 Interface - a collection of operations that specify the
services rendered by a class or component.
Introduction to UML 15
Object Oriented Analysis and Design
CDAC (Formerly NCST)
Structural Things (contd.)
 Collaboration - a collection of UML building blocks
(classes, interfaces, relationships) that work together to
provide some functionality within the system.
Notation:
Accounts
System
Notation:
Process
Order
 Use Case - an abstraction of a set of functions that the
system performs; a use case is “realized” by a collaboration.
Introduction to UML 16
Object Oriented Analysis and Design
CDAC (Formerly NCST)
 Active Class - a class whose instance is an active object;
an active object is an object that owns a process or thread
(units of execution)
Structural Things (contd.)
Notation: eventManager
Notation: DML_Parser.C
 Component - a physical part (typically manifests itself as
a piece of software) of the system.
Introduction to UML 17
Object Oriented Analysis and Design
CDAC (Formerly NCST)
 Node - a physical element that exists at run-time and
represents a computational resource (typically, hardware
resources).
Structural Things (contd.)
Notation:
PrintServer
Introduction to UML 18
Object Oriented Analysis and Design
CDAC (Formerly NCST)
Behavioral Things
The verbs of UML models; usually the dynamic
parts of the system in question.
 Interaction - some behaviour constituted by messages
exchanged among objects; the exchange of messages is with a
view to achieving some purpose.
Notation:
Parse
Introduction to UML 19
Object Oriented Analysis and Design
CDAC (Formerly NCST)
Behavioral Things (contd.)
 State machine - a behaviour that specifies the sequence
of “states” an object goes through, during its lifetime. A
“state” is a condition or situation during the lifetime of an
object during which it exhibits certain characteristics and/or
performs some function.
Engine
Idling
Notation:
Introduction to UML 20
Object Oriented Analysis and Design
CDAC (Formerly NCST)
Grouping Things
The organisational part of the UML model; provides a
higher level of abstraction (granularity).
 Package - a general-purpose element that comprises UML
elements - structural, behavioral or even grouping things.
Packages are conceptual groupings of the system and need
not necessarily be implemented as cohesive software modules.
Notation:
.
Accounts
Department
Introduction to UML 21
Object Oriented Analysis and Design
CDAC (Formerly NCST)
Annotational Things
The explanatory part of the UML model; adds
information/meaning to the model elements.
 Note - a graphical notation for attaching constraints and/or
comments to elements of the model.
Parses user-query
and builds
expression stack
(or invokes
ErrorHandler)
Notation:
Introduction to UML 22
Object Oriented Analysis and Design
CDAC (Formerly NCST)
Relationships
Articulates the meaning of the links between things.
 Dependency - a semantic relationship where a change in
one thing (the independent thing) causes a change in the
semantics of the other thing (the dependent thing).
Notation:
(arrow-head points to the independent thing)
 Association - a structural relationship that describes the
connection between two things.
Notation:
Introduction to UML 23
Object Oriented Analysis and Design
CDAC (Formerly NCST)
Relationships (contd.)
 Generalisation - a relationship between a general thing
(called “parent” or “superclass”) and a more specific kind of
that thing (called the “child” or “subclass”), such that the
latter can substitute the former.
Notation:
(arrow-head points to the superclass)
Introduction to UML 24
Object Oriented Analysis and Design
CDAC (Formerly NCST)
Relationships (contd.)
 Realization - a semantic relationship between two things
wherein one specifies the behaviour to be carried out, and
the other carries out the behaviour.
 “ a collaboration realizes a Use Case”
the Use Case specifies the behaviour (functionality)
to be carried out (provided), and the collaboration
actually implements that behaviour.
Notation:
(arrow-head points to the thing being
realized)
Introduction to UML 25
Object Oriented Analysis and Design
CDAC (Formerly NCST)
Diagrams
The graphical presentation of the model. Represented
as a connected graph - vertices (things) connected by
arcs (relationships).
UML includes nine diagrams - each capturing a
different dimension of a software-system architecture.
 Class Diagram
 Object Diagram
 Use Case Diagram
 Sequence Diagram
 Collaboration Diagram
 Statechart Diagram
 Activity Diagram
 Component Diagram
 Deployment Diagram
Introduction to UML 26
Object Oriented Analysis and Design
CDAC (Formerly NCST)
More on Diagrams...
 Class Diagram - the most common diagram found in
OOAD, shows a set of classes, interfaces, collaborations and
their relationships. Models the static view of the system.
 Object Diagram - a snapshot of a class diagram; models
the instances of things contained in a class diagram.
 Use Case Diagram - shows a set of “Use Cases” (sets
of functionality performed by the system), the “actors”
(typically, people/systems that interact with this
system[problem-domain]) and their relationships. Models
WHAT the system is expected to do.
Introduction to UML 27
Object Oriented Analysis and Design
CDAC (Formerly NCST) 27
Class diagram example
StudentBody
+ main (args : String[])
+ toString() : String
1 100
Student
- firstName : String
- lastName : String
- homeAddress : Address
- schoolAddress : Address
+ toString() : String
- streetAddress : String
- city : String
- state : String
- zipCode : long
Address
Introduction to UML 28
Object Oriented Analysis and Design
CDAC (Formerly NCST)
Object Diagram example
Introduction to UML 29
Object Oriented Analysis and Design
CDAC (Formerly NCST)
Use case example
Introduction to UML 30
Object Oriented Analysis and Design
CDAC (Formerly NCST)
More on Diagrams...
 Sequence Diagram - models the flow of control by time-
ordering; depicts the interaction between various objects by
of messages passed, with a temporal dimension to it.
 Collaboration Diagram - models the interaction
between objects, without the temporal dimension; merely
depicts the messages passed between objects and classes.
 State chart Diagram - shows the different state
machines and the events that leads to each of these state
machines. State chart diagrams show the flow of control from
state to state.
Introduction to UML 31
Object Oriented Analysis and Design
CDAC (Formerly NCST)
Sequence Diagram
Introduction to UML 32
Object Oriented Analysis and Design
CDAC (Formerly NCST)
Ex. Collaboration Diagram
Introduction to UML 33
Object Oriented Analysis and Design
CDAC (Formerly NCST)
State chart Diagram Ex
Introduction to UML 34
Object Oriented Analysis and Design
CDAC (Formerly NCST)
More on Diagrams...
 Activity Diagram - shows the flow from activity to
activity; an “activity” is an ongoing non-atomic execution
within a state machine.
 Component Diagram - shows the physical packaging
of software in terms of components and the dependencies
between them.
 Deployment Diagram - shows the configuration of the
processing nodes at run-time and the components that live on
them.
Introduction to UML 35
Object Oriented Analysis and Design
CDAC (Formerly NCST)
Activity Diagram: Example
Introduction to UML 36
Object Oriented Analysis and Design
CDAC (Formerly NCST)
COMPONENT DIAGRAM
EXAMPLE
Introduction to UML 37
Object Oriented Analysis and Design
CDAC (Formerly NCST)
Deployment diagram ex
Introduction to UML 38
Object Oriented Analysis and Design
CDAC (Formerly NCST)
Rules
 Specify what a well-formed model should
look like.
 The UML has semantic rules for
Names
Scope
Visibility
Integrity
Execution
Introduction to UML 39
Object Oriented Analysis and Design
CDAC (Formerly NCST)
39/31
UML Common Mechanisms
 UML has four common mechanisms that are applied consistently,
in different contexts, throughout UML.
Introduction to UML 40
Object Oriented Analysis and Design
CDAC (Formerly NCST)
40/31
UML Common Mechanisms:
Specifications
 Specifications are textual descriptions of the semantics of UML
elements.
Introduction to UML 41
Object Oriented Analysis and Design
CDAC (Formerly NCST)
41/31
UML Common Mechanisms:
Adornments
 Adornments allow showing more information on UML elements.
Introduction to UML 42
Object Oriented Analysis and Design
CDAC (Formerly NCST)
Adornments
“Adorn” the model - i.e., enhance the model. Adds to
the meaning and/or semantics of the element to
which it pertains.
“Notes” are the mechanism provided by UML for
adorning a model:
 graphical symbol to render constraints, comments, etc.
 a note that renders only a comment has no semantic
impact on the element it is adorning; at most adds
meaning to it and/or provides guidelines for
implementation.
Introduction to UML 43
Object Oriented Analysis and Design
CDAC (Formerly NCST)
43/31
UML Common Mechanisms: Common
Divisions
 Common divisions are ways of thinking about the world
(for modeling purposes)
 Common divisions in UML are of two types:
Classifiers and instances [see Table 1.2 in the book]
Interface and implementation
Introduction to UML 44
Object Oriented Analysis and Design
CDAC (Formerly NCST)
Common Divisions
 This is the second extension mechanism that is
provided to us by the UML. Common divisions
are used in order to distinguish between two
things that might appear to be quite similar, or
closely related to one another. There exist two
main common divisions:
 Abstraction vs. Manifestation and Interface
vs. Implementation.
 In the former, we mainly talk about the
distinction between a class and an object,where
the class is an abstraction and the object is a
clear manifestation of that class.
Introduction to UML 45
Object Oriented Analysis and Design
CDAC (Formerly NCST)
Contd….
 Most UML building blocks have this kind of
class/object distinction, e.g. use case , use
case instance etc.
 In the second common division – interface vs.
implementation – we say that an interface
declares some kind of contract, or agreement,
whereas an implementation represents one
concrete realisation of that contract. The
implementation is then responsible for carrying
out the interface.
Introduction to UML 46
Object Oriented Analysis and Design
CDAC (Formerly NCST)
46/31
UML Common Mechanisms:
Extensibility
There are three types of mechanisms that provide support for
UML extensibility.
Introduction to UML 47
Object Oriented Analysis and Design
CDAC (Formerly NCST)
Stereotypes
 Used to create new building blocks from
existing blocks.
 New building blocks are domain-specific.
 A particular abstraction is marked as a
“stereotype” and this stereotype is then used at
other places in the model to denote the
associated abstraction.
Notation: «metaclass»
Introduction to UML 48
Object Oriented Analysis and Design
CDAC (Formerly NCST)
Tagged Values
 Used to add to the information of the element
(not of its instances).
 Stereotypes help create new building blocks;
tagged values help create new attributes.
 Commonly used to specify information relevant
to code generation, configuration management,
etc.
Notation: {version=1.4}
Introduction to UML 49
Object Oriented Analysis and Design
CDAC (Formerly NCST)
Constraints
 Used to create rules for the model.
 Rules that impact the semantics of the model,
and specify conditions that must be met.
 Can apply to any element in the model -
attributes of a class, relationship, etc.
Notation: { incomplete, disjoint }
Introduction to UML 50
Object Oriented Analysis and Design
CDAC (Formerly NCST)
ARCHITECTURE
Visualizing ,Specifying ,Constructing and
Documenting a software system demands that
the system can be viewed in different
perspectives.
Architecture is the set of significant decisions
about:
-The organisation of a software system
-The Selection of the structural elements and
their interfaces by which the system is
composed.
Introduction to UML 51
Object Oriented Analysis and Design
CDAC (Formerly NCST)
51/31
Architecture.
 The system architecture is “the organizational structure of the system,
including its decomposition into parts, their connectivity, interaction,
mechanisms and the guiding principles that inform the design of a system.”
[Rumbaugh 1998]
 There is a typical “4+1 views” architecture of a system defined by UML:
Logical view, captures the vocabulary of the problem domain using classes and
objects
Process view, depicts the threads and processes of the system as active
classes
Implementation view, shows the physical code base of the system in terms of
components
Deployment view, models the physical deployment of components onto
computational nodes
Use case view, captures the requirements of the system using a set of use
cases. This is the view “+1” to which all other views connect.
Introduction to UML 52
Object Oriented Analysis and Design
CDAC (Formerly NCST)
52/31
.Architecture
The “4 +1 views” architecture, Fig. 1.13 [Arlow & Neustadt 2005]
Introduction to UML 53
Object Oriented Analysis and Design
CDAC (Formerly NCST)
53/31
Software Development Life Cycle
Should consider the process as:
 Use case and risk driven
 Architecture centric
 Iterative and incremental
Each iteration contains all the elements of a regular software
development project: planning, analysis, design, construction,
integration, testing, internal or external release
Introduction to UML 54
Object Oriented Analysis and Design
CDAC (Formerly NCST)
54/31
SDLC
Introduction to UML 55
Object Oriented Analysis and Design
CDAC (Formerly NCST)
55/31
SDLC: Details on Phases.
Each of the four phases of UP (inception, elaboration,
construction, transition) has:
A goal
A focus of activity
One or more core workflows
A milestone, with a number of conditions of satisfaction

More Related Content

Similar to OOAD

Uml Presentation
Uml PresentationUml Presentation
Uml Presentationanasz3z3
 
06-unit-iintrouml25sep2015-160901172758.pptx
06-unit-iintrouml25sep2015-160901172758.pptx06-unit-iintrouml25sep2015-160901172758.pptx
06-unit-iintrouml25sep2015-160901172758.pptxSindhu Mani
 
PhD Core Paper Unit 5 _Part 1 Software Design and UML Use Case Modeling.pdf
PhD Core Paper Unit 5 _Part 1 Software Design and UML Use Case Modeling.pdfPhD Core Paper Unit 5 _Part 1 Software Design and UML Use Case Modeling.pdf
PhD Core Paper Unit 5 _Part 1 Software Design and UML Use Case Modeling.pdfJAYANTHIKANNAN8
 
Unified Modeling Language
Unified Modeling LanguageUnified Modeling Language
Unified Modeling Languagesurana college
 
Object-oriented modeling and design.pdf
Object-oriented modeling and  design.pdfObject-oriented modeling and  design.pdf
Object-oriented modeling and design.pdfSHIVAM691605
 
CS8592 Object Oriented Analysis & Design - UNIT II
CS8592 Object Oriented Analysis & Design - UNIT IICS8592 Object Oriented Analysis & Design - UNIT II
CS8592 Object Oriented Analysis & Design - UNIT IIpkaviya
 
Object oriented modeling and design
Object oriented modeling and designObject oriented modeling and design
Object oriented modeling and designjayashri kolekar
 
UNIFIED MODELING LANGUAGE
UNIFIED MODELING LANGUAGEUNIFIED MODELING LANGUAGE
UNIFIED MODELING LANGUAGERaval Chirag
 
UML and Case study
UML and Case study UML and Case study
UML and Case study Mihika-QA
 
UNIT-I(Unified_Process_and_Use Case_Diagrams)_OOAD.ppt
UNIT-I(Unified_Process_and_Use Case_Diagrams)_OOAD.pptUNIT-I(Unified_Process_and_Use Case_Diagrams)_OOAD.ppt
UNIT-I(Unified_Process_and_Use Case_Diagrams)_OOAD.pptVGaneshKarthikeyan
 
UNIT-I(Unified_Process_and_Use Case_Diagrams)_OOAD.ppt
UNIT-I(Unified_Process_and_Use Case_Diagrams)_OOAD.pptUNIT-I(Unified_Process_and_Use Case_Diagrams)_OOAD.ppt
UNIT-I(Unified_Process_and_Use Case_Diagrams)_OOAD.pptVGaneshKarthikeyan
 
UNIT-I(Unified_Process_and_Use Case_Diagrams)_OOAD.ppt
UNIT-I(Unified_Process_and_Use Case_Diagrams)_OOAD.pptUNIT-I(Unified_Process_and_Use Case_Diagrams)_OOAD.ppt
UNIT-I(Unified_Process_and_Use Case_Diagrams)_OOAD.pptVGaneshKarthikeyan
 
03 ooad-uml 03
03 ooad-uml 0303 ooad-uml 03
03 ooad-uml 03PujiHst
 

Similar to OOAD (20)

Case stydy cs701
Case stydy cs701 Case stydy cs701
Case stydy cs701
 
Uml Presentation
Uml PresentationUml Presentation
Uml Presentation
 
06-unit-iintrouml25sep2015-160901172758.pptx
06-unit-iintrouml25sep2015-160901172758.pptx06-unit-iintrouml25sep2015-160901172758.pptx
06-unit-iintrouml25sep2015-160901172758.pptx
 
PhD Core Paper Unit 5 _Part 1 Software Design and UML Use Case Modeling.pdf
PhD Core Paper Unit 5 _Part 1 Software Design and UML Use Case Modeling.pdfPhD Core Paper Unit 5 _Part 1 Software Design and UML Use Case Modeling.pdf
PhD Core Paper Unit 5 _Part 1 Software Design and UML Use Case Modeling.pdf
 
Unified Modeling Language
Unified Modeling LanguageUnified Modeling Language
Unified Modeling Language
 
432
432432
432
 
Ooad
OoadOoad
Ooad
 
Object-oriented modeling and design.pdf
Object-oriented modeling and  design.pdfObject-oriented modeling and  design.pdf
Object-oriented modeling and design.pdf
 
CS8592 Object Oriented Analysis & Design - UNIT II
CS8592 Object Oriented Analysis & Design - UNIT IICS8592 Object Oriented Analysis & Design - UNIT II
CS8592 Object Oriented Analysis & Design - UNIT II
 
Object oriented modeling and design
Object oriented modeling and designObject oriented modeling and design
Object oriented modeling and design
 
UNIFIED MODELING LANGUAGE
UNIFIED MODELING LANGUAGEUNIFIED MODELING LANGUAGE
UNIFIED MODELING LANGUAGE
 
UML and Case study
UML and Case study UML and Case study
UML and Case study
 
Ooad unit 1
Ooad unit 1Ooad unit 1
Ooad unit 1
 
Chapter9
Chapter9Chapter9
Chapter9
 
UNIT-I(Unified_Process_and_Use Case_Diagrams)_OOAD.ppt
UNIT-I(Unified_Process_and_Use Case_Diagrams)_OOAD.pptUNIT-I(Unified_Process_and_Use Case_Diagrams)_OOAD.ppt
UNIT-I(Unified_Process_and_Use Case_Diagrams)_OOAD.ppt
 
UNIT-I(Unified_Process_and_Use Case_Diagrams)_OOAD.ppt
UNIT-I(Unified_Process_and_Use Case_Diagrams)_OOAD.pptUNIT-I(Unified_Process_and_Use Case_Diagrams)_OOAD.ppt
UNIT-I(Unified_Process_and_Use Case_Diagrams)_OOAD.ppt
 
UNIT-I(Unified_Process_and_Use Case_Diagrams)_OOAD.ppt
UNIT-I(Unified_Process_and_Use Case_Diagrams)_OOAD.pptUNIT-I(Unified_Process_and_Use Case_Diagrams)_OOAD.ppt
UNIT-I(Unified_Process_and_Use Case_Diagrams)_OOAD.ppt
 
Intro Uml
Intro UmlIntro Uml
Intro Uml
 
03 ooad-uml 03
03 ooad-uml 0303 ooad-uml 03
03 ooad-uml 03
 
Uml.pptx
Uml.pptxUml.pptx
Uml.pptx
 

More from Osmania University (11)

Dos_Commands.ppt
Dos_Commands.pptDos_Commands.ppt
Dos_Commands.ppt
 
file_c.pdf
file_c.pdffile_c.pdf
file_c.pdf
 
Students Arsama Brochure (15 × 10 in).pdf
Students Arsama Brochure (15 × 10 in).pdfStudents Arsama Brochure (15 × 10 in).pdf
Students Arsama Brochure (15 × 10 in).pdf
 
PreProcessorDirective.ppt
PreProcessorDirective.pptPreProcessorDirective.ppt
PreProcessorDirective.ppt
 
pointers (1).ppt
pointers (1).pptpointers (1).ppt
pointers (1).ppt
 
introds_110116.pdf
introds_110116.pdfintrods_110116.pdf
introds_110116.pdf
 
1.pdf
1.pdf1.pdf
1.pdf
 
vmls-slides.pdf
vmls-slides.pdfvmls-slides.pdf
vmls-slides.pdf
 
CN Jntu PPT
CN Jntu PPTCN Jntu PPT
CN Jntu PPT
 
ISAA
ISAAISAA
ISAA
 
Unit-INP.ppt
Unit-INP.pptUnit-INP.ppt
Unit-INP.ppt
 

Recently uploaded

Call Girls Delhi {Jodhpur} 9711199012 high profile service
Call Girls Delhi {Jodhpur} 9711199012 high profile serviceCall Girls Delhi {Jodhpur} 9711199012 high profile service
Call Girls Delhi {Jodhpur} 9711199012 high profile servicerehmti665
 
Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...
Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...
Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...Dr.Costas Sachpazis
 
Gfe Mayur Vihar Call Girls Service WhatsApp -> 9999965857 Available 24x7 ^ De...
Gfe Mayur Vihar Call Girls Service WhatsApp -> 9999965857 Available 24x7 ^ De...Gfe Mayur Vihar Call Girls Service WhatsApp -> 9999965857 Available 24x7 ^ De...
Gfe Mayur Vihar Call Girls Service WhatsApp -> 9999965857 Available 24x7 ^ De...srsj9000
 
Introduction to Multiple Access Protocol.pptx
Introduction to Multiple Access Protocol.pptxIntroduction to Multiple Access Protocol.pptx
Introduction to Multiple Access Protocol.pptxupamatechverse
 
MANUFACTURING PROCESS-II UNIT-2 LATHE MACHINE
MANUFACTURING PROCESS-II UNIT-2 LATHE MACHINEMANUFACTURING PROCESS-II UNIT-2 LATHE MACHINE
MANUFACTURING PROCESS-II UNIT-2 LATHE MACHINESIVASHANKAR N
 
chaitra-1.pptx fake news detection using machine learning
chaitra-1.pptx  fake news detection using machine learningchaitra-1.pptx  fake news detection using machine learning
chaitra-1.pptx fake news detection using machine learningmisbanausheenparvam
 
Call Girls in Nagpur Suman Call 7001035870 Meet With Nagpur Escorts
Call Girls in Nagpur Suman Call 7001035870 Meet With Nagpur EscortsCall Girls in Nagpur Suman Call 7001035870 Meet With Nagpur Escorts
Call Girls in Nagpur Suman Call 7001035870 Meet With Nagpur EscortsCall Girls in Nagpur High Profile
 
Porous Ceramics seminar and technical writing
Porous Ceramics seminar and technical writingPorous Ceramics seminar and technical writing
Porous Ceramics seminar and technical writingrakeshbaidya232001
 
Call Girls Service Nagpur Tanvi Call 7001035870 Meet With Nagpur Escorts
Call Girls Service Nagpur Tanvi Call 7001035870 Meet With Nagpur EscortsCall Girls Service Nagpur Tanvi Call 7001035870 Meet With Nagpur Escorts
Call Girls Service Nagpur Tanvi Call 7001035870 Meet With Nagpur EscortsCall Girls in Nagpur High Profile
 
Architect Hassan Khalil Portfolio for 2024
Architect Hassan Khalil Portfolio for 2024Architect Hassan Khalil Portfolio for 2024
Architect Hassan Khalil Portfolio for 2024hassan khalil
 
Microscopic Analysis of Ceramic Materials.pptx
Microscopic Analysis of Ceramic Materials.pptxMicroscopic Analysis of Ceramic Materials.pptx
Microscopic Analysis of Ceramic Materials.pptxpurnimasatapathy1234
 
MANUFACTURING PROCESS-II UNIT-5 NC MACHINE TOOLS
MANUFACTURING PROCESS-II UNIT-5 NC MACHINE TOOLSMANUFACTURING PROCESS-II UNIT-5 NC MACHINE TOOLS
MANUFACTURING PROCESS-II UNIT-5 NC MACHINE TOOLSSIVASHANKAR N
 
Call for Papers - African Journal of Biological Sciences, E-ISSN: 2663-2187, ...
Call for Papers - African Journal of Biological Sciences, E-ISSN: 2663-2187, ...Call for Papers - African Journal of Biological Sciences, E-ISSN: 2663-2187, ...
Call for Papers - African Journal of Biological Sciences, E-ISSN: 2663-2187, ...Christo Ananth
 
The Most Attractive Pune Call Girls Budhwar Peth 8250192130 Will You Miss Thi...
The Most Attractive Pune Call Girls Budhwar Peth 8250192130 Will You Miss Thi...The Most Attractive Pune Call Girls Budhwar Peth 8250192130 Will You Miss Thi...
The Most Attractive Pune Call Girls Budhwar Peth 8250192130 Will You Miss Thi...ranjana rawat
 
(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts
(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts
(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escortsranjana rawat
 
High Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur EscortsHigh Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur Escortsranjana rawat
 

Recently uploaded (20)

Call Girls Delhi {Jodhpur} 9711199012 high profile service
Call Girls Delhi {Jodhpur} 9711199012 high profile serviceCall Girls Delhi {Jodhpur} 9711199012 high profile service
Call Girls Delhi {Jodhpur} 9711199012 high profile service
 
Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...
Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...
Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...
 
Gfe Mayur Vihar Call Girls Service WhatsApp -> 9999965857 Available 24x7 ^ De...
Gfe Mayur Vihar Call Girls Service WhatsApp -> 9999965857 Available 24x7 ^ De...Gfe Mayur Vihar Call Girls Service WhatsApp -> 9999965857 Available 24x7 ^ De...
Gfe Mayur Vihar Call Girls Service WhatsApp -> 9999965857 Available 24x7 ^ De...
 
Introduction to Multiple Access Protocol.pptx
Introduction to Multiple Access Protocol.pptxIntroduction to Multiple Access Protocol.pptx
Introduction to Multiple Access Protocol.pptx
 
★ CALL US 9953330565 ( HOT Young Call Girls In Badarpur delhi NCR
★ CALL US 9953330565 ( HOT Young Call Girls In Badarpur delhi NCR★ CALL US 9953330565 ( HOT Young Call Girls In Badarpur delhi NCR
★ CALL US 9953330565 ( HOT Young Call Girls In Badarpur delhi NCR
 
MANUFACTURING PROCESS-II UNIT-2 LATHE MACHINE
MANUFACTURING PROCESS-II UNIT-2 LATHE MACHINEMANUFACTURING PROCESS-II UNIT-2 LATHE MACHINE
MANUFACTURING PROCESS-II UNIT-2 LATHE MACHINE
 
9953056974 Call Girls In South Ex, Escorts (Delhi) NCR.pdf
9953056974 Call Girls In South Ex, Escorts (Delhi) NCR.pdf9953056974 Call Girls In South Ex, Escorts (Delhi) NCR.pdf
9953056974 Call Girls In South Ex, Escorts (Delhi) NCR.pdf
 
DJARUM4D - SLOT GACOR ONLINE | SLOT DEMO ONLINE
DJARUM4D - SLOT GACOR ONLINE | SLOT DEMO ONLINEDJARUM4D - SLOT GACOR ONLINE | SLOT DEMO ONLINE
DJARUM4D - SLOT GACOR ONLINE | SLOT DEMO ONLINE
 
chaitra-1.pptx fake news detection using machine learning
chaitra-1.pptx  fake news detection using machine learningchaitra-1.pptx  fake news detection using machine learning
chaitra-1.pptx fake news detection using machine learning
 
Call Girls in Nagpur Suman Call 7001035870 Meet With Nagpur Escorts
Call Girls in Nagpur Suman Call 7001035870 Meet With Nagpur EscortsCall Girls in Nagpur Suman Call 7001035870 Meet With Nagpur Escorts
Call Girls in Nagpur Suman Call 7001035870 Meet With Nagpur Escorts
 
Porous Ceramics seminar and technical writing
Porous Ceramics seminar and technical writingPorous Ceramics seminar and technical writing
Porous Ceramics seminar and technical writing
 
Call Girls Service Nagpur Tanvi Call 7001035870 Meet With Nagpur Escorts
Call Girls Service Nagpur Tanvi Call 7001035870 Meet With Nagpur EscortsCall Girls Service Nagpur Tanvi Call 7001035870 Meet With Nagpur Escorts
Call Girls Service Nagpur Tanvi Call 7001035870 Meet With Nagpur Escorts
 
Architect Hassan Khalil Portfolio for 2024
Architect Hassan Khalil Portfolio for 2024Architect Hassan Khalil Portfolio for 2024
Architect Hassan Khalil Portfolio for 2024
 
Microscopic Analysis of Ceramic Materials.pptx
Microscopic Analysis of Ceramic Materials.pptxMicroscopic Analysis of Ceramic Materials.pptx
Microscopic Analysis of Ceramic Materials.pptx
 
MANUFACTURING PROCESS-II UNIT-5 NC MACHINE TOOLS
MANUFACTURING PROCESS-II UNIT-5 NC MACHINE TOOLSMANUFACTURING PROCESS-II UNIT-5 NC MACHINE TOOLS
MANUFACTURING PROCESS-II UNIT-5 NC MACHINE TOOLS
 
Call for Papers - African Journal of Biological Sciences, E-ISSN: 2663-2187, ...
Call for Papers - African Journal of Biological Sciences, E-ISSN: 2663-2187, ...Call for Papers - African Journal of Biological Sciences, E-ISSN: 2663-2187, ...
Call for Papers - African Journal of Biological Sciences, E-ISSN: 2663-2187, ...
 
The Most Attractive Pune Call Girls Budhwar Peth 8250192130 Will You Miss Thi...
The Most Attractive Pune Call Girls Budhwar Peth 8250192130 Will You Miss Thi...The Most Attractive Pune Call Girls Budhwar Peth 8250192130 Will You Miss Thi...
The Most Attractive Pune Call Girls Budhwar Peth 8250192130 Will You Miss Thi...
 
(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts
(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts
(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts
 
High Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur EscortsHigh Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur Escorts
 
Roadmap to Membership of RICS - Pathways and Routes
Roadmap to Membership of RICS - Pathways and RoutesRoadmap to Membership of RICS - Pathways and Routes
Roadmap to Membership of RICS - Pathways and Routes
 

OOAD

  • 2. Introduction to UML 2 Object Oriented Analysis and Design CDAC (Formerly NCST) Contents  Why model ?  Principles of modeling  What is UML ?  Conceptual Model of the UML  Building Blocks  Rules  Common Mechanisms
  • 3. Introduction to UML 3 Object Oriented Analysis and Design CDAC (Formerly NCST) Why Model ?  Analyse the problem-domain  simplify reality  capture requirements  visualize the system in its entirety  specify the structure and/or behaviour of the system  Design the solution  document the solution - in terms of its structure, behaviour, etc.
  • 4. Introduction to UML 4 Object Oriented Analysis and Design CDAC (Formerly NCST) CS 3300 Object- Object-Oriented 4 Importance of Modeling  Models help us to visualize a system as it is or as we want it to be. to specify the structure or behavior of a system. in providing a template that guides us in constructing a system. in providing documenting the decisions we have made.
  • 5. Introduction to UML 5 Object Oriented Analysis and Design CDAC (Formerly NCST) Principles of Modeling  Choose your model well - the choice of model profoundly impacts the analysis of the problem and the design of the solution.  Every model may be expressed at different levels of precision - the same model can be scaled up (or down) to different granularities.  The best models are connected to reality - simplify the model, but don’t hide important details.  No single model suffices - every nontrivial system has different dimensions to the problem and its solution.
  • 6. Introduction to UML 6 Object Oriented Analysis and Design CDAC (Formerly NCST) CS 3300 Object- Object-Oriented 6 Object-Oriented Modeling  Two most common ways in modeling software systems are Algorithmic • Procedures or functions Object oriented • Objects or classes
  • 7. Introduction to UML 7 Object Oriented Analysis and Design CDAC (Formerly NCST) What is UML ?  UML - Unified Modeling language  UML is a modeling language, not a methodology or process  Fuses the concepts of the Booch, OMT, OOSE methods  Developed by Grady Booch, James Rumbaugh and Ivar Jacobson at Rational Software.  Accepted as a standard by the Object Management Group (OMG), in 1997.
  • 8. Introduction to UML 8 Object Oriented Analysis and Design CDAC (Formerly NCST) CS 3300 Object- Object-Oriented 8 What is UML?  UML is a language for Visualizing Specifying Constructing Documenting
  • 9. Introduction to UML 9 Object Oriented Analysis and Design CDAC (Formerly NCST) More on UML... UML is a modeling language for visualising, specifying, constructing and documenting the artifacts of software systems. Visualising - a picture is worth a thousand words; a graphical notation articulates and unambiguously communicates the overall view of the system (problem-domain).
  • 10. Introduction to UML 10 Object Oriented Analysis and Design CDAC (Formerly NCST) More on UML... Specifying - UML provides the means to model precisely, unambiguously and completely, the system in question. Constructing - models built with UML have a “design” dimension to it; these are language independent and can be implemented in any programming language.
  • 11. Introduction to UML 11 Object Oriented Analysis and Design CDAC (Formerly NCST) More on UML... Documenting - every software project involves a lot of documentation - from the inception phase to the deliverables. • Requirements • Design • Tests Documentation is (among others) for: UML provides the notations for documenting some of these artifacts
  • 12. Introduction to UML 12 Object Oriented Analysis and Design CDAC (Formerly NCST)  Specifications  Adornments  Common Divisions  Extensibility Mechanisms Conceptual Model of UML  Building Blocks  Rules  Common Mechanisms  Things  Relationships  Diagrams
  • 13. Introduction to UML 13 Object Oriented Analysis and Design CDAC (Formerly NCST) UML Building Blocks  Things  Relationships  Structural  Behavioral  Grouping  Annotational  Dependency  Association  Generalisation  Realization  Diagrams  Class Diagram  Object Diagram  Use Case Diagram  Behaviour Diagram  Implementation Diagram
  • 14. Introduction to UML 14 Object Oriented Analysis and Design CDAC (Formerly NCST) Structural Things The nouns of UML models; usually the static parts of the system in question.  Class - an abstraction of a set of things in the problem- domain that have similar properties and/or functionality. Notation: customer Notation:  Interface - a collection of operations that specify the services rendered by a class or component.
  • 15. Introduction to UML 15 Object Oriented Analysis and Design CDAC (Formerly NCST) Structural Things (contd.)  Collaboration - a collection of UML building blocks (classes, interfaces, relationships) that work together to provide some functionality within the system. Notation: Accounts System Notation: Process Order  Use Case - an abstraction of a set of functions that the system performs; a use case is “realized” by a collaboration.
  • 16. Introduction to UML 16 Object Oriented Analysis and Design CDAC (Formerly NCST)  Active Class - a class whose instance is an active object; an active object is an object that owns a process or thread (units of execution) Structural Things (contd.) Notation: eventManager Notation: DML_Parser.C  Component - a physical part (typically manifests itself as a piece of software) of the system.
  • 17. Introduction to UML 17 Object Oriented Analysis and Design CDAC (Formerly NCST)  Node - a physical element that exists at run-time and represents a computational resource (typically, hardware resources). Structural Things (contd.) Notation: PrintServer
  • 18. Introduction to UML 18 Object Oriented Analysis and Design CDAC (Formerly NCST) Behavioral Things The verbs of UML models; usually the dynamic parts of the system in question.  Interaction - some behaviour constituted by messages exchanged among objects; the exchange of messages is with a view to achieving some purpose. Notation: Parse
  • 19. Introduction to UML 19 Object Oriented Analysis and Design CDAC (Formerly NCST) Behavioral Things (contd.)  State machine - a behaviour that specifies the sequence of “states” an object goes through, during its lifetime. A “state” is a condition or situation during the lifetime of an object during which it exhibits certain characteristics and/or performs some function. Engine Idling Notation:
  • 20. Introduction to UML 20 Object Oriented Analysis and Design CDAC (Formerly NCST) Grouping Things The organisational part of the UML model; provides a higher level of abstraction (granularity).  Package - a general-purpose element that comprises UML elements - structural, behavioral or even grouping things. Packages are conceptual groupings of the system and need not necessarily be implemented as cohesive software modules. Notation: . Accounts Department
  • 21. Introduction to UML 21 Object Oriented Analysis and Design CDAC (Formerly NCST) Annotational Things The explanatory part of the UML model; adds information/meaning to the model elements.  Note - a graphical notation for attaching constraints and/or comments to elements of the model. Parses user-query and builds expression stack (or invokes ErrorHandler) Notation:
  • 22. Introduction to UML 22 Object Oriented Analysis and Design CDAC (Formerly NCST) Relationships Articulates the meaning of the links between things.  Dependency - a semantic relationship where a change in one thing (the independent thing) causes a change in the semantics of the other thing (the dependent thing). Notation: (arrow-head points to the independent thing)  Association - a structural relationship that describes the connection between two things. Notation:
  • 23. Introduction to UML 23 Object Oriented Analysis and Design CDAC (Formerly NCST) Relationships (contd.)  Generalisation - a relationship between a general thing (called “parent” or “superclass”) and a more specific kind of that thing (called the “child” or “subclass”), such that the latter can substitute the former. Notation: (arrow-head points to the superclass)
  • 24. Introduction to UML 24 Object Oriented Analysis and Design CDAC (Formerly NCST) Relationships (contd.)  Realization - a semantic relationship between two things wherein one specifies the behaviour to be carried out, and the other carries out the behaviour.  “ a collaboration realizes a Use Case” the Use Case specifies the behaviour (functionality) to be carried out (provided), and the collaboration actually implements that behaviour. Notation: (arrow-head points to the thing being realized)
  • 25. Introduction to UML 25 Object Oriented Analysis and Design CDAC (Formerly NCST) Diagrams The graphical presentation of the model. Represented as a connected graph - vertices (things) connected by arcs (relationships). UML includes nine diagrams - each capturing a different dimension of a software-system architecture.  Class Diagram  Object Diagram  Use Case Diagram  Sequence Diagram  Collaboration Diagram  Statechart Diagram  Activity Diagram  Component Diagram  Deployment Diagram
  • 26. Introduction to UML 26 Object Oriented Analysis and Design CDAC (Formerly NCST) More on Diagrams...  Class Diagram - the most common diagram found in OOAD, shows a set of classes, interfaces, collaborations and their relationships. Models the static view of the system.  Object Diagram - a snapshot of a class diagram; models the instances of things contained in a class diagram.  Use Case Diagram - shows a set of “Use Cases” (sets of functionality performed by the system), the “actors” (typically, people/systems that interact with this system[problem-domain]) and their relationships. Models WHAT the system is expected to do.
  • 27. Introduction to UML 27 Object Oriented Analysis and Design CDAC (Formerly NCST) 27 Class diagram example StudentBody + main (args : String[]) + toString() : String 1 100 Student - firstName : String - lastName : String - homeAddress : Address - schoolAddress : Address + toString() : String - streetAddress : String - city : String - state : String - zipCode : long Address
  • 28. Introduction to UML 28 Object Oriented Analysis and Design CDAC (Formerly NCST) Object Diagram example
  • 29. Introduction to UML 29 Object Oriented Analysis and Design CDAC (Formerly NCST) Use case example
  • 30. Introduction to UML 30 Object Oriented Analysis and Design CDAC (Formerly NCST) More on Diagrams...  Sequence Diagram - models the flow of control by time- ordering; depicts the interaction between various objects by of messages passed, with a temporal dimension to it.  Collaboration Diagram - models the interaction between objects, without the temporal dimension; merely depicts the messages passed between objects and classes.  State chart Diagram - shows the different state machines and the events that leads to each of these state machines. State chart diagrams show the flow of control from state to state.
  • 31. Introduction to UML 31 Object Oriented Analysis and Design CDAC (Formerly NCST) Sequence Diagram
  • 32. Introduction to UML 32 Object Oriented Analysis and Design CDAC (Formerly NCST) Ex. Collaboration Diagram
  • 33. Introduction to UML 33 Object Oriented Analysis and Design CDAC (Formerly NCST) State chart Diagram Ex
  • 34. Introduction to UML 34 Object Oriented Analysis and Design CDAC (Formerly NCST) More on Diagrams...  Activity Diagram - shows the flow from activity to activity; an “activity” is an ongoing non-atomic execution within a state machine.  Component Diagram - shows the physical packaging of software in terms of components and the dependencies between them.  Deployment Diagram - shows the configuration of the processing nodes at run-time and the components that live on them.
  • 35. Introduction to UML 35 Object Oriented Analysis and Design CDAC (Formerly NCST) Activity Diagram: Example
  • 36. Introduction to UML 36 Object Oriented Analysis and Design CDAC (Formerly NCST) COMPONENT DIAGRAM EXAMPLE
  • 37. Introduction to UML 37 Object Oriented Analysis and Design CDAC (Formerly NCST) Deployment diagram ex
  • 38. Introduction to UML 38 Object Oriented Analysis and Design CDAC (Formerly NCST) Rules  Specify what a well-formed model should look like.  The UML has semantic rules for Names Scope Visibility Integrity Execution
  • 39. Introduction to UML 39 Object Oriented Analysis and Design CDAC (Formerly NCST) 39/31 UML Common Mechanisms  UML has four common mechanisms that are applied consistently, in different contexts, throughout UML.
  • 40. Introduction to UML 40 Object Oriented Analysis and Design CDAC (Formerly NCST) 40/31 UML Common Mechanisms: Specifications  Specifications are textual descriptions of the semantics of UML elements.
  • 41. Introduction to UML 41 Object Oriented Analysis and Design CDAC (Formerly NCST) 41/31 UML Common Mechanisms: Adornments  Adornments allow showing more information on UML elements.
  • 42. Introduction to UML 42 Object Oriented Analysis and Design CDAC (Formerly NCST) Adornments “Adorn” the model - i.e., enhance the model. Adds to the meaning and/or semantics of the element to which it pertains. “Notes” are the mechanism provided by UML for adorning a model:  graphical symbol to render constraints, comments, etc.  a note that renders only a comment has no semantic impact on the element it is adorning; at most adds meaning to it and/or provides guidelines for implementation.
  • 43. Introduction to UML 43 Object Oriented Analysis and Design CDAC (Formerly NCST) 43/31 UML Common Mechanisms: Common Divisions  Common divisions are ways of thinking about the world (for modeling purposes)  Common divisions in UML are of two types: Classifiers and instances [see Table 1.2 in the book] Interface and implementation
  • 44. Introduction to UML 44 Object Oriented Analysis and Design CDAC (Formerly NCST) Common Divisions  This is the second extension mechanism that is provided to us by the UML. Common divisions are used in order to distinguish between two things that might appear to be quite similar, or closely related to one another. There exist two main common divisions:  Abstraction vs. Manifestation and Interface vs. Implementation.  In the former, we mainly talk about the distinction between a class and an object,where the class is an abstraction and the object is a clear manifestation of that class.
  • 45. Introduction to UML 45 Object Oriented Analysis and Design CDAC (Formerly NCST) Contd….  Most UML building blocks have this kind of class/object distinction, e.g. use case , use case instance etc.  In the second common division – interface vs. implementation – we say that an interface declares some kind of contract, or agreement, whereas an implementation represents one concrete realisation of that contract. The implementation is then responsible for carrying out the interface.
  • 46. Introduction to UML 46 Object Oriented Analysis and Design CDAC (Formerly NCST) 46/31 UML Common Mechanisms: Extensibility There are three types of mechanisms that provide support for UML extensibility.
  • 47. Introduction to UML 47 Object Oriented Analysis and Design CDAC (Formerly NCST) Stereotypes  Used to create new building blocks from existing blocks.  New building blocks are domain-specific.  A particular abstraction is marked as a “stereotype” and this stereotype is then used at other places in the model to denote the associated abstraction. Notation: «metaclass»
  • 48. Introduction to UML 48 Object Oriented Analysis and Design CDAC (Formerly NCST) Tagged Values  Used to add to the information of the element (not of its instances).  Stereotypes help create new building blocks; tagged values help create new attributes.  Commonly used to specify information relevant to code generation, configuration management, etc. Notation: {version=1.4}
  • 49. Introduction to UML 49 Object Oriented Analysis and Design CDAC (Formerly NCST) Constraints  Used to create rules for the model.  Rules that impact the semantics of the model, and specify conditions that must be met.  Can apply to any element in the model - attributes of a class, relationship, etc. Notation: { incomplete, disjoint }
  • 50. Introduction to UML 50 Object Oriented Analysis and Design CDAC (Formerly NCST) ARCHITECTURE Visualizing ,Specifying ,Constructing and Documenting a software system demands that the system can be viewed in different perspectives. Architecture is the set of significant decisions about: -The organisation of a software system -The Selection of the structural elements and their interfaces by which the system is composed.
  • 51. Introduction to UML 51 Object Oriented Analysis and Design CDAC (Formerly NCST) 51/31 Architecture.  The system architecture is “the organizational structure of the system, including its decomposition into parts, their connectivity, interaction, mechanisms and the guiding principles that inform the design of a system.” [Rumbaugh 1998]  There is a typical “4+1 views” architecture of a system defined by UML: Logical view, captures the vocabulary of the problem domain using classes and objects Process view, depicts the threads and processes of the system as active classes Implementation view, shows the physical code base of the system in terms of components Deployment view, models the physical deployment of components onto computational nodes Use case view, captures the requirements of the system using a set of use cases. This is the view “+1” to which all other views connect.
  • 52. Introduction to UML 52 Object Oriented Analysis and Design CDAC (Formerly NCST) 52/31 .Architecture The “4 +1 views” architecture, Fig. 1.13 [Arlow & Neustadt 2005]
  • 53. Introduction to UML 53 Object Oriented Analysis and Design CDAC (Formerly NCST) 53/31 Software Development Life Cycle Should consider the process as:  Use case and risk driven  Architecture centric  Iterative and incremental Each iteration contains all the elements of a regular software development project: planning, analysis, design, construction, integration, testing, internal or external release
  • 54. Introduction to UML 54 Object Oriented Analysis and Design CDAC (Formerly NCST) 54/31 SDLC
  • 55. Introduction to UML 55 Object Oriented Analysis and Design CDAC (Formerly NCST) 55/31 SDLC: Details on Phases. Each of the four phases of UP (inception, elaboration, construction, transition) has: A goal A focus of activity One or more core workflows A milestone, with a number of conditions of satisfaction

Editor's Notes

  1. 10/21/2022
  2. 10/21/2022
  3. 10/21/2022
  4. 10/21/2022
  5. 10/21/2022
  6. 10/21/2022
  7. 10/21/2022
  8. 10/21/2022
  9. 10/21/2022
  10. 10/21/2022
  11. 10/21/2022
  12. 10/21/2022
  13. 10/21/2022
  14. 10/21/2022
  15. 10/21/2022
  16. 10/21/2022
  17. 10/21/2022
  18. 10/21/2022
  19. 10/21/2022
  20. 10/21/2022
  21. 10/21/2022
  22. 10/21/2022
  23. 10/21/2022
  24. 10/21/2022
  25. 10/21/2022
  26. 10/21/2022
  27. 10/21/2022
  28. 10/21/2022
  29. 10/21/2022
  30. 10/21/2022
  31. 10/21/2022
  32. 10/21/2022
  33. 10/21/2022
  34. 10/21/2022
  35. 10/21/2022
  36. 10/21/2022
  37. 10/21/2022
  38. 10/21/2022
  39. 10/21/2022
  40. 10/21/2022
  41. 10/21/2022
  42. 10/21/2022
  43. 10/21/2022
  44. 10/21/2022
  45. 10/21/2022
  46. 10/21/2022
  47. 10/21/2022
  48. 10/21/2022
  49. 10/21/2022
  50. 10/21/2022
  51. 10/21/2022
  52. 10/21/2022
  53. 10/21/2022
  54. 10/21/2022
  55. 10/21/2022