Professional Documents
Culture Documents
Reference Book Singh Y., Malhotra R., Object oriented Software Engineering
INTRODUCTION
This lifecycle has four phases which is different from the traditional SDLC.
OO requirement analysis
OO analysis
OO design
OO requirement analysis
Interaction diagrams
o Depicts communications between set of objects through message passing for each
scenario of a use case.
o Models dynamic aspect of the system.
o Operations and objects may be added , deleted or modified according to the need.
Sequence diagrams
• In sequence diagrams, the messages send amongst objects are time ordered.
• It depicts the focus of control.
• Each sequence diagram represents one of the scenario of the use case.
• A separate sequence diagram may be created for an alternate flow in a use case.
Objects
• An object is an instance of a class
• It is shown by
Home
• Lifeline of the object depicts the amount of time an object is alive in the use case.
• The dashed line appearing on the vertical axis is known as the lifeline of an object.
• lifeline of object begins with an actor
actor sends some message to the object.
• It ends when it is no longer required in the sequence diagram.
• It is shown by
Focus of control
• Focus of control shows the time period for which the object is under interaction or
performing a specific event.
• Focus of control is represented by a rectangle.
Messages
• Messages represent interaction between objects, in which sending object asks the receiving
object to perform some operation.
• Messages are represented by arrow from sending object to receiving object.
Types of messages
1. Simple message
2. Synchronous message
3. Asynchronous message
4. Procedure call
5. Return message
6. Reflexive message
Simple Message
• A simple message is used to represent interaction between objects that may not be a
procedure call.
Synchronous message
• When a synchronous type of message is sent, the sending object waits to receive a response
from the receiving object.
Asynchronous message
• When an asynchronous type of message is sent, the sending object does not wait to receive as
response from receiving object
Procedure call
• The outer sequence resumes after completion of the inner sequence of the procedure.
Return Message
• If some response value is given by a receiving object in response to some message obtained
by the sending object, this is called a return message.
Reflexive message
• New object can be created when required and may be destroyed during the interaction.
• The destruction of an object is represented by a big X, which signifies end of an object.
Example:
o In centralized structure, the controlling objects are responsible for the sending and
receiving of messages.
o They decide activation of objects and flow of messages
o Advantage:
o the parts of functionality can be easily reused
o Always allow to add new operations in sequence diagrams
Example of centralized control structure
Here report generator generates report for other classes i.e. can,bottle,crate.
Collaboration Diagram
• In collaboration diagram, time for which object is alive and time till which an object participates
in an operation are missing.
• A link in collaboration diagram can represent multiple messages
• Modify other related diagrams (i.e Use case scenario diagram, sequence
diagram, collaboration diagram etc…)
• Classes are further refined after the modification of use cases, interaction diagrams including
sequence diagram and collaboration diagram.
• Messages( procedure call) sent from sender object to receiver object become operations of the
receiver object.
• In OOD, new classes are refined i.e new classes have been added, relationships and attributes
are refined and detailed set of operations are identified.
Class name
Class type
Description
Attributes Attribute 1
Attribute 2
:
Attribute n
Operations Operation 1
Operation 2
:
Operation n
Testing terminology
Term Definition
Test case Executes a particular part of the program to verify a given requirement of
the system
Test design & Detailed set of instructions for setting , designing and interpreting the
procedure results of a test case.
Test coverage Extent to which test cases are covered by a given test
Test result Repository which stores all the results and data produced during program
execution.
• After the construction of a detailed designed, software design description(SDD) document may
be prepare.
• The SDD document can serve as a primary medium for communicating software design
information.
• It simply translates the requirements into description of software attribute, operations and
interfaces.
Scenario number and Originating flow Alternative flow Next alternative flow
description
Scenario 1
Scenario 2
• identify all input variables which have been used in every use case.
• Example:
• bookBarcodeID and memberBarcodeID as input variables for entering into the
use case.
• These variables will be given as input to the system and some response is
expected from system
3. Identification
dentification of different input states of variables
TC1 Scenario 1
• To provide actual data values to the input variable for each use case.
Test Scenario name memberBardoceID bookBarcodeID Expected output Remarks (if any)
case ID and
description
• Coad and Yourdon(1991) defined a set of design principles for improving quality of
software product.
• Cohesion
• Coupling
• Design clarity
• Class hierarchy depth
• Simple classes and objects
Cohesion
– Attributes and operations in a class should be highly cohesive.
– Each operation should be designed to fulfill one single purpose.
Coupling
– Interaction coupling between classes should be kept minimum.
– Number of messages(sent and received) between classes should be reduced.
Design clarity