Unified process like any other process
has got some phases through which the whole development process takes place.
The unified process follows through the following 4 steps:
- Inception
- Elaboration
- Construction
and
- Transition
Throughout this whole article we are
going to discuss in detail the first phase of the unified process i.e., the
inception phase. So let us a take a deep
dive in to the understanding of the first phase “inception” of the project life
cycle.
What is an Inception Phase
- The inception phase to say is usually short in
most of the development cases but in some rare cases it can be quite lengthy.
- But in an
ideal project it is advisable to keep it short and simple other wise it will be
required to divide in to much smaller iterations which in turn will be a
complete waste of time.
- Furthermore a
lengthy inception phase may indicate that there is an excess of up front
specification which is something that is not in accordance with the principles
of the unified process. - Every phase of the unified process has some pre defined
goals that are needed to be satisfied in that phase itself.
Goals defined for Inception Phase
- For inception phase
the below mentioned goals have been defined:
- To
define and establish a scope for the software project.
- To
establish boundary conditions for the software project.
- To
establish a justification for developing the software system or
application.
- To
outline the use cases for driving the design trade offs.
- To
outline the key requirements for the same purpose as the use cases.
- To
outline all the architectures those are to be implemented in the process.
- To
identify the associated risks.
- To
prepare a preliminary project schedule.
- To
estimate the cost of the whole software project.
When all of these mentioned goals are
established then the inception phase is said to be concluded and completed.
In short, what is inception phase is all about?
- The inception phase is all about developing a close enough vision
of the software project, defining its scope and making the business case and
providing an approximate estimate of the schedule and cost for the whole
development project.
- The inception phase seeks to build concurrence among all
the stake holders involved in the development process on the basis of the
objectives.
- In an overall sense, the inception phase determines the feasibility
of the solution that has been intended to build the software system or
application.
- In a way it helps the developers to understand what to build and
risks associated with the project. - Another advantage is that the key system functionality can be easily recognized.
- Due to some reasons the developers
may be forced to have more than one iterations in the inception phase.
- The
possible reasons can be:
- The
project is so large that it is difficult to define its scope.
- The
system is unprecedented.
- There
are too many stake holders with complex relationships and competing needs.
- Creation
of proof of concept or prototype is required by the major technical risks
involved.
- Over the inception phase sometimes
counter productive patterns are observed.
- In such situation a team may postpone
providing estimate until the whole domain has been analyzed and documented.
- But
such behavior can lead to a condition called “analysis paralysis”.
- Even the
poor planning of the iterations of the inception phase can make the whole
process go awry.
- This can be avoided only if the iterations have been planned
in such a way that they are risk driven and have been integrated and tested
earlier.
No comments:
Post a Comment