XX公司计算机软件培训讲义_第1页
XX公司计算机软件培训讲义_第2页
XX公司计算机软件培训讲义_第3页
XX公司计算机软件培训讲义_第4页
XX公司计算机软件培训讲义_第5页
已阅读5页,还剩15页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、XX公司计算机软件培训讲义1、背景20世纪是一个革命化变革的世纪。机械化革命、电气化革命、信息化革命无论是对社会还是对人类都起到了根本性的变化影响。特别是自动化生产的理念,对机械化革命、电气化革命和信息化革命中的骨骼部分(硬件产品:例如计算机及其相关部件、通信产品、存储介质等)都起到了突飞猛进的推动作用。但对于信息化革命中的神经或血液部分的软件,如何将自动化生产的理念引入到其开发研制中来,是20世纪60年代以来给人类留下的始终未解决好的一个重大课题。20世纪880年代代初,国国际著名名的软件件学家布布鲁思曾曾经发表表过一片片著名的的论文没有银银弹,在在软件界界引起了了很大的的震动。论论文的中中

2、心散布布了一种种软件悲悲观论的的思想,布布鲁思个个人认为为软件的的自动化化生产,由由于受各各种外界界条件的的制约,是是几乎无无法实现现的。这这种悲观观的事实实虽彻底底解决不不了,但但通过软软件工程程及其相相关联的的优秀的的方法论论,通过过优秀的的人才是是可以缓缓解的。在未来的信信息化革革命中,起起着神经经或血液液角色的的软件作作用越来来越重要要,据国国际权威威调查机机构的资资料,工工程费用用上软硬硬的比例例目前已已达到了了6:44的数值值。由此此可见软软件工程程及其相相关联的的优秀的的方法论论、优秀秀的软件件人才在在信息化化革命革革命中的的重要性性。2、软件工工程软件工程是是一类工工程。工工程

3、是将将理论和和知识应应用于实实践的科科学。就就软件工工程而言言,它借借鉴了传传统工程程的原则则和方法法,以求求高效地地开发高高质量软软件。其其中应用用了计算算机科学学、数学学和管理理科学。计计算机科科学和数数学用于于构造模模型与算算法,工工程科学学用于制制定规范范、设计计范型、评评估成本本及确定定权衡,管管理科学学用于计计划、资资源、质质量和成成本的管管理。 软件工程这这一概念念,主要要是针对对20世世纪600年代“软件危危机”而提出出的。它它首次出出现在119688年NAATO(北北大西洋洋公约组组织)会会议上。自自这一概概念提出出以来,围围绕软件件项目,开开展了有有关开发发模型、方方法以及

4、及支持工工具的研研究。其其主要成成果有:提出了了瀑布模模型,开开发了一一些结构构化程序序设计语语言(例例如PAASCAAL语言言,ADDA语言言)、结结构化方方法等。并并且围绕绕项目管管理提出出了费用用估算、文文档复审审等方法法和工具具。综观观60年年代末至至80年年代初,其其主要特特征是,前前期着重重研究系系统实现现技术,后后期开始始强调开开发管理理和软件件质量。70年代初初,自“软件工工厂”这一概概念提出出以来,主主要围绕绕软件过过程以及及软件复复用,开开展了有有关软件件生产技技术和软软件生产产管理的的研究与与实践。其其主要成成果有:提出了了应用广广泛的面面向对象象语言以以及相关关的面向向

5、对象方方法,大大力开展展了计算算机辅助助软件工工程的研研究与实实践。尤尤其是近近几年来来,针对对软件复复用及软软件生产产,软件件构件技技术以及及软件质质量控制制技术、质质量保证证技术得得到了广广泛的应应用。目目前各个个软件企企业都十十分重视视资质认认证,并并想通过过这些工工作进行行企业管管理和技技术的提提升。软软件工程程所涉及及的要素素可概括括如下:软件工程框框架图根据这一框框架,可可以看出出:软件件工程涉涉及了软软件工程程的目标标、软件件工程原原则和软软件工程程活动。软件工程的的主要目目标是:生产具具有正确确性、可可用性以以及开销销合宜的的产品。正正确性意意指软件件产品达达到预期期功能的的程

6、度。可可用性指指软件基基本结构构、实现现及文档档为用户户可用的的程度。开开销合宜宜性是指指软件开开发、运运行的整整个开销销满足用用户要求求的程度度。这些些目标的的实现不不论在理理论上还还是在实实践中均均存在很很多问题题有待解解决,它它们形成成了对过过程、过过程模型型及工程程方法选选取的约约束。 软件工程的的四项基基本原则则是:第一,选选取适宜宜开发范范型。该该原则与与系统设设计有关关。在系系统设计计中,软软件需求求、硬件件需求以以及其他他因素之之间是相相互制约约、相互互影响的的,经常常需要权权衡。因因此,必必须认识识需求定定义的易易变性,采采用适宜宜的开发发范型予予以控制制,以保保证软件件产品

7、满满足用户户的要求求。 第二,采采用合适适的设计计方法。在在软件设设计中,通通常要考考虑软件件的模块块化、抽抽象与信信息隐蔽蔽、局部部化、一一致性以以及适应应性等特特征。合合适的设设计方法法有助于于这些特特征的实实现,以以达到软软件工程程的目标标。 第三,提提供高质质量的工工程支持持。“工欲善善其事,必必先利其其器”。在软软件工程程中,软软件工具具与环境境对软件件过程的的支持颇颇为重要要。软件件工程项项目的质质量与开开销直接接取决于于对软件件工程所所提供的的支撑质质量和效效用。 第四,重重视开发发过程的的管理。软软件工程程的管理理,直接接影响可可用资源源的有效效利用,生生产满足足目标的的软件产

8、产品,提提高软件件组织的的生产能能力等问问题。因因此,仅仅当软件件过程得得以有效效管理时时,才能能实现有有效的软软件工程程。 软件工程活活动是“生产一一个最终终满足需需求且达达到工程程目标的的软件产产品所需需要的步步骤”。主要要包括需需求、设设计、实实现、确确认以及及支持等等活动。需需求活动动包括问问题分析析和需求求分析。问问题分析析获取需需求定义义,又称称软件需需求规约约。需求求分析生生成功能能规约。设设计活动动一般包包括概要要设计和和详细设设计。概概要设计计建立整整个软件件体系结结构,包包括子系系统、模模块以及及相关层层次的说说明、每每一模块块接口定定义。详详细设计计产生程程序员可可用的模

9、模块说明明,包括括每一模模块中数数据结构构说明及及加工描描述。实实现活动动把设计计结果转转换为可可执行的的程序代代码。确确认活动动贯穿于于整个开开发过程程,实现现完成后后的确认认,保证证最终产产品满足足用户的的要求。支支持活动动包括修修改和完完善。伴伴随以上上活动,还还有管理理过程、支支持过程程、培训训过程等等。这一软件工工程框架架告诉我我们,软软件工程程的目标标是可用用性、正正确性和和合算性性;实施施一个软软件工程程要选取取适宜的的开发范范型,要要采用合合适的设设计方法法,要提提供高质质量的工工程支撑撑,要实实行开发发过程的的有效管管理;软软件工程程活动主主要包括括需求、设设计、实实现、确确

10、认和支支持等活活动,每每一活动动可根据据特定的的软件工工程,采采用合适适的开发发范型、设设计方法法、支持持过程以以及过程程管理。根根据软件件工程这这一框架架,软件件工程学学科的研研究内容容主要包包括:软软件开发发范型、软软件开发发方法、软软件过程程、软件件工具、软软件开发发环境、计计算机辅辅助软件件工程(CASSE) 及软件件经济学学等。 自从软件工工程概念念提出以以来,经经过300多年的的研究与与实践,虽然“软件危危机”没得到到彻底解解决,但但在软件件开发方方法和技技术方面面已经有有了很大大的进步步。尤其其应该指指出的是是,自880年代代中期,美美国工业业界和政政府部门门开始认认识到,在在软

11、件开开发中,最最关键的的问题是是软件开开发组织织不能很很好地定定义和管管理其软软件过程程,从而而使一些些好的开开发方法法和技术术都起不不到所期期望的作作用。也也就是说说,在没没有很好好定义和和管理软软件过程程的软件件开发中中,开发发组织不不可能在在好的软软件方法法和工具具中获益益。 根据调查,中中国的现现状几乎乎和美国国10多多年前的的情况一一样,软软件开发发过程没没有明确确规定,文文档不完完整,也也不规范范,软件件项目的的成功往往往归功功于软件件开发组组的一些些杰出个个人或小小组的努努力。这这种依赖赖于个别别人员上上的成功功并不能能为全组组织的软软件生产产率和质质量的提提高奠定定有效的的基础

12、,只只有通过过建立全全组织的的过程改改善,采采用严格格的软件件工程方方法和管管理,并并且坚持持不懈地地付诸实实践,才才能取得得全组织织的软件件过程能能力的不不断提高高。这一事实告告诉我们们,只有有坚持软软件工程程的四条条基本原原则,既既重视软软件技术术的应用用,又重重视软件件工程的的支持和和管理,并并在实践践中贯彻彻实施,才才能高效效地开发发出高质质量的软软件。3、方法论论如何运用软软件工程程,从220世纪纪70年年代初开开始,围围绕着这这个问题题,诞生生了许多多著名的的方法论论。下面面对几个个典型的的方法论论进行简简单的介介绍。3.1、瀑瀑布式方方法论瀑布模型将将软件生生命周期期的各项项活动

13、规规定为依依固定顺顺序联接接的若干干阶段工工作,形形如瀑布布流水,最最终得到到软件产产品。优点:强调开发的的阶段性性;强调早期计计划及需需求调查查;强调产品测测试。 缺点:依赖于早期期进行的的唯一的的一次需需求调查查,不能能适应需需求的变变化;由于是单一一流程,开开发中的的经验教教训不能能反馈应应用于本本产品的的过程;风险往往迟迟至后期期的开发发阶段才才显露,因因而失去去及早纠纠正的机机会。 其中,BDD是Baasicc Deesiggn的缩缩写,这这一部分分完成“本系统统要做什什么”的文档档记录工工作,即即系统的的分析阶阶段工作作;FDD是Fuuncttionn Deesiggn的缩缩写,这

14、这一部分分完成本本系统功功能块的的划分,是是“怎么去去做”的第一一阶段工工作,即即系统的的设计初初期阶段段工作;DD是是Dettaill Deesiggn的缩缩写,这这一部分分完成本本系统各各个功能能模块的的详细设设计工作作,是编编程阶段段的准备备设计阶阶段;MMK是MMakiing的的缩写,即即具体编编程实施施阶段;UT是是Uniit TTestt的缩写写,即单单元测试试阶段;CT是是Commbinne TTestt的缩写写,即结结合测试试阶段;ST是是Sysstemm Teest的的缩写,即即系统测测试阶段段;PTT是Prroduuct Tesst的缩缩写,即即商品测测试阶段段。从上图中可

15、可以看出出,BDD和PTT、 FFD和SST、DDD和CCT、MMK和UUT都是是成对出出现的。每每一对的的前一部部分完成成之后,应应该马上上着手后后一部分分的文档档制作工工作。对对较大的的系统开开发,实实际测试试和文档档的担当当者应该该不同。3.2、生生鱼片式式方法论论前一阶段完完成700%到880%时时,即可可并行进进入到下下一个阶阶段。3.3、螺螺旋式方方法论瀑布模型与与演化模模型相结结合,并并加入两两者所忽忽略的风风险分析析所建立立的一种种软件开开发模型型。该模模型于119988年由美美国TRRW公司司(B.W.BBoehhm)提提出。软软件项目目风险的的大小作作为指引引软件过过程的一

16、一个重要要因素,引引入这一一概念有有可能使使得软件件开发被被看作一一种元模模型,因因为它能能包容任任何一个个开发过过程模型型。螺旋模型基基本的做做法是在在“瀑布模模型”的每一一个开发发阶段之之前,引引入非常常严格的的风险识识别、风风险分析析和风险险控制。直直到采取取了消除除风险的的措施之之后,才才开始计计划下一一阶段的的开发工工作。否否则,项项目就很很可能被被取消。 另外,如果果有充足足的把握握判断遗遗留的风风险已降降低到一一定的程程度,项项目管理理人员可可作出决决定让余余下的开开发工作作采用另另外的生生命周期期模型,如如“演化模模型”,“瀑布模模型”,或自自定的混混合模型型。 优点: 强调严

17、格的的全过程程风险管管理。强调各开发发阶段的的质量。提供机会检检讨项目目是否有有价值继继续下去去。 缺点: a.引入入非常严严格的风风险识别别,风险险分析,和和风险控控制,这这对风险险管理的的技能水水平提出出了很高高的要求求。这需需要人员员,资金金,和时时间的投投入。 3.4、阶阶段性发发布式方方法论该模型主要要针对事事先不能能完整定定义需求求的软件件开发。用用户可以以给出待待开发系系统的核核心需求求,并且且当看到到核心需需求实现现后,能能够有效效地提出出反馈,以以支持系系统的最最终设计计和实现现。软件件开发人人员根据据用户的的需求,首首先开发发核心系系统。当当该核心心系统投投入运行行后,用用

18、户试用用之,完完成他们们的工作作,并提提出精化化系统、增增强系统统能力的的需求。软软件开发发人员根根据用户户的反馈馈,实施施开发的的迭代过过程。第第一迭代代过程均均由需求求、设计计、编码码、测试试、集成成等阶段段组成,为为整个系系统增加加一个可可定义的的、可管管理的子子集。下下面为生生鱼片型型阶段性性发布式式方法论论图示。在开发模式式上采取取分批循循环开发发的办法法,每循循环开发发一部分分的功能能,它们们成为这这个产品品的原型型的新增增功能。于于是,设设计就不不断地演演化出新新的系统统。 实实际上,这这个模型型可看作作是重复复执行的的多个“生鱼片片方式”。 3.5、BBoocch方法法论Boo

19、chh方法的的过程包包括以下下步骤:在给定的抽抽象层次次上识别别类和对对象识别这些对对象和类类的语义义识别这些类类和对象象之间的的关系实现类和对对象这四种活动动不仅仅仅是一个个简单的的步骤序序列,而而是对系系统的逻逻辑和物物理视图图不断细细化的迭迭代和渐渐增的开开发过程程。类和对象的的识别包包括找出出问题空空间中关关键的抽抽象和产产生动态态行为的的重要机机制。开开发人员员可以通通过研究究问题域域的术语语发现关关键的抽抽象。语语义的识识别主要要是建立立前一阶阶段识别别出的类类和对象象的含义义。开发发人员确确定类的的行为(即即方法)和和类及对对象之间间的互相相作用(即即行为的的规范描描述)。该该阶

20、段利利用状态态转移图图描述对对象的状状态的模模型,利利用时态态图(系系统中的的时态约约束)和和对象图图(对象象之间的的互相作作用)描描述行为为模型。在关系识别别阶段描描述静态态和动态态关系模模型。这这些关系系包括使使用、实实例化、继继承、关关联和聚聚集等。类类和对象象之间的的可见性性也在此此时确定定。在类和对象象的实现现阶段要要考虑如如何用选选定的编编程语言言实现,如如何将类类和对象象组织成成模块。在面向对象象的设计计方法中中,Booochh强调基基于类和和对象的的系统逻逻辑视图图与基于于模块和和进程的的系统物物理视图图之间的的区别。他他还区别别了系统统的静态态和动态态模型。然然而,他他的方法

21、法偏向于于系统的的静态描描述,对对动态描描述支持持较少。Boochh方法的的力量在在于其丰丰富的符符号体系系,包括括:类图(类结结构静静态视图图)对象图(对对象结构构静态态视图)状态转移图图(类结结构动动态视图图)时态图(对对象结构构动态态视图)模块图(模模块体系系结构)进程图(进进程体系系结构)用于类和对对象建模模的符号号体系使使用注释释和不同同的图符符(如不不同的箭箭头)表表达详细细的信息息。Booochh建议在在设计的的初期可可以用符符号体系系的一个个子集,随随后不断断添加细细节。对对每一个个符号体体系还有有一个文文本的形形式,由由每一个个主要结结构的描描述模板板组成。符符号体系系由大量

22、量的图符符定义,但但是,其其语法和和语义并并没有严严格地定定义。3.6、OOMT方方法论Rumbaaughh的OMMT方法法从三个个视角描描述系统统,相应应地提供供了三种种模型,对对象模型型,动态态模型和和功能模模型。对对象模型型描述对对象的静静态结构构和它们们之间的的关系。主主要的概概念包括括:类属性操作继承关联(即关关系)聚集动态模型描描述系统统那些随随时间变变化的方方面,其其主要概概念有:状态子状态和超超状态事件行为活动功能模型描描述系统统内部数数据值的的转换,其其主要概概念有:加工数据存储数据流控制流角色(源/潭)该方法将开开发过程程分为四四个阶段段:分析基于问题和和用户需需求的描描述

23、,建建立现实实世界的的模型。分分析阶段段的产物物有:问题描述对象模型对象图图数据据词典动态模型状态图图全局局事件流流图功能模型数据流流图约约束系统设计结合问题域域的知识识和目标标系统的的体系结结构(求求解域),将将目标系系统分解解为子系系统。该该阶段的的主要产产物是系系统设计计文档:基本的的系统体体系结构构和高层层次的决决策。对象设计基于分析模模型和求求解域中中的体系系结构等等添加的的实现细细节,完完成系统统设计。主主要产物物包括:细化的对象象模型细化的动态态模型细化的功能能模型实现将设计转换换为特定定的编程程语言或或硬件,同同时保持持可追踪踪性、灵灵活性和和可扩展展性。3.7、OOOSEE方

24、法论论Jacobbsonn方法(OOSSE)与与上述三三种方法法有所不不同,它它涉及到到整个软软件生命命周期,包包括需求求分析、设设计、实实现和测测试等四四个阶段段。需求求分析和和设计密密切相关关。需求求分析阶阶段的活活动包括括定义潜潜在的角角色(角角色指使使用系统统的人和和与系统统互相作作用的软软、硬件件环境),识识别问题题域中的的对象和和关系,基基于需求求规范说说明和角角色的需需要发现现usee caase,详详细描述述usee caase。设设计阶段段包括两两个主要要活动,从从需求分分析模型型中发现现设计对对象,以以及针对对实现环环境调整整设计模模型。第第一个活活动包括括从usse cc

25、asee的描述述发现设设计对象象,并描描述对象象的属性性、行为为和关联联。在这这里还要要把usse ccasee的行为为分派给给对象。在需求分析析阶段的的识别领领域对象象和关系系的活动动中,开开发人员员识别类类、属性性和关系系。关系系包括继继承、熟熟悉(关关联)、组组成(聚聚集)和和通信关关联。定定义usse ccasee的活动动和识别别设计对对象的活活动,两两个活动动共同完完成行为为的描述述。Jaacobbsonn方法还还将对象象区分为为语义对对象(领领域对象象)、界界面对象象(如用用户界面面对象)和和控制对对象(处处理界面面对象和和领域对对象之间间的控制制)。在该方法中中的一个个关键概概念

26、就是是usee caase。uuse casse是指指行为相相关的事事务(ttrannsacctioon)序序列,该该序列将将由用户户在与系系统对话话中执行行。因此此,每一一个usse ccasee就是一一个使用用系统的的方式,当当用户给给定一个个输入,就就执行一一个usse ccasee的实例例并引发发执行属属于该uuse casse的一一个事务务。基于于这种系系统视图图,Jaacobbsonn将usse ccasee模型与与其它五五种系统统模型关关联:领域对象模模型。uuse casse模型型根据领领域来表表示。分析模型。uuse casse模型型通过分分析来构构造。设计模型。uuse c

27、asse模型型通过设设计来具具体化。实现模型。该该模型依依据具体体化的设设计来实实现usse ccasee模型。测试模型。用用来测试试具体化化的usse ccasee模型。3.8、UUML方方法论面向对象的的分析与与设计(OOAA&D)方法的的发展在在80年年代末至至90年年代中出出现了一一个高潮潮,UMML是这这个高潮潮的产物物。软件工程领领域在119955年至119977年取得得了前所所未有的的进展,其成果果超过软软件工程程领域过过去155年来的的成就总总和。其其中最重重要的、具具有划时时代重大大意义的的成果之之一就是是统一建建模语言言(UMML:UUniffiedd Moodelling

28、g Laanguuagee)的出出现。在在世界范范围内,至少在在近100年内,UMLL将是面面向对象象技术领领域内占占主导地地位的标标准建模模语言。UML的中中心体现现了统一一、建模模和可视视化语言言三个方方面。统统一是指指它不仅仅统一了了Boooch、RRmbaaughh和Jaacobbsonn的表示示方法,而且对对其作了了进一步步(综合合了其他他方法的的优势)的的发展,并最终终统一为为大众所所接受的的标准建建模语言言。建模模是指从从应用的的角度看看,当采采用面向向对象技技术设计计系统时时,首先先是描述述需求;其次根根据需求求建立系系统的静静态模型型,以构构造系统统的结构构;第三三步是描描述

29、系统统的行为为。其中中在第一一步与第第二步中中所建立立的模型型都是静静态的,包括用用例图、类类图(包包含包)、对象象图、组组件图和和配置图图等五个个图形,是标准准建模语语言UMML的静静态建模模机制。其其中第三三步中所所建立的的模型或或者可以以执行,或者表表示执行行时的时时序状态态或交互互关系。它它包括状状态图、活活动图、顺顺序图和和合作图图等四个个图形,是标准准建模语语言UMML的动动态建模模机制。因因此,标标准建模模语言UUML的的主要内内容也可可以归纳纳为静态态建模机机制和动动态建模模机制两两大类。可可视化的的语言是是指建模模的要素素及其关关系均可可用图形形要素(共共9种图图形)及及明确

30、的的可视性性关系来来表示,其其种类大大约有近近4000种,且且可扩展展。 UUML的的5种建建模图归归纳如下下:第一类是用用例图,从用户户角度描描述系统统功能,并指出出各功能能的操作作者。第二类是静静态图(Staaticc diiagrram),包括括类图、对对象图和和包图。其其中类图图描述系系统中类类的静态态结构。不不仅定义义系统中中的类,表示类类之间的的联系如如关联、依依赖、聚聚合等,也包括括类的内内部结构构(类的的属性和和操作)。类图图描述的的是一种种静态关关系,在在系统的的整个生生命周期期都是有有效的。对对象图是是类图的的实例,几乎使使用与类类图完全全相同的的标识。他他们的不不同点在在

31、于对象象图显示示类的多多个对象象实例,而不是是实际的的类。一一个对象象图是类类图的一一个实例例。由于于对象存存在生命命周期,因此对对象图只只能在系系统某一一时间段段存在。包包由包或或类组成成,表示示包与包包之间的的关系。包包图用于于描述系系统的分分层结构构。第三类是行行为图(Behhaviior diaagraam),描述系系统的动动态模型型和组成成对象间间的交互互关系。其其中状态态图描述述类的对对象所有有可能的的状态以以及事件件发生时时状态的的转移条条件。通通常,状状态图是是对类图图的补充充。在实实用上并并不需要要为所有有的类画画状态图图,仅为为那些有有多个状状态其行行为受外外界环境境的影响响并且发发生改变变的类画画状态图图。而活活动图描描述满足足用例要要求所要要进行的的活动以以及活动动间的约约束关系系,有利利于识别别并行活活动。第四类是交交互图(Intt

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论