Dating modeling software database
When I initially started work on Agile Modeling (AM) I wanted to focus solely on principles and practices for effective modeling but quickly discovered that this scope was not sufficient, that I also needed to consider the issue of how to be effective at the creation and maintenance of documentation too.Some agile models will "evolve" into official system documentation, although the vast majority will not, and therefore it is relevant to discuss how to be agile doing so.
This is different from the concept of a model, which is an abstraction that describes one or more aspects of a problem or a potential solution addressing a problem.Have you ever seen a project team write a comprehensive requirements document, get it signed off by your stakeholders, only to have the developers build something else?Or the team actually builds to spec, only to have your stakeholders say that's not really what they wanted?Or the team delivers late or over budget, even though everything looked good most of the way through the project?Some models will become documents, or be included as a part of them, although many more will simply be discarded once they have fulfilled their purpose.Some models will be used to drive the development of source code, although some models may simply be used to drive the development of other models.
Source code is a sequence of instructions, including the comments describing those instructions, for a computer system.
Although source code is clearly an abstraction, albeit a detailed one, within the scope of AM it will not be considered a model because I want to distinguish between the two concepts.
Furthermore, for the sake of discussion the term documentation includes both documents and comments in source code. The relationship between models, documents, source code, and documentation.
Agile developers recognize that documentation is an intrinsic part of any system, the creation and maintenance of which is a "necessary evil" to some and an enjoyable task for others, an aspect of software development that can be made agile when you choose to do so.
There are several valid reasons to create documentation: This very likely differs from what you are used to doing, which makes sense because I'm talking about how to become more agile in your approach to documentation. My experience is that developers in non-agile environments are often forced to create documentation for less-than-ideal reasons, often based on political reasons and sometimes due to sheer ignorance, and therefore may not have been allowed to be as effective as they possibly can.
Questionable reasons for creating documentation, and how to combat them, include: There is no solid relationship between project success and writing comprehensive documentation, and in fact it is more likely that the more documentation that you write the greater the chance of project failure.