OOSAD-Assignment 1 (1) (Repaired)
OOSAD-Assignment 1 (1) (Repaired)
OOSAD-Assignment 1 (1) (Repaired)
200531902888
Colombo
1
System Development
Methodologies
2
Introduction to System Development Methodologies
The decision of an improvement philosophy relies upon different factors like the
undertaking's extension, intricacy, size, course of events, spending plan, and the
association's way of life and prerequisites. From rigorous planning to iterative and
adaptable methods, various methodologies place different emphases on various
aspects of the development process.
1. Model of a Waterfall:
The Cascade model is one of the earliest and most direct systems. It follows a
successive methodology, where each period of the improvement interaction should
be finished prior to continuing on toward the following one. The gathering of
requirements, design, implementation, testing, deployment, and maintenance are
typically included in the phases. When a stage is finished, returning to it is testing.
This strategy suits projects with distinct and stable prerequisites.
2. Agile Methodology:
Coordinated systems, like Scrum and Kanban, center around iterative and gradual
turn of events. Rather than finishing the whole task in one go, Nimble separates it
into more modest augmentations called emphasizes or runs. Cross-practical groups
work together intimately with partners, and necessities are adaptable, taking into
consideration changes and upgrades all through the improvement cycle. Dexterous
advances successive expectations, constant input, and flexibility.
3
3. Rapid Application Development (RAD):
4. Model in Spiral:
The V-Model is an extension of the Waterfall Model that places an emphasis on the
connection that exists between each development stage and the testing phase that
goes along with it. For each improvement stage, a testing stage is arranged,
guaranteeing that every prerequisite is approved and checked prior to moving to
the following stage. This approach improves the dependability and nature of the
product.
6. DevOps:
7. Lean Development:
• Planning
• Analysis
• Design
• Implementation
• Maintenance
5
System Development Methodologies
• Waterfall Methodology
• Spira l Methodology
• Rapid Application Methodology
• Agile Methodology
6
Waterfall Methodology
The waterfall model is a Model that was developed for Software Development.
It is called such because the model develops systematically from one phase to
another in a downward fashion. Like a waterfall.
In waterfall model
• you should complete one phase. before moving on to the next phase.
• You rarely aim to revisit a ‘phase’ once it’s completed that means , you are better
get whatever you’re doing right the first time.
7
But…
This approach is hazardous, often more costly, and generally less affection than the
AGILE approach.
Strength
• Easy to understand easy to use.
• Provides structure to inexperienced staff
• Milestones are well understood.
• Sets requirement stability.
• Good for management control ( plan, staff, track ).
• Works well when quality is more important than cost or schedule.
8
Weaknesses
9
Situations where most appropriate
• Large and complex projects with requirements that are expected to alter with
time.
• Real-time Systems
10
Spiral Methodology
“The spiral model is a systems development lifecycle method used for Risk
management that combines the iterative development process model with
elements of the Waterfall model. The spiral model is used by software engineers
and favored for large, expensive, complicated projects.”
11
“When viewed as a diagram, the spiral model looks like a coil with many loops. The
number of loops varies based on each project and is often designated by the project
manager. Each loop of the spiral is a phase in the software development process.
The most important feature of the model is its ability to manage unknown risks
after the project has commenced;”
Strength
12
• Strong approval and documentation control.
13
Weaknesses
14
Situations where most appropriate
15
Rapid Application Methodology
16
Strength
17
Weaknesses
18
Situations where most appropriate
• Project scope is focused such that the business objectives are well defined and
narrow.
• Application is highly interactive, has a clearly defined user group , and is not
computationally complex.
19
Agile Methodology
Agile is an umbrella term for a set of methods and practices based on the values
and principles expressed in the agile manifesto that is a way of thinking that enables
teams and businesses to innovate, and quickly respond to changing demand, while
mitigating risk.
20
Popular frameworks.
• Scrum
• extreme programming
21
SCRUM process
• 2-week sprints
• Daily scrum
22
Things we do in SCRUM
• The scrum team estimates the work associated with each story.
• Daily scrum meeting to discuss what did you do today? What will you do today?
Any obstacles?
23
SCRUM activities
In order to manage and complete work in brief, iterative cycles known as sprints, Scrum is an
Agile framework used in software development and other projects. The crucial actions that
take place throughout each sprint—known as scrums—ensure efficient communication,
teamwork, and advancement. The primary Scrum actions are listed below:
1. Sprint Planning:
The Scrum team, which consists of the Product Owner, Scrum Master, and Development
Team, holds a Sprint Planning meeting at the start of each sprint. They examine the product
backlog during this meeting and choose the highest-priority user stories or tasks to complete
during the sprint. The sprint goal, which acts as a specific goal for the sprint, is also defined
by the team.
Every day during the sprint, there is a brief and concentrated gathering called the Daily
Standup. The entire development team is involved, and it has a time limit of roughly 15
minutes. Each team member gives a quick report on their work since the last Daily Standup,
their plans for the future, and any obstacles or issues they are currently encountering. The
Daily Standup encourages team cohesion, communication, and transparency.
3. Sprint Review:
To present the work performed during the sprint to stakeholders and the Product Owner,
the Scrum team has a Sprint Review meeting at the conclusion of each sprint. The team
presents the incremental product that might be shipped while looking for input and
approval from stakeholders. The Product Backlog may be revised and reprioritized in light of
your feedback.
4. Sprint Retrospect
The Scrum team holds a Sprint Retrospective meeting after the Sprint Review. The team
reviews the sprint at this meeting and analyzes what worked well, what may be improved,
and any steps they should take to improve their processes and teamwork in the coming
sprint. The Sprint Retrospective promotes team learning and continual progress.
24
5. Item Build-up Refinement (Accumulation Prepping):
Item Build-up Refinement is a continuous movement where the Item Proprietor and the
Improvement Group cooperatively audit and focus on things in the Item Excess. They talk
about the subtleties of impending things, separate them into more modest assignments if
necessary, and guarantee that the build-up things are good to go and prepared for future
runs.
Notwithstanding the Item Build-up Refinement, the Improvement Group may likewise
direct Run Overabundance Refinement. This action includes refining and refreshing the run
accumulation, guaranteeing that the errands are obvious and grasped by the group.
7. Discharge Arranging:
These Scrum exercises give the construction and beat to productive turn of events,
persistent criticism, and consistent improvement inside the Scrum system. By sticking to
these exercises, Scrum groups can actually convey excellent items that address client issues
and adjust to changing necessities all through the task.
25
Strength
26
Weaknesses
27
In conclusion, the effective delivery of information systems and software solutions
depends on a grasp of system development techniques. A systematic framework for
managing the full software development lifecycle, from conception to maintenance,
is provided by these organized approaches. The project requirements, complexity,
timeline, and company culture all affect the methodology that is chosen.
For projects with steady requirements, the waterfall model provides a sequential
process with clearly defined phases. Agile techniques, on the other hand, place a
strong emphasis on adaptability and teamwork, allowing for iterative development
and regular feedback. The goal of rapid application development (RAD) is to deliver
prototypes as soon as possible and to involve users in the development process.
The Spiral Model uses iterative cycles to address risk management, assuring
ongoing improvement.
The V-Model also highlights the connection between the phases of development
and testing, supporting the production of trustworthy and superior software.
Collaboration between the development and operations teams is improved through
DevOps, allowing for quicker and more dependable software delivery. By reducing
waste and optimizing processes, lean development seeks to maximize value.
In the end, no single methodology is appropriate for all projects, thus companies
may choose to use hybrid approaches to meet their particular requirements.
System development approaches can be successfully understood and applied to
increase project success rates, foster teamwork, and guarantee the delivery of high-
quality software solutions that satisfy user needs and company goals.
28
References: -
• https://www.techtarget.com/searchsoftwarequality/definition/spiral-
model - what is spiral methodology
• https://i2a.co.uk/the-strengths-and-weaknesses-of-agile-project-
management/ - strength and weakness in agile method
• https://www.atlassian.com/agile/scrum
• https://www.smartsheet.com/system-development-life-cycle-guide
29