Vous êtes sur la page 1sur 10

System Development

Models.
Mihir.
Types of Models
• There are two types of models; waterfall and agile.

• Firstly I will be discussing the Agile Development model.


Agile System Model.
• In the agile system, it normally refers to a group of
development processes/ 2 or more stages can be carried
out simultaneously.

• To overcome the drawbacks of the Waterfall model, the


Agile model was created. It was to develop systems faster
and more efficiently.

• A few examples/models of Agile System are: Crystal,


Atern, Scrum
Principles of Agile System
• Establish close contact with the customer during development to
understand a clear understanding of the requirements.

• Improvements are requested to the customer to efficiently run the


program.

• Development team is kept small to maintain face-to-face communication


with the customer and have a collaborative work environment.

• Agile development makes use of Pair Programming, which means two


programmers work at one work-station.

• Frequent deliveries of the sample software are sent to the customer to


question the customer and seek for improvements.
Advantages
• Pair Programming ensures that there is less chance for
errors and there is well written code, compared to one
programmer.

• It reduces the overall time of the project.

• Customer receives a updated version of the software after


each iteration, so it is simple/easy to change.
Disadvantages
• Due to lack of formal documents, it creates confusion with
other programmers leading to mistakes and confusion.

• Later down the line, maintenance may become a problem


as developers are busy on other projects.
Waterfall System Model
Waterfall Model
• Requirement/Analysis- requirements of the system are captured and recorded in a
document.

• System Design- system design is prepared, this helps in specifying hardware and
system requirements for the model.

• Implementation- it is developed in small programmes called units. Each unit is


developed and tested, this is called Unit Testing.

• Integration- all the units are integrated into a system and is tested for any faults or
failures.

• Deployment of the system- after testing, the system is released in the market for
customers to use.

• Maintenance- the client has a few issues, to fix these issues patches are released.
Advantages
• Clearly defined stages.

• Easy to arrange tasks.

• Simple and easy to use and understand.

• Phases are completed one at a time.

• Results are well documented.


Disadvantages.
• High amounts of risk and uncertainty.

• Software is produced at the end of the life cycle.

• Difficult to measure processes within stages.

• Not good for complex and object-orientated project.

Vous aimerez peut-être aussi