版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、软件过程与软件管理课程复习题(一)解释相关概念或术语1)软件工程是指导软件开发和维护的工程类学科,它以计算机科学理论及其他相关学科的理论为指导,采用工程化的概念、原理、方法和技术,进行软件的开发和维护,并与经过时间证明正确的管理方法与措施相结合,以较少的代价获取高质量的软件。TheIEEEComputerSociety:是将系统化的、规范的、可度量的方法应用于软件的开发、运行和维护的过程,即将工程化应用于软件中。(2)(1)中所述方法的研究。2)软件过程软件过程是指软件开发人员开发和维护软件及相关产品(如项目计划、设计文档、代码、测试用例、用户手册等)的一套行为、方法、实践及变换过程根据IEE
2、E对软件过程概念的解释,软件过程涵盖了软件采购、软件开发、软件维护、软件运行、软件获取、软件管理、软件支持等7大类的软件活动ISO12207分别将这些活动归结为基本过程、支持过程和组织过程等3大类3)软件过程工程为建造软件过程所进行的一系列工程化活动,包含如下基本活动:过程定义、过程例化、过程模拟、过程运作。现代软件工程=软件项目工程+软件过程工程,这标志着软件过程的时代的到来。4)软件配置管理SCM是标识和确定系统中配置项的过程,在系统整个生命周期内控制这些项的投放和变动,记录并报告配置的状态和变动要求,验证配置项的完整性和正确性(GB/T11457-1995软件工程术语)。针对SCM在软件
3、生命周期各阶段所起的作用,一个完整的SCM环境要求具有版本控制、变更管理、状态统计、和配置审计的功能。5) CMMCMM是指“能力成熟度模型”,其英文全称为CapabilityMaturityModelforSoftware,英文缩写为SW-CMM,简称CMM。它是对于软件组织在定义、实施、度量、控制和改善其软件过程的实践中各个发展阶段的描述。CMM的核心是把软件开发视为一个过程,并根据这一原则对软件开发和维护进行过程监控和研究,以使其更加科学化、标准化、使企业能够更好地实现商业目标。6) CMM中的关键过程域每个软件能力成熟度等级包含若干个对该成熟度等级至关重要的过程方面,它们的实施对达到该
4、成熟度等级的目标起到保证作用。这些过程域就称为该成熟度等级的关键过程域。确定了实现一个成熟度级别所必须解决的问题处于级别3的机构,必须解决级别2和级别3的所有关键过程域中的问题每个关键过程域都确定了一套相应的活动,完成了这些活动,就达到了被认为是对改进过程非常重要的一组目标目标说明了每个关键过程域的范围、界限和意义对于满足关键过程域的机构,一个关键过程域的所有目标都必须实现每个关键过程域的目标总结了它的关键实践7) CMM中的关键实践是指关键过程域种的一些主要实践活动。每个关键过程域最终由关键实践所组成,通过实现这些关键实践达到关键过程域的目标。一般情况下,关键实践描述了该做什么”,但没有规定
5、如何”去达到这些目标。描述了对关键过程域的有效实施和制度化起重要作用的基础设施和活动。每个关键过程域最终由关键实践所组成,通过实现这些关键实践来达到关键过程域的目标。关键实践描述要做“什么”,但没有强行规定应当“怎样”完成目标。关键实践的下面描述更为详细的各实践。8) CMM中的SEPG软件工程过程组(SoftwareEngineeringProcessGroup)由专家组成,统领CMM实施活动,协调全组织软件过程的开发和改进活动,制定、维护和跟踪与软件过程开发和改进活动有关的计划,定义用于过程的标准和模板,负责对全体人员培训有关软件过程及其相关的活动。这是来源于CMM3的一个名词,是指执行组
6、织,为不断改进软件过程管理能力而组建的专门性组织,其职责包括:制定规程:组织制定软件过程管理规程推广规程:在组织内部推广已制定软件过程管理规程监督实施:对组织内部软件过程管理规程执行情况的监督过程能力提高:对组织内部软件过程管理能力进行评估,制定计划提高组织软件过程管理能力,实施软件过程管理能力改进计划SEPG的工作性质和职责是监督、管理、指导项目的过程,对项目过程、文档的规范性及过程、文档的适用性负责,不对项目的具体结果负责。SEPG成员一般不作为项目组的成员,但是,可以为项目的过程管理、规范执行提供协助。9) PSP个体软件过程(PersonalSoftwareProcess,PSP层一个
7、过程描述、测度和方法的结构化集合,能够帮助软件工程师改善其个人性能。它提供了表格、脚本和标准,以帮助软件工程师估算和计划其工作。它显示了如何定义过程及如何测量其质量和生产率。10) TSPTSP(TeamSoftwareProcess,团队软件过程/群组软件过程)是为开发软件产品的开发团队提供指导,TSP的早期实践侧重于帮助开发团队改善其质量和生产率,以使其更好的满足成本及进度的目标。TSP被设计为满足220人规模的开发团队,大型的多团队过程的TSP被设计为大约最多为150人左右的规模。TSP是一个小组软件过程框架TSP指导你通过小组软件工程的每一个步骤TSP向你表明该如何在一个小组协同工作环
8、境中工作TSP教会你如何规划和管理一个小组项目TSP教会你如何为小组成员分配不同的角色TSP为小组提高生产力确立了一个过程11) USDP/RUPUSDP(UnifiedSoftwareDevelopmentProcess,统一软件开发过程)是一种基于构件的,用况和风险驱动的,以构架为中心,迭代和增量式的开发过程。分为初始、细化、构造、移交四个阶段。RUP(RationalUnifiedProcess,统一软件开发过程,统一软件过程)是一个面向对象且基于网络的程序开发方法论。根据Rational(RationalRose和统一建模语言的开发者)的说法,好像一个在线的指导者,它可以为所有方面和层
9、次的程序开发提供指导方针,模版以及事例支持。RUP和类似的产品一一例如面向对象的软件过程(OOSP),以及OPENProcess都是理解性的软件工程工具-把开发中面向过程的方面(例如定义的阶段,技术和实践)和其他开发的组件(例如文档,模型,手册以及代码等等)整合在一个统一的框架内。RUP是RationalUnifiedProcess,是一个商业产品,比USDP专业,特别是它提供的一套工具来实现(RationalEnterprizeSuite)。USDP的抽象程度比RUP大得多,是Jacobson等人在学术界的成果。12) SWEBOK2004年6月,美国IEEE协会和ACM的联合网站上公布了软
10、件工程知识体(SWEBOK)2004版全文,这标志着SWEBOK项目的工作告一段落,软件工程作为一门学科,为取得对其核心的知识体系的共识,已经达到了一个重要的里程碑。SWEBOK指南开宗明义提出五个目的:(1)促进软件工程业界统一看法;(2)划定学科边界,澄清软件工程的学科地位;(3)刻画软件工程的学科内容;(4)提出访问SWEBOK的论题(知识点);(5)为个人认证、申请执照、课程体系制定提供基础。SWEBOK把整个体系分解为10个知识域(KnowledgeArea):(子知识域/知识点)7/286/253/145/164/156/176/244/162/123/11(Topic),我国学界
11、称之为知识点,每个知识点还可以再分为下层,或下下层的子知识点。SWEBOK只给出知识域确切的概念和准确的定义,即内涵定义。从知识域到子域到知识点,要完全理解知识域的含义还要靠它的外延,即各种参考文献,13) SCM(SoftwareConfigurationManagement):又称软件形态管理、或软件建构管理,简称软件形管(SCM)。界定软件的成项目,对每个项目的变更进行管控(版本控制),并维护不同项目之间的版本关联,以使软件在开发过程中任一时间的内容都可以被追溯,包括某几个具有重要意义的数个组合,例如某一次交付给客户的软件内容。(二)简要回答下列问题1) PSP和TSP中质检过失比(A/
12、FR)是一个重要的质量度量参数。请简要说明A/FR分别小于1和大于2时对过程的意义。质检/过失比:质检质量成本/过失质量成本,用来测量在第一次编译前花在查找缺陷上的时间的相对值。可用复查时间/(编译+测试)时间来计算。能很好地指示测试中发现缺陷的可能性。当A/FR<1时,程序测试一般会发现很多错误;当A/FR>2时,过程产生无缺陷的可能性更大。A/FR的值对于小的独立的产品通常比2.0要大;A/FR的值对于相对大的产品等于1.0较为合适。例如,如果有实际总开发时间二262min,实际代码复查时间二29min,则质检成本=100*29/262=11.07%如果有实际编译时间=5min
13、,实际测试时间二10min,则过失成本=100*(5+10)/262=5.73%。此时,A/FR=11.07/5.73=1.93。可用复查时间/(编译+测试)时间来计算。2) TSP中的SUMQ的作用。项目管理者根据质量计划,通过SUMQ质量总结表协助团队成员跟踪绩效。SUMQ包括主要比率、无缺陷比率PDF、缺陷数/页、缺陷数/KLOC、缺陷比率、开发时间比率、质检过失比A/FR、复核比率、检查比率、缺陷引入比率、缺陷除去比率、阶段成品率、过程成品率。它提供了对质量问题的估计方法、深入分析设计和代码复核质量的方法,以及对整个过程的评估方法,使软件开发人员对质量问题更加敏感和小心,以便开发出高质
14、量的软件产品。在TSP中,质量计划(SUMQ)的制订与计划小结(SUMP)的制订相辅相成,缺一不可。计划小结的制订又需要参考产品规模摘要(SUMS)和任务计划(TASK),而任务计划又与进度计划(SCHEDULE)密切相关。除此而外,质量计划的制订还需要参考质量标准(QUAL)的要求。质量计划与进度计划之间的内在联系下图所示。图21SUMQ计划数据的来源在团队成员订出质量计划SUMQ后,质量经理就要依据该计划,协助团队成员追踪绩效。对于系统的每个部分,质量经理要在每个阶段追踪这些数据,以了解测量值是否落于质量计划所设定的范围内。如果没有,质量经理要在每周的定期会议中,将这些问题提出来,并向团队
15、提出改善建议。23,TSP衣博:如衣格乜说明名林DEFECT即用日GOAL小知INSIKV炉"I*ITL丽的风R邸川ALOG口HILOOTMTG全川町PIP过程改进建与ROLE小型吊色ROLEMX句色上仃犯薛SCHED祖黑计弼性惶STRAT跛珞ii.总表SUMDI小如MSUMDR的除M.范总3SUMP计划Ja结盘SUMQE宣总上我SUMS程序人小的;SUMT开发时电SUMTASKTASK总计划慢阻TESTLOG热试R志WEEK网伙志报告3)在软件配置管理系统中检入与检出是基本功能。请解释该功能的作用。检入就是将软件配置项从用户的工作环境存入到软件配置库的过程;检出就是将软件配置项从软
16、件配置库中取出的过程。4) CMM的主要用途。软件过程评估:(SPA,SoftwareProcessAssessment)一组经过训练和培训的软件专业人员,确定出一个企业软件过程的状况,找出软件企业所面对的与软件过程有关的、程改进的支持企业内部。软件过程改进:(SPI,SoftwareProcessImprovement)划、制定以及实施。软件能力评价:(SCE,SoftwareCapabilityEvaluation)最急需解决的所有问题,以便取得企业领导层对软件过帮助软件企业对其软件过程向更好的方向改变,进行计一组经过训练和培训的软件专业人员,鉴别出软件承包者的能力资格;或者是,检查、监察
17、正用于软件制作的软件过程的状况一一企业外部。5) PSP过程脚本的主要步骤。入口准则一进行问题描述;PSP项目计划总结表;以前开发的程序的实际规模和时间数据;时间记录日志;计划阶段一首先获得项目的需求,然后完成项目计划总结表,最后把计划所花费的时间记录在时间记录日志上。设计阶段一设计这个程序。用流程图或伪码等指定的格式记录设计的内容。该阶段结束时,把设计时间记录在时间记录日志上。编码阶段一利用所选择的程序设计语言来实现该设计。使用一致的编码格式。结束时在时间记录日志上记录编码所花费的时间。代码复查一复查所有的源程序代码;遵照代码复查脚本;修复并记录所发现的每一个缺陷;将代码复查阶段所花费的时间
18、记入时间记录日志;编译阶段一编译程序并改正所有发现的缺陷。修复缺陷直到正确编译无错为止。所有花费在这一阶段的时间记为编译时间,包括修改设计和改正代码的时间。该阶段结束时,在时间记录日志上记录编译时间。测试阶段一进行充分的测试以保证程序满足所有的需求,并且能够不带任何错误通过一组全面的测试集。所有花费在这一阶段的时间记为测试时间,其中包括修改设计、改正代码和重新编译的时间。该阶段结束时,在时间记录日志上记录测试时间。后置处理阶段一完成项目计划总结表中所有有关实际数据的那些栏目。然后登入一个估计的后置处理阶段的时间。过程框架如图所示:6)简要说明“项目计划总结表”在PSP中的作用。作用:在PSP中
19、,记录项目的计划数据和实际数据的表格叫项目计划总结表。在项目开始时,软件工程师记录计划部分的值;项目完成时,记录实际值,并累积值和累积百分比。计划不是一个准确的过程,作为一种技能,计划可以逐步的改善和提高,而提高的最主要途径是为所作的每一项工作做计划,然后对于每一项已经完成的工作,将它的计划值与实际结果作比较。这样可以更清楚的了解计划中的差错并且学会制定更好的计划。通过对缺陷数据的记录分析,可以清楚的看到设计过程中存在的问题,作为对日后开发有益的补充。项目计划总结表包括如下内容:日期学生程序教师程序号#程序设计语言总结计划实际累计Minutes/LOCLOC/HourDefects/KLOC过
20、程效益A/FR程序规模(LOC)新开发与更改的最大规模最小规模开发阶段时间/min计划实际累计百分比计划设计编码代码复查编译测试后置处理总计最大时间最小时间引入的缺陷计划实际累计累计百分比计划Def/Hour设计编码代码复查总计排除的缺陷计划实际累计累计百分比计划Def/Hour设计编码代码复查编译测试总计7)CMM中属于管理类别的关键过程域。2可重复级:需求管理;软件项目计划;软件项目跟踪及监督;软件子合同管理;软件质量保证;软件配置管理。3已定义级:集成软件管理;组间合作。4已管理级:定量的过程管理。8)简要说明PSP中程序规模与生产率的估计过程。先(按功能分类)估计程序可能有多少行代码L
21、OC,再估计编写每行代码需要多少分钟MIN/LOC;然后(按功能分类汇总)估算总共需要的时间。其中对代码行的估计:较大规模-收集一系列有关数据,建立一个历史记录,用新程序的每个功能比对历史记录中每个类似功能,然后累加。小规模-与历史数据比对作出好的规模估计关键是要有大量的历史数据,要进行多次规模估计,要定期将实际结果与估计值作比较。9)软件基线库的要求是建立软件配置管理数据库系统。请简要给出软件配置管理数据库系统中的主要功能。软件配置库又称软件受控库,是指在软件生命周期的某一阶段结束时,存放作为阶段产品而释放的、与软件开发工作有关的计算机可读信息和人工可读信息。软件配置库存储一般采用数据库的形
22、式。软件配置管理就是对软件配置库中的各项软件项管理。10)软件工程过程组与软件工程组的主要区别。软件工程组(SoftwareEngineeringGroup):负责一个项目的软件开发和维护活动的团体。活动包括需求分析、设计、编码和测试等。软件工程过程组(SoftwareEngineeringProcessGroup):是由专家组成的组,他们推进组织采用的软件过程的定义、维护和改进工作。软件工程过程组统领CMM实施活动,协调全组织软件过程的开发和改进活动,制定、维护和跟踪与软件过程开发和改进活动有关的计划,定义用于过程的标准和模板,负责对全体人员培训有关软件过程及其相关的活动。11)度量与分析在
23、CMM中的作用。描述与软件过程相关的基本测量实践,其目的是控制和改进过程,度量和分析一般包括测量示例,通过这些示例可以知道如何确定操作活动的状态和效果。12) TSP的启动过程主要包括的步骤及其要点。启动过程是TSP的第一个步骤,其步骤:1、描述了小组角色的职责2、制定小组目标3、制定小组成员目标4、制定角色目标5、TSP启动流程a、TSP周期1小组启动b、TSP周期n小组启动c、成员信息表d、每周例会e、每周状况报告(WEEK表)要点:组建小组不能随意;需要花费时间进行考虑;需要建立小组成员在工作中的相互关系;决定小组成员所担当的角色;取得目标的一致意见。13) TSP中小组角色有哪些?小组
24、长-开发经理-计划经理-质量/生产经理-技术支持经理14)在TSP中开发计划需要填写哪些表格?TASK、SCHEDULE、SUMS、SUMP、SUMQ表15) TSP中PDF指标是什么?有何意义?无缺陷比率PDF:PDF就是在给定的阶段内没有缺陷的产品部彳所占有的百分比。部件越多,PDF衡量集合的质量就越精确。PDF数据提供了一个对质量问题白初步估算方法。如果PDF不是平稳均匀增长的,那么就检查一下那些缺陷数目很多的部分。PDF数据如果在每一个除去缺陷阶段里有了,你就可以看出在整个开发过程中质量是如何提高的。PDF如果稳步提高,在系统测试过程中要达到或超过90%。16) UML中活动图可以用来
25、描述什么?描述活动之间的数据流或判断提供多种不同的业务流程视图描述用例中出现的活动使用不同的非连续符号显示多种不同的活动显示并行线程用来描述事物发展变化的过程,活动图可以描述业务流程,工作流程,类中的操作流程等。17) TSP的主要过程。启动过程,开发策略,开发计划,需求分析过程,设计过程,实现过程,测试计划,事后分析18) ROSE的基本功能有哪些1、对业务进行建模(工作流);2、建立对象模型(表达信息系统内有哪些对象,它们之间是如何协作完成系统功能的);3、对数据库进行建模,并可以在对象模型和数据模型之间进行正、逆向工程,相互同步;4、建立构件模型(表达信息系统的物理组成,如有什么文件、进
26、程、线程、分布如何等等)5、生成目标语言的框架代码,VB、JAVA、DELPHI等19) ROSE是否可以支持从USECASE自动导出类/对象结构?可以。在Rose的菜单File中可以打开import,export/导进,导出package,对利用现成的建模成果很有用,例如我们可以导进一个现成的java模型,这样就可以直接利用java标准的对象了。20) ROSE是否可以支持从类/对象结构自动导出详细代码?可以。很多外部的产品都对rose发布了add-in支持,以对rose的功能做进一步的扩展,如java、oracle、delphi,有了这些add-in,rose就可以做更多的深层次的工作了。
27、例如装了delphilink之后,rose就可以直接可以生成delphi的框架代码,也可以从delphi代码转化成rose模型,并进行两者的同步。(三)论述题1)从PSP的过程框架出发,谈谈PSP带来的益处。PSP是一种可用于控制、管理和改进个人工作方式的自我持续改进过程,是一个包括软件开发表格、指南和规程以及帮助软件工程师测量和改进工作方式的结构化框架。可用于控制、管理、改进和自我完善软件工程师软件开发的个人工作方式与过程。个体软件过程PSP的好处有:PSP为个体和小型群体优化软件过程提供了途径;PSP与具体的技术(程序设计语言、工具或者设计方法)相对独立;PSP能够说明个体软件过程的原则,
28、且原则能够应用到几乎任何的软件工程任务之中;PSP帮助软件工程师作出准确的计划;PSP确定软件工程师为改善产品质量要采取的步骤;PSP建立度量个体软件过程改善的基准;PSP确定过程的改变对软件工程师能力的影响。2)从PSP、TSP、CMM所关注的焦点,简要论述PSP、TSP、CMM之间的关系。1. PSP、TSP和CMM为软件产业提供了一个集成化的软件过程框架。三者互相配合,各有侧重,形成了不可分割的整体。2. CMM注重于组织能力和高质量的产品,它提供了评价组织的能力、识别优先改善需求和追踪改善进展的管理方式。然而,它实现的成功与否和TSP、PSP密不可分。在CMM的18个关键过程域中,有1
29、2个与PSP紧密相关,16个与TSP紧密相关。3. PSP注重于个人的技能,能够指导软件工程师如何保证自己的工作质量,估计和规划自身的工作,度量和追踪个人的表现。软件工程师们在他们参与的项目工作之中若充分利用PSP,则可以保证项目整体的进度和质量,有助于CMM目标的实现。4. TSP注重团队的高效工作和产品交付能力,结合CMM的管理方法和PSP的工程技能,通过告诉软件工程师如何将个体过程结合进小组软件过程,通过告诉管理层如何支持和授权项目小组,坚持高质量的工作,并且依据数据进行项目的管理,向组织展示如何应用CMM的原则和PSP的技能去生产高质量的产品。5. CMM关注组织所应该做的,它指明组织
30、应达到的目标;PSP为软件工程师个体持续改进个人的性能提供指导;TSP为受训的PSP工程师提供作为团队成员如何在高性能团队有效工作的具体指导。三者结合在一起,使软件组织如期生产高质量的软件产品。)3)从CMM的框架、结构方面,谈谈CMM是如何指示软件机构的能力成熟度的。1. CMM框架中融合了全面质量管理的思想,分别是初始级、可重复级、已定义级、已管理级和优化级。这5个级别是机构过程能力的5个不同层次的状态,从第一级到高一级的跃迁分别实现4个过程:有纪律的过程、标准一致的过程、可预测的过程、持续改进的过程。以5个不断进化的层次反映了软件过程定量控制中项目管理和项目工程的基本原则。2. CMM的
31、内部结构包括:成熟度级别,关键过程域,共同特性和关键实践。通过定义成熟度级别表示了过程能力的水平;通过关键过程域确定了实现一个成熟度级别所必须解决的问题;共同特性是一组属性,指明一个关键过程域的执行和制度化是否有效、可重复和可持续;关键实践描述了对关键过程域的有效实施和制度化起重要作用的基础设施和活动。4)从软件管理所包含的内容,简要论述软件管理的必要性及其发展趋势。1 .软件管理是对软件项目和产品进行管理的技术的总称。包含以下几方面的内容:2 .软件项目管理:主要完成定义项目目标,评估项目资源,估计项目实施的进度;3 .软件风险管理:主要进行软件产品的风险鉴定,分析,监视,缓解和计划;4 .
32、软件质量管理:主要包括质量计划和控制,验证和确认,产品和过程的度量,软件产品的可信任度和可靠性。5 .软件配置管理:软件产品的版本控制、变更管理、状态统计、和配置审计6 .在软件开发过程中,产品质量涉及到生产的所有环节,只有各个生产层面都不忽视质量,最后才能得到高质量的产品;而要制造及传递某种合乎特定质量标准的产品时,必须配合适当的管理技术及作业程序;另外,软件管理也是使企业具备持续提供符合要求产品的能力的必要条件。所以,对于整个项目和产品来说,软件管理都是必须的。7 .其发展趋势:目前,软件管理正向着软件过程管理发展,软件界已经认识到软件过程因素对软件开发的重要影响,它使人们把注意力从抽象的
33、软件生存周期模型的研究,转向那些对软件项目的成功起着关键作用的过程细节的研究。5)从TSP的整个过程框架来说明为什么在TSP中有一个后期维护过程。TSP整个过程框架过程中有一个后期维护过程,目的是收集、分析和记录工程数据;评价小组和每个角色的工作;确定改进后继周期过程的方法;写出周期报告。后期维护是TSP的最后一步,后期维护提供了一种结构化的方法来改进个人和小组的工作,每一个TSP周期都以后期维护结束,小组成员还可提出建设性改进意见,这样能够更好地完成高质量的产品,节省开发周期和开发成本。6)从管理和控制的角度,谈谈建立软件基线的意义。1 .基线是软件生命周期各阶段末尾的特定点,其作用是把各阶
34、段工作划分的更加准确,使之便于检验和确认阶段开发成果。在CMM中,项目建立或使用一个仓库用于存放配置项/单元和相关的SCM记录。仓库的内容称为软件基线。2 .建立软件基线库不仅仅是对软件开发的过程管理变得更加容易准确,最关键的它还是一种高效的管理方法,有助于最大程度的降低软件开发成本,提高质量和用户满意度。从管理角度看,其意义主要表现在以下几个方面:软件基线是软件生命周期各阶段末尾的特定点,即里程碑。其意义在于能把各阶段工作划分的更加准确,使之便于检验和确认阶段开发成果。在软件的整个生命周期中,建立和维护软件产品的完整性。对系统不同版本进行标识和跟踪的过程,可以保证软件技术状态的一致性。指导软
35、件组织提高软件开发管理能力;降低软件承包商和采购者的风险;评估软件承包商的软件开发管理能力;从控制角度看,其意义表现在以下几个方面:通过软件配置管理的更改控制和配置审核功能,可以系统地控制基线的更改和那些利用软件基线库构成的软件产品的发行。根据文档化的规程生成由软件基线库制造的产品,并控制它们的发行。使得软件配置管理活动是有计划的。选定的软件工作产品是已标识的、受控的和适用的。已标识的软件工作产品的变更是受控的。受影响的组和个人会得到软件基线的状态和内容的通知。7)从你已有的软件过程与软件管理的知识和软件实践经验,谈谈如何判断软件过程是成熟的和有效的。若软件过程满足如下几个标准,则认为其是成熟
36、和有效的:软件过程被正确无误地通知到现有职员和新雇员,工作活动均按照己规划的过程进行,而且和实际进行工作的方式相一致。软件过程中,需要时就更新过程,并且通过可控的先导性试验和(或)费效分析使其得到改进。所有项目和在整个组织中,所有的岗位及其职责都是清楚的。经理能够严格监控产品的质量和顾客的满意程度;有客观的、定量的基础,进度和预算是现实的基于以前的性能数据;能达到产品的成本、进度、功能和质量的预期结果。整个过程一致地遵循一个有纪律的过程,而且存在支持该过程的必要基础设施。8) 从USDP提倡的过程及其特点看,谈谈应用USDP对软件机构的过程改进可能带来的利弊。USDP的优势主要有:基于UML,
37、而UML作为面向对象系统建模语言的国际标准,得到了众多国际上顶级软件开发商和开发工具供应商的支持;强调早期就能确定或获得稳定的软件体系结构,从而降低系统开发风险;以用例(usecase)作为系统需求的核心表示,并驱动整个开发过程的完成,从而保证最终得到的系统正是用户真正所需要的产品;采用增量式、迭代式开发,缩短了产品投放市场的时间,并能适应用户需求的变化。USDP的劣势:软件开发理论上的统一和普遍适用却在产业应用上处处碰壁,遇到了许多问题。对于一个软件开发方法,它的通用性越大,实用性就越差。试图建立一个通用的软件开发过程,就必须研究大量的应用实例,总结这些实例的通用特点,并验证它的正确性,这是
38、一项艰巨的任务。软件开发机构不仅需要一个软件开发过程,更需要一个适合自己需求的软件开发过程。目前,软件开发过程较最好的解决方案是:为用户定制自己的软件开发过程。9) 谈谈对PSP、TSP、CMM中软件度量的基本过程和方法,举例说明。1 .螺旋模型沿着螺线旋转,在笛卡尔坐标的四个象限上分别表达了四个方面的活动,即:制定计划一一确定软件目标,选定实施方案,弄清项目开发的限制条件;风险分析一一分析所选方案,考虑如何识别和消除风险;实施工程一一实施软件开发;客户评估一一评价开发工作,提出修正建议。螺旋模型适合于大型软件的开发,应该说它是最为实际的方法,它吸收了软件工程演化”的概念,使得开发人员和客户对
39、每个演化层出现的风险有所了解,继而做出应有的反映。2 .关于TSP:TSP是一个小组软件过程框架TSP指导你通过小组软件工程的每一个步骤TSP向你表明该如何在一个小组协同工作环境中工作TSP教会你如何规划和管理一个小组项目TSP教会你如何为小组成员分配不同的角色TSP为小组提高生产力确立了一个过程3 .USDP是迭代和增量式的。其含义是以细小的步骤开发,整个开发分为多次迭代,每次迭代象一个微型项目,经历所有的核心工作流。增量就是两次相临的迭代之间的发布产品的差别,一次迭代的结果就是一个增量。每次迭代后产生一组基线制品,对基线制品经过评估和修改后才在此基线的基础上进行下一次迭代开发。通过一系列的
40、迭代得到最后的产品发布。此要素有利于逐步降低风险,适应用户需求的不断变化,允许开发过程中的灵活多变,迭代和阶段产生的基线和里程碑增加了过程的可视性,便于过程、产品的管理和控制。4 .与螺旋模型的一致性主要表现在迭代和增量式也即类似与沿着螺线旋转的方式。与TSP的一致性主要表现在以细小的步骤开发。10)谈谈USDP和软件开发模型-螺旋模型的一致性,以及USDP与TSP的一致性。USDP是迭代增量式的,每次跌代由以下五个工作步骤组成:需求,分析,设计,实现,测试。迭代增量生命周期的好处是1)错误提早发现,降低成本;2)对项目进度的更好保证;3)对于开发团队而言开发速度更快;4)便于适应用户需求的动
41、态改变;适合于大型复杂的系统。软件开发模型-螺旋模型也是迭代增量式,每次迭代的步骤与USDP也基本相同,同样有风险分析,可以降低开发风险,同样适合于大型复杂的系统。TSP提供了快速高效的反馈机制一一短周期、有评估;采用循环的开发战略一一从一个最小规模的产品版本开始;进行风险管理;其实上述机制的本质就是一种迭代增量模式,每次迭代周期短,加入风险评估,与上述两者是一11)谈你学习PSP、TSP、CMM的心得体会。学习PSP、TSP、CMM之后,结合之前自己的项目经历,体会如下:对于小项目,项目本身不大,开发周期也不长,所以看起来比较简单,比较容易成功。因而往往会忽视了这类小项目的管理,其实这是一种
42、误解,从本人的经验看来,小项目开发中容易犯以下的一些错误:开发之前没有认真地进行项目可行性和工作量的估计往往由于项目较小,便很草率地制定一个开发日程表,没有认真地估计项目难度,结果实际完成时间与估计完成时间往往有较大差别。没有真正的设计过程开发人员少,意味着不同人员的程序之间交互、接口相对少一些。开发周期短意味着往往是同样的几个人从头到尾负责一个项目。这两者都让人容易犯些错误。往往是几个人碰一下头,讨论一下最基本的结构、接口便分头去做自己的工作了,没有一份较正式的文档。这种做法潜在的危险之一是有的人可能会对讨论出的接口、结构理解有偏差(应该承认人是会犯错误的),一个误解可能造成以后的返工。另一
43、个潜在的危险是由于讨论时忽略了某些情况,等大家都按当时的分工完成属于自己的工作后,才发现各个模块组合起来却形不成一个完整的系统。其根源在于没有一个负责协调的人员不断监控整个开发过程。第三个潜在的危险是一旦有人中途退出开发队伍,其他人加入时,新来的人难以理解以前别人做好的代码,索性自己从头来。另外,没有文档的程序,日后维护和版本升级都比较困难。不经过单元测试而直接进入系统测试造成这一现象的原因是每个模块相对比较简单,但是为了测试一个模块需要建立一些测试环境。例如,为了测试一个函数是否正确,应该用一些测试数据去调用该函数,需要编写一些测试数据。但很多人嫌麻烦,觉得反正其他模块也很快出来了,直接用真
44、正的数据来运行几次就行了。这样,一旦直接进入系统测试,发现运行结果不正确后需要一步步查找。由于模块间的调用关系,可能查了很久才发现是某个模块的问题。这种方法一来效率比较低,大量的时间用在了将一个错误定位在模块上了。另外由于这种测试不完全,真正运行系统,当调用某模块时,可能大部分时候都是正常数据,极少出现边界情况,可能某些边界情况容易被忽视,很久之后才被发现。但是如果对每个模块进行单元测试时都进行一下边界测试,就会很容易消除一些隐患,可谓欲速则不达。12)基于数据库应用系统开发的基本过程:数据库应用系统的开发是一项软件工程。一般可分为以下几个阶段:1 .规划2 .需求分析3 .概念模型设计4 .逻辑设计5 .物理设计6 .程序编制及调试7 .运行及维护。这些阶段的划分目前尚无统一的标准,各阶段间相互联接,而且常常需要回溯修正。在数据库应用系统的开发过程中,每个阶段的工作成果就是写出相应的文档。每个阶段都是在上一阶段工作成果的基础上继续进行,整个开发工程是有依据、有组织、有计划、有条不紊地展开工作。详细介绍如下:1.规划规划的主要任务就是作必要性及可行性分析,对系统的开发、运行、维护的成本作出估算,预测系统效益的期望值。在收集整理有关资料的基础上,要确定将建立的数据库应用系统与周边的关系,要对应用系统定位,其规模的大小、所处的地位、应起的作用均须作全面的分析和论证。明确应用系统的
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 林地承包合同范本
- 2025年外研版八年级地理下册月考试卷含答案
- 2025年中图版七年级生物上册阶段测试试卷含答案
- 2025年牛津上海版七年级生物上册月考试卷含答案
- 2025年统编版选择性必修3化学上册月考试卷含答案
- 2025年湘教版九年级历史上册阶段测试试卷含答案
- 2025年华东师大版拓展型课程化学下册阶段测试试卷含答案
- 2025年木材加工企业安全生产责任保险合同范本4篇
- 二零二五版明星代言合同违约责任及处理协议3篇
- 二零二五年度店面升级改造与智能安防系统集成合同4篇
- 雾化吸入疗法合理用药专家共识(2024版)解读
- 2021年全国高考物理真题试卷及解析(全国已卷)
- 拆迁评估机构选定方案
- 趣味知识问答100道
- 钢管竖向承载力表
- 2024年新北师大版八年级上册物理全册教学课件(新版教材)
- 人教版数学四年级下册核心素养目标全册教学设计
- JJG 692-2010无创自动测量血压计
- 三年级下册口算天天100题(A4打印版)
- 徐州市2023-2024学年八年级上学期期末地理试卷(含答案解析)
- CSSD职业暴露与防护
评论
0/150
提交评论