Agile Unified Process
   HOME

TheInfoList



OR:

Agile Unified Process (AUP) is a simplified version of the
Rational Unified Process The Rational Unified Process (RUP) is an iterative software development process framework created by the Rational Software Corporation, a division of IBM since 2003. RUP is not a single concrete prescriptive process, but rather an adaptable proce ...
(RUP) developed by
Scott Ambler Scott W. Ambler (born 1966) is a Canadian software engineer, consultant and author. He is an author of books about the Disciplined Agile Delivery toolkit, the Unified process, Agile software development, the Unified Modeling Language, and Capabi ...
. It describes a simple, easy to understand approach to developing business application software using agile techniques and concepts yet still remaining true to the RUP. The AUP applies agile techniques including
test-driven development Test-driven development (TDD) is a software development process relying on software requirements being converted to test cases before software is fully developed, and tracking all software development by repeatedly testing the software against al ...
(TDD), agile modeling (AM), agile change management, and database refactoring to improve productivity. In 2011 the AUP accounted for one percent of all the agile methodologies used.State of Agile Development Survey Results, 2011. VersionOne
/ref> In 2012 the AUP was superseded by
disciplined agile delivery Disciplined agile delivery (DAD) is the software development portion of the Disciplined Agile Toolkit. DAD enables teams to make simplified process decisions around incremental and iterative solution delivery. DAD builds on the many practices esp ...
(DAD). Since then work has ceased on evolving AUP.


Discipline

Unlike the RUP, the AUP has only seven disciplines : # Model. Understand the business of the organization, the problem domain being addressed by the project, and identify a viable solution to address the problem domain. # Implementation. Transform model(s) into executable code and perform a basic level of testing, in particular
unit testing In computer programming, unit testing is a software testing method by which individual units of source code—sets of one or more computer program modules together with associated control data, usage procedures, and operating procedures&md ...
. # Test. Perform an objective evaluation to ensure quality. This includes finding defects, verifying that the system works as designed, and validating that the requirements are met. # Deployment. Plan for the delivery of the system and to execute the plan to make the system available to end users. # Configuration Management. Manage access to project artifacts. This includes not only tracking artifact versions over time but also controlling and managing changes to them. #
Project Management Project management is the process of leading the work of a team to achieve all project goals within the given constraints. This information is usually described in project documentation, created at the beginning of the development process. T ...
. Direct the activities that take place within the project. This includes managing risks, directing people (assigning tasks, tracking progress, etc.), and coordinating with people and systems outside the scope of the project to be sure that it is delivered on time and within budget. # Environment. Support the rest of the effort by ensuring that the proper process, guidance (standards and guidelines), and tools (hardware, software, etc.) are available for the team as needed.


Philosophies

The Agile UP is based on the following philosophies # Your staff know what they're doing. People are not going to read detailed process documentation, but they will want some high-level guidance and/or training from time to time. The AUP product provides links to many of the details, if you are interested, but doesn't force them upon you. # Simplicity. Everything is described concisely using a handful of pages, not thousands of them. # Agility. The Agile UP conforms to the values and principles of the agile software development and th
Agile Alliance
# Focus on high-value activities. The focus is on the activities which actually count, not every possible thing that could happen to you on a project. # Tool independence. You can use any toolset that you want with the Agile UP. The recommendation is that you use the tools which are best suited for the job, which are often simple tools. # You'll want to tailor the AUP to meet your own needs.


Releases

The Agile Unified Process distinguishes between two types of iterations. A development release iteration results in a deployment to the quality-assurance and/or demo area. A production release iteration results in a deployment to the production area. This is a significant refinement to the
Rational Unified Process The Rational Unified Process (RUP) is an iterative software development process framework created by the Rational Software Corporation, a division of IBM since 2003. RUP is not a single concrete prescriptive process, but rather an adaptable proce ...
.


See also

* Enterprise Unified Process *
Unified Process The Unified Software Development Process or Unified Process is an iterative and incremental software development process framework. The best-known and extensively documented refinement of the Unified Process is the Rational Unified Process (R ...


References

{{reflist


External links


AmbySoft Agile Unified Process pageScott Amber's ''Dr Dobbs'' article "Where Did All the Positions Go?"
Agile software development