SE-Chapter 4
SE-Chapter 4
SE-Chapter 4
• Analysis Concept
• System Models
Use case Models
Class Models
Sequence Models
Activity Models
Analysis Concept
• The system Analysis involves all processes related to the detailed
system study & problems identification and modeling.
– Detailed system study and Problem Identification
• The description of the system indicate the detail of the system in the
analysis(components of the existing system in terms of Input, Process
and Out puts)
• The problems analysis must be investigated in terms of different
parameters such as Performance, Information handling, Efficiency,
Cost, Economy, Security (PIECES framework) and Others.
– system Modelling
• Includes the representations of the system and its functionalities
using various modelling techniques.
• The models include use case models, classs models,
sequence/Interaction models, etc.
Use case Models
• The use case model for any system consists of a set
of “use cases” with how the “Actors” use or initiate
them.
– Eg. Consider an online book store application that can be
accessed by a registered customer. Each customer
can
order books, review books, and sell books. The
customer is required to log in to the system
to perform any of these transactions and to
log out after
completing the transactions.
Develop the use case model for the scenario.
Use case Models
• The first step in modeling the use case is Draw
the use case diagram, for this :
i. Identify Actor(s): Customer
ii. Identify Use case(s): Register, Order-books, Sell books,
Review-Books, log-in and Log-out
iii. Identify the relation ships(Include & Extends R/n ships):
– Order-books, Sell books, Review-Books <<include>> login
– Order-books, Sell books, Review-Books <<Extends>> logout
iv. Draw the use case diagram(Includes elements stated
above in steps i to iii)
Use case Models
Class Diagram
• Shows how the system is structured, hence it is
static view of a system.
• In modeling classes,
1. Identify Classes with;
• class Name, attribute, Responsibilities /methods) for
each
2. Identify Relation ship between the classes:
• Association, Generalization , Dependency, Etc.
3. Draw the class diagram[following shows partial
view of a class diagram for the example given]
Class Diagram…example
Sequence Diagram
• A sequence diagram ties use cases with objects.
• It Shows interaction between objects, relation ships and
messages.
• It shows how the behavior of a use case (or scenario) is distributed among its
participating objects.
• The columns of a sequence diagram represent the objects that participate in
the use case.
• The leftmost column is the actor who initiates the use case
• Horizontal arrows across columns represent messages, or stimuli, which are
sent from one object to the other
• The receipt of a message triggers the activation of an operation.
• The activation is represented by a rectangle from which other messages can
originate.
• The length of the rectangle represents the time the operation is active
• Following shows example of a sequence diagram for ‘log in’ use case.
Sequence Diagram
Sequence Diagram…
Heuristics for identifying control objects
– Identify one control object per use case or more if the use
case is complex and if it can be divided into shorter flows of
events.
– Identify one control object per actor in the use case.
– The life span of a control object should be extent of the use
case or the extent of a user session.
• If it is difficult to identify the beginning and the end of a
control object activation, the corresponding use case may not
have a well-defined entry and exit condition
Activity Diagram
• An Interaction diagram Used to model the
dynamic view of the system, similar to
sequence diagram.
• Shows activities and flow of control, similar to
flow charts, but activity diagrams have
additional features such as Branching, Parallel
flows, swim lanes, etc.
Activity Diagram
• Activity diagrams commonly contain:
– Action state/Activities
• Action: is simple non decomposable behavior, atomic
» Eg. Gpa=cr.pt * grade point
• Activity: Set of actions, decomposable,
» eg. Generate gradereport()
– Transition between activities()
• Flow of control that shows path from one activity to
other/action state.
Activity Diagram…
– Initial state(Initial node)
• Start of the a transition shown by “
– Final states()
• Ending of transition Shown by
– Branching
• Branch is a decision point of which there are two or more paths of
flows of control.
• Represents test condition.
– Merge Node
• Place where tow or more branches come together.
Activity Diagram…
– Forking
• Splitting of flows of control in to tow or more flows of controls
each of which may work in dependent of on other concurrently.
– Joining
• Synchronization of tow or more flow of control in to one that may
concurrently be performed.
– Swim lanes
• breaking flows of controls in to rows/columns based on roles.
Activity Diagram
• Example: Activity diagram for register:
Re-enter
Invalid Inf.
Valid Inf.
End
Activity Diagram…
Example: Activity diagram for generate grade report:
User Interface Prototyping
• Prototypes of Interfaces that represent visual prompts and responses are part of
UML diagrams that become tools in system analysis.
• These represent screen forms, dialogue boxes, etc
• The prototype is said to be high level fidelity when tools such as screen shoots and
system snapshots are used.
• Among relevant issues in Interface Prototyping are:
– Organizing scenarios
– Draw/representing simplified windows, menus, etc
– Indicating Detailed Layout
– Use of Guide Lines in developing the prototypes
• Set standard
• Use consistent and simple formats