You are on page 1of 8

Homework-3

Course Code:-CAP315

Course Title:- OBJECT ORIENTED ANALYSIS AND DESIGN

DOA: 28/03/11 DOS: 11/03/11

PART A

Q.1. Select any large system or product with which you are familiar.
State the assumptions, simplifications, limitations, constraints, and
preferences that would have to be made to build an effective (and
realizable) system model.
Ans :­ System modelling is an important element of the system eng. Process.  The Engineer 
creates models that:

1. Define the processes that serve the needs of the view under consideration.
2. Represent the behaviour of the processes and the assumptions on which the 
behaviour is based.
3. Explicitly define both exogenous and endogenous input to the model.
4. Exogenous inputs link one constituent of a given view with other constituents at the 
same level of other levels; endogenous input links individual components of a 
constituent at a particular view.
5. Represent all linkages (including output) that will enable the engineer to better 
understand the view.

To construct a system model, the engineers should consider a number of restraining factors: 
“Read examples of each in book page# 127.”

1. Assumptions that reduce the number of possible permutations and variations, thus 
enabling a model reflect the problem in a reasonable manner.
2. Simplifications that enable the model to be created in a timely manner.
3. Limitations that help to bound the system.
4. Constraints that will guide the manner in which the model is created and the 
approach taken when the model is implemented. 
5. Preferences that indicate the preferred architecture for all data, functions, and 
technology.

► System Modelling with UML

System modelling technique is based on developing a hierarchical system model that has a system
context diagram (SCD) as its root. This model is based on the notion of an information transform
using an input-processing-output template. The SDC provides a big picture of the system, even when
all details are not known. The process of building a system flow diagram (SFD) is similar to building
a data flow diagram (DFD).

1) In terms of the data that describe the element and the operations that manipulate the 
data Deployment diagrams
2) Each 3­D box depicts a hardware element that is part of the physical architecture of 
the system
3) Activity diagrams
4) Represent procedural aspects of a system element
5) Class diagrams
6) Represent system level elements 

CLSS processor

Sorting subsystem Operator display

Sensor data
shunt controller
acquisition subsystem

Conveyor Bar code reader Shunt actuator


Pulse tach

Q.2 Discuss the various types of objects and create object Diagram
of library management System?
Ans :-Object Notation:
The object is represented in the same way as the class. The only difference is the name which is
underlined as shown below.

As object is the actual implementation of a class which is known as the instance of a class. So it has
the same usage as the class.

Types of objects: -

• Active: - A active object owns a thread of control and can initiate control activity. Processes
and tasks are types of active objects.

• Passive: - A passive object holds data, but does not initiate control.

• Multiple instance: - Is a collection of objects or multiple instances of the same class.


Multiple instances are commonly used to show that a set of objects interacts with a single
message (or stimulus).

►Object diagrams model the instances of things contained in class diagrams. An object diagram
shows a set of objects and their relationships at a point in time.

You use object diagrams to model the static design view or static process view of a system. This
involves modelling a snapshot of the system at a moment in time and rendering a set of objects, their
state, and their relationships.

Object diagrams commonly contain

· Objects

· Links
► Object Diagram of library management System: -
Q.3 Create package to show importing and exporting of data by
taking an example of school management system?

Ans:- A package in the Unified Modeling Language is used "to group elements,
and to provide a namespace for the grouped elements". A package may contain
other packages, thus providing for a hierarchical organization of packages.
Pretty much all UML elements can be grouped into packages. Thus, classes,
objects, use cases, components, nodes, node instances etc. can all be organized
as packages, thus enabling a manageable organization of the myriad elements
that a real-world UML model entails.
PART B

Q.4. Do you design software when you "write" a program? What


makes software design different from coding?
Ans:- Code is viewed as a "construction" activity, and everyone knows you have to complete
the design before beginning construction. The real design work is performed by specialized
software designers. Designers create the designs and hand them off to programmers, who
turn them into code according to the designer’s specifications. In this view, then, the
programmer only needs enough design skills to understand the designs given to him. The
programmer’s main job is to master the tools of her trade.

Software design is a process of problem-solving and planning for a software solution. After
the purpose and specifications of software are determined, software developers will design or
employ designers to develop a plan for a solution. It includes low-level component
and algorithm implementation issues as well as the architectural view.

The design concepts provide the software designer with a foundation from which more
sophisticated methods can be applied. A set of fundamental design concepts has evolved.
They are:

1. Abstraction
2. Refinement
3. Modularity
4. Software Architecture
5. Control Hierarchy Structural Partitioning
6. Data Structure
7. Software Procedure
8. Information Hiding

You design a program by deciding what the computer does, what it does next, etc.
You can use an outline or a flow chart - some people "design" by writing code, but
that's a bad idea. It's like an artist sketching the painting in, using permanent paint.

Coding is just translating the program into computer (program) code.


Q.5. Differentiate between sequence and communication diagram
and Create a Sequence diagram of University Management
System?

Ans:- A sequence diagram in Unified Modeling Language (UML) is a kind of interaction


diagram that shows how processes operate with one another and in what order. It is a
construct of a Message Sequence Chart.

Sequence diagrams are sometimes called event diagrams, event scenarios, and timing
diagrams.
It illustrates how objects interact with each other. Emphasize time ordering of messages. It
can model simple sequential flow, branching, iteration, recursion and concurrency.

• Object naming:

• syntax: [instanceName][:className]

• Name classes consistently with your class diagram (same classes).

• Include instance names when objects are referred to in messages or when


several objects of the same type exist in the diagram.

• The Life-Line represents the object’s life during the interaction

• An interaction between two objects is performed as a message sent from one


object to another.

• If object obj1 sends a message to another object obj2 some link must exist between
those two objects (dependency, same objects)

• Call: Invokes an operation on an object; an object may send a message to itself,


resulting in the local invocation of an operation

• Return: Returns a value to the caller

• Send : Sends a signal to an object

• Create: Creates an object

• Destroy :Destroys an object; an object may commit suicide by destroying itself

Q.6. Discuss the various components of collaboration Diagram.


Ans:- Components of collaboration diagram:
1. Named objects

2. Links: Links are represented by a continuous line between objects, and indicates the
exchange of messages.

3. Messages has following attributes:

• Synchronization --thread name, step within thread.‡

• Sequence number ‡

• Message labels: The name of the message often corresponds to an operation defined
in the class of the object that is the destination of the message. Message names may
have the arguments and return values.

• [iteration].It uses decimal notation. Message direction.

Semantics of components:
1. Object names identify which objects are participating and the links show
which objects collaborate

2. A link between two objects must exist for one object to send message to another
and vice a versa.

3. Messages in the collaboration diagram get transformed to more detailed signature.

4. They use the decimal notation system for numbering the messages.

5. The direction of the message defines the sender and receiver of the message

You might also like