软件项目管理与安全复习提纲 (给学生)

  • 格式:doc
  • 大小:54.50 KB
  • 文档页数:3

题型:
填空、选择、判断、简答、计算、论述

第一章
1、 软件项目不仅仅是软件开发项目
2、 什么是项目?它有哪些特性?每天的卫生保洁是项目么?在既定资源和要求的约束下,
为了创造某一独特的产品或服务,由个人或组织机构所做的一次性工作任务。目标性、
独特性、-临时性、制约性 、不确定性 、特定委托人、结果的不可逆转性
3、 什么是项目管理?指把各种系统,方法和人员结合在一起,在规定的时间,预算和质量
目标范围内完成项目的各项工作
4、 项目管理的知识领域: 1)项目范围管理;2)项目时间管理;3)项目成本管理;4)项目质量管
理;4)项目人力资源管理;5)项目沟通管理;6)项目风险管理;7)项目合同管理;8)项目综合管

5、 软件项目的分类:通用软件产品开发项目、定制软件系统开发项目、软件实施项目、软
件服务项目
6、 CMM将软件机构软件过程的成熟度分为哪5级,他们有什么特点?
第二、三、四章
7、 一个公司的组织三要素包括?
8、 立项分为定制软件和通用软件立项之别。立项阶段的最终交付项是立项报告。
9、 产品定位战略需要关注:重要性,能提供高价值的利益、独特性,与众不同,简单、便
宜。。。、优越性,ipad 、沟通性、先发制人、价格的可支付性、盈利性
10、 软件项目合同主要是 技术合同 ,它一般包括?和?
11、 软件项目估算主要对估算对象的哪些内容进行预测:规模、工作量、进度和成本和
缺陷
12、 软件项目估算只需要在项目启动前进行?
13、 项目估算的方法有哪些?功能点、特征点、对象点、模糊逻辑、标准构建、delphi、
PERT,LOC估算,COCOMO
14、 软件项目在开始时,期望的功能与可用的资源之间不匹配,如何处理?
第七章
15、 什么是软件配置管理?是软件过程的关键要素,是开发和维护各个软件演进过程的
方法和规程。包括标识在给定时间点上软件的配置,系统地控制对配置的更改,并维护
在整个软件生命周期中配置的完整性和可跟踪性。
16、 软件配置管理的前提和基础是:配置项识别(确认),
17、 什么是软件配置基线?指已经过正式评审和认可的标准,作为以后进一步开发的基
础,并且只有通过正式的更改控制规程才能进行更改的规程说明或产品。
18、 软件配置管理主要包括哪些活动. 1)制定SCM计划;2)软件配置标识与维护管理;3)
软件配置控制与变更管理 ;4)版本管理 ;5)软件配置状态发布 ;6)配置审计 ;7)软件构件
与发布管理
19、 常见的软件配置工具有:RCS,免费,不支持分支管理、CVS,免费,并发版本管
理,是对RCS的扩展、VSS,支持版本、变更管理和并行开发 、Harvest、ClearCase
(Together) 、Hansky Firefly
20、 什么是软件质量:客户要求的一种产品或服务所具备的所有特性。 或者:软件产
品满足规定的和隐含的需求的有关特征或特性集合。
21、 软件质量的三个方面要素:(1)软件的运行特征:正确性,可靠性,有效性,完整
性,可用性;(2)软件修正的能力:可维护性,灵活性,可测试性;(3)软件转移特征
(对新环境的适应程度):可移植性,可重用性,可互操作性
22、 SQA组织结构有三类(P156) : 职能结构(没有独立的SQA部门)、 矩阵结
构(有独立的SQA部门) 、 柔性结构(两者结合)
23、 软件质量控制的方法:缺陷追踪、源代码追踪、技术检查
24、 与估算是提前预测不同,度量是对实时或事后状态的收集与分析,用于对历史进行
评估。
25、 风险的两层含义:遇到危险、遭受伤害、经受损失,或者是招致伤害或损失。 (两
层含义:一种风险是不可抗力,一种是失误、自己招致的)
26、 软件项目管理的第二大关键问题,第一大问题是需求管理。包含两个特征:1)不
确定性;2)损失。 分为三类:1)已知风险,如技术创新;2)可预测风险,如人员调
整;3)不可预测风险
27、 风险管理主要包括风险识别和风险控制
28、 人力资源管理关键:合理的薪酬,最重要、最易使用的激励方法;有事做,有愿意
做、有挑战的事情做;职业发展 ;激励
29、 我国现有的和软件版权有关的法律:著作权法、计算机软件保护条例、计算机软件
著作权登记办法
30、 计算机软件的特点:复制容易 、复制品的质量稳定 、复制成本低廉 、传播容易、
开发者对于他人复制很难控制 、* 商品化软件的研发难度和研发成本都很高,擅自复
制、擅自应用他人研发的软件是无偿占用软件研发者劳动成果的行为。
31、 为什么要用著作权来保护软件?
32、 软件安全是指:采取工程的方法使得软件在敌对攻击的情况下仍能够继续正常工
作。即采用系统化、规范化、和数量化的方法来指导构建安全的软件。
33、 McGraw博士提出了软件安全工程化的三个支柱: 风险管理、软件安全切入点、安
全知识
34、 漏洞的定义:系统设计、实现和操作管理中存在的缺陷和弱点,能被利用而违背系
统的安全策略。
35、 漏洞一定存在缺陷,但缺陷不一定是漏洞
36、 软件缺陷的严重性级别可以分为四类 :致命的、严重的、一般的、轻微的
37、 根据漏洞出现的阶段,软件安全漏洞可分为两大类:设计漏洞和实现漏洞
38、 strSQL = “SELECT * FROM users WHERE (name = =’” + UserName + ”’) and (psw = ‘”
+ PassWord +”’);” 解释该sql语句为什么会出现sql注入漏洞。恶意的输入为:UserName
= “’ OR ‘1’= ’1’”; PassWord = “’ OR ‘1’= ‘1”; 导致原本的SQL字串被填为:strSQL = “SELECT
* FROM users WHERE (name = ‘’ OR ‘1’= ‘1’) and (psw = ‘’ OR ‘1’= ‘1’);”也就是实际上运行的
SQL命令會变成: strSQL = “SELECT * FROM users;”
39、 恶意软件大致分为两类,该分类是从主机依赖的角度进行的分类,依赖主机程序的
恶意软件和独立主机的恶意软件
40、 怎样区别三种主要的恶意软件(病毒、蠕虫、木马)
41、 安全软件开发生命周期是将安全原则渗透在整个软件开发的生命周期中,即在每个
开发阶段均需要考虑安全性
42、 传统软件开发生命周期,主要从软件功能实现的角度出发,安全策略却没有得到充
分地考虑。
43、 软件安全原则:1 使最薄弱的环节安全(Securing the Weakest Link ),2. 纵深防御
(Defense in Depth )3. 安全地错误退出(Failing Securely )4. 最小权限原则 (Least
Privilege)5 权限分离(Separation of Privilege ),6. 保护机制的经济性(Economy of
Mechanism),7. 最小共性原则(Least Common Mechanism )8. 勉强信任原则(Reluctance
to Trust ),9. 不要认为你的秘密是安全的(Never Assuming that your Secrets are Safe)
10. 完全仲裁(Complete Mediation)11. 心理接受能力(Psychological Acceptability ) 12.
保护隐私(Promoting Privacy)
44、 你认为要管好一个软件项目,项目经理应该具备怎样的素质和条件;他应该如何来
确保项目的成功?
45、 在学习了《软件安全》这部分课程之后,思考采取哪些措施来保证软件的安全?
(可以结合《软件安全》第五、六、七、八、九章的知识)

实验课需要掌握的内容:
1,理解SQL注入漏洞产生的原因,能够编写防范SQL注入的关键代码。
2,理解病毒、蠕虫、木马的概念;能够区分这三种恶意代码。