Verified Document

Software Development Methodologies Effective Software Book Report

If the sequence characteristic of the waterfall model implied a difficulty in reverting to phases that had been deemed as completed, with the UML structure, new phases can simply be added into the model and treated in connection to the phases that are actually impacted and to which these new phases relate to. One of the disadvantages of UML is that the entire modeling process is, in fact, just an auxiliary activity of the actual development phase that will eventually create the finite product. In that sense, the development company needs to be a fairly large organization, able to manage the diagrams involved in the modeling process and ensure this activity despite the fact that it only makes a marginal contribution to the final development process.

Another disadvantage is the fact that the semantics used in UML and, from a larger perspective, the necessary language used to connect the different elements in the diagrams, is often limited and either does not reflect all the conditions or it does not convey the actual sense or status that needs to be included in the model. With this fact, confusions may actually arise in the development phase as to what the original sense and connection was meant to be.

Finally, some argue that the XML is too costly, with more resources being needed for training purposes, as well as for the implementation of the system in the company that decides to use such an approach. Other resources have been previously mentioned and include the fact that separate human resources may be needed to manage the diagrams.

SECTION4: Prototyping

With prototyping, the developer provides intermediary products to the user, referred to as prototypes. These intermediary products have some of the characteristics and functionality of the final product, but have not been entirely completed. There are two main advantages that one can identify with prototyping. The first one is the fact that prototyping improves the relationship and communication between the developer and the client and can better involve the client in the different phase of the software development process. This is essential in the second advantage that prototyping provides, ensuring that any changes in the product requirements are introduced at a stage where the implied...

One needs to understand that the prototype that is presented to the client in the development process is, in fact, only an intermediary phase before the completion of the project. Most likely, it needs not only an additional round of testing and the polishing error-fixing code, but rather a complete continuation of the development process, based on the prototype, the initial requirements of the client and the additional ones that may have been introduced after the prototype was presented.
SECTION 5: Conclusion

The three different software development methodologies that have been presented here are constructed taking into consideration the approach towards the final use and his implication in the development process, as well as the way the different phases are implemented in the overall process. Some of the approaches, such as the UML, are more flexible, while others, like the waterfall model, provide a more rigorous approach sustained by the sequential development of the phases. The prototype model is likely to capitalize on the direct implication of the user in the development process and his input at key moments of this process.

Bibliography

1. Royce, Winston (1970). "Managing the Development of Large Software Systems." Proceedings of IEEE WESCON 26 (August): 1 -- 9. On the Internet at http://www.cs.umd.edu/class/spring2003/cmsc838p/Process/waterfall.pdf. Last retrieved on August 16, 2010

2. Parnas, David. A Rational Design Process: How and Why to Fake it.

3. Chonoles, Michael Jesse; James A. Schardt (2003). UML 2 for Dummies. Wiley Publishing

4. Smith, MF. (1991). Software Prototyping: Adoption, Practice and Management. McGraw-Hill, London

Royce, Winston (1970). "Managing the Development of Large Software Systems." Proceedings of IEEE WESCON 26 (August): 1 -- 9. On the Internet at http://www.cs.umd.edu/class/spring2003/cmsc838p/Process/waterfall.pdf. Last retrieved on August 16, 2010

Parnas, David. A Rational Design Process: How and Why to Fake it.

Sources used in this document:
Bibliography

1. Royce, Winston (1970). "Managing the Development of Large Software Systems." Proceedings of IEEE WESCON 26 (August): 1 -- 9. On the Internet at http://www.cs.umd.edu/class/spring2003/cmsc838p/Process/waterfall.pdf. Last retrieved on August 16, 2010

2. Parnas, David. A Rational Design Process: How and Why to Fake it.

3. Chonoles, Michael Jesse; James A. Schardt (2003). UML 2 for Dummies. Wiley Publishing

4. Smith, MF. (1991). Software Prototyping: Adoption, Practice and Management. McGraw-Hill, London
Royce, Winston (1970). "Managing the Development of Large Software Systems." Proceedings of IEEE WESCON 26 (August): 1 -- 9. On the Internet at http://www.cs.umd.edu/class/spring2003/cmsc838p/Process/waterfall.pdf. Last retrieved on August 16, 2010
Cite this Document:
Copy Bibliography Citation

Related Documents

Software Development Life Cycle SDLC
Words: 3695 Length: 12 Document Type: Essay

Software Development Life Cycle ( SDLC) Explain Requirement process ( in SDLC) in detail. Why is this exercise important? Requirements engineering is a fundamental activity in systems development and it is the process by which the requirements for software systems are identified, systematized and implemented and are followed through the complete lifecycle. Traditionally engineers focused on narrow functional requirements. Now it is being argued by Aurum and Wohlin (2005) that focusing only

Software Processing Methodology Understanding the Problem Klyne
Words: 7750 Length: 20 Document Type: Dissertation

Software Processing Methodology Understanding the Problem Klyne Smith, DSE Candidate Dr. Frank Coyle Technical Motivation Research and Contribution Methods Software Processing Methodologies Waterfall Methodology Strengths Weaknesses Opportunity Threats Iterative Methodology Strengths Weaknesses Opportunities Threats Model Methodology Strengths Weaknesses Opportunities Threats Where do we go from here (Spring 2010)? Define measurement data points for Test Case analysis Section IV Creation and Validation of the predictive model Section V Summary Analysis Practical Usage Praxis Conclusion Books Articles / Web Information Software Processing Methodology: Understanding the Problem Section I: Introduction In this work, I examine three different Software Processing Methodologies. I start with the iterative model, followed by the spiral

Software Development Lifecycles Balancing Increasingly Complex Requirements...
Words: 955 Length: 3 Document Type: Essay

Software Development Lifecycles Balancing increasingly complex requirements for new software applications with the constraints of costs, time and resources has made the use of software development lifecycles invaluable. The reliance on software development methodologies is increasing as shortages of programming expertise are leading to many companies relying on virtual project development teams (Batra, Xia, VanderMeer, Dutta, 2010). Virtual teams and the new reality of software development being global in scope

Software Testing Class Identification Date of Submittal
Words: 1736 Length: 6 Document Type: Research Paper

Software Testing Class Identification Date of Submittal Current Trends in Software Testing The continued growth of Cloud Computing, Software-as-a-Service (SaaS) and virtualization technologies in conjunction continual improvement in the automating of the Deming's Plan-Do-Check-Act (PDCA) processes are defining the future of software testing and quality assurance. The most rapidly evolving trends in software testing include the defining of PDCA-based automated testing networks and Testing-as-a-Service predicated Cloud Computing-based platforms (Nakagawa, Ferrari, Sasaki, Maldonado, 2011).

Software Development
Words: 2263 Length: 8 Document Type: Essay

Essay Topic Examples 1. The Evolution of Software Development Methodologies:     This essay could explore the transition from traditional waterfall models to agile methodologies in software development. The focus could be on how these methodologies have influenced project success rates, communication within development teams, and the ability to adapt to changing requirements. 2. The Role of Artificial Intelligence in Software Development:     Consider writing about the growing influence of AI on software development processes. This essay

Software Development Life Cycle
Words: 2835 Length: 10 Document Type: Essay

Software Development Life Cycle Agile Software Development Agile software development is a popular software development process or methodology that has gained a lot of popularity in the recent years due to its effectiveness and ease of use. Firstly, it encourages collaboration and teamwork throughout the life cycle of development and this makes it easy to plan and implement. Agile software development is all about breaking a task into small chunks that make it

Sign Up for Unlimited Study Help

Our semester plans gives you unlimited, unrestricted access to our entire library of resources —writing tools, guides, example essays, tutorials, class notes, and more.

Get Started Now