Agile: Do Fast, Do Together
“We are doing Agile Methodology (Agile) because we only have 6 months to deliver the project”. “We are doing agile because it will be cheaper”. “We are doing agile because my boss says so”.
Using agile seems to be the silver bullet to deliver IT projects. When something promises cheaper, better, and faster, it is probably too good to be true. While agile is a useful methodology that is adopted by many well-known software companies, there are also horror stories of agile projects that went terribly wrong.
So what is agile software development, and why do organisations adopt agile?
What is Agile Methodology
Agile is a software development approach that builds the software incrementally from the start, with small iterations. It results in fast and frequent delivery as compared to the long release cycles of the waterfall method.
The method breaks down the project into bits of user functionalities known as user stories. The user stories are prioritised and continuously developed in an iteration, across a time frame of 2 weeks. Each iteration consists of the planning, designing, building, testing, acceptance and deployment of the user stories.
Agile vs Waterfall
|Development Approach||Iterative – planning, development, prototyping and other software development phases may appear more than once||Sequential – project development phases like designing, development, testing, etc. are done sequentially and completed once|
|Scope||Flexible – allows requirement changes even if the initial planning has been completed||Structured – caters for limited scope change once the project development starts|
|Phases||Short and Incremental – separated into sprints (typically 2 weeks)||Long and Sequential – distinct phases (typically 6 months)|
|Resources||Non-fixed funding, time and resources||Fixed funding and timeline|
|Customer Involvement||Every sprint – responsible for product backlog and prioritisation||During project milestones – responsible for providing requirement and doing user testing|
Why Agile Methodology?
User stories are defined and planned ahead of the project. With each iteration spanning across 2 weeks, it gives a gauge of the project’s progress.
Rapid and frequent delivery
Each iteration spans across 2 weeks. In that 2 weeks, the agile team focuses on the specific user stories, from design to user acceptance and deployment. Beyond a method of deployment, agile builds a culture where the responsibility of deployment is shared amongst the entire cross-function, even when each member is focus on their specific role.
Agile puts the focus on the user stories and prioritises the functionalities that are important to users. It is highly collaborative across cross-functional teams to provide thorough understanding of the requirements.
Considerations for Agile Projects
in Government Sector
- Understand the culture change required in agile development
- Train key personnel for their new role
- Engage cross-department stakeholders to define user stories
- Implement agile development on small-scale projects first
- Ensure that the agile partner understands the current government policies and constraints
Read more about agile projects in the government sector here.