Agile Development

Your constantly-updated definition of Agile Development and collection of videos and articles
1,678 shares

What is Agile Development?

Agile development is an iterative software-development methodology which teams use in projects. Self-organized, cross-functional teams frequently analyze circumstances and user needs to adapt projects. Scrum teams constantly improve quality in sprints with short-term deliverables. They show Agile development in action.

Show Hide video transcript
  1. Transcript loading…

“If your goal is to deliver a product that meets a known and unchanging specification, then try a repeatable process. However, if your goal is to deliver a valuable product to a customer within some targeted boundaries, when change and deadlines are significant factors, then reliable Agile processes work better.”

— Jim Highsmith, Software engineer, in his book “Agile Project Management: Creating Innovative Products”

Agile Development—An Antidote to Inflexibility

By the mid-1990s, many software professionals had become frustrated with development processes that micro-managed them and overlooked their needs. Iterative development methods already existed, but these developers needed something more dynamic to help them work. Software was becoming increasingly sophisticated. They wanted more freedom to shape their projects. So, they began to streamline an approach where they could stay flexible and respond to design challenges as these emerged. Appropriately, they called it “Agile”. This was their answer to Waterfall project management—the traditional, linear model where teams follow a rigid path of development throughout the product lifecycle. Around 2000, the software market was transforming from store-bought boxes to downloads. The rules of engagement were likewise changing. In 2001, 17 professionals from backgrounds including adaptive software development and extreme programming met in Utah to determine an alternative approach. This group—the Agile Alliance—wrote the Manifesto for Agile Development. Of its twelve principles, four are at the heart of Agile development. They value:

  • Individuals and interactions over processes and tools;

  • Working software over comprehensive documentation;

  • Customer collaboration over contract negotiation; and

  • Responding to change over following a plan.

Agile development’s authors stated transparency and iteration are essential. Clients should remain closely involved throughout projects which are “alive” with team cooperation. Although the Waterfall approach has positive aspects, teams find themselves restricted because each development stage and its effects flow directly into the next. It’s hard for everyone to keep a clear, day-to-day view of the big picture. Moreover, team members tend to stay siloed and blindly pass deliverables on to other teams (a habit called “throwing over the wall”). By contrast, Agile teams work iteratively and collaboratively to produce the right deliverables. They do so under time-boxed conditions to present these on tight schedules. Teams stay highly focused on delivering short-term, smaller goals (“chunks”) in design sprints that run anywhere from 1–4 weeks. In daily scrum meetings, internal stakeholders account for the previous day’s actions, stay updated about needs and refine plans. When a sprint ends, teams log their progress and review the development process.

Agile Development and User Experience (UX) Design—Take Care with Two Cultures

Development and UX personnel are different in many ways, especially how they picture users’ needs. For an organization to apply Agile development successfully, management must create the right environment so that UX, development and other stakeholders can collaborate openly and have constant dialogue throughout a project. Another vital consideration is how organizations define UX roles—particularly important regarding how much responsibility and influence they expect/allow any UX team members to have in projects. The Nielsen Norman Group has defined four key principles for organizations to get the most from an Agile-UX cultural combination:

  1. Management must understand and support UX work.

  2. UX professionals should show leadership and take time to reach out to colleagues.

  3. Agile workflows must be flexible enough to accommodate the needs of UX personnel.

  4. UX personnel should be part of the product teams, building respect and rapport with developers.

To support UX work, management must provide sufficient resources for UX research. A business analyst or a solution architect who works closely with UX personnel can help translate ideas to developers. Above all, design should lead development in addressing the right issues in sprints. When UX professionals help teams work with the client’s and users’ requirements in mind, everyone can produce the right deliverables.

Learn More about Agile Development

You can learn more about integrating Agile with UX in these courses:

Agile Methods for UX Design.

UX Management Strategy and Tactics.

This is a revealing piece about UX and Agile practices.

See some powerful considerations for Agile development concerning UX.

Here’s an incisive account about the UX-Agile dynamic, showcasing tool use.

Read the Nielsen-Norman Group’s advice on handling Agile with UX.

Questions related to Agile Development

What is scrum in agile?

SCRUM is a framework within agile methodology that organizes work into short, fixed-length iterations called sprints, typically lasting 2-4 weeks. Teams plan, design, develop, test, and review each sprint. Key roles include the Scrum Master, Product Owner, and Development Team. Artifacts like the product backlog, sprint backlog, and events such as daily stand-ups and sprint reviews drive progress. Scrum promotes collaboration, adaptability, and quick feedback.

What is an epic in agile?

In agile methodology, an epic represents significant work that the team breaks down into smaller user stories for better manageability. It encapsulates a considerable enhancement or feature, spanning multiple sprints or releases. Just as Google's design sprint process, highlighted in our video, streamlines the creation of designs, epics help teams categorize and prioritize large-scale activities in agile projects. 

Show Hide video transcript
  1. Transcript loading…

While a design sprint focuses on rapid prototype development, like the "sketch" or "prototype" phases, an epic encompasses broader goals, guiding a team's trajectory over multiple cycles.

What is a sprint in agile?

In agile development, a sprint is a set period during which specific work must be completed and ready for review. Sprints typically last 2 to 4 weeks, allowing teams to break down larger projects into manageable chunks. 

Show Hide video transcript
  1. Transcript loading…

The video highlights the challenges of sprints, ensuring the team finalizes all research and decisions on time. For example, when designing a new feature like a search category screen, decisions on categories must be made promptly to meet the sprint's deadline. This emphasizes the importance of collaborative and cross-functional teams in agile, where designers, engineers, and researchers work closely to make informed, timely decisions and ensure smooth sprint completions. Many organizations overcome these challenges by running user experience sprints ahead of implementation sprints.

What is kanban in agile?

In agile methodology, Kanban is a visual tool that helps teams manage workflow effectively. As described in the video, a Kanban board typically consists of columns representing stages of a task, such as things you're going to do, currently doing, and jobs already done.

Show Hide video transcript
  1. Transcript loading…

This board can be as simple as using Post-it Notes, Blu Tack, or sophisticated digital tools. The fundamental principle is moving tasks from one column to another as they progress. For teams handling multiple projects, Kanban boards may feature swim lanes – vertical divisions that separate different projects, ensuring clarity and organization. Kanban offers a clear snapshot of work statuses, facilitating smoother project management and better team collaboration.

What is a spike in agile?

In agile development, a spike is a time-boxed task to answer a specific question or address uncertainties. It involves research or prototyping to gain the knowledge needed for reducing risks or making informed decisions. Unlike regular user stories that produce shippable product increments, spikes generate knowledge. Once completed, teams can estimate, design, or prioritize better. Typically used in Scrum or Extreme Programming, a spike ensures the team doesn't commit to uncertain tasks, promoting effective planning and higher product quality.

What is a user story in agile?

In Agile development, a user story is a tool used to capture a description of a software feature. In user-centered design user stories are written in collaboration with designers who are familiar with users’ needs. Outside of UCD, they represent the development teams’ best guess. . As highlighted in the video, user stories often follow a format like: "As a [type of user], I want [an action] so that [a benefit/a value]." For instance, "As a job applicant, I want to save my resume information so I don't have to re-enter it every time I apply for a new job." This approach ensures that developers and designers understand the feature's requirements, the desired outcome, and its significance to the user. 

Show Hide video transcript
  1. Transcript loading…

In this Master Class webinar, user-centered design expert and IxDF course editor, William Hudson, will unveil the surprising origins of user stories and how simple changes in their structure can make them much more effective in the form of persona stories.

Show Hide video transcript
  1. Transcript loading…

What is MVP in agile?

In Agile development, an MVP or Minimum Viable Product is a foundational concept aimed at validating a product idea with the least amount of work. As emphasized in the video, the MVP approach, rooted in The Lean Startup methodology, isn't about delivering a stripped-down product version but a functional version designed for learning. 

Show Hide video transcript
  1. Transcript loading…

The primary goal is understanding whether the product addresses a genuine problem for a targeted user group. Contrary to misconceptions, an MVP is a moderate product; it's a tool for gathering insights. By presenting the MVP to a select group of early users, developers can obtain valuable feedback on essential missing elements, often realizing that a more straightforward solution than initially envisioned can adequately meet user needs.

What is Continuous Discovery in agile?

In Agile development, Continuous Discovery is a paradigm shift from the traditional project-based approach, emphasizing the constant infusion of customer input into product decisions. As detailed in the video, instead of setting significant project goals based on early research and then relying on that data throughout, continuous discovery advocates for a relentless focus on gathering customer insights.

Show Hide video transcript
  1. Transcript loading…

The aim is not just to answer big questions, such as "What should we be building?" but also to address the minute details that arise during the development process, like button naming or interface design. The risk of neglecting these details is clear: products might align with a broad user need but fail in execution due to overlooked specifics. By adopting a continuous discovery mindset, teams can ensure that both the overarching concept and the granular elements of a product align with user needs and preferences.

What are the information radiators in agile?

Information radiators are prominent tools in agile environments that "radiate" essential data to the team. Essentially, they are big visible charts or displays that provide real-time insights. As mentioned in the video, information radiators can range from dashboards showcasing company metrics, sales numbers, and critical alerts to design artifacts like journey maps or personas posted on walls. 

Show Hide video transcript
  1. Transcript loading…

They ensure that vital information is consistently accessible to all team members. This concept can be adapted for remote teams with tools like dedicated Slack channels updating specific metrics or Google Analytics dashboards shared with everyone. The main goal is to keep everyone informed and aligned at all times.

When should agile teams make time for innovation?

Agile teams consistently aim for incremental improvements, as highlighted in the video, which discusses the balance between substantial innovative changes and minor adjustments. 

Show Hide video transcript
  1. Transcript loading…

While most adjustments are incremental and designed to refine and enhance existing features, occasionally, deeper insights reveal the need for more significant innovation. For instance, realizing that job applicants lack the necessary skills could lead to introducing training modules – a substantial shift. Such innovations often stem from in-depth research methods like contextual inquiries or diary studies. Therefore, agile teams should prioritize innovation when deep research insights reveal substantial gaps or when there's an opportunity to meet user needs in novel ways. Regularly scheduled retrospectives can be an ideal time to discuss and plan for these innovative endeavors.

Where to learn more about agile?

The Agile Methods for UX Design course on Interaction Design Foundation is an excellent starting point for those eager to dive deep into agile methodologies. This course provides comprehensive insights into agile practices and their application in UX design. Additionally, Interaction Design Foundation offers many articles, such as the one on agile development, which shed light on various facets of the agile approach. By coupling these resources with real

Show Hide video transcript
  1. Transcript loading…

Literature on Agile Development

Here’s the entire UX literature on Agile Development by the Interaction Design Foundation, collated in one place:

Learn more about Agile Development

Take a deep dive into Agile Development with our course Agile Methods for UX Design .

Agile, in one form or another, has taken over the software development world and is poised to move into almost every other industry. The problem is that a lot of teams and organizations that call themselves “agile” don’t seem to have much in common with each other. This can be extremely confusing to a new team member, especially if you’ve previously worked on an “agile” team that had an entirely different definition of “agility”!

Since the release of the Agile Manifesto in 2001, agile methodologies have become almost unrecognizable in many organizations, even as they have become wildly popular. 

To understand the real-world challenges and best practices to work under the constraints of agile teams, we spoke with hundreds of professionals with experience working in agile environments. This research led us to create Agile Methods for UX Design.

In this course, we aim to show you what true agility is and how closely agile methodologies can map to design. You will learn both the theory and the real-world implementation of agile, its different flavors, and how you can work with different versions of agile teams.

You will learn about the key principles of agile, examples of teams that perform all the agile “rituals” but aren’t actually agile, and examples of teams that skip the rituals but actually embody the spirit.

You’ll learn about agile-specific techniques for research and design, such as designing smaller things, practicing continuous discovery, refactoring designs, and iterating.

You will also walk away with practical advice for working better with your team and improving processes at your company so that you can get some of the benefits of real agility.

This course is aimed at people who already know how to design or research (or who want to work with designers and researchers) but who want to learn how to operate better within a specific environment. There are lots of tools designers use within an agile environment that are no different from tools they’d use anywhere else, and we won’t be covering how to use those tools generally, but we will talk about how agile deliverables can differ from those you’d find in a more traditional UX team. 

Your course instructor is product management and user experience design expert, Laura Klein. Laura is the author of Build Better Products and UX for Lean Startups and the co-host of the podcast What is Wrong with UX?

With over 20 years of experience in tech, Laura specializes in helping companies innovate responsibly and improve their product development process, and she especially enjoys working with lean startups and agile development teams.

In this course, you will also hear from industry experts Teresa Torres (Product Discovery Coach at Product Talk), Janna Bastow (CEO and Co-founder of ProdPad) and Adam Thomas (product management strategist and consultant).

All open-source articles on Agile Development

Please check the value and try again.
  • 1
  • 2
  • 1 of 2

Open Access—Link to us!

We believe in Open Access and the democratization of knowledge. Unfortunately, world-class educational materials such as this page are normally hidden behind paywalls or in expensive textbooks.

If you want this to change, , link to us, or join us to help us democratize design knowledge!