1
Lahore Garrison University
CSC:361- Software Engineering
Semester: Fall2020
Prepared by: TOOBA MARYAM
2
Preamble
Architectural Design
Architectural design decisions
Architectural views
Architectural patterns
Application architectures
Lahore Garrison University
3
Outline
Object Oriented Design and Analysis
Object Oriented Concepts
Unified Modeling Language
Types of Diagrams in UML
Use Case Diagram
4
Object-Oriented Analysis and Design
Works well in situations where complicated systems are
undergoing continuous maintenance, adaptation, and design
Objects, classes and reusable
The Unified Modeling Language (UML) is an industry
standard for modeling object-oriented systems
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
6
Object-Oriented Concepts
Objects
Classes
Inheritance
7
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
8
Classes
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
An attributes describes some property that is possessed by all
objects of the class
A method is an action that can be requested from any object
of the class
9
Example
An example of a UML class. A class is depicted as a rectangle consisting of the class
name, attributes, and methods
10
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
11
Example
A class diagram showing inheritance. Car
and truck are specific examples of
vehicles and inherit the characteristics of
the more general class vehicle
12
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
13
Example
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
14
Interacting during a CRC Session
Identify all the classes you can
Creating scenarios
Identify and refine responsibilities
15
The Unified Modeling Language (UML)
Concepts and Diagrams
Things
Relationships
Diagrams
16
Things
Structural things are
Classes, interfaces, use cases, and other elements that provide a way to create models
They allow the user to describe relationships
Behavioral things
Describe how things work
Interactions and state machines
Group things
Used to define boundaries
Annotational things
Can add notes to the diagrams
17
Relationships
Structural relationships
Tie things together in structural diagrams
Behavioral relationship
Used in behavioral diagrams
18
Structural Relationships
Dependencies
Aggregations
Associations
Generalizations
19
Behavioral Relationships
Communicates
Includes
Extends
Generalizes
20
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)
21
Structural Diagrams
Class diagrams
Object diagrams
Component diagrams
Deployment diagrams
22
Behavioral Diagrams
Use case diagrams
Sequence diagrams
Collaboration diagrams
Statechart diagrams
Activity diagrams
23
UML and Its Components
An overall view of UML and its
components: Things, Relationships, and
Diagrams
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
Commonly Used UML Diagrams 25
(Continued)
Sequence diagrams
Show the sequence of activities and class relationships
Class diagrams
Show classes and relationships
Statechart diagrams
Show the state transitions
26
An overview of UML diagrams showing
how each diagram leads to the
development of other UML diagrams
27
Use Case Modeling
Describes what the system does, without describing how the
system does it
Based on the interactions and relationships of individual use
cases
Use case describes
Actor
Event
Use case
28
A use case example of
student enrollment
29
A use case scenario is divided into three
sections: identification and initiation,
steps performed, and conditions,
assumptions, and questions
Q&A