Unit35: planning the development of a
software solution in engineering
Introduction:
This report will explore different methodologies and roles adopted in typical software development projects.
The methodologies under consideration include the Waterfall model, Rapid Application Development (RAD), and
Agile methodology. The main goal is to assess and determine the most suitable methodology for web portal
development. Additionally, an evaluation will be conducted to identify the best methodology for the Internal
Financial Management Software companies.
In a business context, methodologies represent the structured capabilities of a company to achieve its
objectives. Their primary purpose is to ensure consistency in management functions, paving the way for
business success. These methods empower the company to make informed decisions in various situations,
aligning with the overarching business goals.
Implementing specific business methodologies eliminates unnecessary actions, minimizing time wastage and
ensuring consistent reporting and analysis. This approach enhances the likelihood of success in achieving
business objectives.
For successful software development projects, having a well-defined methodology is crucial. It establishes a solid
foundation for the company, enabling the incorporation of best management practices into the working
business environment.
Waterfall Method:
The Waterfall methodology, also known as the Waterfall model, is a
sequential development process that flows through all project phases
like a waterfall, including analysis, design, development, and testing.
Each phase concludes entirely before the subsequent phase
commences.
Figure 1 steps of waterfall source {Agile vs.
Waterfall: Understanding their Unique
Differences - Tactec Strategic Solutions Inc.)
,Figure 2 Phases in waterfall project management (https://kissflow.com/project/project-management-methodologies-and-frameworks/}
Advantages of Waterfall Methodology:
The waterfall methodology offers a significant advantage through its comprehensive documentation at each
stage, systematically laying out everything to facilitate understanding and assessment of the management
approach. This clarity minimizes the risk of knowledge loss and proves beneficial for clients by establishing clear
expectations, enabling them to visualize goals with minimal input.
Limitations of Waterfall Methodology:
Despite its merits, the waterfall method has drawbacks. Implementing changes is expensive and challenging,
given the sequential nature of each step. Altering any part of the process, starting from the original
requirements, necessitates redoing the entire method. Furthermore, there is a notable risk of deadline creeping
due to its sequential problem-solving approach, making it difficult to foresee and prevent potential issues.
Waterfall Methodology is Better Suited for Projects:
1. Requirements: Analyzing and documenting business needs and project requirements.
2. Design: Creating a detailed plan to achieve business and project goals.
3. Implement: Executing the project plan and establishing baselines for progress measurement.
4. Control (Verification): Comparing project performance with plans and addressing arising problems.
5. Closure (Maintenance):Sharing project accomplishments, obtaining final approval, and closing the project.
The waterfall methodology is well-suited for projects where budget, requirements, and scope are clearly defined
by the client. The method aligns with processes influenced by these factors, impacting the entire process and
potentially affecting deadlines. It excels in situations where uncertainty is minimized, and risk is not a primary
consideration.
, The direct approach of the waterfall methodology is less compatible with iterative processes, making it more
suitable for time-conscious projects with accurate work estimates.
Waterfall Methodology is Not Suited for Projects:
The waterfall approach is ineffective when there is ambiguity regarding requirements or the desired end
product. It relies on a structured framework, and if there is rapid change in requirements or industry standards,
or if user feedback needs to be incorporated later in the project, this methodology becomes challenging. It is not
suitable for projects where a working prototype is needed upfront, as feedback is only received at the
conclusion of the process.
Advantages of the Waterfall Model:
1. adapts to Shifting Teams:
Using the waterfall method allows the project to maintain a detailed scope and design structure, making it
well-suited for large teams with changing members.
2. Forces Structured Organization:
While some may view it as a burden, the waterfall model enforces discipline in design and structure, ensuring
detailed procedures for every aspect of the project.
3. Allows for Early Design Changes:
The waterfall approach supports early alterations in the specification documents during the initial stages,
facilitating changes with minimal effort before coding or implementation.
4. Suited for Milestone-Focused Development:
The linear structure of a waterfall project makes it ideal for milestone- and date-focused development. Clear
stages allow for the development of a timeline with well-understood markers and milestones.
Disadvantages of the Waterfall Model:
1. Nonadaptive Design Constraints:
The waterfall model lacks adaptability across all stages of the development life cycle, posing challenges when a
flaw is identified late in the process, potentially impacting the entire system.
2. Ignores Mid-Process User/Client Feedback:
Due to the strict step-by-step process, late-stage user or client feedback can be challenging to address without
significant cost and time implications for both the development team and the client.