SYSTEM DEVELOPMENT MODELS
Introduction
A system model is a conceptual representation of a whole system outlay. It represents the multiple views and needs which should be incorporated in the system development. There are different types of system development model, each of which has their advantages and disadvantages
Waterfall model is one of the models used in the development of the system software. As the name suggests, it has a resemblance characteristic with the geographical waterfall in its operations. It assumes the system development model that is linear and sequential in execution. The system development is classified into each phase with distinct and varied goals. Once one phase is passed through, the development proceeds to the next phase with no reverse development in the previous goal (Bergen, 2004). The stages of development include; Requirements, design, implementation, verification and maintenance.
The separation of stages of development in form of phases presents challenges and opportunities alike. It becomes easy set deadlines for different phases and monitor the execution of the set goals with ease. In addition, it is easy to understand and comprehend since the phases are distinct with different goals (Johnson, 2007). On the other hand, it is inflexible since it does not allow for the reflection or modification of the previous stage. This makes it insensitive to advancements in different fields.
Besides, waterfall method, the system developers have another option of adopting the Agile method of system development. Agile method derives its meaning from the superficial meaning of agile which means quick. As a result, the agile development methodology seeks to provide numerous opportunities to assess the dir...
... middle of paper ...
...her models of system development (Johnson, 2007). On the other end, the system methodology is more time consuming and costly as compared to others. As a result, it is normally infamous compared to others.
In the recent past, system life cycle modeling has witnessed some changes and indeed trends which are worth noting. First, most organizations have moved from the in-house acquisition of software to buying in the market as either off the shelf or to buying from the companies which tailor make specific software. In the recent past also, the Information Technology through the systems developed have become the efficient management approach for data and different industrial processes (Bergenti, 2007). The companies have shifted focus on the development of the systems but have ventured much in the purchase of the tested brands and the already customized systems.
Agile project management is an iterative approach to the planning and monitoring of project processes. Agile projects are conducted in smaller tranches called iterations with each of these iterations closely reviewed and critiqued by the project team (employees, representatives of the clients etc.). The knowledge gained from this process is then used to ascertain the next steps of the
The Software Development Life Cycle is seldom used at my place of work. Unfortunately, recent developments in its use are deemed confidential. Due to this fact, this paper will examine in general terms one of the projects we are undertaking right now while at the same time attempting to maintain our confidentiality.
The Systems Development Life Cycle (SDLC) consists of phases used in developing a piece of software. It is the plan of how to develop and maintain software, and when necessary, replace that software. In 2007 during my hospital’s transition to a new software system, I was fortunate enough to be included in the process. I did not get involved until the implementation phase, but from then on, until now, I remain very active in the process. I decided to highlight the Waterfall Model of SDLC. The Waterfall Model is a “sequential development process” with each phase continuing in a line (McGonigle and Mastrian, 2012, p. 205).
Three waves of systems theory were developed (Healy, 2005). The first wave, being General systems theory. General systems theory is about focussing on a more effective social order for the client,...
After the systems planning is complete, the next course of action is the systems analysis phase. This phase includes defining the requirements of the system. This means that the team must conclude what the system needs to do in order to satisfy the users. This is done by forming a requirements...
The current technological advances that are apparent today are of paramount importance to the study of Systems Engineering. Systems engineering has redefined the traditional view of what makes up an entire unit of a machine. Its influence has also permeated into such areas as manufacturing processes and the management of people, tools and capital in the process of manufacturing. To understand the focal point or basic idea of this discipline, one should look at the definition of a “system”. A system is an entire unit that is made of parts or other systems, which work in concert to achieve a desired output. Systems that are units of an entire system are termed as sub-systems. One should not view a system only in terms of hardware or in a machine design aspect, but should also know that also entail the aspect of human labour in relation to the economic output of a society, nation, firm or industry (Department of Defence, 3).
(3) The half-life is not the same for all processes. It depends on the complexity of the process. There are two dimensions to complexity: technical and organizational. Technical complexity is high for new technologies, where part of learning process is related to understanding and refining that technology. Over time, as the technology matures and its use becomes more routine and familiar, technical complexity declines. Organizational complexity arises when a process has linkages to processes outside of its boundaries. These processes may be internal or external to the organization. The linkages may be one-way, one-time or interactive, routine or requiring real-time negotiation. So processes can run the full organizational gambit, from completely self-contained to cross-functional or cross-organizational. As the cultures, goals and objectives of the various players come into potential conflict, the rate of improvement will be expected to slow.
Agile software development is a group of software development methods based on iterative and incremental development, where requirements and solutions evolve through collaboration between self-organizing, cross-functional teams. It promotes adaptive planning, evolutionary development and delivery, a time-boxed iterative approach, and encourages rapid and flexible response to change.
- Sumner, M, 1999, "Critical success factors in enterprise wide information management systems projects", Proceedings of the Americas Conference on Information Systems (AMCIS), 232-4.
Laszlo and Krippner (1998) describe a system as “a complex of interacting components together with the relationships among them that permit the identification of a boundary-maintaining entity or process. (p. 2) Systems Theory is based on studying how individual parts of a system interact with each other to produce certain behaviors. System theory can be classified as identifying patterns and behaviors. The roots of system thinking have been in existence since the early 20th Century and have since been formally identified as such. The process of systems thinking is being able to pay attention to the whole while focusing on the complex interrelationships that make up a system to encourage the development
Within the analysis phase a set of goals are needed within the domain. From this there are three perspectives which are taken; the object model the Ronald LeRoi Burback (1998) states “dynamic model, and a functional model. The object model represents the artifacts of the system. The dynamic model represents the interaction between these artifacts represented as events, states, and transitions. The functional model represents the methods of the system from the perspective of data flow.” After the analysis phase the system design phase takes place. Here the system is sub-categorized and appointed tasks and persistent data storage is established, also within this phase the architecture is formed. Lastly the object design phase starts and is where the implementation plan is established and algorithms and object classes are also
Information system is created and developed to solve problems and full fill humans needs for example business. System Development Life Cycle (SDLC) is the overall process of developing an information system. Devi(2012) mentions that SDLC is known as Software Development Life Cycle in engineering field. SDLC is the foundation methodology for all system development. There are many unique activities associated with each phase in SDLC. SDLC is comprised of seven phases: identify the problems, objective, and opportunity, determining human information requirements, analyzing system needs, designing the recommended system, developing and documenting software, testing and maintaining the system, and implementing and evaluating the system. (Kendall & Kendall, 2011) (refer to Figure 1 in Appendix 1).
Agile is an iterative based software development methodology. In this particular approach a certain functionality of the software is developed in two to four numbers. The client or the partner for whom the system or the software is being developed stays in constant communication throughout as their feedback forms the basis of the next iteration. Since the feedbacks are readily and easily available, the final outcome rarely turns out to be undesirable for the clients.
The Waterfall Model has been the ideal choice for software development. In this model, an idea become a usable software in a sequential process that cascade through the stages of Initiation, Analysis, Implementation, Testing and Maintenance. But it has some disadvantages. Agile software development evolved as a solution to the disadvantages of Waterfall model. Instead of a sequential design process, the Agile methodology follows an incremental approach.
SEBok, 2013. Systems Approach Applied to Engineered Systems. [online] Available at: http://www.sebokwiki.org/wiki/Systems_Approach_Applied_to_Engineered_Systems [Accessed 7 April 2014]