Escolar Documentos
Profissional Documentos
Cultura Documentos
R Page 1
Unit-1 Introduction
An overview
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
Here Algorithms + Data structures = Programs. “A software system
is a set of mechanisms for performing certain actions on certain data.”
Object- oriented systems Development methodology:-
Object-Oriented development offers a different model from the
traditional software development approach, which is based on functions and
procedures.
In an object-Oriented system, everything is an object and each object
is responsible for itself. A windows object is responsible for things like
opening, sizing, and closing itself.
Why an Object Orientation?
The systems are easier to adapt to changing requirements, easier to
maintain, more robust, and promote greater design and code reuse. Object-
oriented development allows us to create module of functionality.
Here or some reasons why object- Orientation works:
Higher level of abstraction. The top-down approach supports
abstraction at the function level. The Object-oriented approach
supports abstraction at the object level. Since objects encapsulate both
data (attributes) and functions (methods), they work at a higher level
of abstraction.
Seamless transition among different phases of software development.
The traditional approach to software development requires different
styles and methodologies for each sep of the process.
Encouragement of good programming techniques. A class in an
object- oriented system carefully delineates between its interface
(specifications of what the class can do) and the implementations of
that interface (how the class does what it does).
Saranya.R Page 2
Car
The attributes of a
Cost Car object.
Color
Make
Model
For color, we could choose to use a sequence of characters such as red, etc.
Saranya.R Page 3
Car Object
Brake
CLASS HIERARCHY:-
Motor Vehicles
A car class defines how a car behaves. The ford class defines the behavior of
ford class.
Formal or abstract classes have no instances but define the common
behaviors that can be inherited by more specific classes.
Saranya.R Page 5
Inheritance:-
Inheritance is the property of object- oriented systems that allows
objects to be built from other objects. Inheritance allows explicitly taking
advantage of the commonality of objects when constructing new classes.
Inheritance is a relationship between classes where one class is the parent
class of another (derived) class. The parent class is also known as the base
class or superclass.
For example the car class defines the general behavior of cars. The
ford class inherits the general behavior from the car class and adds behavior
specific to fords.
Vehicle
Car
Stop( My Mustang)
Dynamic inheritance allows objects to change and evolve over time. Since
base classes provide properties and attributes for objects, changing base
classes changes the properties and attributes of a class.
More specifically, dynamic inheritance refers to the ability to add,
delete, or change parents form objects (or classes) at run time.
Saranya.R Page 6
Multiple inheritance:-
Some object- oriented systems permit a class to inherit its state
(attributes) and behaviors from more than one super class. This kind fo
inheritance is referred to as Multiple Inheritance.
POLYMORPHISM:-
Poly means “many” and morph means “form”. In the context of
object- oriented systems, it means objects that can take on or assume many
different forms. Polymorphism means that the same operation may behave
differently on different classes.
Booch [1-3] defines polymorphism as the relationship of objects of
many different classes by some common superclass.
Each object has an identity, one object can refer to other objects.
This is known as aggregation, where an attribute can be an object itself. For
instance, a car object is an aggregation of engine, seat, wheels, and other
objects.
Car
Meta-Classes
Is a class an object? A class is an object, a class belongs to a class
called a meta-class, or a class of classes.
For example, classes must be implemented in some way; perhaps
with dictionaries for methods, instances, and parents and methods to perform
all the work of being a class. This can be declared in a class named meta-
class.
The meta-class also can provide services to application programs,
such as returning a set of all methods, instances, or parents for review (or
even modification).
Transformation2
System
Design Software
Implementation Product
Transformation 3
Detail
What
How
Do It
Test
Use
The waterfall model is the best way to manage a project with a well
understood product, especially very large products.
validation
verification
correctness
correspondence
Object-Oriented Design:-
The goal of Object-Oriented design (OOD) is to design the classes
identified during the analysis phase and the user interface. During this phase,
we identify and define additional objects and classes that support
implementation of the requirements.
First, build the object model based on objects and their relationships,
then iterate and refine the model:
Design and refine classes.
Design and refine attributes.
Design and refine methods.
Design and refine Structures.
Design and refine Associations.
Prototyping:-
Reusability:-
-----------------------------*--------------------------------