# Module 7 Overview

Quality software requires that developers follow a process to determine what is needed, the logic and steps to correctly create the solution and testing to validate that the software meets the business needs and verify that the product meets the design requirements.

The general process for software development follows the Software Development Life Cycle ( SDLC).

The Program Development Cycle described in Module 1 is part of the designing and building steps of the SDLC. The SDLC models have evolved over the years. Initially developer and business analysts used the waterfall model , which was a linear stepwise model. Currently other models that are iterative, spiral or have parallel paths are also used.

Gathering requirements is as much art as science. It can be difficult to communicate with business users to determine what the business needs are. If requirements are not understood, it is difficult to understand what to design and build. Many projects fail to meet deadlines due to lack of understanding of requirements and having to rework the solution. That makes for unhappy customers and overworked developers.

In this module we will look at SDLC models and methods to gather requirements.

## Course Objectives

This module contributes to the following course objectives:

1. Analyze the needs of an enterprise in relationship to programming applications
2. Conduct independent research on a subject related to the course material

## Module Objectives

Upon the completion of this module, you will be able to:

1. Explain typical good practices for software projects
2. Discuss types of requirements used in project definition
3. Discuss choice of programming applications for projects

## Assigned Readings

- SDLC Tutorial
- Reuquirement Gathering
- 10 Steps To Successful Requirements Gathering

## Activities and Assessments

- Module 7 Discussion
- Test 2
- Research Paper