Software Development project on the path to successWednesday, February 15, 2006
Whether Software Development team follows a heavyweight method such as the Enterprise Unified Process or an agile process such as Extreme Programming; unfortunately it is subject to myths and misunderstandings. These arise from many issues, among them the misguided efforts of theoreticians, the decades of cultural entropy within IT departments, the marketing of software development tool organizations, and the modeling and documentation standardization efforts of companies; this modeling is a fundamental component of Software Development.
Modeling Equals Documentation: By providing Offshore developers an excuse to avoid modeling entirely, this is likely to be the most devastating of all modeling myths. Claiming that they don’t want to waste time by writing unwanted documentation, many otherwise excellent Software Development team have become little more than programming hacks, producing brittle and low quality systems. Furthermore, even many conscientious vendors now consider modeling a bore, and avoid the learning process of necessary modeling skills.
Reality Check: The concepts of document and model are orthogonal; it can have documents that aren’t models and models that aren’t documents. Though there are questionable documents for valuable models.
Software Development team will discover that there are few models that actually need to keep and that is perfectly fine. It’s a lot like planning just as the value is in the planning effort and not the plan itself, most of the value lies in the act of modeling; not the model itself. In practice, your models aren’t part of your system’s official documentation and can be discarded once they’ve fulfilled their purpose.
Thinking from the start of Software Development: Today’s managers learned Software Development process and believe that by often investing significant time trying to model everything up front in an effort to make it right. While attempting to freeze certain requirements before coding begins the fear of moving forward until the models are perfect. Project teams suffering from the myth, often produce significant amounts of documentation instead of how their users actually want working on Software Development that meets their needs.
Primary thing is that recognize it, that can’t think through all the minutiae. Secondly, recognizing these environments, Company’s coders probably have little respect for the efforts of the modelers. The third important thing tells us that while recognizing, no matter how good vendors initial specification is, it would be destined to quickly become out of sync with the code and with itself, even if it develop the models over time. The fundamental reality is that the norm for Software Development by principle of modern heavyweight software processes such as the enterprise unified process, as well as agile processes like extreme programming.