Software Development Process Selection
(Agile Vs Plan
Driven)
Software development
process
It is a
general phases that occurs in nearly any software development process. In
software development process there are few steps that are described below here.
The
first step is requirement. The
Requirements phase focuses on what the system will do in an effort that views
all stakeholders, including sponsors and potential users, as important sources
of information.
The design phase takes as its initial input
the requirements identified in the approved requirements document. For each
requirement, a set of one or more design elements will be produced as a result
of interviews, workshops, and/or prototype efforts. Design elements describe
the desired software features in detail, and generally include functional
hierarchy diagrams, screen layout diagrams, tables of business rules, business
process diagrams, pseudo code, and a complete entity-relationship diagram with
a full data dictionary.
The coding phase performs the task that
translates this task into machine readable format. Different high level
programming languages like C, C++,, C#, COBOL, Pascal, Java
are used for coding. Programming tools like compilers, interpreters,
debuggers etc… are used to translate the code into machine readable
form.
The
next phase is testing. In this phase
the product is tested. There are several tools for testing.
After testing the product is implemented to
the customer and training is given
for safe use of the software.
Agile Vs Plan Driven
Selection
of Software Development Process is situational. You may choose Plan-Driven or
Agile Method.
Plan-Driven
Plan-driven
development is a traditional development method. In plan driven method it has
given more emphasize particularly on plan and architecture. The quality of
software is based on attention and predictability of process. Plan-driven
development precisely depends on clear procedures.
Plan Driven
Methodologies
It is a
formal specific approach. Plan-driven methodologies are:
Ø Personal Software
Process (PSP)
Ø
Team Software Process (TSP)
Ø
Rational Unified Process (RUP)
Steps in Plan-Driven
Method
Ø repeatability
and predictability
Ø a
defined incremental process
Ø extensive documentation
Ø up-front
system architecture
Ø detailed
plans
Ø process
monitoring
Ø controlling
and education
Ø risk
management
Ø Verification
and validation.
Agile
Agile
development is a Modern development method. It has given more emphasized
particularly on Process and execution. Agile development does not depend on
clear procedures.
Agile Methodologies
Ø Planning
Ø Design
Ø Programming
practices
Agile methodologies
all incorporate:
Ø Pre-Project
Ø Feasibility
Study
Ø Business
Study
Ø Functional
Model Iteration
Ø Design
and Build Iteration
Ø Implementation
Ø Post-Project
Plan-Driven Vs Agile
Plan-driven perspective
Ø
Formal, written documents
Ø
Executable models (RUP)
Ø
Code/comments
Agile perspective
Ø
Story cards – Project wall
Ø
Whiteboards
Ø
Tests – executable specifications
Ø Code/comments
No comments:
Post a Comment