Tuesday 12 January 2016

Software Development


The Waterfall Cycle

T- Technical
E- Economic, whether or not the product will fit into the price range of the company.
L- Law, these are implements set in place which need to be obliged with.
O-Operational, this is how the system works and whether it is reliable when it runs, you need it to run multiple times.
S-Schedule, The amount of time that you have to design and produce the product, for example landing on mars and having a 30 years time frame.

Analysis:
The result of this is a requirement specification and a user requirement doc.

Testing:
How and when you are going to test it and what the results are.

Installation:
This is detailing how it can be installed.
Can cover hardware and software

Evaluation:
Reflecting on the project, what went well and what didn't go as well.

Maintenance:
Is creating updates and fixing broken hardware.
These maintenance changes may take years.

Disadvantages of the Waterfall Model:
  • Once in the testing stage it is very hard to go back this can be very expensive if you want to go back and make changes
  • It isn't a very suitable model for large ongoing projects.
  • It is a risky system
  • The installation phase may not work therefore this is very costly.
  • You cannot do two stages in the cycle at once, the processes move linear through stage by stage this isn't useful as there is no feedback loop so minor errors aren't easily spotted.
Alternative models to the Waterfall Cycle:

Spiral Model:
  • In this model there is a constant cycle of planning and analysing, there are shorter iterations in each of the loops.
  • There is no defined starting point therefore you can easily move between stages in the model, you can feedback between the stages.
  • You do each stage more than once to return working software.

The Rapid Application Development:
  • There is a prototype created (Which is an example model, in a smaller scale)
  • with this prototype many tasks will be taken to test the demand for the product, to see whether clients like the idea or not, also you can test how well the prototype will work.
  • The prototype will be developed and tested and then showed to the customer who will decide whether it is appropriate for their needs, this is good as the customer is allowed to see the product quickly.
Extreme Programming:
  • This type of programming in carried out with pairs working on each part of the task.
  • You pre plan the tests and determined the results before you actually run the testing stage in the cycle.
  • There is continue integration, meaning continuously updating the code and adding new parts.
Agile Methodologies :
  • Sprint - This task takes no more than 2 weeks, the task in divided into a series of sections to be carried out.
  • Scrum - There are small teams of 7 people no more, and within the team there are defined roles and each day they come together for a stand up meeting and they only talk about 3 things;
    • what they did yesterday.
    • what they are going to do today.
    • Any issues that they have.
  • The client can see the product in small releases after a few tasks are completed to make any necessary changes as soon as they are required.
  • There is feedback between the stages.

Games that will be playable on phones and applications will be RAD
Fitness trackers could be spiral or waterfall as they needed to be tested after each stage of programming as well as not being produced with any risks they need to be able to be tested and given feedback from clients.


No comments:

Post a Comment