Download as pdf or txt
Download as pdf or txt
You are on page 1of 29

Java Institute for Advanced Technology

Object Oriented System Analysis Design


H7DV 04
H7DV 04 / AS / 01
Vimeth Sandisa Deshapriya

200531902888
Colombo

1
System Development
Methodologies

Object Oriented System Analysis and


Designing

2
Introduction to System Development Methodologies

System Development Methodologies allude to organized approaches and structures


used to design, plan, create, carry out, and keep up with data frameworks and
programming arrangements. These strategies give a methodical approach to dealing
with the whole programming improvement lifecycle, guaranteeing that tasks are
finished effectively and productively.

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.

Popular System Development Methodologies include:

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):

RAD is a period-boxed approach that focuses on rapidly creating models to


assemble input and develop the framework. The approach emphasizes component
reusability and user involvement. Projects with clear business goals and tight
schedules can benefit from RAD.

4. Model in Spiral:

Waterfall and iterative development are combined in the Spiral Model. It


underscores risk evaluation and relief all through the advancement interaction. It
comprises of numerous cycles, or twistings, where each cycle includes arranging,
risk investigation, designing, and testing. Continuous improvements and alterations
are made possible by this iterative strategy.

5. The Verification and Validation Model, or V-Model:

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:

DevOps is a social and cooperative methodology that underscores the combination


of improvement and task groups. Its goal is to speed up the process of deploying
code to production. Automation, continuous integration and delivery, and
monitoring are the primary focuses of DevOps practices. The objective is to enhance
teamwork, reduce lead times, and enhance software quality.

7. Lean Development:

The principles of Lean Manufacturing serve as a model for Lean Development,


which aims to reduce waste, increase productivity, and increase value. This
procedure centers around conveying worth to the client by distinguishing and
eliminating unimportant exercises, smoothing out processes, and keeping a
persevering quest for development.
4
Each methodology has advantages and disadvantages, and selecting the best one
depends on a project's particular requirements and constraints. Hybrid approaches
can also be used by organizations to meet their specific requirements by combining
components of various methodologies.

System Development Life Cycle

Information systems and software applications are developed, implemented, and


maintained using the System Development Life Cycle (SDLC), which is a structured
and methodical methodology. The development process is organized into a number
of discrete phases that serve as a roadmap from the beginning to the system's
deployment, maintenance, and eventual retirement. A framework for project
management, teamwork, and quality control is provided by the SDLC.

System Development Life Cycle

• 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

• It has a rigid design and inflexible procedure.

• One phase must be completed before the next phase starts.

• No phase can be repeated.

9
Situations where most appropriate

• Projects that are large, expensive, and complex.

• Project that includes clear objectives and requirements.

• For a project team with inexperienced members.

• Projects with no immediate deadlines.

Situations where least appropriate

• Large and complex projects with requirements that are expected to alter with
time.

• Real-time Systems

• Event - driven systems.

• Landing - edge application.

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

• High amount of risk analysis hence, avoidance of Risk is enhanced.

• Good for large and mission-critical projects.

12
• Strong approval and documentation control.

• Additional functionality can be added at a later date.

13
Weaknesses

• Can be a costly model to use.

• Risk analysis requires highly specific expertise.

• Project’s success is highly dependent on the risk analysis phase.

• Doesn’t work well for smaller projects

14
Situations where most appropriate

• When costs and risk evaluation is important.

• For high-risk projects.

• When users are unsure of their needs.

• When requirements are complex.

• Significant changes are expected.

Situations where least appropriate

• It is not suitable for small projects as it is expensive.

• It is much more complex than other SDLC models. Process is complex.

• Difficulty in time management.

15
Rapid Application Methodology

The rapid application development (RAD) model is a linear sequential software


development process that has much faster development and higher quality results
than those achieved with the traditional software Development Life Cycle. A
complete cycle of Rapid Application Model (RAD) comprises mainly five steps.

• Step 1 : Business Modelling

• Step 2 : Data Modelling

• Step 3 : Process Modelling

• Step 4 : Application Generation

• Step 5 : Testing and Turnover

16
Strength

• Reduced development time.

• Increases reusability of components.

• Quick initial reviews occur.

• Encourages customer feedback.

• Integration from the very beginning solves a lot of integration issues.

17
Weaknesses

Depends on strong team and individual performance for identifying business


requirements.

• Only a system that can be modularized can be built using RAD.

• Requires highly skilled Developers and Designers.

• High dependency on modeling skills.

18
Situations where most appropriate

• Project is of small to medium scale and short duration.

• Project scope is focused such that the business objectives are well defined and
narrow.

Situations where least appropriate

• Application is highly interactive, has a clearly defined user group , and is not
computationally complex.

• Very large, infrastructure projects, particularly large, distributed information


systems such as corporate wide Database.

• Real-time or safety - critical systems.

• Project scope is broad and the business objectives are obscure.

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

• Dynamic system development method (DDSM)

• Feature-driven development (FDD)

• Adaptive software development (ASD)

• The crystal method

• Lean software development (LSD)

• Disciplined Agile (DA)

21
SCRUM process

• 2-week sprints

uninterruptible goal-oriented iteration

Product backlog holds customer-prioritized features, which are


assigned to a sprint backlog

• Daily scrum

15-minute stand-up meeting

Individual progress, obstacles, and intended progress before the next


scrum

22
Things we do in SCRUM

• The project/product is described as a list of features in the backlog.

• The features are described in a team of user stories.

• The scrum team estimates the work associated with each story.

• Features in the backlog are ranked in order of importance.

• Result: a ranked and weighted list of product features, a roadmap.

• 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.

2. The daily scrum standup:

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.

6. Run Build-up Refinement:

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:

Discharge Arranging includes making an undeniable level arrangement for conveying a


particular arrangement of highlights or item increases. The Item Proprietor, partners, and
Improvement Group team up to decide the extent of the delivery, the request for include
conveyance, and the normal course of events for the finish of the task.

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

• “Constant improvement and quality assurance “

• “More flexible to changing needs”

• “Hands-on approach for customers”

• “Faster delivery times on initial value”

• “Increased internal interactions”

26
Weaknesses

• “Lack of long-term planning”

• “No clear picture of costs upfront (difficult planning)”

• “Lack of cross-professionally trained teams available”

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

You might also like