看论文或者书籍的时候经常看到methodology这个词,只知道翻译成方法论,到底什么算是一种方法论确一直没有搞清楚,前段时间看paper的时候看到了Arnon Sturm的一篇文章Evaluation of Agent-Oriented Methodology,里面给出了我想要的答案:一种方法论包括了以下一系列的指导原则和活动：
we refer to a methodology as the entire set of guidelines and activities:
- a full lifecycle process;
- a comprehensive set of concepts and models;
- a full set of techniques (rules,guidelines, heuristics);
- a fully delineated set of deliverables;
- a modeling language; a set of metrics;
- quality assurance;
- coding (and other) standards;
- reuse advice;
- guidelines for project management.
These are each associated with one of four major divisions: concepts and properties, notations and modeling techniques, process, and pragmatics.
Each methodology may have elements that are useful to several stages of the development life cycle. In this paper, the lifecycle stages are defined as follows:
• Requirements’ gathering is the stage of the lifecycle in which the specification(usually in free text) of the necessities from the system, is done.
• Analysis is the stage of the lifecycle that describes the outwardly observable characteristics of the system, e.g., functionality, performance, and capacity.
• Design is the stage of the lifecycle that defines the way in which the system will accomplish its requirements. The models defined in the analysis stage are either refined, or transformed, into design models that depict the logical and the physical nature of the software product.
• Implementation is the stage of the lifecycle that converts the developed design models into software executable within the system environment. This either involves the hand coding of program units, the automated generation of such code, or the assembly of already built and tested reusable code components from an in-house reusability library.
• Testing focuses on ensuring that each deliverable from each stage conforms to, and addresses, the stated user requirements.