Position on Topic
The System Development Life Cycle Methodology is indeed excessively formal and rigid and should certainly be made more flexible and unstructured. This stand is taken to agree with the notion that the system development life cycle model is formal and needs to be made flexible. The position that the System Development Life Cycle methodology is excessively forma and rigid has been taken due to the following reasons:
Slow and Cumbersome Procedure: It can be observed that the application of the system development life cycle is indeed highly cumbersome. For nothing at all, there are as many as six (6) stages that needs to be crossed before a given system can be completed. These six (6) stages are System/Information Engineering and Modeling, Software Requirement Analysis, System Analysis and Design, Code Generation, testing, and maintenance (Stylusinc, 2010). Each of these stages also is made up of a number of internal processes and procedures that need to be fulfilled. Due to the cumbersome nature of the methodology, it automatically makes the methodology very slow in implementing. It would be noted that each of these six (6) stages, there is the need to have specially trained expertise and personnel who come in at different times to undertake their own part of the process. In situations where one stage cannot be executed, there is no way there can be a jump over. This is thus the major cause of the slowness of the methodology and in some cases, its delay.
No room for backward movement in progress development: Because the system development life cycle methodology is typically a linear system of implementing information systems, it allows only for forward progress with little or no room for backward movement. This means that once a one of the six (6) stages has been reached, it is impossible to go back to the previous stage to make adjustments. This is exactly what makes the progress rigid because there is virtually no room for adjustable changes to processes that has been undertaken in preceding stages. It is in light of this that the Centre for Medicare and Medicaid Services, CMS (2005) stated as part of the weaknesses of implementing the system development life cycle methodology that “Project progresses forward, with only slight movement backward.” This point also justifies why the system is said to be excessively formal. But for its formal nature, it should have been possible to break into a preceding process and easily effect changes.
Inability to discover problems till system testing: Subsequent to the fact that changes to preceding processes or stages are barely made possible, it becomes very difficult to trace problems with the system development until the stage of system testing. At the fifth stage of the process where system testing is done, “different testing methodologies are available to unravel the bugs that were committed during the previous phases” (Stylusinc, 2010). It is however regrettable that there are no mini-testing stages for each of the phases until the whole process gets to the testing phase. This is because there is an implication that if any faults and problems are detected at the system testing stage, the whole process might have to be repeated. The reason of a possibility of starting the whole process again is that identification of specific cause of problems may even be difficult because a lot might have gone into the construction of the system.
Demands excessive documentation: One other point that makes it valid to take the stand that the system development life cycle is too formal and rigid is that upon completion of the system, there is a required cumbersome documentation of operations and interface processes for the system. This creates a situation where the system is only accessible to very few technically inclined people. This means that in the course of the operation of the system, once problems arise with the system, solutions may delay in coming because only a few experts might be available to work on the problems. In most cases, it would be expected that the construction of any system should be so informal that the knowledge on basic operation will not be limited to only a few group of persons. This is because such situations always cause delays when the right people to attend to the system cannot be accessed at a given point in time.
There are several schools of thought who have also come up with their versions of arguments, wanting to create the impression that the system development life cycle methodology is indeed not formal and rigid. People belonging to this school of though argue on three major stands in justification of the structure of the stages and procedures with the system. The arguments they put forth have briefly been described below:
Clear Project Objectives: It is argued that the system development life cycle works according to well defined and clearly stated project objectives. It will be observed that in the project management principle, project objectives are very important in explicitly stating what the project wants to achieve as well as the timelines for achievement and in some cases the amount of money that would go into achieving the particular objective. Because the system development life cycle is linear in nature and has specifically stated stages that need to be adhered to in the course of the system delivery, people in this school of thought hold the view that the stages are in themselves ways of clearly explaining what needs to be achieved at what time of the project process. In their opinion therefore, it is very simple to point out to the fact of whether the project objectives were achieved or not.
Measurability of Project Process: It is also argued that the division of the system development life cycle into stages is only a way of making the entire project process measurable. In a given project management task, project managers often look out for the measurability of the project they are to undertake. The simple reason for wanting to know the measurability of the project is that it makes it possible for the project managers to budget for the project appropriately. Judging from the fact that there are six (6) clearly defined stages with the system development life cycle methodology, project managers are able to track the progress made at any point in time with the project. This is because at any given point in time, the project manager is assured that he or she is at a specific stage and this is a means of measuring the progress of the project. It is argued that once it is possible to measure the progress of the project, it is also possible to make adjustment with regards to speed and funding so that the completion of the project shall be focused on initial plans.
Easy Usability: As if a reaction to the cumbersome documentation that follows the use of the system development life cycle methodology, commentators in the school of thought that argues that the system development life cycle methodology is not rigid and formal say that the documentation makes usability easy. In light of this, it is said that using system development life cycle methodology is “ideal for supporting less experienced project teams and project managers, or project teams whose composition fluctuates”. This means that there does not have to be a very experienced workforce to undertake the project. This is because the team will be relying on the availability of the documentation. Again because there are stages on the process that demands different set of expertise, there does not have to be a rigid composition of personnel to deliver the system. The experts will also not have to be available all at a time together. In the absence of one set of personnel, other personnel can easily take on their tasks using the documentation.
It can be seen that there are some merits in the counterarguments presented above especially when it comes to the fact that the systematic and linear nature of the system development life cycle methodology makes measurability possible. But it would again be argued that the fact that this creates the advantage of making measurability possible does not take away the fact that the process is rigid and normal. Indeed, the counterargument is only stating the importance or advantage of the rigid nature of the system and not necessarily trying to create the impression that the rigidness is non existent. The saying that documentation also makes usability easier does not also refute the saying that the process is formal but rather it is only justifying the formal nature of the process. On a very comparative basis therefore, there is no argument that can justifiably refute the fact that the system development life cycle methodology is rigid, cumbersome, slow and formal. Based on this, I unequivocally re-affirm my original position that the system development life cycle is rigid and formal and needs some level of adjustment in its structure and system.