APP下载

浅谈软件工程和CASE工具的运用

2012-01-27刘伟朱晓非聂亚平

中国科技信息 2012年14期
关键词:配置管理徐州工具

刘伟 朱晓非 聂亚平

1.徐州医学院医学信息学院,江苏 徐州 221000

2.中国电信公司徐州分公司,江苏 徐州 221000

浅谈软件工程和CASE工具的运用

刘伟1朱晓非2聂亚平1

1.徐州医学院医学信息学院,江苏 徐州 221000

2.中国电信公司徐州分公司,江苏 徐州 221000

随着计算机技术的发展,软件的开发越来越复杂,为了能够提高软件的质量和生产效率,提出了软件工程的概念,采用工程的概念、原理、技术和方法来进行软件的开发和维护,最终实现软件的工业化生产,在这个过程计算机辅助软件工程(CASE)的工具起到了重要的作用,文中介绍了常用的CASE工具和特点。

软件工程;CASE

软件是人类智慧的结晶,催化着人类社会从工业社会到信息社会的巨大变革,不管是生物工程、现代通信还是商务处理、工业控制方面,软件都发挥着巨大的作用,可以说软件对整个社会的经济和文化都产生了深远的影响。在计算机诞生的初期,计算机软件仅是计算机硬件的附属品,而随着计算机技术的不断发展,软件在整个信息系统的成本中比重也越来越高,有的软件甚至需要几百甚至上千人经过几年的团结协作才能够完成。这些使得软件的开发越来越复杂,怎么能让软件项目成功的实现目标,控制好开发成本,保证好交付时间和产品性能就成了我们所必须面对的问题,也就是软件工程产生发展的原因所在。而随着软件工程的产生和发展,一大批工具应运而生在软件的开发、维护、管理过程中都起到了重要的辅助的作用,这就是CASE(计算机辅助软件工程,Computer Aided Software Engineering)工具。这些工具有进行分析设计的,有进行测试的,还有进行配置和项目管理的,下面我们分别进行介绍。

1 CASE中的分析设计工具

在分析设计阶段,我们要着手分析、整理和提炼所收集到的客户需求,建立完整的需求分析模型,编写软件需求规格说明,理出软件必须满足的所有约束条件并定义软件的输入和输出接口。

1.1 Rational Rose

Rational Rose 是用来分析与设计面向对象软件系统的强大工具,也是当前最流行的可视化软件开发工具之一。它包括了统一建模语言(UML,unified modeling language),面向对象的软件工程(O O S E,O b j e c toriented software engineering),以及对象建模技术(OMT,Object Modeling Technology)。因为Rational公司的Grady Booch、Ivar Jacobson、和Jim Rumbaugh三位专家就是统一建模语言(UML)的创造人,所以Rational Rose在可视化建模软件方面有着坚实的理论基础。Rational Rose 功能非常全面,它既能满足对Visual Studio、C++的建模需求,也能给Web开发等方面的建模提供解决方案。Rational Rose 允许软件开发中各个层次的人员在软件开发周期内直接将需求和系统的体系架构转换成代码,这样减少了大量的时间和精力的浪费。

1.2 Together

Together是Borland公司的一款产品,它源于Jbuilder中的UML建模工具,集成了JavaIDE。这是一款优秀的建模工具,可以支持多种语言。在开发团队的开发过程中,Together允许成员在他们所熟悉的开发环境中工作。Borland Together版本与下列平台进行了集成:Borland JBuilder, Eclipse,SAP Netweaver Studio, Microsoft Visual Studio.NET以及Borland C++BuilderX。Together能够支持所有主要的UML图表,可以自动进行模型的同步,支持业界标准的模式。Together还使用度量为开发团队提供衡量软件项目复杂程度、质量与规模的能力。通过度量与比对,管理人员能够知晓开发团队与开发过程的质量与效率,更好地针对当前与未来的项目进行量化。

1.3 Enterprise Architect

Enterprise Architect是一个全功能Visual CASE工具,它主要用于设计、编写、构建并管理以目标为导向的软件系统。它覆盖了系统开发的整个周期,除了开发类模型之外,还包括事务进程分析,使用案例需求,动态模型,组件和布局,系统管理,非功能需求,用户界面设计,测试和维护等,所以Enterprise Architect能够为整个开发团队工作,包括分析人员、测试人员、项目经理、品质控制和部署人员等。Enterprise Architect基于多用户的Windows平台,所以还可以方便灵活的输出高品质的文档,方便用户和MS Word配合工作。

2 CASE中的测试工具

软件的测试是采用从无限执行域中适当挑选的有限测试用例集,对照预期指定的行为动态验证程序实际行为的过程,包括基本概念、测试级别、测试技术、测试相关度量和测试过程管理。

2.1 Junit

Junit是一个开放源代码的Java测试框架,由肯特·贝克和Erich Gamma建立,逐渐成为了源于Kent Beck的sUnit的xUnit家族中为最成功的一个,用于编写和运行可重复的单元测试。它是在极限编程和重构(refactor)中被极力推荐使用的工具,因为在实现自动单元测试的情况下可以大大的提高开发的效率。Junit有以下几个好处:使测试代码和产品代码分开;针对某一个类的测试代码通过较少的改动便可以应用与另一个类的测试;易于集成到测试人员的构建过程中,Junit和Ant的结合可以实施增量开发;Junit是公开源代码的软件,可以进行二次开发。

2.2 Robot

Rational Robot可以对使用各种集成开发环境(IDE)和语言建立的软件以用程序,创建、修改并执行自动化的功能测试、分布式功能测试、回归测试和集成测试。Rational Robot 是IBM Rational 的产品之一,可以使用一种以上的 IDE 和(或)编程语言开发应用程序。它使新测试人员轻松进入自动化,甚至可以在测试人员学习高级脚本技术之前帮助其进行成功的测试。Rational Robot 可以自动记录所有测试结果,并在测试日志查看器中对这些结果进行颜色编码,以便进行快速可视分析。

2.3 LoadRunner

LoadRunner是Mercury Interactive公司的产品,它是一种测试系统行为和性能的负载测试工具,它通过以模拟上千万用户实施并发负载及实时性能监测的方式来确认和查找问题。LoadRunner的测试对象是整个企业的系统,能支持广泛的协议和技术。它先记录下业务流程,然后将业务流程转化为测试脚本。通过建立虚拟用户,在Windows ,UNIX 或Linux 机器上可以同时产生成千上万个用户访问。使用LoadRunner能极大的减少负载测试所需的硬件和人力资源。

3 CASE中的配置管理工具

软件配置管理是在明确的时间点上确定系统的配置,从而保证在整个系统生命周期中系统地控制配置的变化并维护配置的完整性和可跟踪性。

3.1 VSS

VSS即Visual SourceSafe是微软公司为VisualStudio配套开发的一个小型的配置管理工具。作为 Microsoft Visual Studio 的一名成员,它主要任务就是负责项目文件的管理,几乎可以适用任何软件项目。它通过提供一套完善的版本和配置管理功能,以及安全保护和跟踪检查功能进行源代码的控制。各种文档包括文本文件、图像文件、二进制文件以及声音、视频文件等都可以存入数据库进行管理,根据需要可以随时快速有效的取出来共享,文件的每次改动都会被记录下来,可以随时恢复早期的版本。

3.2 ClearCase

ClearCase是IBM Rational系列中的一员,是目前应用最广的企业级、跨平台配置管理工具之一,它实现了综合软件配置管理,包括版本控制、工作空间管理、过程控制和建立管理。作用上ClearCase和VSS,CVS类似,但是功能上ClearCase要强大的多,而且可以与WINDOWS资源管理器集成使用,还可以与很多开发工具集成在一起使用。不足的地方是ClearCase对配置管理员的要求比较高,产品的价格成本也较高。

3.3 CVS

CVS是开放源代码的一款产品,具有简单易用、功能强大且跨平台、支持并发版本控制等优点,所以在全球的很多中小型的企业都采用它作为配置管理工具。

4 CASE中的项目管理工具

软件的项目管理主要包括项目启动和范围定义、计划的制订、规定的建立、项目评审和评价、项目收尾等。

4.1 MS Project

MS Project是国际流行的项目管理软件,适用于国民经济的各个领域,里面凝集了许多成熟的项目管理现代理论和方法。它提供了强大的功能和更直观的界面来简化规划、协作和资源管理,以便成功处理各种项目。通过MS Project,个人、团队和企业可通过添加 MS Project Server来实现统一的项目和资产组合管理,确保组织选择和交付正确的项目,同时还可使组织更深入地了解和控制资源,从而帮助组织提高运营效率和经营绩效。

4.2 RUP

Rational RUP可以控制项目生命周期的迭代和增加,它为项目的执行提供了必需的细节:包括指南、模板以及辅助工具。它是最佳软件开发经验的总结,包括了软件开发中的六大经验:迭代式开发;管理需求;使用基于组件的软件体系结构;可视化建模;验证软件质量;控制软件变更。由于UML和RUP都是Rational公司的研究成果,两者有天然的联系。所以RUP的文档里面充满了UML模型,需求建模、分析与设计、实现、测试等阶段的角色的主要工作都是用UML来描述的。

5 结语

随着软件技术的发展,一大批计算机辅助软件工程工具应运而生,使得软件开发团队在开发软件的过程中逐步的工程化和自动化,实现了软件开发效率的提高和质量的提高。如今的CASE工具成为了软件工程领域里的一个重要的分支,贯穿于整个软件的开发过程,但是要进一步认识到,在解决软件危机的问题时,新的技术和CASE工具是一个方面,加强软件开发过程的规范也同样重要,只有这样才能管理和控制好软件产品的质量。

[1]王凌,冯惠.计算机辅助软件工程(CASE)工具的选择与采用[J].小型微型计算机系统,2001,22(12):1519~1522.

[2]佟玉军,陈文实,赵悦等.CASE工具及其应用分析[J].辽宁工学院学报(自然科学版),2003,23(1):26~28.

[3]郭兵,谢峻,赵平原等.工具总线:CASE环境的一种新结构[J].系统工程与电子技术,2003,25(5):600~603.

[4] 张志鹏.软件工程工具的集成技术研究[D].北京机械工业学院,2007.

[5]孙家广.软件工程-理论、方法与实践[M].北京:高等教育出版社,2005.

10.3969/j.issn.1001-8972.2012.14.048

刘伟 (1978-),男,江苏徐州人,硕士在读,讲师,研究方向为His系统,软件工程,计算机教育。

猜你喜欢

配置管理徐州工具
汽车委托外加工零件自动化配置管理
疫散待春回
爆笑三国 第三回 三让徐州
徐州过年纪实
苏翠2号梨在徐州的引种表现及配套栽培技术
波比的工具
波比的工具
准备工具:步骤:
配置管理数据库运用与实现
“巧用”工具