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

Application

Development
LESSON [3] –METHODOLOGIES

APPLICATION DEVELOPMENT 1
Learning outcomes - Lesson 1 :
LO1 Produce a Software Design Document by analysing a business-related problem and deduce
an appropriate solution including a set of initial requirements
LO2 Use design and development methodologies with tools and techniques associated with
the creation of a business application.
LO3 Work individually and as part of a team to plan and produce a functional business
application with support documentation
LO4 Evaluate the performance of a business application against its Software Design Document
and initial requirements.

APPLICATION DEVELOPMENT 2
Software Development Methodologies
To manage a project efficiently, the manager or dev team must examine many software
development methodologies to choose the one that will work best for the project at hand.
All methodologies have different strengths and weaknesses and exist for different reasons.
Here’s an overview of the most commonly used software development methodologies and why
different methodologies exist.

APPLICATION DEVELOPMENT 3
1. Waterfall Model:
Considered as the traditional method of explaining the software development process in
software engineering, waterfall model happens to clarify the process into a linear flow with a
specified sequence to let the users understand that further level is made progressive on
completion of the previous one.
Moreover, this methodology also talks about the fact that going back to deal with the changes is
not possible.

APPLICATION DEVELOPMENT 4
APPLICATION DEVELOPMENT 5
2. Prototype Methodology:
What is Software Prototyping?
◦ Prototype is a working model of software with some limited functionality.
◦ The prototype does not always hold the exact logic used in the actual software application and is an extra
effort to be considered under effort estimation.
◦ Prototyping is used to allow the users evaluate developer proposals and try them out before implementation.
◦ It also helps understand the requirements which are user specific and may not have been considered by the
developer during product design.

It is a specialized software development procedure that initiates developers towards making only the
sample of the resolution to validate its functional essence to the customers and make essential
changes before creating the authentic final solution.
In fact, the best part of this methodology is that it tends to resolve a set of diversifying issues
occurring with the waterfall method.

APPLICATION DEVELOPMENT 6
APPLICATION DEVELOPMENT 7
3. Agile Software Development
Methodology:

Agile software development is more than frameworks such as Scrum, Extreme Programming or
Feature-Driven Development (FDD).
Agile software development is more than practices such as pair programming, test-driven
development, stand-ups, planning sessions and sprints.
Agile software development is an umbrella term for a set of frameworks and practices based on
the values and principles expressed in the Manifesto for Agile Software Development.

APPLICATION DEVELOPMENT 8
APPLICATION DEVELOPMENT 9
4. Rapid Application Development:
Rapid application development is a form of Agile software development methodology.
Unlike Waterfall methods, RAD emphasizes working software and user feedback over strict
planning and requirements recording.
Rapid Application Development is a development model prioritizes rapid prototyping and
quick feedback over long drawn out development and testing cycles.
With rapid application development, developers can make multiple iterations and updates
to a software rapidly without needing to start a development schedule from scratch each
time.
RAD is a development model that came into existence once developers realized the
traditional waterfall model of development wasn’t very effective.

APPLICATION DEVELOPMENT 10
APPLICATION DEVELOPMENT 11
5. Spiral Model:
Being a highly sophisticated design, it is meant to reduce the early risks in the project.
As per the process going by, the developers initiate on a smaller level and explore the included
risks in it.
Further to this, the developers are intended towards crafting a plan for iterating of the spiral.
The accomplishment of any Spiral Lifecycle model is based on consistent, observant, and
conversant management of the project.

APPLICATION DEVELOPMENT 12
APPLICATION DEVELOPMENT 13
6. Joint Application Development
Methodology:

The Joint Application Development Methodology is a requirements-classification and user-


interface expansion approach that necessitates for the end-users, clients and developers attend
a powerful off-site conference to accentuate and confirm software system.
This methodology serves towards including the client in the design and expansion of an
application.
This is effortlessly proficient through a sequence of concerted workshops known as JAD
sessions.
It tends to lay emphasis on the business difficulty rather than methodical details.

APPLICATION DEVELOPMENT 14
APPLICATION DEVELOPMENT 15
7. Lean Development Methodology:
As a technical advancement, Lean Development model lays emphasis on the formation of
effortlessly manageable software.
This exquisitely designed development technique is more deliberately engrossed than any other
form of agile methodology.
The objective of this procedure is to improve the software in one-third of the time, with very
restricted budget, and very fewer amount of essential workflow.

APPLICATION DEVELOPMENT 16
APPLICATION DEVELOPMENT 17
8. Scrum Development Methodology
Basically, this excellent development is suitable for those development projects
that are constantly altering or extremely developing requirements.
The Scrum Software development model initiates with an ephemeral planning,
conference and completes with a concluding review.
This growth methodology is used for prompt development of software that
happens to include a series of iterations to generate required software.
It is a perfect approach because it effortlessly brings on track the deliberate
progressing projects.
The best part of this methodology is that the scrum software development team
focuses on the desired outcome or result, rather than providing detailed
descriptions of how things need to be done.
Entry criteria, Task definitions, Validation criteria and Exit criteria (ETVX) are not
discussed during sprint meetings but a set of features that needs to be developed
in the next sprint and the desired result are described.

APPLICATION DEVELOPMENT 18
APPLICATION DEVELOPMENT 19
WHY A SOFTWARE DEVELOPMENT
METHODOLOGY IS IMPORTANT

A software development methodology is similar to a cooking recipe. The same way that a recipe
teaches one how to cook a meal, a software development method teaches how to build a
software product. Methodologies boost efforts to improve the quality of products by enhancing
processes that product the products. A formally defined standard or method is required to
control the development processes.

The different software development methodologies have strengths and weaknesses. The choice
of which method to use really depends on the goals that a business wants to achieve

APPLICATION DEVELOPMENT 20
The END .
APPLICATION DEVELOPMENT 21

You might also like