SEI CMM Driven Software development life cycle
Our software development process consists of following phases
Gathering requirements
During this phase we try to understand client issues and the requirements
needed to solve these. The knowledge that has been accumulated for years cannot
just be transferred or understood in a short time. Hence, workshops to
analyze the workflow and understand the current system, etc are held. During
this phase our engineers visit the client office and spend time in
understanding the business process by getting involved in the workflow. We
normally expect to complete more than 50 percent of our requirements study
during this phase. We realize that the procedures and systems followed by one
organization are alien to those followed by others.
Analysis
During this phase we lay our collection of data on the table and analyze
it. We try to find alternate solutions and methods for your business in case we
cannot adopt the client's directly. We decide upon solution strategies with the
client where we could develop prototypes to demonstrate the work of certain
functionality. This would reveal the possible intricacies in workflow and data
representation.
Design
This phase give shape to the product and technical issues are of utmost
importance at this stage. We believe technology cannot be a constraint. The
design phase has two major stages high-level or architectural design and
low-level design or component level design for which we have wide
technical expertise and experience.
Development
Our aim is to write good quality code, which can sustain conditions and
still be maintained easily. We follow industry's best known practices. We
follow the standard coding pattern. Every engineer's code is reviewed by his
peer and approved by the team leader before it is implemented.
Testing
We test the product through several stages. There are Unit testing, system
testing, integration testing, requirements testing and user acceptance testing.
In our lab, every stage usually has multiple level filtering. Bugs found during
development are well documented and tracked through to elimination.
Implementation
According to us this phase is usually challenging. It requires a lot of end
user interaction in client site. During this phase we depute our engineers
onsite. We work together till all issues are settled. If Bugs are faced after
implementation, they are termed "customer complaints" and are treated with high
priority.
|