我们通常把软件生命周期全过程中使用的一整套技术方法的集合称为方法学,也称为范型。
软件工程方法学包含3个要素:方法、工具和过程。其中,方法是完成软件开发的各项任务的技术方法,回答“怎样做”的问题。目前使用得最广泛的软件工程方法学分别是传统方法学和面向对象方法学。
传统方法学也成为生命周期方法学或结构化范型。它采用结构化技术(结构化分析、结构化设计和结构化实现)来完成软件开发的各项任务,并使用适当的软件工具或软件工程环境来支持结构化技术的运用。这种方法学把软件生命周期的全过程依次划分为若干个阶段,然后顺序地完成每个阶段的任务。才用这种方法学开发软件的时候,从对问题的抽象逻辑分析开始,一个阶段一个阶段地顺利进行开发。
面向对象方法学把数据和行为看成是同等重要的,它是一种以数据为主线,把数据和对数据的的操作紧密地结合起来的方法。面向对象方法学的出发点和基本原则是尽量模拟人类习惯的思维方式,使开发软件的方法和过程尽可能接近人类认识世界、解决问题的方法和过程,从而使描述的问题空间与实现解法的解空间在结构上尽可能一致。用面向对象方法学开发软件的过程是一个主动地多次反复迭代地演化过程。正确地运用来开发软件,则最终的软件产品由许多较小地、基本上独立地对象组成,每个对象相当于一个微型程序,而且大多数对象都与现实世界中的实体相对于,因此降低了软件产品的复杂性,提高了软件的可理解性,简化了软件的开发和维护工作。
软件工程的方法论对软件开发提供了一个可执行的框架,是几代人通过总结出来的方法论,可以使新手尽可能准确快速的上手软件开发。