1、软件项目管理考试重点及课后答案1. 需求分析团队中最主要的人员:项目经理、系统分析人员、设计人员、用户方业务人员。2. 提高软件开发效率的方法:架构设计、软件包(成熟的)、开源软件、CASE工具、面向对象代码重用方法、制定编码规范、代码生成工具、好的软件开发工具、平台。3. 软件项目的属性:(1)惟一性。(2)一次性(3)多目标性(4)生命周期属性(5)相互依赖性(6)冲突属性4. 软件设计中主要有哪些设计:系统架构设计、子系统设计、业务流程设计、数据库设计(核心)、系统间通信接口设计、批处理设计、用户界面设计、功能模块设计。5. 软件项目管理的核心(内容):项目进度、项目质量、项目成果、项目
2、人员。6. 软件迭代开发的过程:制定过程、风险分析、实施工程、客户评估。7. 软件项目生命周期中的四个重要阶段: 立项、设计、开发、收尾。8. 软件项目管理角度软件生命周期为:1.软件计划 2.软件需求分析 3.软件设计 4.软件编码 5.软件测试 6.软件实施 7.软件维护9. 软件利益相关者:用户、软件拥有者、开发商。【项目发起人、承约商/被委托人、客户/委托人、供应商、贡献者、项目投资方、经理以及项目涉及公共设施的当地居民。】10. 系统试运行的目的: ( 1.检测系统设计和功能是否符合用户要求 2.潜在问题和错误的发现 )(1) 通过对实际业务的模拟操作,检验系统设计和实现的功能是否真
3、正满足用户的实际业务需求。并在实际业务环境下,查找软件编码中潜在的问题和错误。(2) 通过操作人员的实际工作体会,对系统的可行性提前进行评价。(3) 提前在实际运行环境下检验系统处理业务峰值数据的稳定性和系统的健壮性。(4) 为系统正式运行积累宝贵的经验。11. 软件成本计算的公式:程序规模的估算值 = (程序的最小规模A,最大规模B,最可能的规模M)开发工作量 = 修正系数 = 12. 质量控制措施有哪些:1.实行工程化开发。 2.实行阶段性冻结与变更控制。 3.加强阶段性验证、确认和评审。 4.实行面向用户参与的原型演化。 5.软件开发尽量采用面向对象和基于构件的方法。 6.实行全面测试。
4、 7.引入外部监理与审计。 8.实行文档化和规范化。9.重视用户的参与。13. 软件开发活动特点(软件开发的特征):阶段性、阶段评审、文档管理。(瀑布模型软件开发的特点)14. 软件与软件项目特点:1.以客户为中心的实现理念。 2.知识与技术特性。 3.面向对象的实现方法。 4.软件的多次完善性。15. 软件项目的里程碑:项目立项完成期、项目启动完成期、需求分析完成期、系统设计完成期、软件编码完成期、软件测试完成期、系统试运行完成期、项目验收完成期。16. 软件设计的内容:系统架构设计、子系统设计、业务流程设计、数据库设计、系统间通信接口设计、批处理设计、用户界面设计、功能模块设计。17. 制
5、定规范编码的重要性: (1)符号名的命名规范(2)程序的注释统一书写风格(可读性、可修改性高),结构划一,便于维护,缩短开发周期。18. 软件项目管理的基本要素:1.资源。2.需求和目标。3.项目组织.4.项目环境.19. 软件沟通的重要性、形式、如何制定沟通计划、什么阶段做什么。通过沟通保证项目信息在项目相关人员内部及时、正确地提取、收集、传播、存储并最终进行处置,对于项目的工程实施具有重要意义。形式:书面的和口头的,内部的和外部的,正式的和非正式的,纵向的和横向的。制定沟通计划:1.建立项目沟通记录。2.应尽早沟通,主动沟通。3.应尽肯能保持沟通渠道的畅通,沟通计划中应明确双方互相认可的渠
6、道。需求:一周一次。 开发:每天、每周。20. 甘特图的功能、举例说明。主要用于项目进度和项目计划的安排。表明各项任务的计划进度和当前进度,能动态反应软件开发进展情况,主要功能:进度管理、质量管理、成本管理。21. 如果软件没有管理将导致什么后果(即软件项目管理的作用)软件项目管理的内涵、重要性。通过对软件开发人员管理,实现对软件开发的进度、质量和成本的控制管理。即在规定的日期内,按照质量要求,在预算内开发一个软件系统。使软件项目能够按照既定的目标,保质、保量、按进度、不超出预算成本且顺利地完成。按需求界定目标、按目标制定计划、按计划组织资源、按计划执行管理、按目标落实和考核阶段性成果、按目标
7、进行评估、分析、总结、改进和完善。22. 估算软件项目成本有几个估算方法:标准值估算法、Putnam估算法、COCOMO模型估算法、自上而下估算法、自下而上估算法。23. 如何计算软件成本、有哪些成本、类型是什么?24. 直接成本、间接成本又哪些 ? 直接成本是与本项目直接相关的成本,归属于这个项目本身。直接成本包括开发成本、管理成本、质量成本等。间接成本是指直接成本之外的成本,例如企业的日常开销、行政管理费用、员工福利、培训、预防性维护费用等。25. 甘特图坐标表示的内容。(横:进度和活动时间。竖:工作内容)26. 质量管理部门的职责:检查计划、检查规范、检查软件开发标准。27. 软件风险类
8、型哪些?范围、质量、进度、费用、人力资源、技术、法律风险、(自然灾害风险不算)28. CV大师的好处是什么?1.提高代码可重用性。2.减轻测试代价、降低成本3.单元模块的结构统一。课后题第一章1.给出项目的定义。 项目是一个特定的、待完成的有限任务,是在一定的时间内,利用有限的经费,满足一系列特定目标的多项相关工作的总称.2.列举项目的属性。 唯一性、一次性、多目标属性、生命周期属性、相互依赖性、冲突属性。3.给出项目的五个组成要素 项目的范围、项目的组织、项目的费用、项目的质量、项目的进度。第二章1.什么是软件? 软件是能够完成预定功能和性能的可执行的计算机程序和使程序正常执行所需要的数据,
9、加上描述程序操作和使用的文档。2.软件项目定义是什么? 软件项目是指采用计算机编程语言,为实现一个软件系统而展开的活动和过程,其目的是实现各类业务系统的信息化、业务流程的集成化管理与连续性执行。3.软件的生存周期包括哪些阶段,具体的内容是什么?(1)软件计划是在软件任务确立前 ,在需求调研、可行性研究的基础上,理解和界定工作范畴、资金初步预算、预期达到目标。(2)软件需求分析是通过对客户实际需求进行调查分析,编 写需求规格说明书。规格说明书通常包括功能需求、性能需求、环境的要求与限制等内容,该文档作为用户与软件开发人员之间共同的约定。(3)软件设计分为总体设计和详细设计。总体设计决定系统的框架
10、结构,并给出各部分的相互调用关系,相互间传送的数据结构以及各个部分的功能说明。详细设计则要设计出每一部分内容的实现流程和算法。(4)软件编码。是根据具体任务的特点,选择合适的语言与相应的开发环境,按照系统的详细设计内容编写程序代码的工作过程。(5)软件测试。目的是发现和排除程序中存在的错误。测试步骤通常分为单元测试和联合测试,通过测试和排错,获得可运行的软件系统。(6)软件实施是软件系统转向客户使用的活动过程。主要开展的工作包括客户化安装、数据装载、客户化定制、培训等,最终将软件产品交付给用户使用。(7)软件维护是指对已运行的软件继续进行排错、修改、完善和非质变的扩充。一般情况下,将软件需求分
11、析、软件设计、软件编码和软件测试称为软件开发阶段,把软件实施和软件维护称为软件的使用和维护阶段。4.软件项目管理的目的是什么?通过对软件开发人员管理,实现对软件开发的进度、质量和成本的控制管理。即在规定的日期内,按照质量要求,在预算内开发一个软件系统。使软件项目能够按照既定的目标,保质、保量、按进度、不超出预算成本且顺利地完成。 5.软件项目管理特点有哪些? 概括起来,其特点表现在标准化、规范化、国际化、阶段连续性、并行性、螺旋式循环渐进性、大量复合型人才的参与、自动化管理手段和网络化交流模式、技术性强及协作性强。6.软件项目管理的主要内容是什么?1.按需求界定目标 2.按目标制定计划 3.按
12、计划组织资源 4.按计划执行管理过程 5.按目标落实和考核阶段性成果 6.按目标进行评估、分析、总结、改进和完善。7.软件项目中有哪些角色,最主要的三个角色是什么? 软件项目中角色:项目经理、系统分析员、系统设计人员、程序员、测试员、实施人员、系统管理员。最主要的角色:项目经理、项目成员、客户、监理。第三章1.软件项目生命周期有哪些任务,分为哪些阶段?最重要的哪个阶段,其任务是什么? 整个软件开发活动可划分为四个主要的工作阶段:立项、设计、实现及收尾。最重要的阶段是设计。系统设计阶段主要完成系统的总体设计,详细设计,边界设计,信息模型设计,过程设计,功能设计以及软硬件环境的搭建与准备等工作。2
13、.软件项目中,软件系统设计做什么?软件系统实现做什么?软件收尾阶段做什么? 软件系统设计包括需求分析和系统设计两方面的工作。需求分析是系统设计(包括概要设计、详细设计等)的前提,也是系统设计内容的重要组成部分。 实现阶段的任务包括编码、测试、试运行等多个连续循环往复的软件开发工作,也正是这些工作的不断反复与循环才最终获得客户满意的交付成果,它是设计模型的物理实现,是直接面向用户的真实系统。 收尾阶段包括项目验收、系统运行、系统维护、直到软件系统生命周期结束等一系列收尾过程的活动3.软件项目中,项目定义需要做哪些具体的工作?项目定义阶段主要考虑项目的立项问题,具体任务是完成问题定义与项目可行性分
14、析、研究与论证工作,确定是否立项。4.软件项目生命周期中,通常设定哪些里程碑,成果是什么? (1)项目立项完成期:立项建议书、可行性分析报告。(2)项目启动完成期:项目进度计划、质量保证计划。(3)需求分析完成期:需求分析说明说。(4)系统设计完成期:概要设计说明书、详细设计说明书。(5)软件编码完成期:源程序代码、用户使用手册。(6)软件测试完成期:测试计划、测试报告。(7)系统试运行完成期:系统试运行报告。(8)项目验收完成期:验收报告。第四章1.软件项目论证的主要内容是什么? 项目论证是指对拟实施项目在技术上的先进性、可行性,经济上的承受力、合理性、赢利性,实施上的可能性、风险性,使用上
15、的可操作性、功效性等进行全面科学的综合分析,为项目决策提供客观依据的一种技术、经济和理论研究的活动。通过对拟实施项目的可行性进行研究与分析,完成项目的论证过程2.软件项目可行性的主要内容是什么? 可行性分析研究的内容包括对现有系统的分析、对建议的新系统描述、可选择的系统方案、投资和效益分析、社会因素方面的可行性、时间进度的合理性安排等。可行性分析研究最终目要得出结论:该项目是否值得开展,是否需要开展,如果开展,能够获得哪些效益,带来哪些好处3.软件项目通常有哪些计划?软件范围计划项目进度计划费用使用计划人力资源计划项目沟通计划采购计划项目里程碑计划团队管理计划质量管理计划配置管理计划4.软件项
16、目的大计划一般用什么图表示,详细计划一般用什么图表示? 软件项目的大计划一般用WBS图表示,详细计划一般用甘特图、项目网络图表示。5.软件质量指标有哪些? 功能性、可靠性、易使用性、效率、可维护性、可移植性。6.软件质量控制措施有哪些? 1.实行工程化开发 2.实行阶段性冻结与变更控制 3.加强阶段性验证、确认和评审 4.实行面向用户参与的原型演化 5.软件开发尽量采用面向对象和基于构件的方法6.实行全面测试7.引入外部监理与审计8.实行文档化和规范化9.重视用户的参与7.软件配置管理有哪些角色参加? 项目经理、配置控制委员会、配置管理员、开发人员。=8.给出软件成本计算中的标准值估算法公式,
17、并解释各个变量含义。 估算任务i工作量的最大值Ai、最小值Bi、最可能值Mi,则任务i的规模估算 Qi=(Ai十4Mi十Bi)6。第五章1.通常需求分析分为哪些阶段? 第一阶段:“访谈式”。和具体用户方的领导层、业务层人员进行访谈式沟通,主要目的是从宏观上把握用户的具体需求,了解现有的组织架构、业务流程、硬件环境、软件环境、现有系统等具体情况,建立起良好的沟通渠道和方式。第二阶段:“诱导式”。在分析人员已经了解了具体用户方的组织架构、业务流程、硬件环境、软件环境、现有的运行系统等信息的基础上,作出简单的用户流程和操作界面,同时结合以往的项目经验对用户采用诱导式、启发式的调研方法和手段,和用户一
18、起探讨业务流程设计的合理性、准确性、方便性、习惯性和易操作性。第三阶段:“确认式”进行具体的流程细化、数据项的确认阶段。2.需求分析阶段的团队成员,一般由哪些人员组成? 项目经理、系统分析人员、程序员、质量管理人员、配置管理人员、用户方的技术人员、用户方的业务人员。3.需求分析阶段的沟通形式有哪些?沟通手段有哪些?1)正式的形式。即按照本阶段工作计划的安排,对用户进行需求调研。或者是相关人员参与问题的讨论等。2)非正式的形式。通过共同进餐、闲聊、体育活动等方式。4.需求开发过程有哪些活动?需求管理过程有哪些活动? 需求开发过程活动有:1)需求获取。2)需求分析。3)需求定义。4)需求验证。 需
19、求管理过程活动有:1)需求跟踪。2)需求变更控制。3)版本管理。4)需求复用。5.对需求分析规格说明书,应该按哪些标准进行评审? 正确性、无歧义性、完整性、一致性、可验证性、可实现性、可修改性、可跟踪性。6.为什么需求阶段的每次会议需要由专人写备忘录并让客户签字或用邮件送给与会人员周知?1.发生有关需求的纠纷时作为依据2.避免对需求理解的歧义3.协调软件项目高效推进第六章软件项目设计中,主要进行哪些具体的设计? 1.系统架构设计2.子系统设计3.业务处理流程设计4.数据库设计5.系统间通信接口设计6.批处理设计7.用户界面设计8.功能模块设计第七章1.编码规范主要有哪些内容?同时简述其重要性。
20、 (1)符号名的命名规范主要应从易于识别和理解的要求出发: 1)符号的名字应尽量能反映它所代表的类型、含义、功能、调用特点等。2)应有一定的实际意义,使非本程序编写的同行能够见名知意。这有助于加强对程序功能的理解,增加程序的可读性。(2)程序的注释 分为序言性注释和功能性注释。1)序言性注释。通常位于每个程序模块定义的各类对象的前面,它给出该类对象的定义、输入、输出、参数、功能、调用形式等整体说明。2)功能性注释。是每个类或函数内部实现过程的段落性注释。主要作用是描述其语句说明、程序段或变量完成的功能及意义,从而解释本段程序代码要“做什么”。2.提高软件开发效率和质量,主要有哪些方法?1.提取
21、公用模块2.使用程序模板3.使用开源软件4.采用先进的开发工具(包括代码生成工具等)5.使用CASE工具6.面向对象方法3.为什么在软件项目的编码阶段要做出模块开发计划,并且经常检查计划执行情况和代码质量? 通过每月周天各项目组成员提交的阶段性成果,检查进度完成情况,发现工作开展过程中出现的问题,及时进行本阶段计划的调整,确保按计划完成软件编码阶段的任务。一是规范性要求检查,检查是否严格按照编码规范开展工作;二是检查代码的运行效率、逻辑的严密性等方面内容,以减少软件测试阶段的工作量,提高软件的编程质量。第八章1.软件项目中,软件测试通常从哪些方面进行测试? 单元测试、集成测试、确认测试、系统测
22、试、排错处理。2.软件系统中规模巨大时,哪些测试是必不可少的? 确认测试!3.软件测试中的流程测试通常是从什么角度进行测试的? 用户角度!4.模块测试解决什么问题?流程以及批处理测试解决什么问题?子系统测试解决什么问题? 模块测试对程序模块进行正确性检查,以发现模块内部的错误。流程以及批处理测试发现模块接口间的错误,对模块组装过程,模块接口,模块组装后的整体功能和性能进行检验。子系统测试模块间的相互协作和通信的接口是否正确。第九章1.系统试运行的目的是什么?(1)通过对实际业务的模拟操作,检验系统设计和实现的功能是否真正满足用户的实际业务需求。并在实际业务环境下,查找软件编码中潜在的问题和错误
23、。(2)通过操作人员的实际工作体会,对系统的可行性提前进行评价。(3)提前在实际运行环境下检验系统处理业务峰值数据的稳定性和系统的健壮性。(4)为系统正式运行积累宝贵的经验。2.系统试运行要做哪些准备1)环境准备:系统运行模拟环境的建立;用户真是运行环境的准备。2)数据准备:现有系统业务数据(历史数据)的整理及导入;新系统运行环境数据的准备及录入。3)人员准备:主要指新系统操作人员和系统管理员的准备。第十章1.项目验收时,项目承担方需要做哪些准备工作? (1)做好项目的收尾工作。(2)项目组自检工作。(3)源程序整理与系统归档。(4)准备项目验收文档。(5)提出验收申请。2.项目验收时,用户方需要做哪些准备工作? (1)成立项目验收委员会。(2)现场准备与软件系统的初步验收。3.软件系统交接需要做哪些工作?1)软件系统的用户交接:整理试运行阶段的测试数据;与相关软件进行数据衔接。2)文档资料的用户交接。3)新系统的正式上线运行:用户方成立项目接收组;人员培训;系统正式上线的基础准备工作;系统正式上线运行的技术保障工作;软件系统正式运行过程记录。
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1