Home | Company | Products | Services | Investor Relations | Software | HR & Consulting | Partners|Contact us Support  

 
Software Development Life Cycle
 

A Software Development Lifecycle (SDLC) can adopt various development models - ranging from the traditional Waterfall model to more rapid, iterative and agile approaches. At CCS, we tailor a project plan to suit your needs and allow you to derive maximum benefit from the engagement.

We begin a project by working in close coordination with the client to ensure that we clearly understand the business problems and what the client is trying to achieve. We recognise that business priorities and approaches may change over time, thereby requiring a flexible approach to application design and development.

We have outlined the CCS SDLC by way of a diagrammatic representation of the same. The following sections then describe the various stages of the SDLC.

  • Project Team Formation and Investigation Phase
  • Project Planning
  • System Requirements Analysis
  • System Design and Project Tracking
  • Quality Assurance (QA)
  • Software Configuration Management (SCM)
  • Testing
  • Release
  • Maintenance
 

The typical phases of Systems Development include:

1. Project Team Formation and Investigation Phase

After signing the contract with a client, identified individuals are brought together to form a team for the project. The Project Team identifies different roles to be performed for the current software development, along with the responsibilities of each team member.

The following documents are generally prepared to start the project:

  • Functionality Matrix Document
  • Project Understanding and Solution Approach
  • RFP Guide and Template
 

2. Project Planning

While planning, especially in the software development outsourcing environment, we realize that communication often has the biggest impact on the outcome and smooth delivery of the project. To highlight and streamline the communication process, CCS prepares the communication plan, which is to be approved by the client at the time of commencement of the project.

The major deliverables of this stage are:

  • Software Project Management Plan
  • Software Development Plan
  • Risk Mitigation Monitoring and Management Plan (RMMM Plan)
  • Communication Plan
  • Project Team Structure
  • Project Schedule
  • Project Review Plans
  • Software Engineering Facilities and Support Tools Plan
 

3. System Requirements Analysis

We do a thorough analysis of customer requirements to determine needs (elicitation), address needs (triage) and document the desired external behavior of the systems (specification). If these specifications are provided by the client, then our team understands these requirements and analyzes the requirements for completeness.

The various documents that are created or referred by the team during this phase are:

  • Analysis and Requirement Document
  • Designer Repository (Logical)
  • Data conversion Analysis
  • Project Vocabulary
 

4. System Design and Project Tracking

The design and execution of any project is carried out as per the decided software process model. CCS ensures that the delivery of any given project is as per the laid down plan, and that the status of the project is being communicated to the client on a regular basis. The project is monitored for risk and anticipatory actions are taken by project co-ordinators.

The various deliverables during this phase are:

  • Detailed System Design
  • Designer Repository (Physical)
  • Data Conversion Design
  • Presentation Profile
 

5. Quality Assurance (QA)

At CCS, the Quality Assurance Process focuses on customer satisfaction, results through processes and the involvement of each team member. We have implemented organization-wide project management, and development follows industry best practices.

For more details, please have a look at the CCS QA Guide.

6. Software Configuration Management (SCM)

We understand software development as a process where bugs are inevitably injected in the application (under development) and continuous modification is done while in debugging mode. Under such an incremental change scenario of code development, version controlling becomes one of the important aspects of software development.

The documents created and used by team members are:

  • SCM Activities Plan
  • SCM Policy
  • Changes to Baselines Procedure
  • Software Baseline Library Product Creation and Release Control Procedure
  • Configuration Items / Units Status Review Procedure
  • Standard Software Configuration Management Reports
 

7. Testing

Once the various project components are developed, they are integrated and rigorously tested as a complete solution. Application behavior is compared with initial specifications and any deviations are identified and corrected.

The different testing approaches undertaken are:

  • Unit Testing
  • Integration Testing
  • System Testing
  • User Acceptance Testing
 

8. Release

After the project is completed, it is deployed by working closely with the clients internal IT team.

Subsequently, training is imparted to the end-users of the system.

Thus, the project release includes:

  • Enterprise-wide deployment
  • End-user training
  • System / Helpdesk training
  • Documentation handover
 

9. Maintenance

This (final) phase covers system health maintenance - including database, application and network maintenance. Application feature enhancements (whenever requested by the client) are planned and developed, keeping in consideration the existing system and its existing data.

Thus, project / system maintenance includes:

  • System health maintenance
  • Feature / Application enhancements
 
The SDLC model adopted at CCS provides consistency of success in regards to Time, Cost, and Quality objectives. We provide a method of thought such that all requirements are addressed through a comprehensive work definition process, simultaneously ensuring that client expectations are met.