![]() |
|
|
Most software development is a chaotic activity, often characterized by the phrase "code and fix". The software is written without much of an underlying plan, and the design of the system is cobbled together from many short term decisions. This actually works pretty well as the system is small, but as the system grows it becomes increasingly difficult to add new features to the system. Furthermore bugs become increasingly prevalent and increasingly difficult to fix. A typical sign of such a system is a long test phase after the system is "feature complete". Such a long test phase plays havoc with schedules as testing and debugging is impossible to schedule. Business - List of business/finance/loan/mortgage resources Computers - List of computer hardware/software/peripheral resources Internet - List of webhosting/webdesign/internet marketing resources Software - List of software resources Web Design - List of web design/development resources Web Hosting - List of web hosting resources Web Promotion - List of search engine optimization/internet marketing resources Web Resources - List of other web resources Recreation - List of travel/hotel/cruise resources Casino - List of online gambling/poker/blackjack/roulette resources Health - List of online pharmacy/hospital/health resources Shopping - List of online shopping/gift resources Miscellaneous - List of all other resources not stated above The original movement to try to change this introduced the notion of methodology. These methodologies impose a disciplined process upon software development with the aim of making software development more predictable and more efficient. They do this by developing a detailed process with a strong emphasis on planning inspired by other engineering disciplines - which is why I like to refer to them as engineering methodologies (another widely used term for them is plan-driven methodologies
|