Systems Development Life Cycle Methodology

Introduction

Managers and business organizations invest in information technology and systems because such strategies provide real economic value to the business. The decision to implement or sustain an information system presumes that the profits on this investment will be higher than that of other assets (Laudon & Laudon, 2006). In this light, a proper information system that meets the organizational requirements should be developed following a suitable development methodology. In addition, information systems do not appear randomly in business; their development is a time-consuming and cost-bearing experience that should only be undertaken after careful analysis and consideration of the objectives of an organization. The goals of an information system are essential in determining the scope, shape, and nature of the information system to be developed.

Most business organizations find it essential to use a standard set of steps, called a system development methodology, to develop and support information systems. Therefore, this paper analyzes the system development life cycle (SDLC) methodology and why it is a beneficial model for implementing information systems in a business firm. Consequently, we provide the analysis of other approaches and the consequences for not following the SDLC; these approaches include rapid application development (RAD), prototyping, and object-oriented systems development (OOSD).

Systems Development Life Cycle (SDLC)

SDLC is a frequent approach for systems development in many companies, featuring several phases that mark the progress of the systems analysis and design effort. This approach requires that each stage of the life cycle, from the inception of the idea to the delivery of the final system, be carried out rigidly and sequentially. This is commonly referred to as imperative development since it is obligatory to complete one stage before moving on to the next stage of the development cycle. Today this methodology is mainly used for very large-scale computer-based information systems development and implementation.

The traditional SDLC approach to information systems development is an evolutionary life cycle that starts with the inception of the system and ends with the eventual death of the system at the end of the system’s useful life. The end of a system’s life cycle is indicated by it no longer being appropriate or useful for the reason for which it was developed. However, there are several reasons behind the development of business information systems. Elliot and Starkings (1998) assert that the main reason lies in change; business is an adaptive activity that must constantly change or modify for a company to remain competitive. Secondly, the current system may no longer be suitable for its purpose or the environment in which it operates. Thirdly, the current system may have become outmoded due to technological developments. And fourthly, the current system may have become too expensive or resource-intensive leading to the inflexibility of an organization’s operations.

According to Hoffer, George, and Valacich (2002), the SDLC follows the following five major stages which make it a formal approach to information systems implementation:

  1. System planning: This is the stage where the nature and scope of the problem are identified. It starts with a system request that identifies the information system and describes desired changes or improvements. Some of the system planning includes a preliminary investigation to gain a clear understanding of the current system, and the identification of the potential problem in the system. The end product of this stage is a preliminary investigation report.
  2. System analysis: The current system is analyzed. All the functions performed by the current system are defined and improvement determined. The end product of this phase is the system requirement document.
  3. System design: This phase is important to provide an information system design that satisfies all documented requirements. It is concerned with what the system must do and not how it will be done. The result of the system design stage is a system design specification.
  4. System implementation: The information system is constructed and put in place. It deals with coding, testing, and documentation of programs.
  5. System operation and support (Maintenance): The system analyst checks the new system to see that the objectives are met. Adjustments and modifications are made where necessary.

In general, the following are the benefits of using SDLC as a relevant methodology for implementing a modern information system:

  1. The SDLC is a tried and tested approach that is very suitable for the development of large-scale information systems. In essence, the phases are thorough as compared to other methodologies like prototyping (Philip, 2008).
  2. The traditional SDLC relies on the production of system documentation and standards of the development system and can be used to guide the development of an information system and can be used as a reference and training material for users.
  3. The chronological and phased nature of SDLC allows a complex systems development problem to be broken down into convenient and understandable tasks.
  4. The SDLC relies on the use of formalized analysis and design tools and techniques that graphically shows the nature of data and information flows within the system. Other models like rapid application development (RAD) and end-user development do not have a standard structure for requirements analysis.
  5. The structured nature of SDLC methodology allows the incorporation of formal project management techniques and tools to guide the systems development process.

Alternative Methodologies

Apart from the SDLC approach, alternative methods for implementing information systems may be followed due to the differences in systems being developed. This section describes these alternative approaches: rapid application development (RAD), prototyping, object-oriented systems development (OOSD), and end-user development. This is in the context of their effects for not following the SDLC.

Rapid Application Development (RAD)

RAD is a software development process that allows usable components to be built within a short period of 30 to 90 days. RAD development is used in situations where the business requirements for a system can be satisfied even when some of the operational requirements are not satisfied or in systems where the requirements are assessed against agreed minimum requirements other than all the requirements (Sommerville, 2004). In RAD the prototype becomes the basis for the new system, hence the steps involved in this method are planning, design, development, and cutover. However, as compared to SDLC, RAD is not suitable for larger systems that require a lot of planning and analysis. If hard-and-fast goals for speed and cost are set, the quality of the final application will suffer. Secondly, there may be a danger of misalignment of the system developed via RAD with the business due to missing information on underlying business processes. And thirdly, there can be difficulties with module reuse for future systems.

Prototyping

Prototyping is a repetitive approach to system development involving analysts and users in which a miniature or a test version of an information system is built and rebuilt according to user feedback (Hoffer, George & Valacich, 2002) Prototyping preceded by interview and collecting documentation, allows the analyst to quickly convert basic requirements into a working, though a limited version of the desired information system. The prototype will be then viewed and experienced by the user, thus generating new requirements. However, this approach has some negative consequences: Firstly, there is a trend to avoid outlining formal documentation due to the changing requirements. This may delay the overall system development. And secondly, checks in the SDLC are bypassed so that some more subtle, but still important system requirements might be forgotten; for instance, the security, some data entry controls, or standardization of data across systems.

Object-Oriented System Development (OOSD)

OSD is a methodology based on objects rather than processes and data. The developer defines objects and classes. This method involves the linking together of objects to create specific systems applications. These objects may consist of a set of computer codes or an encapsulated collection of data and operations performed on that data. Thus, the various objects can be combined, like building blocks, into the application of a system for any business organization. However, the disadvantage with this model as compared to SDLC is that it is a new problem-solving approach, posing a major difficulty in the context of identifying and developing objects. In addition, this method lacks a common data model with a theoretical background. In essence, a company may not be able to develop a system that fulfills its core business objectives.

End-user Development

In end-user development, the users recognize their needs and then they are supplied with development tools, which require little or no technical support. A series of tools categorized as fourth-generation languages makes this possible (Laudon & Laudon, 2006). The users are given the development tools to implement a solution to meet their needs; so the tools should continue to meet the obligation until they perfectly meet users’ requirements. However, this approach may lead to low-quality systems since the problems may not be solved within the limitation of the tools. Consequently, end-user development lacks the right implementation skills; users may have little knowledge of the system model that satisfies the corporate objective.

Conclusions

The general conclusion that can be derived from this discussion is that a company needs to have a clear understanding of its long-term and short-term information requirements through the incorporation of appropriate methods in the implementation of information systems. The methodologies that can be used in developing information systems include SDLC, RAD, prototyping, OOSD, and end-user development; though they are not independent of each other. From this analysis, any method chosen depends on the way the proposed system will meet the requirements of the business end-users and deliver the optimal benefit. However, SDLC is presented as the most suitable methodology, since it depicts the corporate business image of the company in line with the budget and time. In addition, SDLC follows a formalized analysis and design, making it essential for large-scale information systems. More so, SDLC incorporates formal project management techniques and tools to guide the development process hence a good choice for strategic business alignment.

References

  1. Elliot, G., & Starkings, S. (1998). Business Information Technology: Systems, Theory and Practice. Essex: Pearson Education.
  2. Hoffer, J.A., George, J.F., & Valacich, J.S. (2002). Modern Systems Analysis & Design. New Jersey: Prentice Hall.
  3. Laudon, K.C., & Laudon, J.P. (2006). Management Information Systems: Managing the Digital Firm. New Jersey: Prentice Hall.
  4. Philip, D. (2004). SDLC Models Advantages and Disadvantages.
  5. Sommerville, I.(2004). Software Engineering, New Jersey: Addison Wesley.
Find out the price of your paper