StudentShare
Contact Us
Sign In / Sign Up for FREE
Search
Go to advanced search...
Free

Models of Software Development Methods - Research Paper Example

Cite this document
Summary
The paper gives detailed information about the methods used in the development of software. "Models of Software Development Methods" describes the advantages and weaknesses of each methodology focusing on different aspects, like the requirement of human resources, how much resources are needed in general…
Download full paper File format: .doc, available for editing
GRAB THE BEST PAPER98.2% of users find it useful
Models of Software Development Methods
Read Text Preview

Extract of sample "Models of Software Development Methods"

Introduction This research presents the analysis of software development methodologies. In this paper, I will analyze the software development methodologies in terms of their strengths and weaknesses or how they are different from each other. This research will spotlight some of the operational areas and development resources for the assessment. Waterfall model The Waterfall or linear sequential model suggests the development of the system through a systemic sequential approach. “Through this approach, we start with the analysis of the system, after that we design, code, and test the system for potential operations” (Pressman). “In this method, each step has definite opening and ending point, with particular deliveries to the subsequent phase” (Als and Greenidge). The image given below shows the details of this model.  Figure 1 Waterfall Model, Image Source: (Als and Greenidge) Human resource needed This project requires fewer human resources for the overall development of the project. Here through this model, we can develop the overall system with a small development team. Because this model works in a sequence and the second phase can only be completed after the successful completion of the first phase (Sage, Andrew and & Palmer). Development resources needed This software development methodology involves fewer people for the overall development of the project, so we also need fewer resources for the overall project development (Pressman). Development domain This development methodology is used for the project of small or medium size and having long or sufficient time constraints. Advantages (Pressman) • Fewer resources (hardware) needed • Less human resource involved • Best for small projects • Less complex structure • Useful for research projects because research needs step by step procedures. • Oldest and most used software development methodology • Testing is intrinsic to every stage of the waterfall model (Als and Greenidge) • This model is documentation driven, do the documentation is created at every phase (Als and Greenidge) Weakness (Sommerville) • The real process follows the sequential model • Any error in the system development will remain unrented throughout the development life cycle • Customer cannot state each requirement at a time • The customer has to wait until the completion of the project for the working version of the system • It is not able to manage a complex and larger project • It only integrates iteration ultimately, therefore modifications may cause substantial uncertainty as to the project development (Als and Greenidge) Spiral Model “The Waterfall model is the straightforward and extensively accepted/followed software development model, however like any other software development model; the Waterfall model has also its disadvantages. Spiral Model for software development was developed to conquer the disadvantages of the Waterfall Model” (Parekh). This software development methodology is composed of the iterative nature of the prototyping and systematic aspects of the linear sequential model. This software development methodology provides the potential for the development of an incremental version of the software. Through this software development methodology, we can have a series of incremental releases of the software system. Its early versions are designed to collect more and better requirements from the client (Pressman). The image given below shows the working of this model: Figure 2Spiral Model Image is available at: http://www.buzzle.com/showImage.asp?image=1400 Human resources needed This software development methodology works in small increments and evaluates toward a big and comprehensive system implementation, so this software development methodology usually requires a small project development team (Sommerville). Resources needed This software development methodology needs a small working team, so it will also require small working and development resources (Laudon and Laudon). Development domain This type of software development methodology is usually implemented for the medium to large projects. Mainly this software development methodology is best for the system those are huge, complex, and all requirements are not available at the start of the project (Pressman). Advantages (Pressman) and (Sommerville) • Best for complex projects • Huge projects can be easily handled • Fast response to the customer through iterative increments of the system • Requirements can be available from time to time • Better interaction to customer results in the most excellent results • Cost and schedule can be adjusted according to user requirements and needs • Errors are detected easily • System maintenance is straightforward • Fewer resources (hardware) needed as compared to project size • Less human resource involved as compared to project size Weakness (Pressman), (Sommerville) and (Parekh) The spiral model is not a panacea Not used widely because highly skilled workers in the areas of risk identification and management are required The customer takes evolutionary increments of the system as a complete working system and demands to implement it. In some case customer convince is harder to achieve If major risks are not identified then we can face a lot of problems regarding system development and work. Prototyping The better interaction among developers and system users results in a system that gives system well-liked capabilities (Alavi). Prototyping provides the capabilities to build an enhanced working relationship among system developers and users. The user describes his needs and outlines of the system that he needs to work with. The developer works and builds a short-term system interface to get more requirements and in this way, the resulting system is according to user requirements. This is the final success of IS development (Pressman). Prototyping is a valuable software design and development procedure. If we talk about prototyping in terms of IT and information systems, then the conception of prototyping is utilized to assist software system developers and designers to construct software or information system that automatic as well as straightforward to control for end-users (Norton). A lot of systems designers and software engineers at present make use of prototypes throughout detail design. A prototype is a functioning representation of the planned system (Shelly, Cashman, and Vermaat). The system analyst, in reality, builds a functional representation of the solution throughout the design. Prototyping encompasses developing a functional system speedily and reasonably for the end-user to examine and compare it against actual requirements. By communicating with the prototype, users can search out an enhanced proposition of the information requirements. The prototype authorized by the users can be used as a mock-up to put together the actual system (Laudon and Laudon). The prototype is a functioning adaptation of software or an element of the software; on the other hand, it is intended to be no more than a foundational model. Once prepared, the prototype will be additionally developed until it obeys the rules accurately to the user’s requirements (Laudon and Laudon). Once the design has been approved or accepted by the user, the prototype can be transformed into a sophisticated developed system. The method of developing a foundational design, making use of it, improving it and trying again has been accredited an iterative method of systems development for the reason that the steps essential to develop a system can be repetitive over and over again (Laudon and Laudon). Prototyping is further explicitly iterative than the traditional life cycle, and it dynamically encourages system design changes. It has been thought that prototyping replaces unintentional modification with premeditated iteration, with each adaptation more accurately representing the user’s requirements (Laudon and Laudon). Human resource needed Medium number of working personnel are needed for this system development methodology Resources needed Medium resources are needed for such system development Advantages The advantages of prototyping encompass the small development time of the IS development system, then we have the short user-reaction time on any prototype, and another main advantage is regarding the enhanced user understanding of the system, information needs, and its capabilities. The biggest advantages we have got are the low costs of prototypes development (Pressman). More advantages are given below: (Alavi), (Laudon and Laudon), (Norton), and (Sommerville): IS developer obtain confirmed user response Helps for system implementation because users are acquainted with what they have to anticipate For system development, it will take less time Fewer development expenses Needs user involvement Absent services can be noticed as well as confound services can be recognized The outcome is superior user satisfaction Representation of the developer’s to the potential for the future system improvements Weakness There are few limitations listed below (Laudon and Laudon) System users anticipate the working performance of the eventual system to be similar to the prototype. Occasionally guides to defective documentation. Sometimes in system development, we can have insufficient analysis. Object oriented methodology The object-oriented software development methodology provides a component-based system development methodology. Object-oriented software development methodology emphasizes the creation of classes that encapsulates both data and algorithms used to manipulate the data. The main architecture of the object-oriented software development methodology is developing a class that can be resalable to different applications and computer-based system architecture (Pressman). “Object-oriented software development methodology incorporates a lot of working functionalities of the spiral software development methodology. It is also an evolutionary system development methodology” (Sommerville). Human resource required This object-oriented software development methodology is more related to the spiral model for the development of the overall system. In this way, in this software development methodology, we do not need huge working staff as compared to system size, because we break the system into small workable functions (Pressman). Resources needed Due to less human resource working for system development through object-oriented software development methodology, we need less resource for the development of system Development domain The object-oriented software development methodology is mostly used for huge application development that comprises major aspects of reusability. It is also useful for complex projects because it develops a system through a components based approach (Pressman). Advantages (Sommerville) • The component-based approach is best for huge and complex system • Fewer resources (human and physical) needed as compared to the size of system we are going to develop • The main aspect of reusability • Better interaction with the customer • Wider elaboration of system requirements • Less cost due to reusability • Less effort spends on system testing and mitigation because of the components based approach. • Each component (function) is separate working entity so this minimizes the effort to check for whole system working and functionalities Weakness (Sommerville) • Complex development structure • Difficult to handle (because of so many components) • No appropriate for small projects (Small projects can’t be broken into components) Rapid application development RAD or rapid application development methodology is an incremental system development process that pays attention to the development of the system in the small development period. The RAD model is a high-speed implementation of the linear sequential system development model (Pressman). Rapid application development methodology spotlights on the development of the system through a component-based approach (Pressman) and (Maner). In rapid application development methodology if we assess the system development requirements in a better way then we can develop the system through defining a better scope of the system after that Rapid application development process enables the development team to construct the system that is completely functional for a very short period. Approximately this period of system development is 60-90 days (Sommerville) and (Maner). Rapid application development methodology involves the following stages of system development (Pressman). • Business Modeling • Data Modelling • Process Modeling • Application Modelling • Testing and turnover Human resource needed Due to its fast development track, we need more human resources. Resource Needed In the rapid application development, we need more resources for the overall system development, because of more people working on the project for completing the project quickly. Advantages Implementation of rapid application development methodology provides less development time and a better system development process. In this way, we can develop a better system in an extremely short time (Sommerville). The potential benefits that this development methodology provides are (Pressman) and (Laudon and Laudon): • Less development time • Better interaction with the customer • Good for complex projects • Team-based development • Modeling based approach for system development • Quick response to client • Better system development though better system client interaction Weakness (Sommerville) More working resources needed (physical) More human resources needed Costly to implement Conclusion In this research, I have presented a detailed analysis of the software development methodologies. This research has presented a detailed overview of the Waterfall Model, Spiral Model, Prototyping, Object-oriented methodology, and RAD software development methodologies. This research outlined the main implementation areas and development details of the software systems through these software development methodologies. This research has provided a deep insight into the overall concept of the software development methodologies and their implementation. Work Cited Alavi. "An Assessment of the Prototyping Approach to Information System Development." Communications of the ACM. 1984. 27. Als, Adrian and Charles Greenidge. "The waterfall model." 29 September 2005. The University of the West IndiesThe University of the West Indies. 10 September 2009 . Laudon, Kenneth. C. and Jane. P. Laudon. Management Information Systems, Sixth Edition. New Jersey: Prentice Hall , 1999. Maner, Walter. "RAPID APPLICATION DEVELOPMENT." 1997. Bowling Green State University . 02 September 2009 . Norton, Peter. Introduction to Computers, Fourth Edition. Singapore: McGraw-Hill, 2001. Parekh, Nilesh. "Spiral Model - A New Approach Towards Software Development." 13 January 2005. Buzzle.com. 09 September 2009 . Pressman, Roger S. Software Engineering 5th Edition. New Yoer: McGraw Hill Publishers, 2001. Sage, P, Andrew and James, D & Palmer. Software Systems Engineering. New York: John Wiley & Sons, 1990. Shelly, Cashman and Vermaat. Discovering Computers 2005. Boston: Thomson Course Technology, 2005. Sock Hwa Chung, Charles A. "ERP adoption: a technological evolution approach." International Journal of Agile Management Systems (2000): 1465-4652. Sommerville, Ian. Software Engineering, 7th Edition,. New York: Pearson Education (Addison Wesley), 2004. Read More
Cite this document
  • APA
  • MLA
  • CHICAGO
(Models of Software Development Methods Research Paper, n.d.)
Models of Software Development Methods Research Paper. Retrieved from https://studentshare.org/logic-programming/1557445-system-analysis-and-method-designed-mis-class-report
(Models of Software Development Methods Research Paper)
Models of Software Development Methods Research Paper. https://studentshare.org/logic-programming/1557445-system-analysis-and-method-designed-mis-class-report.
“Models of Software Development Methods Research Paper”, n.d. https://studentshare.org/logic-programming/1557445-system-analysis-and-method-designed-mis-class-report.
  • Cited: 0 times

CHECK THESE SAMPLES OF Models of Software Development Methods

Agile Software Development

This method usually lacks the flexibility that can help in the adjustment of the processes in the course of software development (Kathleen, 2007).... This dissertation "Agile software development" critiques approaches and methods and evaluates them in relation to relevant issues and matters that define each of them.... This will set the parameters for the discussions on stand meetings and scrum meetings in dynamic approaches to software development....
25 Pages (6250 words) Dissertation

Comparison of Software Development Life Cycle Models

The paper "Comparison of software development Life Cycle Models" highlights that spiral project is mainly used in the development of large, complicated and costly projects since it facilitates the project to consider the uppermost dangers and risks at a minimal cost (Maheshwari and Jain, 2012)… Major large companies for internal institutional projects usually use the waterfall model, this is mainly because the developers are familiar with the environment and it is possible to understand clearly all the software requirements....
5 Pages (1250 words) Essay

Software Engineering: Methods & Methodologies

Next section will cover some commonly used software development methods with advantages/ disadvantages, and where it can be used for development of software (or applications).... The Waterfall Model: It is also called as software development Life Cycle (SDLC) or Linear Sequential Model.... The Waterfall model suggests a systematic, sequential approach to software development that begins at the system level and progresses through analysis, design, coding, testing, and support....
9 Pages (2250 words) Essay

The Practicality of Agile Development

It came as a result to the conventional and traditional software development processes and was an effort to improve the ways of software development.... In general, agile means quick and fast, agile development set asides the conventional ways of software development, but still it is not necessary that agile is a solution to all the problems that is being faced by the development team.... It's been more than a decade, since agile development is being used for software development....
8 Pages (2000 words) Essay

Secure Software Development

The paper "Secure software development" discusses that the objective of developing more safe and secure applications and minimizing client pain is why Microsoft has implemented SDL.... This research is aimed to assess and analyze some of the major areas and aspects regarding “Secure software development”.... This research will present some of the major reasons for the security-based issues in the software development process....
9 Pages (2250 words) Annotated Bibliography

Implementing Software Development Project Management Best Practices

The development of software models in the development of various systems has been seen as the new way and method of optimizing the process of software development.... The process modeling is mainly used to enhance the flow of software development work.... software development process may involve a series of activities that range from developing to manipulation of the… stem features and to a farther extent even the procurement of the system hardware plus the training of the administrators whose sole duty is to perform the operations....
4 Pages (1000 words) Assignment

Software Development Life Cycle

In general, the paper "software development Life Cycle " attempts to establish the linkages between Waterfall and Agile, examine the extent to which various departments within a large organization utilized either agile or waterfall, or a combination of both.... If no software development life cycle (SDLC) process is followed, the result will be a calamity.... It discusses the phases of an SDLC, and key differences between two widely used system development methodologies: waterfall and agile....
63 Pages (15750 words) Thesis

Methods and Tools for Software Quality Management

software development is one of the areas that have undergone tremendous growth and revolutions, as many businesses and individuals turn to using software tools to solve their problems.... This paper is a literature review, which discusses the methods and tools for ensuring that quality is achieved in software development.... It focuses on the methods and tools that are important, and always followed in the process of quality software development and management....
18 Pages (4500 words) Assignment
sponsored ads
We use cookies to create the best experience for you. Keep on browsing if you are OK with that, or find out how to manage cookies.
Contact Us