Please enable JavaScript.
Coggle requires JavaScript to display documents.
Software development process - Coggle Diagram
Software development process
Agile
methodology
Scrum framework
Kanban
DSDM
Crystal
Extreme programming (XP)
feature driven development
Manifesto
Values
Individuals and interactions over processes and tools
Working software over comprehensive documentation
Customer collaboration over contract negotiation
Responding to change over following a plan
Principles
Regular delivery of software
Highest priority is to satisfy the customer through early and continuous delivery of valuable software
Working software is primary measure of progress
Deliver working software frequently, from a couple of weeks to a couple of month, with a preference to shorter time scale
Agile processes promote sustainable development.The sponsors developers and users should be able to maintain a constant pace indefinitely.
Team communication
Business people and developers must work together daily throughout the project
The most efficient and effective method of conveying information to and within development team is face to face conversation
The best architectures, requirements and design emerge from self-organising teams.
Build projects around motivated individuals.Give them the environment and the support they need and trust them to get the job done.
At regular intervals, the team reflects on how to become more effective, then tunes and adjusts its behaviour accordingly
Excellence in design
Continuous attention to technical excellence and good design enhances agility.
Simplicity, the art of maximising the amount of work not done, is essential
Agile process harness the change for the customers competitive advantage
Requirements
epic
feature
user story
characteristics
estimatable
valuable
negotiable
independent
small
testable
qualities
captures complete workflow towards a goal
not deliverable until all stories are complete
can cater to multiple users
Waterfall
pros
Simple and easy to understand
easy to manage
Phases are completed one at a time
works well for smaller projects
clearly defined stages
Well understood milestones
process and documents are well documented
Tasks are easy to arrange for a project manager
cons
no working software until late in the cycle
High amounts of risk and uncertainty
Not good for complex proejcts
Not good where change is expected
Change in scope can end a project
Integration and delivery is done as a Big Bang