Build Software in a Shorter Time

Build Software in a Shorter Time

Building high quality software takes a lot more time when the Software Development Life Cycle (SDLC) is not planned or documented.

Let's define SDLC.

SDLC is a software development process for building well-tested software of high quality with a relatively low cost, in the shortest time possible.

These processes are clearly defined phases of software development.

  • Requirement Analysis
  • Planning
  • Architecture Design
  • Building
  • Testing
  • Deployment

The first three phases tend to answer questions, while the remaining uses answers to generate feasible outputs.

Software Development Life Cycle, illustrated Illustration credit Adam Naor

Requirement Analysis

This phase is where inputs on what problems need to be solved, are gotten from all stakeholders including customers, sales department, market surveys and programmers with the goal of improving the current system.

Planning

With the inputs obtained, a Software Requirement Specification (SRS) document is drafted, consisting of all product requirements to be designed and developed during the life cycle.

Architecture Design

The SRS document is used as a reference to draft numerous design blueprints by the product architects. These proposed designs are documented in a Design Document Specification (DDS) and reviewed by all important stakeholders based on various parameters like risk assessment, product robustness, design modularity, burger, time constraints, etc. The blueprint that best meets the product requirement is selected.

Building

At this phase, the selected blueprint is referenced to build the product using different high level programming languages selected based on the type of software being developed.

Testing

Here, the built product is tested for any defects. In cases where the requirements specified in the SRS document are not met, the product must be fixed and retested till requirements are met.

Deployment

Since the product has been tested and certified OK, it is safe to release the software to the appropriate market for use.

After deployment, listen to users' feedback you can start again from the first phase, scoping new requirements. Hence the cycle continues.

In conclusion, planning a software's development life cycle facilitates production in the shortest time possible.