Software Testing Plan

profilewillymax93
Week1SDLCTable-JKversion.docx

System Development Life Cycle

BSA/385 Version 6

2

System Development Life Cycle

Individual Assignment – Week One

Complete the following table:

SDLC Phases

Phase Description

Questions/Engineering Principles

Typical Documents or Artifacts used in this phase

Requirements/

Analysis

The objective of this phase is to determine the user expectations for a new or modified system. At the end of this phase all the functions to be performed by the system will be known although it might be clear how the system will perform them.

During requirements analysis there is frequent communication with the users of the system to determine their expectations and requirements all which are documented to avoid feature creep.

· How should the program calculate the bills?

· What information should be included in the billing statement?

· At what point/time should the bills be calculated?

Requirements Document

Software Requirements Specifications (SRS)

Use Cases

Design

It is in this phase that the elements that will make up the new system are designed.

These elements include: the system architecture, modules and components as well the different interfaces of the system.

The data that goes into the system and the database design must also be decided in this phase. The design of the new system follows the user requirements set in the requirement analysis phase.

During this phase the programming language to be used to program the system is also decided.

1. Evaluate design alternatives

2. Use an appropriate process model

3. Use different languages for different phases

Software Development Plan (SDP)

Data flow diagram (DFD) or entity-relationship diagram (ERD)

Design Specification

Technical Specification

User Interface Prototype

Implementation

In the implementation phase the program specifications are turned into source code through coding by programmers.

Other experts such as network engineers and database developers may be brought in to develop the system network and database respectively.

A flow chart is incorporated in this phase to ensure that everything is node well. The programming of the system must be done in modules in order to speed the development and make it easy to maintain as well as to make changes.

1. Put technique before tools

2. Inspect code

3. People are the key to success

Implementation Strategy

Programming Conventions and Libraries Specification

Implementation Schedule

Testing

This is the process which checks the functionality and the correctness of the developed system to find whether it meets the requirements set. This process is time consuming and can sometimes be expensive and requires good planning in order to succeed.

The tests may be repeated as many times as possible with different data to check for errors and bugs. If the system passes the tests set and the end user finds it acceptable, it is good and ready to go to production. Testing also involves verification and validation to ensure that every process in the system completes successfully.

1. Base the process on an architecture-first approach.

2. Establish an iterative process that addresses risks early in the process.

3. Establish a configurable process, because no one process is suitable for all software development.

Testing Plan

Deploy/Maintenance

This phase involves installation of the developed system and putting it production. In the process of deploying the new system data and components are moved from old system to the newly developed system.

When the system is in production it is maintained to eliminate errors that may occur during its working life.

1. Establish a change-management environment.

2. Plan to have incremental releases, each composed of a group of usage scenarios, with evolving levels of detail.

3. Use model-based and machine-processable notation to capture design

Installation Guide

Training Manuals