Day 5
Day 5
Day 5
DAY- 5
-K. Indhu
GOALS
• Object Oriented System Development
• Object Oriented Analysis
• Object Oriented Design
• Prototyping
• Object Oriented Implementation
– Component-based development
– Rapid application development
• Incremental Testing
• Reusability
13-DEC-13 K. INDHU 2
OBJECT ORIENTED SYSTEM DEVELOPMENT
• The object oriented software development life
cycle(SDLC) consists of three macro processes-
– Object Oriented Analysis
– Object Oriented Design
– Object Oriented Implementation
13-DEC-13 K. INDHU 3
IMPORTANT- USE CASE
• What is a Use-Case?
– Use Case, is a name for a scenario to describe the user–computer
system interaction.
13-DEC-13 K. INDHU 4
OBJECT ORIENTED SYSTEM DEVELOPMENT
• Finally, it includes below activities:-
1. Object Oriented Analysis- Use Case Driven
2. Object Oriented Design
3. Prototyping
4. Component-based development
5. Incremental testing
13-DEC-13 K. INDHU 5
OBJECT ORIENTED SYSTEM DEVELOPMENT
13-DEC-13 K. INDHU 6
OBJECT ORIENTED ANALYSIS
• It is use case driven.
• In this phase:-
– The user requirements are determined.
– We identify all possible classes and their relationship to other classes from the
problem statement.
– To understand the system requirements, we need to identify the users or the
actors.
– The use cases (or) scenarios are a great way of examining who does what in the
interactions among objects and what role they play; that is their interrelationships.
– This intersection among object’s roles to achieve a given goal is called
COLLABORATION.
• Use Case modeling?
– The high level processes and interaction with customers in a scenario and analyzing
it is referred to as use-case modeling.
– The use-case modeling represents the user’s view of the system.
13-DEC-13 K. INDHU 7
OBJECT ORIENTED ANALYSIS
13-DEC-13 K. INDHU 8
DOCUMENTATION WORK
• Documentation is another important activity in Object
Oriented System Development.
13-DEC-13 K. INDHU 9
OBJECT ORIENTED DESIGN
• The goal of object-oriented design(OOD) is:-
– To Design the Classes identified during the analysis phase,
– To Design the User Interface.
– To Design Data Access.
• ACTIVITIES done in DESIGN phase are:-
– Design and refine classes.
– Design and refine attributes.
– Design and refine methods.
– Design and refine structures.
– Design and refine associations.
– Design User Interface or View Layer classes.
– Design Data Access Layer classes.
13-DEC-13 K. INDHU 10
OBJECT ORIENTED DESIGN
• The activities and focus of object-oriented-analysis and object-
oriented-design are inter-wined.
– Design methods.
– Critique what you have proposed. If possible, go back and refine the
classes.
13-DEC-13 K. INDHU 11
PROTOTYPING
• “A picture may be worth a thousand words, but a
prototype is worth a thousand pictures.”
• DEFINITION:-
– A prototype is a version of a software product which is
developed in the early stages of the product’s life cycle
for specific, experimental purposes.
• BENEFIT OF PROTOTYPING:-
– A prototype enables us to fully understand how easy
or difficult it will be to implement some of the features
of the system.
13-DEC-13 K. INDHU 12
USES OF PROTOTYPING
• It can be used to
– Fully understand the implementation of the system
– Define the use case further and make the use case
modeling much easier
13-DEC-13 K. INDHU 13
TYPES OF PROTOTYPE
1. A HORIZONTAL PROTOTYPE is a simulation of the interface. It has the
entire user interface which contains NO FUNCTIONALITY.
13-DEC-13 K. INDHU 14
IMPLEMENTATION:- CBD
• CBD is an industrialized approach to the software development
process.
13-DEC-13 K. INDHU 15
IMPLEMENTATION:- CBD
• DEFINITION of CBD:-
– The software components are the functional units of a program,
building blocks offering a collection of re-usable services.
• TWO IDEAS behind CBD:-
– The application development can be developed and assembled
quickly from pre-fabricated software components.
– An increasingly large collection of interpretable software
components could be made available to developers.
• ADVANTAGES:-
– Development made faster, easier, resusable in modern, highly
dynamic, competitive business.
– A CBD developer can just assemble components to construct a
complete software system.
13-DEC-13 K. INDHU 16
IMPLEMENTATION:- RAD
• RAD is a set of tools and techniques that can be used to build an
application faster than typically possible with traditional
methods.
• RAD does not replace SDLC but complements it, since it focuses
more on process description and can be combined perfectly
with the object-oriented approach.
• Task of RAD is to build the application quickly and incrementally
implement the design and user requirement through tools
• RAD encourage the incremental approach of “grow, do not
build” software.
13-DEC-13 K. INDHU 17
INCREMENTAL TESTING
• Software development and all of it’s activities including
testing are an iterative process.
13-DEC-13 K. INDHU 18
REUSABILITY
• A major benefit of object-oriented systems
development is reusability.
13-DEC-13 K. INDHU 19
HAPPY LEARNING!!!