软件工程之工具 2010-9-9

本文介绍了软件工程中的两类主要工具——分析工具和CASE工具。分析工具包括逐步求精法、成本-效益分析法和软件度量等;CASE工具则分为面向过程和面向对象方法,涉及DFD、ER图、数据字典及UML等。

软件工程工具包括两种:

  • 分析工具
  • 软件工具(CASE)

分析工具主要有:

  1. 逐步求精法:尽可能将细节的定义推迟到最后,一遍集中精力在重要的事项上。软件工程师集中精力与当前开发任务的相关方面,并忽略一些细节,尽管这些细节在总体方案中是必要的,在此时也并不考虑,而是放到以后再考虑。
  2. 成本-效益分析法:对比估计的未来收益和预测的未来成本。这是确定客户是否应该进行业务计算机化的基本技术,以及如果确定了需要计算机化,该以何种方式来进行来实现收益的最大化。
  3. 软件度量:度量是软件开发过程中某一指标以及这一指标的内在意义。如代码行,度量产品规模;每千行代码检测出的错误数,度量软件质量。度量可以分类为:
  •  
    • 产品度量:测量产品本身的特性,如规模和可靠性
    • 过程度量:瑞段有关软件开发过程的信息,如开发过程中错误检测的有效性,即开发过程中检测到的错误数量和产品整个生命周期期间检测到的错误数量之比。

CASE可以分为高端CASE和低端CASE,前者主要是帮助软件工程中较早的工作流,如需求流、分析流和设计流。后着是帮助实现流、维护等工具。CASE随着方法的不同而有不同,这里根据两种重要的软件工程方法来分别介绍CASE。

 

面向过程方法的工具:

  1. DFD(数据流程图)是一种能全面地描述信息系统逻辑模型的主要工具,它可以用少数几种符号综合地反映出信息在系统中的流动、处理和存储情况。这个图用来描述数据在系统中的流动,从数据输入,到分析,最后到输出,以及其中每一个环节数据在不同程序片段中的流动。清晰的描述系统中数据的状态。
  2. ER(实体关系图)是用于数据库设计中的描述数据的图。用实体来描述现实生活中的事务,用关系来描述事务之间的关系,并且由基本数据类型及参考等方式来进行数据库实现,最终完成对关系型数据库的设计。
  3. DD(数据字典)是系统中各类数据描述的集合,是进行详细的数据收集和数据分析所获得的主要成果。通常包括:数据项、数据结构、数据流、数据存储和处理过程五个部分。

以上三个工具均为设计环节所要得出的设计图,将为编码做直接指导。

以上图均可以使用MS Visio等工具来进行实现。

 

面向对象方法的工具:

面向对象的方法经历了长时间的改进和实践后,形成了一系列理论,其中最广为接受的也最优秀的的工具便是UML,由三位大师级人物创建。UML内容包括五类图:

  1. 用例图:用户描述需求,将用户加入到描述中来,已描述整个系统的功能。
  2. 静态图:包括类图、对象图和包图。分别描述系统中类、对象和包的静态结构,以完成系统的静态设计
  3. 行为图:描述系统的动态模型和组成对象间的交互关系,包括状态图,描述类的状态改变,和活动图,描述满足用例要求的活动。
  4. 交互图:描述对象间的交互关系,顺序图显示对象的动态合作关系,强调时间和顺序,和作图描述对象间的协作关系,强调上下级关系
  5. 实现图:其中构件图描述代码部件的物理结构及各个部件之间的依赖关系。部件图分析和理解部件之间的相互影响。配置图定义软硬件的物理体系结构。

UML贯穿了整个面向对象软件工程,从应用的角度看,当采用面向对象技术设计系统时,首先是描述需求;其次根据需求建立系统的静态模型,以构造系统的结构;第三步是描述系统的行为。其中在第一步与第二步中所建立的模型都是静态的,包括用例图、类图(包含包)、对象图、组件图和配置图等五个图形,是标准建模语言UML的静态建模机制。其中第三步中所建立的模型或者可以执行,或者表示执行时的时序状态或交互关系。它包括状态图、活动图、顺序图和合作图等四个图形,是标准建模语言UML的动态建模机制。因此,标准建模语言UML的主要内容也可以归纳为静态建模机制和动态建模机制两大类。

UML在计算机中可以通过Rational Rose,StarUML等软件来进行实现。

    评论
    添加红包

    请填写红包祝福语或标题

    红包个数最小为10个

    红包金额最低5元

    当前余额3.43前往充值 >
    需支付:10.00
    成就一亿技术人!
    领取后你会自动成为博主和红包主的粉丝 规则
    hope_wisdom
    发出的红包
    实付
    使用余额支付
    点击重新获取
    扫码支付
    钱包余额 0

    抵扣说明:

    1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
    2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

    余额充值