Loading presentation...

Present Remotely

Send the link below via email or IM

Copy

Present to your audience

Start remote presentation

  • Invited audience members will follow you as you navigate and present
  • People invited to a presentation do not need a Prezi account
  • This link expires 10 minutes after you close the presentation
  • A maximum of 30 users can follow your presentation
  • Learn more about this feature in our knowledge base article

Do you really want to delete this prezi?

Neither you, nor the coeditors you shared it with will be able to recover it again.

DeleteCancel

Make your likes visible on Facebook?

Connect your Facebook account to Prezi and let your likes appear on your timeline.
You can change this under Settings & Account at any time.

No, thanks

Agile Software Development

No description
by

Justin Smith

on 18 February 2014

Comments (0)

Please log in to add your comment.

Report abuse

Transcript of Agile Software Development

Agile Development Values
Highest priority is requirements/working software
Predecessors
Martin Fowler
Agile Development Values
Individuals and interactions over processes and tools
Agile Development Values
Customer Collaboration over Contract Negotiation
Agile Development Values
Responding to Change over Following a Plan
Advantages
Customers are generally more satisfied (ex: more/better communication, can change requirements/contracts halfway through)
Agile Software Development
Along with more than 15 co-authors, he created the Manifesto for Agile Software Development
This manifesto was created in February 2001
Focuses on teamwork and fast and efficient communication between team members
Development team have a more personal ownership of the project
This leads to better job satisfaction
Open for new ideas/innovations
Working Software over Comprehensive Documentation
Does not believe in large amounts of documentation
Simplifies paperwork
Customer can change contract/requirements halfway through or even at the end of the project
Handles change very well
Creates a better relationship with the customer
Focuses on responding fast to changes
Does not enjoy pinning down changes/following a plan step by step
This makes this method very flexible in that changes are easy to incorporate
By being able to implement changes so easily it enhances the overall project
Agile Development
Software is developed in fast cycles
These cycles are released then the next cycle builds on the other
Then cycles are tested
Working software is produced quickly
Adapts quickly and effectively to changes
Commonly known (60-80% of software development teams use agile method based on a 2012 statistic)
Typically lower cost and faster method compared to others (specifically waterfall method)
Disadvantages
Lack of project design and documentation
When customer is not clear on what specific requirements he/she wants done, the project can be taken "off track"
Requires some experience to make decisions during the development process
Overall
Agile method focuses on the customer(s), change(s) and teamwork
Popular method for a reason: it works efficiently (cost and time)
An excellent method to chose
Advantages outweigh the disadvantages
Sources:
http://www.dummies.com/how-to/content/applying-agile-management-value-1-individuals-and-.html
http://en.wikipedia.org/wiki/Agile_software_development
http://agilemanifesto.org/
http://istqbexamcertification.com/what-is-agile-model-advantages-disadvantages-and-when-to-use-it/
http://articles.economictimes.indiatimes.com/2012-08-06/news/33065621_1_thoughtworks-software-development-iterative
http://www.dummies.com/how-to/content/how-to-plan-an-agile-sprint-meeting.html
http://www.codeproject.com/Articles/674450/Agile-software-development-steps-to-work-with-Requ
Thanks for watching!
Real life Application
Must use the agile methodology to create an online music store
Must use the steps used in an agile method software development
Online Music Store
First Steps
Meet
in person
with the customer and discuss requirements (what features the customer wants the program to do)
Start off with a good relationship with the customer (you will need to meet with them a lot so get on good terms)
Next Steps
Set up a sprint planning meeting (a brief meeting because using agile method does not require much planning)
Sprint Planning:
Make a sprint goal
Priority features are discussed
Daily Requirements
Have "scrum meetings" everyday
Scrum Meeting: Short meeting where people discuss what they worked on the previous day, what they are going to work on today, etc
This is to get every team member on the same page
This is also used to talk about potential roadblocks (any problems or risks)
Finish that sprint goal within 1-4 weeks
Sprint Goal: A sprint goal is a certain function that you want your program to do (ie: setup search function for music)
Repeat this process with another function/sprint goal when the last is finished
hi mo
Test this function briefly to ensure it is working
Do not pair me up with Mohammad Islam
Music Store
First sprint goal that is assigned is most important
For the music store the first steps are debatable, because there are many key components
Let's pick setting up a place to store all of the music files
Finish this goal, then validate (test it)
Pick the next most important goal (possibly setting up a user face), and repeat this process until completed project
Customer
At the end of each sprint goal you check back with the customer and show them the progress
Be open to any changes or any other requirements requested by the customer
The high priority requirements are completed first to show the customer that they can trust the team and their investments and then further invest if necessary
Thanks again


Sorry for that Mr.Emmell... but it was necessary
Full transcript