Agile
Agile
methodology is an alternative and traditional project management
(waterfall or traditional sequential development), typically use in
software development. It helps teams respond to unpredictability
through incremental and iterative word cadences called “sprint”.
Scrum
Scrum is the most popular way of introducing Agility due to its
simplicity and flexibility. Scrum emphasis empirical feedback, team
self management and striving to build popular tested product
increments withing short iterations. Scrum has three roles. Product
Owner, Team and Scrum Master.
Why Agile?
Agile development
methodology provides opportunities to access the direction of a
project throughout development life cycle. This is achieve through
regular cadences of work called “sprint”, at
the end of which team must present a potentially shippable product
increment. When a team stop and re-evaluates the direction of project
every two weeks, there always time to steer it in another direction.
Development using an agile methodology preserves a product's critical
market relevance and ensures a team's work doesn't wind up on a
shelf, never released.
How it all comes together?
Agile
teams are typically of 3 to 10 members. Projects that require larger
teams are organized using many small teams, primarily segmented by
technology stacks.
There are three phases,
- Estimations and Planning
- Incremental Deployment
- Product Packaging and Delievery
1. Estimations and Planning
a. Mind
maps and user stories: Discussions between the team members and the
client to define what actually need to build.
b. Identify
the Acceptance Criteria: A mutually accepted criteria to deem the
project finished.
c. Estimations
Incubator: Team members along with mentors and architects, go
through the requirements, mind maps, and wire frames to build a work
breakdown structure. All project life cycle elements of every task
are estimated.
d. Sprint
Plan: Development milestones, testing plan and incremental deployment
plans.
e. Release
Schedule: Estimation of timings to release a product.
2. Incremental Development & Deployment
a. A
series of small development iterations are planned where
different tasks are carried out to implement the set of requirements.
b. The
length of the sprint is based on many factors to be assessed by
the team, but typically goes from 2 to 4 weeks.
c. At
the beginning of each Sprint, a brief planning session will take
place in which the backlog items for the sprint are selected an
estimated.
d. The
daily scrum aims at removing risks which impede the progress of the
team in delivering the sprint goals.
e. The
Scrum Master manager acts as a buffer between the team and
risk.
3. Product Packaging & Delivery
Along with all necessary documents and technical demo, product is package and deliver on time.
Useful Tools in Agile Project Management
- Information sharing & Project collaboration: Basecamp and Zoho.
- Version and Source Control: Git and SVN.
- Project Management: MS Project, Redmine, Basecamp and Zoho.
- Issue Tracking: Redmine, Harvest and JIRA.
- Communication: Skype, Video Conferences and GoToMeeting.
No comments:
Post a Comment