软件工程方法学包含3个要素:方法、工具和过程。其中,方法是完成完成软件开发的各项任务的技术方法,回答“怎么做”的问题;工具是为运用方法而提供的自动的或半自动的软件工程支撑环境;过程是为了获得高质量的软件所需要完成的一系列任务的框架,它规定了完成各项任务的工作步骤。
目前使用最广泛的软件工程方法学,分别是传统方法学和面向对象方法学。
1、传统方法学
传统方法学也称为生命周期方法学或结构化泛型。它采用结构化技术(结构化分析、结构化设计和结构化实现)来完成软件开发的各项任务,并使用适当的软件工具或软件工程环境来支持结构化技术的运用。这种方法学把软件生命周期的全工程依次划分为若干个阶段,然后顺序地完成每个阶段的任务。采用这种方法学开发软件的时候,从问题的抽象逻辑分析开始,一个阶段一个阶段地顺序进行开发。前一个阶段任务的完成是开始进行后一个阶段工作的前提和基础,而后一个阶段任务的完成是使前一阶段提出的解法更进一步具体化,加进了更多的实现细节。每一个阶段的开始和结束都有严格标准,对于任何两个相邻的阶段而言,前一个阶段的结束标准就是后一阶段的开始标准。在每一个阶段结束之前都必须进行严格的技术审查和管理复审,从技术和管理两个方面对这个阶段的开发成果进行检查,通过之后阶段才算结束;如果没通过检查,则必须进行必要的返工,而且返工后还要再经过审查。审查的一条主要标准就是每个阶段都应该交出“最新式的”(即和所开发软件完全一致的)高质量的文档资料,从而保证在软件开发工程结束时有一个完整准确的软件配置交付使用。文档是通信的工具,它们清楚准确地说明了到这个时候为止,关于该项工程已经知道了什么,同时奠定了下一步工作的基础。此外,文档也起备忘录的作用,如果文档不完整,那么一定是某些工作忘记做了,在进入生命周期的下一个阶段之前,必须补足这些遗漏的细节。
把软件生命周期划分为若干个阶段,每个阶段的任务相对独立,而且比较简单,便于不同人员分工协作,从而降低整个软件开发工程的困哪程度;在软件生命周期的每个阶段都采用科学的管理技术和良好的技术方法,而且在每个阶段结束之前都 从技术和管理两个角度进行严格的审查,合格之后才开始下一阶段的工作,这就使软件开发工程的全过程以一种有条不紊的方式进行,保证了软件的质量,特别是提高了软件的可维护性。总之,采用生命周期方法学可以大大提高软件开发的成功率,软件开发的生产率也能明显提高。
目前 ,传统方法学仍然是人们在软件开发时使用得十分广泛的软件工程方法学。这种方法学历史悠久,为广大软件工程师所熟悉,而且在开发某些类型的软件时也比较有效,因此,在相当长一段时期内这种方法学还会有生命力。此外,如果没有完全理解传统方法学,也就不能深入理解这种方法学与面向对象方法学的差别以及面向对象方法学为何优于传统方法学。
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!