The System Development Life Cycle SDLC Concept

Many organizations have their own unique project methodologies concentrating on software development and delivery. The SDLC is basically a formal set of activities and phases used to guide those involved in the project through the complete development of an IT solution. Both adopting and consistently implementing a common SDLC across an organization are vital elements in providing project managers with the ability to deliver quality solutions for clients. One of the most popular methodologies being used today is the Waterfall methodology. It is step-by-step, linear methodology that guides a project manager to complete one phase of the project before moving onto the next. Another popular methodology is the Timeboxing methodology. It's used in situations where short, rapid development and delivery are needed (i.e., prototyping), thus allowing each phase of the methodology to be repeated until the desired functionality of the product is obtained. Each methodology has its own unique set of advantages and disadvantages, as shown in Table 3.2.

Table 3.2: Comparison of waterfall and timeboxing project

methodologies

Waterfall

Timeboxing _|

Advantages

Advantages

Most commonly

Focuses team on

used

immediate results

Sequential

Rapid delivery

step-by-step process

May lead to good

Client involved

productivity

early in process

Client able to see results

up front

Disadvantages

Disadvantages

Not all

Requires planning for final

requirements are

release

defined up front

More complex than

Client usually

Waterfall process

sees results

Need to focus on the

downstream

critical path

When developing any IT system it is imperative to use a phased approach in developing either a product or solution for the client. If a project manager simply went about blindly developing a software product or solution without a physical or logical structure, it is more than likely that he or she would experience tremendous frustration during the development process. The most likely problems encountered would occur in the areas of (1) communication, (2) scheduling, (3) integration, and a (4) delay on delivery targets.

Primarily then, the process of system development is often modeled as a series of different phases (1 - n) that define the project life cycle. Some activities simply cannot happen, or it would be less productive for them to happen, until the preceding one has been accomplished. For example, "Approving the Technical Design Specification" needs to follow "Developing the Technical Design Specification," while "Creating the Implementation Plan" naturally follows an "Approved Project Plan." Having said this, the project manager will need to determine whether the project, or the circumstances facing it, demands variations in some of the sequencing, or parallel running of others. Table 3.3 portrays the generic, defined project phases that can be used on a project.

Table 3.3: Various project methodology approaches

Approach #1 _

Approach # 2 _

Concept or identification

Requirements definition

Analysis and design

Requirements analysis

Construction, building, or execution

Preliminary design

Testing

Detailed design

Quality system assurance

Implementation

Implementation or delivery

System testing

Maintenance or support

Acceptance testing

Maintenance and operation

0 0

Post a comment