Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 7

UNIT 1

UML DIAGRAMS
Role of Analysis and Design in software Devlopment- Meaning of
object orientation- overview of various OOAD Methodologies-Goals of UML-
Actors and use cases.

DEFINITION:

Object-oriented analysis and design (OOAD) is a technical


approach for analyzing and designing an application, system, or
business by applying object-oriented programming, as well as
using visual modeling throughout the software development
process to guide stakeholder communication and product
quality.

software Devlopment:
Software development is dynamic and always undergoing major change.
Systems development refers to all activities that go into producing an information
systems solution. Systems development activities consist of systems analysis,
modeling, design, implementation, testing and maintenance. A software
development methodology is a series of processes describe how the work is to be
carried out to achieve the original goal based on the system requirements

TWO ORTHOGONAL VIEWS OF THE SOFTWARE

Two Approaches,

1.Objected-Oriented Approach

2.Traditional Approach

Traditional Approach Here Algorithms + Data structures = Programs. “A


software system is a set of mechanisms for performing certain actions on certain
data.
Traditional Approach Objected-Oriented Approach

Collection of procedures Combination of data and functions


Focuses on function and procedures different styles Focuses on object,classes,modules that can be
and methodologies for each step of process easily replaced, modifies and reused

Moving from one phase to another phase is Moving from one phase to another phase is easier
complex
Increases complexity Reduce complexity and redundancy
Increases duration of the project Decreases duration of the project

Object-oriented concepts:
The five basic concepts of object-oriented design are the
implementation level features that are built into the programming language.
These features are often referred to by these common names:

 Object/Class: A tight coupling or association of data structures with the


methods or functions that act on the data. This is called a class,
or object (an object is created based on a class)
 Information hiding: The ability to protect some components of the object
from external entities.
 Inheritance: The ability for a class to extend or override functionality of
another class. The so-called subclass has a whole section that is
derived (inherited) from the superclass and then it has its own set of
functions and data.
 Interface (object-oriented programming): The ability to defer the
implementation of a method.
 Polymorphism (specifically, Subtyping): The ability to replace
an object with its subobjects. The ability of an object-variable to contain,
not only that object, but also all of its subobjects.

Uses of Object Orientation:

Below are some of the advantages of object-oriented programming:

 Complex software systems become easier to understand, since


object-oriented structuring provides a closer representation of reality
than other programming techniques.
 In a well-designed object-oriented system, it should be possible to
implement changes at class level, without having to make alterations
at other points in the system. This reduces the overall amount of
maintenance required.
 Using polymorphism and inheritance, object-oriented programming
allows you to reuse individual components.
 In an object-oriented system, the amount of work involved in revising
and maintaining the system is reduced, since many problems can be
detected and corrected in the design phase. 

Goals of Object Orientation:

. Object-oriented programming language

=>Object-oriented programming techniques do not necessarily


depend on object-oriented programming languages.
. Object-oriented tools

=> Object-oriented tools allow you to create object-oriented programs


object-oriented languages..

. Object-oriented modeling

=>The object-orientation modeling of a software system is the most


important, most time-consuming, and most difficult requirement for
attaining the above goals.

Object Oriented Methodology:


 It is a new system development approach, encouraging and facilitating re-
use of software components.
 It employs international standard Unified Modeling Language (UML) from
the Object Management Group (OMG).
 Using this methodology, a system can be developed on a component
basis, which enables the effective re-use of existing components, it
facilitates the sharing of its other system components.

There are three types of Object Oriented Methodologies:


1. Object Modeling Techniques (OMT)
2. Object Process Methodology (OPM)
3. Rational Unified Process (RUP)

 Object Modeling Techniques (OMT)


 It was one of the first object oriented methodologies and was introduced
by Rumbaugh in 1991.

 OMT uses three different models that are combined in a way that is
analogous to the older structured methodologies.
2. Object Process Methodology (OPM)
 It is also called as second generation methodology.
 It was first introduced in 1995.
 It has only one diagram that is the Object Process Diagram (OPD) which
is used for modeling the structure, function and behavior of the system.
 It has a strong emphasis on modeling but has a weaker emphasis on
process.
 It consists of three main processes:
3. Rational Unified Process (RUP)
 It was developed in Rational Corporation in 1998.
 It consists of four phases which can be broken down into iterations.
I. Inception
II. Elaboration
III. Construction
IV. Transition
 Each iteration consists of nine work areas called disciplines.
 A discipline depends on the phase in which the iteration is taking place.
 For each discipline, RUP defines a set of artefacts (work products),
activities (work undertaken on the artefacts) and roles (the responsibilities
of the members of the development team).

Goals of UML:
The goal of UML is to provide a standard notation that can be used by all
object-oriented methods and to select and integrate the best elements of
precursor notations. UML has been designed for a broad range of
applications.
Actors and use cases:
 
Actors represent the role that human users or other systems have in the
interaction. In the requirement analysis, at their identification, a use case is
named according to the specific user goal that it represents for its primary
actor.

Use case in Ooad:


The use case is made up of a set of possible sequences of interactions
between systems and users in a particular environment and related to
a particular goal. The method creates a document that describes all the
steps taken by a user to complete an activity.

You might also like