Development process

Nova has developed its own outsourcing software development methodology integrating the philosophy of Agile & Iterative Development. It is proved that with our long-term project delivery experience, we have built an appropriate balance of cost and quality in the development process.

1. Analysis & Design

Purpose

  • To make sure the team has the correct understanding of the client's requirements
  • To detail and freeze the original requirements
  • Transform the requirements into a design which the system will adopt
  • To confirm the solution with customer.

Tasks

  • Requirements analyzesis and technical research.
  • Solution deployment and static prototype development
  • Architectural Design
  • Communicate and verify the solution with client.
  • Structure the Implementation Model

2. Implementation

Purpose

To implement the solution and design element, integrate the modules produced by individual developers into an executable system.

Iteration

Iterative and evolutionary development is a flexible (and less risky) way adopted by Nova to facilitate the implementation progress. It is proved to be of great help to successfully deliver products, and eventually deliver a series of implementations that are gradually finished. Each passing through a sequence of activities is called iteration.

Tasks

  • Implement the solution and design elements
  • Refine the System Design and architecture
  • Tech lead and artifact review.
  • Test Case design and creation
  • Integrate subsystems

3. Test

Purpose

The primary purpose of testing is to evaluate or access product quality, this is realized through the following core practices:

  • Understand the requirements and deployment environment, and use scenarios.
  • Advise on the perceived software quality.
  • Find and record defects in software quality.
  • Validate and prove the assumptions made in design and requirement specifications through concrete demonstration.
  • Validate the integrated system works as expected.
  • Validate that the requirements are implemented appropriately.

Tasks

  • Execute the test case as designed.
  • Implement exploratory testing
  • Discover and report issues.
  • Test Case refinement
  • Bug fixing and verify bugs