Appian uses and recommends an Agile delivery methodology as it is the best way to ensure speedy delivery of value.
Agile is an umbrella term that describes a growing list of methodologies that all support the same principles and the same goals of speed, quality, adaptability, and transparency.
Since Agile methodologies are based on incremental and iterative delivery, value is delivered throughout the project as opposed to only at the end and project risk is, therefore, reduced as feedback can be gathered and incorporated at every stage.
Agile principles align well with Appian strengths, delivering benefits that include:
In most cases, software development is an empirical process, requiring multiple cycles of testing initial assumptions and designs and then making the necessary adjustments to incorporate feedback and new discovery. In these situations, a traditional waterfall methodology necessitating all requirements be fully and perfectly understood up front, with no way to accommodate change along the way, is a poor fit. On the other hand, Agile is specifically designed to harness change to deliver what the end user truly needs, making it a better fit for delivering results.
Consider two scenarios:
Appian typically kicks off projects with Sprint 0, which is intended to perform quick, collaborative product discovery to understand the project goals and context. By the end of Sprint 0, the team will have created a release plan to provide transparency into release goals and track delivery.
Appian then delivers projects incrementally through a series of short, typically 2 week, product delivery sprints (iterations) which each result in a small piece of tested and working product. These sprints allow teams to decompose the release plan scope into smaller pieces to create solvable problems. The goal is to always keep releases small in order to release frequently and get fast feedback.
Since each delivery sprint results in a piece of working product, within the sprint the team completes all necessary activities. This includes working on any analysis, design, development, testing, and revisions necessary to get the item to "Done". Teams avoid setting up separate sprints, in a waterfall fashion, for each of these stages. Waterfall sprints increase the time it takes to get “Done” work, slow down feedback cycles, and increase risk.
Should look like this:
Not this:
Within each sprint, the delivery team utilizes several key ceremonies to ensure they are continuously improving the product and the delivery process, for example:
For more details on each of these ceremonies, see the Scrum Guide.
Appian carefully chooses and tailors the Agile processes it uses to the specifics of each project to ensure they are in support of the unique situation. The various Agile methodologies utilize a wide array of practices, each of which is in support of a shared Agile principle, but which may be more or less applicable in a given situation. It is, therefore, important to use the Agile principles as the key guidelines while customizing the processes.
"Failure at an organizational level seems to come from the inability to customize processes and make them their own...Rubber-stamping agile processes is not agile. The value of having a principle-based process is that you can apply the principles for an individualized process for your situation and, as an extra bonus, one that has been designed to adapt from your learning as you adopt changes into your organization. It is always "custom.“
-Kent Beck, Creator of Extreme Programming
Websites:
Books: