Tuesday, May 22, 2007

SDLC Methodology

The life of every human being has its own purpose and personality. It is an established fact that every human being takes birth, grows, evolves and eventually perishes. The life cycle of every Information System follows a known and repeatable process which is identified as the System Development Life cycle (SDLC).
The processes, methodologies, techniques of SDLC are often referred to as the Software engineering discipline adopted by IS Development personnel and/or Management personnel which can be tailored to plan the development of Information Systems. Adopting a discipline is believed to improve the quality and efficiency of the software development process and to help provide visibility on the progress of Information Systems building to stakeholders in the IS environment.

Several different approaches can be adopted under the umbrella of SDLC methodology.
The traditional SDLC consists of the following phases - Systems Investigation, Systems Analysis, Systems Design, Systems Implementation and Review.
The traditional SDLC is well known in the Software Engineering community by its waterfall model. In the last 50 years, software environments changed rapidly and the complexity of many IS systems grew. The prescriptions for nurturing the growth and maintaining the health of IS systems are continuously identified with the help of Software Engineering processes. The more modern approaches are popularly called agile methodologies.


Points to ponder:

1. What is traditional about waterfall SDLC approach?

2. What is modern about agile methods?

References:
1. Agile System Development Life cycle http://www.ambysoft.com/essays/agileLifecycle.html

2. Emperical Findings in Agile Methodshttp://www.cs.umd.edu/~mvz/pub/agile.pdf

3. http://collaboration.csc.ncsu.edu/laurie/publications.html

4. Google for articles on the web for Traditional SDLC. Wikipedia also provides references to SDLC