首页 > 范文大全 > 正文

浅论软件工程

开篇:润墨网以专业的文秘视角,为您筛选了一篇浅论软件工程范文,如需获取更多写作素材,在线客服老师一对一协助。欢迎您的阅读与分享!

摘要:软件也是一种产品,只不过它不同于一般的产品,随着社会的发展,软件的规模越来越大,也越来越复杂,同时使用的范围也更广了,因此我们要加强对其开发的控制,包括技术和管理两方面。本文主要以软件工程这门学科和技术出现的背景为出发点,结合软件工程的相关理论、方法以及在实际运用中的一些成果,再参考Internet技术和平台,研究了软件工程面临的一些新挑战。

关键词:软件危机 构件 体系结构 软件项目管理 中间件

1 软件工程的出现

20世纪中期,计算机的应用领域才从军用转为民用,当时编写程序的工作不但没有被重视,反而受到歧视。那时候,计算机硬件价格是很高的,这就要求编程人员在处理器能力和存储器空间都很有限的情况下,编写的程序不仅要体积小,而且要保证更快的执行速度。程序中要用到许许多多种类的技巧。此时进行软件的开发,起决定性因素的是开发人员的智慧和能力。

进入20世纪60年代,计算机在更广的领域得到了应用,这就要求我们不断地提高软件的复杂程度,要开发能够满足更多需求的系统,传统的开发方法不能满足用户在质量、效率等方面对软件的需求。这就是所谓的“软件危机”。

面对这一危机,1968年NATO会议上首次提出“软件工程”的概念,提出把软件开发从“艺术”和“个体行为”向“工程”和“群体协同工作”转化。具体来讲就是在计算机科学理论和技术的指导下,运用工程管理的相关理论,按照预算和进度,开发符合用户要求的软件。这样,一个新的学科(软件工程)就产生了。

2 软件工程的框架

软件工程的框架可用目标、过程和原则三个词语来总结。

2.1 软件工程目标:生产具有正确性、可用性以及开销合宜的产品。其中,正确性是指最终开发出的软件要符合预期的功能。可用性是指软件基本结构、实现及文档为用户可用的程度。开销合宜是指软件开发、运行的整个开销都能达到用户要求的程度。要很好地实现这一目标,不管是在理论上还是实际的开发过程中,都面临着不少需要解决的问题。

2.2 软件工程过程:主要是指生产一个最终能满足需求且达到工程目标的软件产品所需要的步骤。软件工程的内容包含了开发过程、运作过程、维护过程。这其中包括需求、设计、实现、确认以及维护等活动。在这几方面中,需求活动主要是进行问题分析和需求分析。从问题分析中我们可以得到需求定义,也可以把它叫做软件需求规约。需求分析生成功能规约。设计活动通常情况下是进行概要设计和详细设计。实现活动要完成的是把设计结果转换成可执行的程序代码。而确认活动在整个软件开发的过程中都有所涉及,进行了确认之后,要保证软件最后能够符合用户要求。维护活动主要是指使用软件的过程中,可以对其进行扩充和完善等。除了以上这些具体解释的主要过程之外,还包括管理过程、支持过程等。

2.3 软件工程的原则:在开发软件时,工程设计、工程支持以及工程管理方面一定要遵守的一些相关原则。

3 软件工程管理

管理学理论在软件工程中的运用同样也在软件工程要研究的范围内。在软件项目管理方法上,我们不再使用原来的个人作坊式开发方式,充分运用管理科学的相关理论,再通过对软件开发的实际情况进行分析,更好地运用工程化系统开发方法。在进行软件的开发前,我们要提前制定好软件项目的成本、进度、质量,然后我们在开发软件的过程中,要严格遵守这些相关的计划,这就要求我们通过软件管理方法来更好的管理和控制软件开发项目的成本、进度、质量等。对软件项目的有效管理,能够更好的把开发人员的个人开发能力转化成企业的开发能力,当企业表现出不断提高的软件开发能力时,说明它的软件生产水平就越高,同时表明它的开发风险相对不大。软件项目管理是关系着软件开发企业能否在激烈的竞争中处于优势地位的决定性因素之一。

从软件与其他产品的不同中,我们可以看出软件项目管理同样也有一些与其他项目管理要遵守的一些不一样的原则,例如:大规模的项目要拆分成几个小项目,以此达到降低项目的管理风险的目的,而且还要制定详细而明确的目标;根据各个项目的特征,制订相应的、切实可行的项目管理方法等。

4 软件工程中软件构件的作用

软件构件的概念共生于软件复用。软件复用的概念在1968年的北大西洋公约组织会议上提出,McIlroy还提出了软件构件、构件工厂等概念,以后相继制定了一整套软件复用的指导性标准,其中包含了利用标准构件实现软件复用的基本思路。在软件开发过程中使用标准软件零部件的构想,从一开始就受到众人的青睐,然而在以后的发展过程中,对这一构想的认识一直在发生着变化。

在二十世纪的七八十年代,软件构件主要指可复用的程序代码片段,通常我们叫他代码件。这段时间内在软件开发中我们主要要解决的问题就是怎样最大限度的利用已有的源程序代码、子程序库和类库,改善软件生产的效率。这一时期的代码件包括子程序、程序包、类、模板等形态。到二十世纪九十年代,相关的技术人员都认为软件构件应当包括分析件、设计件、代码件、测试件等多种类型。因为软件复用具有多样性,我们还可以把它分为产品复用和过程复用。这样就会相应地产生更多的新概念,如设计模式、框架以及软件体系结构等。实际上,我们在研究软件构件基本属性时,主要考虑的还是代码件的相关内容,如果没有明确的标注,研究的都是软件构件的代码件。

在软件技术中,构件技术占有重要的地位,更好的研究构建技术,对于软件技术的发展具有不可估量的意义。但是研究构建技术也不是很简单的,存在着各种各样的困难。从构建技术的研究情况来看,即使我们对它的基本概念上,有着越来越多的共同认识,但是还并不是完全一致,依旧有歧义。这样就不容易在各个具体的领域中运用构建技术。领域业务对计算机信息技术的运用越来越多,越来越广泛,所以,计算机技术在很大程度上促进了领域软件复用需求的增加。由于现在的构件技术还存在着很多的不足之处,同时没能很好的重视对它的研究,所以它还不能满足某些需求。实际上,这就在构件技术的研究上给我们提出了更高的要求,依据现在构件技术的研究成果,结合领域应用的需求,加大对领域构件技术的研究。

5 软件信息工程监理

关于软件工程,其最主要任务就是通过科学、有效的管理方法不断改善软件开发质量。其主要要求是改变之前的软件开发模式,将其不断细分和分解,因为不同的阶段会表现出不同的特点,这就需要我们具体问题具体分析,根据这些不同的特点来选择相应的方法和工具,从而使复杂度较高的软件生产进行可度量、可控的设置。从另一方面来讲,认真、严格的控制各个生产阶段,能够有效地预防某些问题和风险,避免在之后的开发过程中出现更多的麻烦,这样就能够在一定程度上减小开发的风险,同时还能提高软件开发的质量。综合以上的分析我们认为,进行信息工程监理,我们要达到的终极目标就是通过合同管理、质量控制、进度控制、成本控制、信息管理等方法来提高工程项目的质量,保障工程项目的顺利开展。

6 结束语

综上所述,软件工程就在计算机科学理论和技术的指导下,运用工程管理的相关理论,按照预算和进度,开发符合用户要求的软件。进行软件工程最主要任务就是通过科学、有效的管理方法不断改善软件开发质量。在软件开发中使用的信息工程监理的模型,以软件工程理论为基础,以信息工程项目过程控制为主线,全面的控制并监督企业信息工程的项目分析、项目设计、项目实施以及项目维护等各个阶段。

参考文献:

[1]黄真.并联机器人机构学理论与控制[M].北京:机械工业出版社,1997.

[2]冯玉林.软件工程方法工具和实践[M].合肥:中国科学技术大学出版社,1992.

[3]张立等,基于Client/Server模式的数据库应用软件的设计与实现,计算机应用研究,1999

[4]安红昌.信息化工程的全面监理体系研究[C]//第二届武汉电子商务国际会议论文集.北京:科学出版社,2002.

[5]Joseph S Valacich,Joey F George,Jeffrey AHoffer.系统分析与设计基础[M].施平安,译.北京:清华大学出版社,2005.

[6]张冰.软件开发型信息化项目监理初探[J].CAD/CAM与制造业信息化,2007(3).