Content deleted Content added
No edit summary |
|||
Line 1:
'''Agile Design''' (AM) is a methodology for [[Software development process models|modeling]] and [[documentation|documenting]] software systems based on best practices. It is a collection of values and principles, that can be applied on an (agile) software development project. This methodology is more flexible than traditional modeling methods, making it a better fit in a fast changing environment.<ref>[http://www.agilemodeling.com/ Agile modeling (AM) home page, effective practices for modeling and documentation]</ref> It is part of the [[agile software development]] tool kit.
Agile modeling is a supplement to other [[agile development]] methodologies such as [[Scrum (development)|Scrum]], [[extreme programming]] (XP), and [[Rational Unified Process]] (RUP). It is explicitly included as part of the [[disciplined agile delivery]] (DAD) framework. As per 2011 stats, agile modeling accounted for 1% of all agile software development.<ref>[http://www.versionone.com/state_of_agile_development_survey/2011/ State of Agile Development Survey Results, 2011]</ref>
==Core practices==
There are several core practices:
===
# Document continuously. Documentation is made throughout the life-cycle, in parallel to the creation of the rest of the solution.
# Document late. Documentation is made as late as possible, avoiding speculative ideas that are likely to change in favor of stable information.
# Executable specifications. Requirements are specified in the form of executable "customer tests", instead of non-executable "static" documentation.
# Single-source information. Information (models, documentation, software), is stored in one place and one place only, to prevent questions about what the "correct" version / information is.
===Modeling===
# Active stakeholder participation. Stakeholders of the solution/software being modelled should be actively involved with doing so. This is an extension of the on-site customer practice from [[Extreme Programming]].
|