Traditional System Development Methodologies
Traditional System Development Methodologies
RESEARCH ARTICLE
Abstract
Software development methodology plays a vital role in systems development life cycle. It is a framework that
guides the systems development team in achieving what the customer/user has requested. Decision making may
impact the systems development team positively or negatively. Hence, understanding strengths, limitations, how,
why and who can use the software methodology is imperative. It helps all the stakeholders involved in a systems
development team to make informed decision for a particular project. Hence, the software development
methodology is not a silver bullet for all the projects.
Keywords: Systems development methodology (SDLC), Information technology (IT), Systems development.
Introduction
There is a stage in life where a need arises within the main purpose of this paper is to examine the
the organisation to purchase or develop a system. traditional methodologies and to understand why,
This need may require the organisation to who and how they are used and also highlight the
undergo through a system development life cycle limitations thereof.
(SDLC) in order for it to increase productivity to
Traditional Systems Development
remain competitive. To achieve that, most
organisations have to make a decision to The traditional systems development existed prior
developing a system or purchase a system. to the agile systems development. These
Therefore, there are various systems development methodologies include waterfall method, V-model,
methodologies that can be followed after making Rational Unified Process and others [4].
that crucial decision because there are finances According to Matkovic and Tumbas [5], these
involved. methodologies are based on the systems
development principles that have served as a
Nelson and Teng [1] define SDLC as a guideline foundation for the creation of the systems
and logical process used by system developers to development to date which can be either
develop systems. According to Rob [2], SDLC sequential or iterative. Sequential approach
stipulates the required ways that comprises means that the methodology is made up of a
various stages and activities to successfully series of steps/stages that follow each other
develop the system. However, it should be taken sequential. The steps are dependent of each.
into consideration that the methodology is not one
size fit all. The software development team has to With the iterative approach, [6] posits that the
carefully select the appropriate methodology for a methodology divides the intended system into a
particular project they are undertaking. series of versions. After the implementation of
version1 the additional work is done on version 2
These methodologies serve as a framework to be and the process continues until the completion of
followed by a software development team. It can the overall system. The emphasis of the
also be used to ensure that the designed solution traditional development approach is to create
meet the user requirements that supports ample documentation which serves as a means for
business strategic goals and objectives. The communication and traceability of the design [7].
SDLC can be either agile or traditional. However, Documentation also plays a vital role in sharing
both methodologies are made up of various stages knowledge and keeping tacit knowledge within
namely analysis, design, development, the organisation. However, knowledge
implementation and maintenance [3]. However, management is of vigorous importance within
techniques mentioned above are not properly and adaptability during the system development
managed then the systems development may not process [26]. As a result RUP becomes extremely
be a success. The success of the system is flexible as it allows change to occur at any time at
tremendously dependent on high technical skilled any stage of systems development. RUP is made
developers [26]. up of four stages namely inception, elaboration,
construction and transition [27]. These stages are
Rational Unified Process (RUP)
executed sequentially and iteratively throughout
Due to the dynamic nature of technology, new the systems development life cycle. Every stage of
methodologies keeps on being implemented to RUP is composed of one or more iterations [28].
improve limitations encountered to its Any discrepancies, risks and errors encountered
predecessors. According to Jain and in each stage are addressed in each iteration of
Chandrasekaran [9] in 2000, Kruchten introduced that particular stage. The final iteration forms
rational unified process (RUP). It was introduced part of the final system.
to consider the need for accommodating change
The above mentioned stages are accompanied by an industry-standard language that allows the
nine principles described in the table. systems development team to clearly
communicate requirements, architectures and
The aim of introducing new methodologies is to designs visually [12]. Pictures or diagrams enable
fill up the gaps encountered in the previous the entire systems development team to visualise
methodologies. RUP has been adopted in the the inner workings the system to be built. It also
systems development industry as a model for the makes it easier for the team to explain the how
reason that it is well defined and documented the system is going to work.
[30]. The documentation is accessible
electronically. RUP is an adaptable model The rational unified process (RUP) is a process
allowing organisations to select elements of framework that provides a disciplined approach to
processes that are most relevant to the particular define activities and responsibilities inside the
project. RUP make use of unified modelling organised system development [32]. The four
language (UML) to emphasise object-oriented development stages are accompanied by the nine
analysis and the maintenance model [31]. UML is basic principles. Hence each stage is iteratively
executed. The main goal of RUP is to make pass a quality check, this approach is referred to
changes manageable because problems as a stage-gate model [36]. After the stage-gate
encountered in testing of each iteration are model, it is when the document is signed off and
resolved early in the systems development life the next stage begins.
cycle [33]. RUP also ensure the production of
high-quality software that meets the needs of its The traditional methodologies endorse a strict
end-users, within a predictable schedule [12]. sequence of the quoted stages and it cannot be
However, this model is too complex, not easy to violated. Hence, the processes have to be fully
learn and problematic to apply correctly if project defined and documented. Stages such as
managers or team members are not experts in requirements gathering and systems design, the
using it [33]. Another limitation is that RUP is a way they are performed in the traditional
commercial product and needs to be purchased methodologies helps the team members to broadly
from IBM before it could be used [33]. gain knowledge about the entire system [37]. It is
vital for organisations to keep knowledge within
Why is Traditional Methods Applied
itself because the systems that are developed
Any organisation that needs to develop a system require maintenance. Therefore, these documents
may use the traditional systems development. that are compiled and stored empower the
These methodologies consists of a sequence of employees who later join the organisation to know
stages that must be followed and completed by what the systems are all about hence they may be
system designers and developers in order to the same people to maintain such systems.
achieve some results and deliver the requested
Who Uses Traditional Methods
system [10]. One thing that users must know is
that it takes time for the program to be complete. People who use the traditional methods are
It is built in such a way that the programmer known as IT professionals. Such professionals
cannot move on to the next step if the step prior to include systems analyst, database analysts,
that is not yet completed. The traditional systems database administrators, network administrators,
development methods are dependent on a set of webmasters, programmers, vendors, steering
prearranged processes and continuing committees and other IT professionals [38].
documentation which is written as the work However, the structure of the company also
evolve to guide further development [4]. determines how the systems development team is
setup. The other IT professionals include project
The traditional development attempts to manager, software development manager,
minimize change during system development software architect, software developer, test
through severe upfront requirements gathering, manager, test leader, test designer, software
analysis and design with the intent to achieve tester, quality manager, quality assurance
higher quality results under a controlled schedule engineer and quality control engineer [20].
[34]. There are various specialists involved in
Limitations and Challenges of
each and every stage of systems development.
Traditional methodologies, the development is Traditional Development
done by immense and organised teams with Due to the formal/sequential pattern of the
specialists for some activities in the stages of traditional methodologies, users are expected to
development. With traditional methods, systems give out requirements at the early stages of the
are fully specified, predicted and built through project. As a result users may give out incorrect
careful and extensive planning [35]. requirements or leave out critical requirements.
According to Mujumdar et al., [39], due to
How are Traditional Methods Used
uncertainties at the beginning of the project with
The whole process of software development, regards to the requirements the traditional
according to the traditional methods, begins with models are unable to accommodate such
the understanding of the requirements and uncertainties properly. These traditional
expectations from the customer or end user. After methods are not most suitable for the
the requirements are clearly understood by the development of projects whereby system
developers, analysis and design of the software requirements change regularly, the development
begins. The systems development undergoes schedules have to be shortened because that has a
through a sequence of some fundamental stages negative impact on quality [40].
such as planning, analysis, design, and
implementation [2]. The activities of one stage The traditional methodologies (also known as
must be completed before moving to the next plan-driven methodologies) assume that the
stage. Amid all the stages the documents have to correct information can be obtained up front [41].