软件项目管理复习提纲_第1页
软件项目管理复习提纲_第2页
软件项目管理复习提纲_第3页
已阅读5页,还剩20页未读 继续免费阅读

下载本文档

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

文档简介

1、软件项目管理复习提纲软件项目管理复习提纲填空(30分)简答(40分)计算题(10分)论述 题(20分)第一章软件项目管理导论1、软件项目管理是对整个软件项目生命周期实施 的项目管理,软件项目不仅仅是软件开发项目。2、项目就是在既定资源和要求的约束下,为了创 造某一独特的产品或服务,由个人或组织机构所做 的一次性工作任务。项目具有的特征: 目标性 独特性-每一个项目都是唯一的 临时性-明确的开始和结束 制约性 不确定性 特定委托人-项目结果的需求者 结果的不可逆转性-不管结果如何,项目结束, 结果确定3、以下哪些是项目呢?上课野餐活动集体婚礼社区保安开 发微软的操作系统每天的卫生保洁神舟飞船 计

2、划建造大楼解决某个研究课题、开发软件4、项目管理就是指把各种系统,方法和人员结合 在一起,在规定的时间,预算和质量目标范围内完 成项目的各项工作。5、项目管理的知识领域项目范围管理项目时间管理项目成本管 理项目质量管理项目人力资源管理项目沟 通管理项目风险管理项目合同管理项目综 合管理6、软件项目分类:(1)通用软件产品开发项目-系统软件 windows,开发平台.Net,嵌入式软件,cad软件(2)定制软件系统开发项目(3)软件实施项目-在成熟产品基础上二次开 发,女口 ERP(4)软件服务项目-免费维护期后的服务7、CMM模型:能力成熟度模型CMM(Capability Maturity

3、Model)& CMM模型的5个等级及各自的含义特征CMM将软件机构软件过程的成熟度分为 5级 初始级,可重复级,已定义级,已管理级,优化级(1)初始级:软件过程是未加定义的随意过程, 项目的执行时随意甚至是混乱的。(随意过程)(2)可重复级:第二级的焦点集中在软件管理 过程上。一个可管理的过程是一个可重复的过程, 可重复的过程才能逐渐改进和成熟。(管理过程可 重复)(3)已定义级:该级别要求制定企业范围的工 程化标准,并将这些标准集成到企业软件开发标准过程中去。(有企业的工程化标准,不能随意修剪)(4)已管理级:所有过程需建立相应的度量方 式,所有产品的质量(包括工作产品和提交给用户 的最终

4、产品)需要有明确地度量指标。(过程有度 量方式)(5)优化级:该级别的目标是达到一个持续改 善的境界。所谓持续改善是指可以根据过程执行的 反馈信息来改善下一步的执行过程,即优化执行步 骤。(根据反馈改善过程)第二章组织平台1、组织:一个公司的组织三要素包括其结构、政 策和文化,这些因素可能在急剧变换的经济危机中 成为机能障碍。2、CMM中的关键工作组及相关角色的职责(大 概知道)(1)软件工程组 Software Engineering Group(2)软件相关组 Software Related Group(3)软 件工程过程组 Software En gi neeri ng Process

5、 Group(4)系统工程组 System Engineering Group(5)软件测试组 Software Test Group(6)软件质量保证组 Software Quality Assuranee Group(7) 软件配置管理组Software ConfigurationMan ageme nt Group(8)培训组 Training GroupCMM中的工作组中的角色及职责(1)系统分析员 开发域专家职责:对当前系统建模并产生关于将来系统 的信息。(2)体系结构员一个综合性角色,系统设计的主要角色,系 统集成的主要角色职责:在需求分析阶段:从系统的角度统一用 例和对象模型,解

6、决分析过程中的分歧。体系结构 员是交叉功能体系结构小组的领导者。(3)体系结构联络员体系结构小组的成员,子系统小组的代表 职责:为其所在小组传递信息、处理接口变 化。在系统设计阶段,集中负责子系统服务;在编 码阶段,负责API的一致性。(4)核心设计者职责:在启动对象设计前开发出编程指导原 则和约定。对许多约定来说,实际约定不如所有设 计人员和开发人员承诺使用约定更重要。 核心设计 者还负责保持SDD和RAD的一致性。(5)对象设计者职责:定义并具体化由他们实现的类的接口规格说明或子系统。(6)程序员职责:将对象模型转化为源代码。这包括实现 每个对象的属性和方法,集成所有的对象使之成为 一个单

7、独的系统。修改错误,进行现场调试等。(7)测试工程师职责:发现系统错误并记录。(8)实施人员职责:现场环境测试,系统安装,客户培训, 问题跟踪,客户协调等。(9)文档编辑者职责:负责文档的低层次综合。如文档的整 体格式与索引。技术文档编写者负责整理ODD的 最终版本,确保文档从结构和内容的角度都是一致 的。他们还检查是否遵循指导原则和规范。文档编 辑者还负责编辑、修改产品功能说明书、使用手册 等。(10)项目经理职责:组织协调相关人员进行需求分析、设 计、编码、测试与修改、系统实施、客户协调等。 负责计划、人员管理,负责跟踪、监控项目执行情 况,组织项目会议,修改项目计划等,根据项目计 划、质

8、量计划组织、审核项目质量,确保按计划完 成目标。第三章软件项目立项1、立项的目标:说服组织的决策者同意启动一个 项目或继续进行项目的下一个阶段。立项阶段的最 终交付项是立项报告。立项报告是一份描述项目可 行性的正式文档,是立项评审和决策的依据。2、立项分为定制软件和通用软件立项之别。产品 立项比定制立项复杂的多3、从商业竞争的角度考虑软件产品可分为:(1)高技术产品,进入门槛和附加值高(2)短线产品,技术含量不高,但需要快速占 领市场(3)行业业务系统,对行业精通,行业市场运 作能力(4)规模产品,SAP,oracle等4、对产品的内涵进行战略管理才是产品定义、产 品立项、产品计划的核心。产品

9、的五个层次是:(1)完成客户的核心需求(2)实现辅助核心需求,形成 一般产品(3)期望产品,在一般产品基础上,满足客户 更高期望(4)附加产品。在期望产品上锦上添花(5)潜在产品,满足客户潜在需求5、产品定位战略所考虑的因素:(1)重要性,能提供高价值的利益(2) 独特性,与众不同,简单、便宜(3) 优越性,ipad(4) 沟通性(5) 先发制人(6) 价格的可支付性(7) 盈利性6、软件项目合同主要是技术合同;技术合同一般 包括主合同和合同附件。第五章软件估算 1、软件项目估算是以准确的调查资料和项目可用 资源信息为依据,对估算对象的规模、工作量、进 度和成本和缺陷进行预测。是对非零可能性的

10、未来 的预测。它是项目计划的依据。、估算收敛图P88与想得项目项目大多数软件项目在开始时,期望的功能与可用的资 源之间不匹配,但随着项目的进展,功能或资源(或 两者)必定要互相匹配 4、估算内容内容:(1)产品规模估算(代码行或功能点)(2)工作量估算(人月)(3)进度估算(日历月份)(4)成本估算(人力和软硬件成本,学 习、培训、风险和维护成本)(5)缺陷数估算,缺陷数影响工作量和 进度估算5、FP功能点估算法(计算)6、COCOMO估算法(计算)7、COCOMO(COnstuctiveCOst mode)模型:结构性成本模型COCOMO模型分为基本、中级模型和详细模型& COCOMO适合的

11、软件项目(1)组织型(Organic):相对较小,简单项目, 工作人员理解好,经验丰富,硬件相关性小。如多 数应用软件,编译程序,老操作系统(2)嵌入型(Embadded):项目紧密联系硬件、 软件、操作。对接口,数据结构,算法要求较高, 规模任意。如航天指挥系统(3)半独立型:介于两者间9、COCOMO模型参量DSI(原指令条数-Size)定义为代码或卡片形式的源 代码。若一行由两个语句,算作一条指令,包括作 业类控制语句,格式语句,不包括注释语句进度发工作量,定 人年1KDsi=10工作量IM1度量单施为义半1MM=19人日=15 tDEv (度量单位为月)表示开发进度,他由工作 量决定。

12、MM=3.6(KD TDEV=2.5(M10、基本COCOMO公式11、例:一个规模为10KDSI的商用微机远程通信 嵌入软件,使用中间COCOMO模型进行软件 成 本估算。则:程序名义工作量MM=2.8*(10)1.20=44.38(MM)程序实际工作量MM=44.38* fl * f2 * f3 *f15=44.38*1.17=51.5(MM)开发所用的时间 TDEV=2.5*(51.5)0.32=8.9(月)如果分析员与程序员的工资都按每月 6000美元计 算,则该项目的开发人员的工资总额为 51.5*6000=309000 (美元)第七章软件配置管理1、软件配置管理包括标识在给定时间点

13、上软件的 配置,系统地控制对配置的更改,并维护在整个软 件生命周期中配置的完整性和可跟踪性。2、软件配置管理的功能(1)配置项识别(确认),是前提和基础(2)版本控制,基本功能(3)变更控制(4)配置状态统计(5)配置审核(6)构造管理,综合不同版本配置项构建不同版 本产品(7)过程管理3、实施SCM的主要活动(软件配置管理 SCM )(1)制定SCM计划(2)软件配置标识与维护管理(3)软件配置控制与变更管理(4)版本管理(5)软件配置状态发布(6)配置审计(7)软件构件与发布管理 4、基线:指已经过正式评审和认可的标准,作为 以后进一步开发的基础,并且只有通过正式的更改 控制规程才能进行更

14、改的规程说明或产品。 基线是 由管理人员或顾客正式检查并同意的配置项版本 5、配置管理工具P139(1)RCS,免费,不支持分支管理(2)CVS,免费,并发版本管理,是对 RCS的 扩展(3)VSS,支持版本、变更管理和并行开发(4)Harvest(5)ClearCase ( Together)(6)Hansky Firefly第八章软件质量管理1、软件质量定义IS09001的定义:客户要求的一种产品或服务 所具备的所有特性。ANSI/IEEE定义:软件产品满足规定的和隐含 的需求的有关特征或特性集合。2、软件质量的要素(1)软件的运行特征(最基本的):正确性,可 靠性,有效性,完整性,可用性

15、(2)软件修正的能力:可维护性,灵活性,可测 试性(3) 软件转移特征(对新环境的适应程度):可 移植性,可重用性,可互操作性3、SQA (软件质量保证)组织结构有三类及各自 的区别(P156):职能结构(没有独立的SQA部门)、矩阵结构(有独立的SQA部门)、 柔性结构(两者结合)4、软件质量控制定义:监控软件开发过程与结果,确保软件可以满足 在设计中明白交代出来的要求和没明确指出的需 求。也就是在软件开发过程的若干关键点上进行软 件项目跟踪和监控。5、质量控制方法(前3个) 缺陷追踪:IBM是最早发现质量和软件进度 关系的公司。他们发现具有最少缺陷的产品也就是 具有最短开发时间的产品。这项

16、工 源代码追踪:缺陷追踪是记录和追踪有关缺陷从 发现到解决过程的工作。源代码追踪是利用开发工 具的调试器,一行行追踪代码的执行情况。作主要是由程序员来做。 技术检查:技术检查是由技术专家或开发人员来 检查别人完成的工作。 测试Pareto分析6希格玛方法 第九章软件质量1、软件度量的根本目的是为了项目管理的需要, 利用度量来改进软件过程。2、需要注意的两个问题:1)度量结果是定量描述,不是定性描述2)与估算是提前预测不同,度量是对实时或事 后状态的收集与分析,用于对历史进行评估。第十章风险管理1、风险(词典定义):可能失去东西或受到伤害。 软件开发的滑铁卢罗伯特.格拉斯:遇到危险、遭受伤害、经

17、受损失,或者是招致 伤害或损失。(两层含义:一种风险是不可抗力,一种是失 误、自己招致的)2、风险管理是软件项目管理的第二大关键问题。3、软件项目风险:软件开发过程中及软件产品本 身可能造成的伤害或损失。它是介于确定性和不确 定性之间的状态。O2) 可包含两个特征:1)不确定性;2)损失 分为三类:1)已知风险,如技术创新; 预测风险,如人员调整;3)不可预测风险4、引起风险的因素分tt*3)软件项目风险丄风险|管理过程分为两大类卓险分析、风险控 片风险控风迂分优1)5、管风险监丁 I制6、风险识别的步骤(了解)(1) 收集资料(2) 估计项目风险形势(3) 识别风险第十二章 人力资源管理与团

18、队建设1、人力资源管理关键要素(1) 合理的薪酬,最重要、最易使用的激励方 法(2) 有事做,有愿意做、有挑战的事情做(3) 职业发展(4) 激励-2、人性的三类基本需求-欲望,情感,知识第十三章软件知识产权管理1、我国现有条例学习著作权法计算机软件保护条例计算机软件著作权登记办法2、计算机软件的特点 复制容易 复制品的质量稳定 复制成本低廉 传播容易 开发者对于他人复制很难控制 *商品化软件的研发难度和研发成本都很高, 擅自复制、擅自应用他人研发的软件是无偿占用软 件研发者劳动成果的行为*。3开源软件和自由软件的特征自由软件是指使用者对该软件的使用具有以下 四种自由:(1)可以自由运用该软件

19、,无论是什么目的(2)可以自由学习该程序怎样工作,并使之适应 被许可人的需求。其前提是可以自由读取源代码。(3)可以自由重新分发拷贝以便帮助被许可人的 邻友。(4)可以自由改善该程序,并发布给公众,让整 个社会得利。其前提是可以自由读取源代码。开发源代码软件(open source software),简称开 源软件。开源软件和自由软件的区别在于许可证对权利义 务的规定程度上。自由软件的许可证不允许被许可人将本许可证许可的源代码的修改版本、 演绎版本 以其他的许可证方式再许可或者保留起来不许可, 只能按此许可证实施再许可。开源软件的许可证则 允许以其他许可证的方式实施再许可。第十四章软件安全1

20、.软件安全是指:采取工程的方法使得软件在敌对 攻击的情况下仍能够继续正常工作。即采用系统 化、规范化、和数量化的方法来指导构建安全的软 件 2.McGraw 博士提出了软件安全工程化的三个支 柱(1)风险管理:一种贯穿软件开发的生命周期的 战略性方法;(2)软件安全切入点:在软件开发生命周期中保 障软件安全的一套最佳实际操作方法。这一套 最 佳实践方法包括:代码审核,体系结构风险分析, 渗透测试,基于风险的安全测试,滥用案例,安全 需求和安全操作(3)安全知识3、缺陷的定义 从产品内部看,软件缺陷是软件产品开发或维护过 程中所存在地错误、毛病等各种问题。从外部看,软件缺陷是系统所需要实现的某种

21、功能 的失效或违背。4、漏洞的定义系统设计、实现和操作管理中存在的缺陷和弱点, 能被利用而违背系统的安全策略。是缺陷不一定是漏洞,漏洞一定是缺陷。5、 软件缺陷的严重性级别可以分为四类:(1)致命的:造成系统和应用程序崩溃、死机、 系统悬挂,数据丢失、主要功能完成丧失等。(2)严重的:功能或特性没有实现,主要功能丧 失、导致严重的问题,或致命的错误声明。(3)般的:不影响系统的级别使用,但没有很 好地实现功能,没有达到预期效果。如次要功能丧 失,操作时间长等。(4)轻微的:对功能几乎没有影响,产品及属性 仍可使用。6、根据漏洞出现的阶段,软件安全漏洞可分为两 大类:设计漏洞和实现漏洞。7、栈溢

22、出漏洞:其产生的原因是输入数据时,由于没有进行边界 检查,导致输入的数据的数量超过了堆栈预留的存 储空间,最终覆盖了堆栈中的返回地址,如果覆盖 返回地址的是一个攻击程序的地址,则导致去执行 这个恶意程序。栈溢出的主要危害是能够修改邻接变量和返回地 址。& SQL注入(SQL Injection )漏洞是 Web系统特 有的一类漏洞,源于 PHP、ASP等脚本语言对用 户输入数据的错误解析。StlSQL 二 USELECT * IltOM users WHERE (name = =n+ UserNamc +F)話1出(|!i种 * ” 亠 Pass Word +恶韋的輪入为.UserName -

23、 OR r=Tr:Pass Word = * 1 ;导致原本的吕QL字串被填为;strSQL - “SELFCT 水 FROhl u处窝 VVHERF, (nntnc = OR ; l 二J land (pswtTQR 也就是实际上运行的SQL命令會变成: srrSQL =诗ELECT * FROM us曲广9、恶意软件的定义恶意软件,统称其行为损害系统用户和系统所 有者利益的软件,是故意在计算机系统上执行恶意 任务的恶意代码的集合。10、恶意软件的分类恶意软件大致分为两类,该分类是从主机依赖 的角度进行的分类,即依赖主机程序的恶意软件和 独立主机的恶意软件前者不能独立于应用程序或 系统程序,

24、即存在恶主文件,必须依赖宿主的运行 而启动依赖后者是能在操作系统上运行机程序 独立的程/I ”细菌拒绝服务攻击程序木马 门I逻辑炸弹 蠕虫i 开始丿11、三种主要的恶意软件及其区别(1)病恶毒用途(virus) 此恶意5不是如果恶意代码将是其自身的副本添加到文件、 文档或 磁盘驱动器代码启动扇区来进行复制,则被认为是病 毒。病毒代码白的明显特征是自行复制。 病毒通常会 将其包含的负携载(如木马)放置在一个本地计算机 上,然后执行一个或多个恶意操作(如删除用户数 据)。另外,仅进行复制而不具有负载的病毒仍然 是恶意软件代码是病为该病毒自身在复制时可能会损坏 数据、消耗系统资源并占用网络带宽。(2

25、)蠕虫(worm)如果代码在没有携带者(宿主文件)的情况下复制, 则被是认为是蠕虫。蠕虫试图将自己复制到宿主计 算机上,然后利用此计算机的通信信道进行复制。 病毒寻找文件以进行感染,但蠕虫仅尝试复制其自 身。(3)木马(Trojan)木马与病毒或者蠕虫的区别在于它不进行复制 (传 播)。但是病毒和蠕虫可用于将木马作为攻击负载的一部分复制到目标系统上。木马通常的意图是在 系统中提供后门,使攻击者可以窃取数据。12、软件开发生命周期指软件开发的开始到完成经 历的过程,这个过程定义了软件开发经历的不同阶 段。传统软件开发生命周期,主要从软件功能实现 的角度出发,其基本目的是如何合理地组织开发流 程以高效地完成软件的各项功能,通常只是注重软 件功能的定义,实现与测试,安全策略却没有得到 充分地考虑。即使是在测试环节考虑到软件系统的 安全性,也往往是在编码完成后进行,而没有将软 件安全的思想贯穿到软件开发的整个过程。13、安全软件的开发生命周期(Secure SoftwareDevelopment Lifecycle,SSDL)旨在通过软件开发 的各个步骤来确保软件的安全性,其目标是确保安 全的软

温馨提示

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

最新文档

评论

0/150

提交评论