software associates : software project outsourcing

Development Process

We have a comprehensive integrated development process based on configuration management best practices and "Continuous Integration" principles. All artifacts related to the project are versioned and stored safely in our version control repository, which is backed up regularly. The development team develops using development environment that integrate with our version control mechanism. Code analysis is performed to ensure that codebase corresponds to the coding guidelines. Continuous integration is ensured using a central build / deployment infrastructure and a central integration testing environment. Daily versioning of the project development artifacts ensures a mechanism to rollback to an earlier version at any time. Automation is made
use of to reduce time in daily integration chores.

Benefits

  • Continuous integration ensures lesser time to integrate the modifications by different developers.
  • Clean central build / deployment / integration testing infrastructure ensures that there are no footprints of development machine involved in the product being tested
  • Versioned and backed up codebase enables disaster recovery.
  • Regular versioning helps in managing maintenance tasks and enhancements in parallel.
  • Coding guidelines improves readability and enhances maintainability, in addition to identifying obvious low-performance code snippets.

System testing process

System testing is performed on an environment that is built as close as possible to the production environment using virtualization. System test cases are developed executed by test engineers on a “build” delivered by the development team. The bugs detected are logged, fixed and tracked to closure through subsequent builds from the development team. Deployment instructions are created and tested during deployment of system testing environment.

Benefits

  • Early testing in an environment close to production helps unearth and solve issues early on.
  • A virtualized ST environment helps in setting up the ST environment for maintenance purposes and testing the deployment instructions quickly.
  • Formal release of “builds” by the development team to the testing team ensures delivery of a "tested build" that is traceable through version control.

Release management and deployment

A package that is already tested and certified by the testing team is chosen for release. Release log and release checklist ensures standard operating procedures are followed for the release and is traceable to a build and a label in the codebase repository.

Benefits

  • Since release package has already been tested on the ST environment which is close to the staging / production environment, there is minimal risk of issues with deployment.
  • Release packaging with deployment instructions and release notes makes the release self-sufficient and enables separation of development and deployment activities.
  • With self-sufficient release packages, we can have common secured release location for multiple projects.
  • Maintenance of release log ensures traceability of releases to codebase versions.
  • Release checklist ensures basic features of a release package.

Development process and methodology

Initial Study

Requirement Analysis

Feasibility Study

Ballpark Estimation

Project Brief

Project Understanding Doc

Questions/Thoughts

Ballpark Time Plan

Clarifications

New Functional Requirements

Time Plan Feedback

Ballpark Time Plan Approved

Detailed Project Spec Delivered

Estimate

Detailed Study

Detailed Estimate

Project Milestones

Project Deadline

Estimate Approved

Screen Designs Delivered

Design

System Analysis & Design

Database Design

Change Analysis

Documentation Changes

Additional Estimate

Coding

XHTML Coding

Data Access Layer

Business Logic Layer

Presentation Layer

SQL Scripting

Bug Fixing

Testing

Developer Testing

Black-Box Testing

Functionality Testing

Accessibility, UI Testing

Load Testing

Test Report

Change Request

New Functionality Request

Client Feedback

Client Evaluation

User Testing

System Evaluation

Finished Modules Deployed

Final Deployment

Source Files Delivery

Maintenance

Site Maintenance

Post Deployment Services

Future Changes

    2 Responses to “Development Process”

    1. Rubi Hummel says:

      The work you do is great, i do appreciate your time to write the content from above. Keep up the excellent work.

    2. Lesley Deeds says:

      Internet is a cosmos of information; this article stands out among the rest, because of its content. This post is very interesting and you will get required information as a compact package. The writer has described in a brief and comprehensive way all the important aspects about the subject.

    Leave a Reply

    Sql-server | AJAX | Outsourcing | IT consulting | Ontime delivery | Php | Opensource | Quality | India | Kerala | Calicut | Case Studio | Test Complete | Sharepoint | People | Remobjects | my SQL | Web standards | Unit testing | Canada | Research and development | Infrastructure | Document Management | Intranet | Extranet | Portal building | United Kingdom | Ireland | United States | Singapore | DB2Express | Firebird | Project management | Browser compliance | HTML
    Copyright 2008. All right reserved.