Development Methodology
CSOFT follows strict CMM2 practice throughout our software development cycle, from initial project requirement assessment and project planning, to progress tracking and oversight, and to quality assurance. We use Rational Unified Process as the foundation of our development process with additional guidelines, templates and specifications developed by our operational managers as a result of years of experience in software disciplines. This unified software development framework allows CSOFT to build applications with industry standards and consistent architecture that is easy to track and duplicate.
CSOFT 's software development lifecycle consists of the following phases:
- Inception:
This phase deals with requirement assessment and project modeling. During this phase, a project's requirements are gathered and its architectural models are developed.
- Elaboration:
Detailed project analysis and design schemes are developed during this phase.
- Construction:
This phase focuses on detailed design, implementation and testing of the project. This is usually the area that most time is spent on the development of the project.
- Transition:
Final product deployment
The following are more detailed descriptions about each phase.
Inception: Requirements Gathering and Project Modeling
At the beginning of a project, we first gather the requirements. This may involve gathering additional information, and data about the intended environment into which the final application will be deployed. We then formulate the scope of the project and design its criteria. Next, a baseline architecture is designed. The baseline architecture may be in the form of a model, which simulates what is required, or an initial prototype, which explores the areas of high risk. According to the scope of the project and selected architecture we prepare the project environment (project organization, used tools). Then we estimate the overall cost and schedule for the entire project. All the above is to ensure that we exactly reflect and meet your requirements and needs.
Elaboration: Project Analysis and Design
The primary goal of the phase is to further define and validate the baseline architecture to provide logical foundation for design and implementation. The usability as well as performance of the baseline architecture is evaluated through one or more architectural scenarios. Iteration plans for the construction phase are developed by using the baseline model. The Analysis Model is completed during the Elaboration phase along with preliminary draft of the Design Model and Data Model.
Construction: Detailed Design, Implementation and Testing
This is the phase that we spend the most time on. Actual coding and implementation take place here to complete the development of the system based upon the baseline architectural model. Quality assurance tests are also conducted during this phase.
Transition: Project Deployment
Project Beta testing is conducted during this phase. Auxiliary materials such as user manuals and training documentation are prepared. During the Transition phase, we carry out beta testing of the completed system. We also help perform product installation, check to make sure all requirements are met before the product is transitioned to the client. Additional interface with customers' existing infrastructure such as databases and utilities may be performed as well.

For more information about CSOFT Development Services Methodology, please click here.
|