软件工程理其在软件开发中的应用

时间:2024-02-12 点赞:47067 浏览:93263 作者原创标记本站原创

本文是一篇软件工程论文范文,软件工程相关研究生毕业论文开题报告,关于软件工程理其在软件开发中的应用相关在职研究生毕业论文范文。适合软件工程及软件开发及数据结构方面的的大学硕士和本科毕业论文以及软件工程相关开题报告范文和职称论文写作参考文献资料下载。

【摘 要】本文综合利用计算机科学与技术理论讨论了软件工程的概念、软件工程项目的基本目标、软件工程项目的实施,并探讨了数据库系统软件开发与设计思想,为从事软件开发的专业人员提供了一定的借鉴.

【关 键 词】软件工程;程序设计;数据库;开发

1软件工程的再理解

B.W.Boehm认为软件工程就是运用现代科学技术知识来设计并构造计算机程序及为开发、运行和维护这些程序所必须的相关文件资料.这里对“设计”一词应有广义的理解,它包括软件的需求分析和对软件进行修改时所进行的再设计活动.

IEEE说:“软件工程是开发、运行、维护和修复软件的系统方法”,其中,“软件”是计算机程序、方法、规则、相关的文档资料以及在计算机上运行时所必需的数据.

Fairley给出的软件工程的定义为:软件工程学为在成本限额以内按时完成开发和修改软件产品所需的系统生产和维护的技术与管理的科学.

由此可见,软件工程包括3个基本要素:方法、工具和过程.

首先,软件工程方法为软件开发提供了“如何做”的技术.它包括多方面的任务,如项目计划与估算、软件系统需求分析、数据结构、系统总体结构的设计、算法的设计、编码、测试以及维护等.软件工程常采用某种特殊的语言或图形的表达方法以及一套质量保证的标准.

其次,软件工具为软件工程方法提供了自动的或半自动的软件支撑环境.有人把诸多工具集成起来,使得一种工具产生的信息可以为其他的工具所使用,这样建立起一种称之为计算机辅助软件工程(CASE)的软件开发支撑系统.CASE将各种软件工具、开发机器和存放开发过程信息的工程数据库组合起来形成一个软件工程环境.

另外,软件工程的过程则是将软件工程的方法和工具综合起来以达到合理、及时地进行计算机软件开发的目的.过程定义了方法使用的顺序,要求交付的文档资料,为保证质量和协调变更所需要的管理及软件开发各个阶段完成的里程碑.

2软件工程项目的目标

组织实施软件工程项目,从技术上和管理上采取了多项措施以后,最终希望得到项目的成功.所谓成功指的是达到以下几个主要目标:较低的开发成本,达到要求的软件功能,取得较好的软件性能,开发的软件易于移植,需要较低的维护费用,能按时完成开发工作,及时交付使用等.

在实际开发中,要使上述目标都达到理想的程度往往非常困难,而且上述目标很可能相互冲突.如追求降低开发成本,很可能同时也降低了软件的可靠性;若过于追求软件的性能,则可能造成软件对硬件有较大的依赖性,从而直接影响软件的可移植性等.

3软件工程项目的实施

3.1制定软件计划

在软件项目开发之前,针对不同的工作目标制定不同类型的工作计划,对项目实施计划进行可行性研究.主要包括下述任务:

第一,经济可行性.分析能否做到以最小投入成本得到最佳经济收益,做出立即投入、推迟开发或不值得开发的选择.如果可行,做出开发进度安排.

第二,技术可行性.分析使用现有的技术能否实现系统,能否解决系统技术难点,系统对技术人员有什么要求,硬件能否配套等其它技术冒险的各种因素.

第三,社会(法律)可行性.分析开发系统是否符合当前社会生产经营体制及法律法规的要求.


3.2需求分析和定义

对开发软件提出的需求进行分析并给出详细的定义.软件开发人员和用户共同讨论决定哪些需求是可以满足的,并对其加以确切的描述,然后编写出软件需求说明书或系统功能说明书及初步的系统用户手册,提交管理机构评审.

3.3软件设计

设计是软件工程的核心,就是把需求变换成为软件的具体方案,软件设计一般分为总体设计和详细设计两个阶段,总体设计是根据需求所得到的数据流、数据结构,使用结构设计技术,导出软件模块结构;详细设计是使用表格、图形或自然语言等详细设计工具,按照模块设计准则进行软件各个模块的具体过程的描述,如模块的分解与合并、低耦合性、高内聚性的特点,以及模块的作用、控制范围、复杂性和接口,按步骤进行设计.

3.4程序编写(软件编码)把用户的要求变为计算机能够接受的形式,为每个模块编写程序,即写成以某一种特定程序设计语言表示的源程序清单.自然,写出的程序应当是结构良好、清晰易读又与设计一致.

3.5软件测试

测试是保证软件质量的重要手段,其主要方式是在设计测试用例的基础上检验软件的各个组成部分,一般采用黑盒法和白盒法.所谓黑盒法是根据程序的物理特性,测试每一个功能是否达到预期的要求,白盒法则是根据程序的逻辑结构,进行目标测试.无论黑盒法还是白盒法都要设计测试用例,按照单元测试、组装测试、确认测试、系统测试、人工测试的步骤,对模块功能、接口、数据结构组成进行测试.最后按规定的各项需求,逐渐进行有效性测试,决定已开发的软件是否合格,能否交付用户使用.

3.6软件运行/维护

已交付的软件投入正式使用便进入运行阶段.这一阶段可能持续若干甚至几十年.软件在运行过程中需要不断诊断、进行修改,包括改正性维护、适应性维护、完善性维护和预防性维护.维护的重要性在逐年提高.这一阶段是软件工程的最后一个阶段,也是最重要阶段,应给予足够的重视.

4数据库系统软件的开发与设计探讨

数据库系统是应用较为广泛的多用户共享资源,具有通用、独立、冗余少、安全、完整的特性,因此,在进行数据库系统设计时应采用软件工程的方法.主要是对数据管理、库结构设计与建立、系统设计、语言的选择与设计、实用程序的编写、功能模块的设计等方面应用软件工程的理论和方法.在进行这些设计的需求阶段,应确定对软件的设计方法、所使用的描述工具、目标实现、推广使用等方面进行论证,然后根据用户和系统要求,进行包括上述功能的软件设计、输入输出设计、用户设计和模块功能、接口设计,然后编写用于数据库实现的编译、连接、测试等语言程序,使所设计的数据库系统具有易开发、易推广、易理解的高质量、高效率的软件.

因此,应用软件工程的理论和方法,可以设计较复杂的系统软件,使设计工程化、系统化,提高软件研制质量和水准.

【参考文献】

[1]郑人杰.软件工程[M].北京:清华大学出版社,1999.

[2]张海藩.软件工程导论[M].北京:清华大学出版社,1996.

[3]刘润彬.软件工程简明教程[M].大连:大连理工大学出版社,1995.

[责任编辑:丁艳]

相关论文

基于VB的工程造价管理软件开发

本文是一篇工程造价论文范文,工程造价方面本科毕业论文,关于基于VB的工程造价管理软件开发相关硕士论文范文。适合工程造价及工程造价管理及。

软件开发实践中工程技术的探究

本文是一篇软件工程论文范文,关于软件工程方面硕士毕业论文,关于软件开发实践中工程技术的探究相关毕业论文范文。适合软件工程及工程技术及。

软件开发实践过程中的工程技术探究

本文是一篇软件工程论文范文,关于软件工程毕业论文的格式,关于软件开发实践过程中的工程技术探究相关硕士毕业论文范文。适合软件工程及软件。

核电工程软件开发中的过程控制管理

本文是一篇软件开发论文范文,关于软件开发类电大毕业论文,关于核电工程软件开发中的过程控制管理相关硕士毕业论文范文。适合软件开发及软件。

关于计算机软件开发中的分层技术

本文是一篇计算机软件开发论文范文,关于计算机软件开发方面毕业论文范文,关于关于计算机软件开发中的分层技术相关在职毕业论文范文。适合计。