软件10-oracle期末复习重点

软件10-oracle期末复习重点
软件10-oracle期末复习重点

一、题型:

1、单选题:(每题 1 分,共20分)

2、填空题:(每空 1 分,共 20分)

3、简答:(每题5分,共10分)灰色阴影 2/5

4、看程序写结果或写功能:(每题3分,共30分) 8/20 + 2个黄色

5、设计题:(4个,每题5分,共 20分)

二、各章复习重点:

第1章

1、掌握oracle数据库的启动与关闭的命令,连接数据库的命令。P32

第2章

1、Oracle数据库的重做日志有哪两种工作模式。P43

2、Oracle数据库逻辑存储结构的组成。P46

3、一个完整的oracle数据库包括哪两个部分。P50

4、什么是专用服务器模式,什么是共享服务器模式。P51

5、掌握后台进程DBWR、LGWR的作用。P52

6、什么是系统全局区,英文全称及缩写是什么。P54

7、系统全局区的组成。P54

第3章

1、什么是方案,方案与用户之间的关系,方案与表等数据库对象之间的关系。

P59

第4章

1、掌握LOB数据类型的特点,LOB数据类型主要有几种。P70

2、掌握使用ALTER TABLE语句创建约束。P83

这部分可看实验

第5章

1、掌握GROUP BY子句的使用原则,并会实际应用。P105

2、掌握各种基本的查询语句。

这部分可看实验

第6章

1、理解笛卡尔积的含义,如何使用SELECT语句实现笛卡尔积。P118

2、掌握连接查询和基本的子查询语句。P119

3、可用于多行子查询的比较运算符有哪些。P128

第7章

1、PL/SQL程序块由哪三部分组成。P137

2、BOOLEAN变量的取值有几种。P140

3、哪些SQL语句可以直接使用在PL/SQL程序中,哪些不能直接使用。P143

4、掌握PL/SQL中记录类型的定义。P147

5、掌握显式游标的定义及显式游标的使用过程,掌握游标与“LOOP…EXIT

WHEN…END LOOP”结合使用。P159

6、掌握显式游标有哪四个属性。P158

第8章

1、存储过程中的参数有几种模式。P168

2、在SQL*PLUS环境中调用存储过程有哪三种方式。P169

3、掌握存储过程的创建及使用。

4、掌握创建函数的语法,理解函数头部中的RETURN的作用。

第9章

1、oracle中常见的索引类型包括哪几种。P180 P180

2、位图索引和反向键索引分别适用于哪种情况。P181

第10章

1、什么是序列、同义词。

2、创建公有同义词和私有同义词,用户分别需要有什么系统权限。P195

第11章

1、掌握DML触发器和INSTEAD OF触发器的创建。P202

第12章

1、oracle中锁的有哪几种模式。P228

第13章

1、掌握使用命令向用户授权和撤销用户权限。P236

2、oracle中常见的对象权限有哪些。P236

第14章

1、oracle提供给了哪几种不同的备份方法,区分冷备份与热备份。P246

三、读程序写功能或结果的练习题

1、

DECLARE

Department CHAR(3);

BEGIN

Department := 'CS';

DELETE FROM classes WHERE department = Department;

END;

删除classes表中department列值为CS的所有记录

2、

DECLARE

v_Counter BINARY_INTEGER := 1;

BEGIN

WHILE v_Counter <= 50 LOOP

INSERT INTO temp_table V ALUES(v_Counter, 'Loop index');

v_Counter := v_Counter + 1;

END LOOP;

END;

向temp_table表中插入50条记录,值分别为1 Loop index....50 Loop index

3、

DECLARE

v_FirstName student.first_name%TYPE;

BEGIN

v_FirstName := UPPER('Charlie');

DBMS_OUTPUT.PUT_LINE(v_FirstName);

END;

v_FirstName的值为CHARLIE UPPER函数用来将小写转换为大写

4、

SELECT NEXT_DAY('09-7月-09','星期一') FROM dual;

找出从09-7月-09开始的下一个星期一的日期

5、

CREATE OR REPLACE PROCEDURE f_add_emp(f_emp_id NUMBER,

f_add_sal NUMBER )

RETURN number

IS

v_sum_sal number;

BEGIN

UPDATE emp SET sal=sal * (1+f_add_sal)

WHERE empno = f_emp_id;

SELECT sal into v_sum_sal FROM emp WHERE empno=f_emp_id;

RETURN v_sum_sal;

END f_add_emp;

定义存储过程,把emp表中empno为f_emp_id的员工的sal增大为原来的sal的1+f_add_sal

倍,然后再讲增大后的sal返回。

6、

DECLARE

STEXT V ARCHAR2(20);

BEGIN

STEXT:=’HELLO ORACLE’;

DBMS_OUTPUT.PUT_LINE(STEXT);

END;

输出HELLO ORACLE

7

SELECT REPLACE('This and That', 'Th','B') FROM dual ;

Bis and Bat

8、

CREATE OR REPLACE TRIGGER tig_old_emp

AFTER DELETE

ON emp

FOR EACH ROW

BEGIN

INSERT INTO old_emp

V ALUES(:old.empno, :old.ename,:old.job,:old.deptno);

END;

定义行级触发器,当在emp表中删除记录后,向old_emp表中插入值为(

old.empno, old.ename , old.job,old.deptno)的记录,这三个数据的值对应old表中被删除记录所对应的列的值。

9、

CREATE OR REPLACE PUBLIC SYNONYM hr_emp FOR hr.employees

创建hr.employees表的公共同义词,也就是hr.emp。

10、

CREATE OR REPLACE TRIGGER emp_t1

BEFORE INSERT OR UPDATE OR DELETE

ON emp

BEGIN

IF to_char(SYSDATE,'dy')='星期日' THEN

RAISE_APPLICATION_ERROR(-20000,'Today is holiday!');

END IF;

END;

定义触发器,如果在星期日想对emp表做DML(插入、删除、修改数据)操作时,引发错误消息:Today is holiday!即禁止在星期日对emp表做DML操作

11、

DECLARE

CURSOR c1 IS SELECT ename,sal FROM scott.emp;

BEGIN

FOR r IN c1 LOOP

DBMS_OUTPUT.PUT_LINE(r.ename||' '||r.sal);

END LOOP;

以ename sal的形式(为具体值),逐行输出scott.emp表中ename,sal两列的所有值

12、

DECLARE

sala NUMBER(5);

BEGIN

SELECT sal INTO sala

FROM emp WHERE ename= ‘MARTIN’ ;

IF sala < 1500 THEN

UPDATE emp SET sal=1500 WHERE ename= ‘MARTIN’ ;

END IF;

COMMIT;

END;

若MARTIN的佣金不足1500元,则将其工资提为1500元。

13、

CREATE OR REPLACE TRIGGER tab_trigger

INSTEAD OF INSERT

ON tab_view

BEGIN

INSERT INTO student(sno,sname,dno)

V ALUES(:NEW.sno,:NEW.sname,:NEW.dno);

END;

创建替代触发器,替代向tab_view表中插入记录,而是想student表中插入记录(sno,sname,dno),三个值为用户原来向tab_view表中要插入的数据

通过视图向表student中插入数据(sno,sname,dno)

14、

CREATE OR REPLACE FUNCTION F_ENCRYPT

(TXT V ARCHAR2)

RETURN V ARCHAR2 AS

TMP V ARCHAR2(20);

BEGIN

TMP:=REPLACE(TXT,'OR','MIR');

RETURN TMP;

END;

定义函数,利用函数将一字符串中的OR子串替换为MIR,并将替换后后的字符串返回。

15、

CREATE OR REPLACE TRIGGER emp_t1

BEFORE INSERT OR DELETE ON emp

FOR EACH ROW

WHEN(OLD.deptno=10 OR NEW.deptno=10)

DECLARE

s varchar2(50);

BEGIN

s:=TO_CHAR(SYSDATE,'DY HH24:MI');

IF INSERTING THEN

INSERT INTO temp2

V ALUES(s||'插入10部门一个记录,雇员号为:'||:NEW.eno);

ELSIF DELETING THEN

INSERT INTO temp2

V ALUES(s||'删除10部门一个记录,雇员号为:'||:OLD.eno);

END IF;

END;

定义行级触发器,对表emp进行INSERT或者DELETE操作之前,如果emp中对应的原来的deptno的值为10,或者新插入的数据中对应的deptno的值为10时,

如果是插入操作,则向temp2表中插入一条记录,值为新插入的eno的值,格式为,星期几几点:几分插入10部门一个记录,雇员号为:新插入的eno的值

如果是删除操作,则向temp2表中插入一条记录,值为emp表中删除前的eno的值,格式为,星期几几点:几分删除10部门一个记录,雇员号为:新插入的eno的值

16、

SET SERVEROUTPUT ON

BEGIN

UPDATE emp SET sal=sal+500 WHERE empno=1234;

IF SQL%FOUND THEN

DBMS_OUTPUT.PUT_LINE('成功修改雇员工资!');

COMMIT;

ELSE

DBMS_OUTPUT.PUT_LINE('修改雇员工资失败!');

END IF;

END;

使用隐式游标的属性,判断对雇员工资的修改是否成功。

17、

SET SERVEROUTPUT ON

DECLARE

v_count NUMBER(2) := 1;

BEGIN

WHILE v_count <6 LOOP

INSERT INTO emp(empno, ename)

V ALUES (5000+v_count, '临时');

v_count := v_count + 1;

END LOOP;

COMMIT;

END;

使用WHILE 循环向emp表连续插入5个记录。

18、

SET SERVEROUTPUT ON

DECLARE

CURSOR emp_cursor IS SELECT ename, job, sal

FROM emp WHERE empno=7788;

emp_record emp_cursor%ROWTYPE;

BEGIN

OPEN emp_cursor;

FETCH emp_cursor INTO emp_record;

DBMS_OUTPUT.PUT_LINE(emp_record.ename||','|| emp_record.job||','|| emp_record.

sal);

CLOSE emp_cursor;

END;

利用游标提取emp表中编号为7788的员工的 ename, job, sal 进行输出。

19、

CREATE OR REPLACE FUNCTION select_sal(no scott.emp.empno%TYPE)

RETURN scott.emp.sal%TYPE

IS

salary scott.emp.sal%TYPE;

BEGIN

SELECT sal INTO salary FROM scott.emp WHERE empno=no;

RETURN salary;

EXCEPTION

WHEN NO_DATA_FOUND THEN

RETURN 0;

END;

创建函数,从scott.emp表中查询指定员工的工资

20、

DECLARE

v_sal NUMBER;

v_empno NUMBER:=&empno;

BEGIN

SELECT sal INTO v_sal FROM emp

WHERE empno=v_empno;

IF v_sal <1200 THEN

UPDATE emp SET sal=v_sal+500

WHERE empno= v_empno;

END IF;

END;

根据用户输入的指定的empno查询员工的sal ,如果sal<1200,sal增加500

四、设计题的复习重点及练习题

1、掌握在PL/SQL中条件选择语句的使用,参考教材p151-152页中的例7.24和例7.25。

2、掌握带有in参数的存储过程的编写,根据传进来的参数值选择不同的判断分支进行修改操作。

3、掌握函数的创建,参考教材p174页中的例8.10和p177页中的实验4。

4、掌握触发器的创建,参考教材p203页中的例11.1和p204页中的例11.3。

软件工程期末考试重点

软件工程期末考试重点 《软件工程》期末复习重点 第一章软件工程 1. 什么是软件工程。 A.把系统化的、规范的、可度量的途径应用于软件开发、运行和维护的过程,也就是把工程化应用于软件中;b.研究a中提到的途径。2. 软件工程的三要素:方法、工具和过程。 第二章软件过程 1. 软件生命周期分为哪几个阶段?每个阶段的基本任务是什么? a.软件定义:确定软件开发工程必须完成的总目标问题定义:要解决的问题是什么 可行性研究:上阶段所确定的问题是否有可行的解决办法?需求分析:目标系统必须做什么 b.软件开发:具体设计和实现在前一个时期定义的软件。概要设计:怎样宏观地解决问题 详细设计:应如何具体地实现这个系统 编码和单元测试:写出正确的、易理解、易维护的程序综合测试:通过各类型测试使达到预定要求。 c.运行维护:修正错误,使软件持久地满足用户需要。改正性维护:诊断和改正使用中的错误适应性维护:修改

以适应环境变化 完善性维护:根据用户的要求改进和扩充以完善预防性维护:修改以为将来的维护作准备 2. 常用的过程模型有哪些?各自的特点及不足。如:瀑布模型的不足是不能适应需求的动 态变更。 A.瀑布模型 特点: 可强迫开发人员采用规范化的方法。严格地规定了每个阶段必须提交的文档。要求每个阶段交出的所有产品都必须是经过验证的。 缺点:太理想化,于瀑布模型几乎完全依赖于书面的规格说明,很可能导致最终开发出的软件产品不能真正满足用户的需要。如果需求规格与用户需求之间有差异,就会发生这种情况。只适用于项目开始时需求已确定的情况。 B.快速原型模型 特点:快速 软件产品开发基本上是线性顺序进行。降低了规格说明文档变化的可能性。减少了后续阶段错误的可能性。 c.增量模型 1 优点: 人员分配灵活,刚开始不用投入大量人力资源。

软件工程期末试题(含答案)解析

填空题(每空 1 分,共25 分) 1.软件生存周期一般可以划分为,问题定义、可行性研究、需求分析、设计、编码、测试 和运行和维护。 2.基于软件的功能划分,软件可以划分成___系统软件_、支撑软件、应用软件__三种。 3.可行性研究,应从经济可行性、技术可行性、运行可行性、法律可行性和开放方案 可行性等方面研究。 4.系统流程图是描绘物理系统的传统工具。它的基本思想是用图形符号以黑盒子形式 描绘系统里面的每个部件 5.数据流图的基本四种成分:数据输入的源点和数据输出汇点、加工、数据流和数据 存储文件。 6.结构化分析方法是面向_数据流_进行需求分析的方法。结构化分析方法使用_数据 流图DFD_与_ 数据字典_来描述。 7.继承性是自动地共享类、子类和对象中的方法和数据的机制。 8.软件详细设计工具可分为 3 类,即_图示工具_、_设计语言_和_表格工具_。 9.为了在软件开发过程中保证软件的质量,主要采取下述措施:_审查__、复查和管理复审、___ 测试_。 10.大型软件测试包括单元测试、集成测试、确认测试和系统测试四个步骤。单项选 择题(每小题2分,共20 分) 1.软件设计中划分模块的一个准则是( C )。 A、低内聚低耦合 B.低内聚高耦合 C.高内聚低耦合 D. 高内聚高耦合 2.Jackson 设计方法是由英国的M. Jackson 提出的,它是一种面向( C )的软件设计方法。 A 、对象 B.数据流 C.数据结构 D.控制结构 3.试判断下列叙述中,哪个(些)是正确的( C )。 a、软件系统中所有的信息流都可以认为是事务流 b、软件系统中所有的信息流都可以认为是变换流 c、事务分析和变换分析的设计步骤是基本相似的 A、a B 、b C 、c D 、 b 和 c 4.( A )是用户和设计交换最频繁的方法。 A 、原型化方法B、瀑布模型方法 C. 螺旋模型方法D、构件组装模型 5.软件工程方法学的目的是:使软件生产规范化和工程化,而软件工程方法得以实施的主 要保证是( C )。 A 、硬件环境 B 、软件开发的环境 C. 软件开发工具和软件开发的环境D 、开发人员的素质 6.20 世纪50 年代以来,出现了许多不同的程序设计语言,下列语言中哪个语言是低级语言 ( D )。 A、PASCAL B、VISUAL BASIC C. C++ D、汇编语言 7.软件测试的目的是?( D ) A 、证明软件的正确性 B. 找出软件系统中存在的所有错误 C.证明软件系统中存在错 误 D. 尽可能多的发现软件系统中的错误 8.使用白盒测试方法时,确定测试数据应根据( A )和指定的覆盖标准。A、程序的内 部逻辑 B 、程序的复杂程度 C、该软件的编辑人员 D、程序的功能 9.软件维护工作的最主要部分是( C )。

软件工程经济学复习习题

软件工程经济学复习习题 -标准化文件发布号:(9456-EUATWK-MWUB-WUNN-INNUL-DDQTY-KII

例1.某软件公司拟开发一企业的管理信息系统(MIS )。根据概要设计,该MIS 由1N , 2N ,3N ,4N ,5N ,6N 和7N 七个功能子系统构成,项目组根据经验及公司信息库的资料 确定各子系统工作量的最小可能值j a 、最大可能值j b 和最可能值j m (单位:行)及成本费用率oj C (单位:元/行)、劳动生产率oj E (单位:行/人月)(j =1,???,7),见表1。此外,在系统的需求分析、系统设计、编码、测试四个阶段的工时费用率k α(单位:元/人月)和i 子系统在上述各阶段的工作量估计1i M 、2i M 、3i M 、4i M (单位:人月),i =1, ???,7,见表2。试利用功能分解法对该MIS 作成本与工作量估算。 表1 成本、工作量功能维估算表 解: (1)由表1计算各子系统的以行为单位的工作量j E 、以人月为单位的工作量j M 和成本 j C (j =1,???,7),可得,

子系统1N : 111141800424002650 234266a m b E +++?+==≈ 行 11123427.4315 o E M E = =≈ 人月 11114234232788o C C E =?=?≈ 元 同理可得子系统2N ,???,7N 分别为: 25383E ≈ 行 224.5M ≈ 人月 2107660C ≈ 元 36800E = 行 330.9M ≈ 人月 3136000C = 元 43358E ≈ 行 414.0M ≈ 人月 460444C ≈ 元 52142E ≈ 行 515.3M ≈ 人月 559976C ≈ 元 64975E ≈ 行 624.9M ≈ 人月 6109450C ≈ 元 78400E = 行 728.0M = 人月 7151200C = 元 则系统的总成本s C 与总工作量s M 分别为: 1277.424.528.0145s M M M M =++???+=++???+= 人月 12732788107660151200657518s C C C C =++???+=++???+= 元 (2)由表2计算系统在生命周期各阶段的工作量j M 和成本j C (j =1,???,4),可得, 需求分析阶段: 1112171 1.0 2.0 4.014.5M M M M =++???+=++???+=人月 11114.5520075400C M α=?=?= 元 同理可得系统设计、编码和测试的工作量和成本,分别为: 261.0M = 人月 2292800C = 元 326.5M = 人月 3112625C = 元 450.5M = 人月 4227250C = 元 则系统的总成本s C 与总工作量s M 分别为:

软件工程期末复习知识点整理

复习整理 、绪论 1. 软件的定义 软件是能够完成预定功能和性能的可执行的计算机程序,包括使程序正常执行所需要的数据,以及有关描述程序操作和使用的文档。(软件=程序+文档) 2.软件工程的定义 是指导计算机软件开发和维护的一门工程学科;采用工程化的原理与方法对软件进行计划、开发和维护;把证明正 确的管理技术和最好技术综合运用到软件开发中;研究经济地开发岀高质量的软件方法和技术;研究有效维护软件 的方法和技术。 3.软件危机的概念,及出现的原因 软件开发技术的进步未能满足发展的要求。在软件开发中遇到的问题找不到解决的办法,问题积累起来,形态尖锐的矛盾,导致了软件危机。 产生原因: ⑴软件规模越来越大,结构越来越复杂 ⑵软件开发管理困难而复杂。 ⑶软件开发费用不断增加。 ⑷软件开发技术落后。 ⑸生产方式落后,仍采用手工方式。 ⑹开发工具落后,生产率提高缓慢。 4.三种编程范型的特点 (1)过程式编程范型:把程序理解为一组被动的数据和一组能动的过程所构成;程序=数据结构 +算法;着眼于程序的过程和基本控制结构,粒度最小 (2)面向对象编程范型:数据及其操作被封装在对象中;程序=对象+消息;着眼于程序中的对 象,粒度比较大 (3)基于构件技术的编程范型:构件是通用的、可复用的对象类;程序=构件+架构;眼于适合 整个领域的类对象,粒度最大 二、软件生存周期与软件过程 1、软件生存周期的定义,把生存周期划分为若干阶段的目的是什么,有哪几个主要活动 定义:一个软件从开始立项起,到废弃不用止,统称为软件的生存周期 目的:软件生存周期划分为计划、开发和运行3个时期;把整个生存周期划分为较小的阶段, 给每个阶段赋予确定而有限的任务,就能够化简每一步的工作内容,使因为软件规模而增长而大大增加了软件复杂性变得较易控制和管理。 主要活动:需求分析、软件分析、软件设计、编码、软件测试、运行维护( P19) 2、软件生命周期划分为哪几个阶段 软件生命周期分为三个时期八个阶段: 软件定义:问题定义、可行性研究; 软件开发:需求分析、概要设计、详细设计、编码、测试; 软件运行:软件维护

软件工程导论-期末题库(完整版)

1.填空题 1.一般来说,可以从__一致性__、_完整性___、_现实性____和_有效性___四个方面验证软件需求的正确性。 2.IPO图是_输入、处理和输出图_的简称,它是美国IBM公司发展完善起来的一种图形工具。 3.系统流程图是描述__物理模型__的传统工具,用图形符号表达了系统中各种元素之间的_____信息流动_____情况。 4.数据流图中的箭头表示数据流,椭圆或圆形表示数据处理,矩形表示数据的源点/终点。 5.软件测试的步骤按顺序分别是:___单元测试_____、子系统测试、系统测试(子系统和系统测试通常称为集成测试)、__确认测试__和_____系统测试(集成测试) ____ 6.软件生命周期一般可分为_问题定义_、可行性研究、_需求分析_、设计编码、_测试_、运行与维护阶段。 7.可行性研究主要集中在以下四个方面_经济可行性_、__技术可行性____、__法律可行性___和抉择。 8.在结构化设计中,HIPO图应用在总体设计阶段,由IPO图和_层次图_两部分组成。 9.复杂问题的对象模型通常由下述五个层次组成:主题层、___类与对象_层、__结构___层、_属性_层和__服务_层。 10.实施精化设计的目标是基于模块的“高内聚低耦合”的原则,提高模块的_独立性。 11.软件生命周期一般可分为___问题定义_、可行性研究、__需求分析__、概要设计__、详细设计、编码、__软件测试_、运行与维护阶段。 12.面向对象的数据存储管理模式分为__文件__、_关系数据库__和__面向对象数据库___三种。 13.单元测试一般以_白盒_测试为主,__黑盒__测试为辅。

软件工程经济学 重点

第一章 4.什么是软件生存周期?软件生存周期一般可划分为哪几个阶段? 1)通常我们将软件以概念形成开始,经过开发、使用和维护,直到最后退役的全过程称为软件的生存周期。 2)在此生存周期中,软件可根据其所处的状态、特征以及软件开发活动的目的、任务划分为若干阶段。下图给出了划分为七个阶段的软件生存周期阶段划分图。 9.什么是软件工程经济学?软件工程经济学的研究内容有哪些? 1)软件工程经济学(Software Engineering Economics, SEE)从名词上看可以理解为工程经济学与软件工程的交叉学科。我们将其定义为以软件工程领域中的经济问题和经济规律为研究对象的一门经济学分支学科,具体地说,就是说研究为实现特定功能需求的软件工程项目而提出的在技术方案、生产(开发)过程、产品或服务等方面所作的经济分析与论证,计算与比较的一门系统方法论学科。 2)研究内容具体如下: ·软件工程经济学分析基本原理及应用,如价值工程原理、规模经济与生产函数原理、成本效益分析与边际分析原理,项目开发的时间、成本/效益、质量、效率的均衡原理、优化原理与敏感性分析等。 ·软件项目的成本估算、成本控制与融资。 ·软件项目开发的风险与不确定性分析和投资可行性分析。 ·软件项目的质量评价、经济效益评价、财务评价以及主要质量指标——软件可靠性、维护性等的经济评价方法。 ·软件生存周期中各种生产(开发)与管理活动的经济分析与决策,如软件工具与设设、备的采购决策、信息获取决策、开发技术方案的评价与决策、成本的阶段分配决策、软件发行决策、产品定价决策等。 ·软件项目的工作任务分解与计划制定、组织与协调及其经济分析与优化。 ·软件开发过程的动态规律描述及其各经济要素的关联分析。 ·软件开发效率(劳动生产率)的影响因素分析及改进策略研究。 第二章 4.什么是固定资产?什么是流动资产?

软件工程(清华钱乐秋版)期末复习重点

1、什么是软件工程 在《计算机科学技术百科全书》中软件工程是应用计算机科学、数学及管理科学等原理,开发软件的工程。 2、软件生存周期分哪几个阶段分别简述各个阶段的任务。 答:软件生存周期有计算机系统工程、需求分析、设计、编码、测试、运行和维护6个阶段。 A 计算机系统工程的任务是确定待开发软件的总体要求和范围,以及该软件与其他计算机 系统元素之间的关系,进行成本估算,做出进度安排,并进行可行性分析,即从经济、技术、法律等方面分析待开发的软件是否有可行的解决方案,并在若干个可行的解决方案中做出选择。 B 需求分析主要解决待开发软件要“做什么”的问题,确定软件的功能、性能、数据、界面 等要求,生成软件需求规约。 C 软件设计只要解决待开发软件“怎么做”的问题。软件设计通常可分为系统设计和详细设 计。系统设计的任务是设计软件系统的体系结构,包括软件系统的组成成分、各成分的功能和接口、成分间的连接和通信,同时设计全局数据结构。详细设计的任务是设计各个组成成分的实现细节,包括局部数据结构和算法等。 D 编码阶段的任务是用某种程序设计语言,将设计的结果转换为可执行的程序代码。 E测试阶段的任务是发现并纠正软件中的错误和缺陷。测试主要包括单元测试、集成测试、确认测试和系统测试。 F软件完成各种测试后就可交付使用,在软件运行期间,需对投入运行的软件进行维护,即可发现了软件中潜藏的错误或需要增加新的功能或使软件适应外界环境的变化等情况出现时,对软件进行修改。 3、简述各类软件过程模型的特点。 答:典型的软件过程模型有:瀑布模型、演化模型(增量模型、原型模型、螺旋模型)、喷泉模型、基于构件的开发模型和形式方法模型等。 A瀑布模型中,上一阶段的活动完成并经过评审后才能开始下一阶段的活动,其特征是: 接受上一阶段活动的结果作为本阶段活动的输入; 依据上一阶段活动的结果实施本阶段应完成的活动; 对本阶段的活动进行评审; 将本阶段活动的结果作为输出。 B 增量模型将软件的开发过程分成若干个日程时间交错的线性序列,每个线性序列产生软 件的一个可发布的增量版本,后一个版本是对前一个版本的修改和补充,重复增量发布的过程,直至产生最终的完善产品。 C 原型方法从软件工程师与客户的交流开始,其目的是定义软件的总体目标,标识需求。 然后快速制定原型开发的计划,确定原型的目标和范围,采用快速设计的方式对其建模,并构建模型。被开发的原型应交付给客户使用,并收集客户的反馈意见,这些反馈意见可在下

期末软件工程资料整理

1.软件工程的基本原理? 答:基本原理包括3要素:方法,工具,过程;其中,方法是完成软件开发任务的技术方法回答怎样做的问题;工具是为运用方法提供自动半自动的软件工程支撑环境;过程是为了获得高质量的软件所需要完成的一系列任务的框架,他是完成各任务的工作步骤。 2.RUP中有9个工作流,前6个为过程工作流,后3个为核心支持工作流程。 3.问答:P.32第2题 4.简述结构化范型和面向对象范型的要点,分析优缺点。 5.电话号码有几类:校内电话号码由4位数字组成,第1位不是0;校外电话分本市电话和外地电话,拨校外电话需先拨0,本市电话则再接着拨8位数字(第1位不是0),外地电话则拨3位区码再拨8位电话号码(第1位不是0)。 答案: 电话号码=[校内电话号码|校外电话号码] 校内电话号码=非零数字+3位数字 校外电话号码=[本市号码|外地号码] 本市号码=数字零+8位数字 外地号码=数字零+3位数字+8位数字 非零数字=[1|2|3|4|5|6|7|8|9] 数字零=0 3位数字=3{数字}3 8位数字=非零数字+7位数字 7位数字=7{数字}7 数字=[0|1|2|3|4|5|6|7|8|9] 6.名词解释:第一范式,第二范式,第三范式 答:第一范式:每个属性都必须是原子值,仅仅是一个简单的值而不能含内部结构。 第二范式:满足第一范式条件,且每个关键字属性都由整个关键字决定。 第三范式:符合第二范式条件,每个关键字属性都仅由关键字决定,且一个费关键字属性不能仅仅是对另一个非关键字属性的进一步描述。 7.储蓄系统:储户填写的存款单或取款单由业务员输入系统,是存款则系统记录存款人姓名、住址(或电话号码)、身份证号码、存款类型、存款日期、到期日期、利率及密码(可选)等信息,并印出存单给储户;是取款而且存款时留有密码,则系统首先核对储户密码,若密码正确或存款时未留密码,则系统计算利息并印出利息清单给储户。 试用数据流图描绘下述系统的功能,并用实体-联系图描绘系统中的数据对象。 答案: 系统的数据流图如下图所示:

(完整)软件工程经济学复习

(完整)软件工程经济学复习 编辑整理: 尊敬的读者朋友们: 这里是精品文档编辑中心,本文档内容是由我和我的同事精心编辑整理后发布的,发布之前我们对文中内容进行仔细校对,但是难免会有疏漏的地方,但是任然希望((完整)软件工程经济学复习)的内容能够给您的工作和学习带来便利。同时也真诚的希望收到您的建议和反馈,这将是我们进步的源泉,前进的动力。 本文可编辑可修改,如果觉得对您有帮助请收藏以便随时查阅,最后祝您生活愉快业绩进步,以下为(完整)软件工程经济学复习的全部内容。

软件工程经济学复习 第一章软件工程与软件工程经济学 企业管理:指在企业特定的生产方式下,管理者按照某些原则、程序和方法,使用一定的手段(工具、设备),针对生产的各要素(人力、物力、设备、资金、信息)进行计划、组织、指导、协调和控制,以使其发挥最大的经济效果,达到预期的管理目标的一种筹划和过程。 从企业管理的分类来看,软件企业管理的内容包括:战略管理、生产运作管理、市场营销管理、财务管理、人力资源管理、信息管理、项目管理、库存管理。 工程经济学:是研究工程技术领域中的经济问题和经济规律的一门经济学分支。具体地说,就是研究对为实现特定功能而提出的在技术上可行的技术方案、生产过程、产品和服务,并在经济上进行分析与比较,计算与论证的一门经济系统方法论的学科. 软件工程经济学(Software Engineering Economics,SEE) 是以软件工程领域中的经济问题和经济规律为研究对象的一门经济学分支学科。具体地说,就是研究为实现特定功能需求的软件工程项目而提出的在技术方案、生产(开发)过程、产品或服务等方面所作的经济分析与论证,计算与比较的一门系统方法论学科。软件工程经济学应包括: 1、软件系统的基础概念与理论部分:学科研究的对象、任务、特征、研究范围和研究方法; 2、软件系统的微观经济分析部分:(1)软件系统的内部构成要素和经济活动及其关联分析,如投资、成本、利润、效益、工期、效率、质量及研制、开发、维护、管理活动及其关联分析;(2)软件系统的组织结构、管理决策及其与经营活动的关系 3、软件系统的宏观经济分析部分:软件系统的物流、资金流、信息流的输入与输出及其对系统外部—国家、地区经济、社会、国防、人民生活的影响. 软件工程的诞生源于“软件危机"。软件危机是指计算机软件开发中的一系列问题,其中既有软件技术问题,如怎样开发软件?怎样维护现有的容量不断扩张的软件?怎样满足人们的需求增长?也有经济问题,如怎样正确估计开发进度和开发成本?如何处理一些相互对立的软件目标,如成本、工期、可靠性等?软件测试需要多长时间?。因此软件工程经济学的研究始终是伴随着软件工程的发展而前进的,而日渐成熟的应用统计学、运筹学、系统经济学为其发展提供了科学而系统的方法论。 第二章软件工程经济学基础 从信息系统工程观点来看,任何对软件项目的工程经济分析与研究都必须从实体、时间和要素等三个层面上来展开。其中, 实体层面包括人、硬件、软件、数据; 时间层面包括规划、分析、设计、构建(生产或开发)、运行与维护等五个阶段; 要素层面(活动层)包括投资、成本、效益、定价、工期、生产率等。 投资的概念:投资是企业为了实现某种特定的目标(通常是为了获得收益或避免风险)而进行的某种资金投放或运行的经济活动。是企业自我发展所必须的经济活动,也是维持企业简单再生产与扩大再生产的必要手段。 投资活动包括生产性投资和非生产性投资: 生产性投资的目的是为了保证生产与经营活动的正常运行,或为了扩大企业再生产能力,提高企业技术装备水平,提高劳动生产率,开发新产品等; 非生产性投资对于企业来说,主要作证券投资,亦即通过购买股票、债券、期货及其他金融衍生工具或委托贷款以获取收益,但不直接参与经营活动的一种投资活动。 固定资产投资是指为建造或购置固定资产所预先垫付的部分资金.

软件工程期末考试参考试题

软件工程期末考试参考试题 一、填空题 1、软件生存周期一般可分为问题定义、可行性研究、需求分析、设计编码、测试、运 行与维护阶段。 2、按软件的功能进行划分,软件可以划分为系统软件、支撑软件和应用软件。 3、可行性研究主要集中在以下四个方面经济可行性、技术可行性、法律可行性和抉择。 4、用户界面的可使用性是用户界面设计最重要的也是最基本的目标。 5、常见的软件概要设计方法有3大类:以数据流图为基础构造模块结构的结构化设计 方(SD),以数据结构为基础构造模块的Jackson方法,以对象、类、继承和通信为基础的面向对象设计方法(OOD)。 6、数据流图和数据字典共同构成系统的逻辑模型。 7、软件测试的方法有分析方法和非分析方法(即黑盒法)。 8、单元测试一般以白盒测试为主,黑盒测试为辅。 9、成本估计方法主要有自底向上估计、自顶向下估计和算法模型估计三种类型。 10. 文档(document)—一种数据媒体和其上所记录的(数据)。 11 机器语言、汇编语言:依赖于机器,面向(机器) 12. 软件有效性(efficiency),指软件系统的时间和(空间)效率。 13. 软件定义过程可通过软件系统的(可行性研究)和需求分析两个阶段来完成。 14. 软件定义的基本任务是确定软件系统的工程(需求),也就是要搞清“做什么”。 15. 为了使用户需求逐步精细化、完全化、一致化,通常采用(需求建模技术)。 16. 一个软件的深度是指其控制的(层数)。 17. 以详细设计说明书为输入,将该输入用某种程序设计语言翻译成计算机可以理解并 最终可运行的代码的过程叫(编码)过程。 18. 软件维护是软件生命周期的(最后)一个阶段 19. 软件工程由(方法)、工具和过程三部分组成,称软件工程的三要素。 20. 基于计算机系统的软件要素中的软部件由程序、数据和(文档)组成。 21. 数据流图就是用来刻画数据流和转换的信息系统建模技术。它用简单的图形记号分 别表示数据流、转换、(数据源)以及外部实体。 22. 被继承的类我们称之为基类(父类),在基类的基础上新建立的类我们称之为派生 类子类。 23. 流程图也称为程序框图是最常用的一种表示法,它有顺序、分支和(循环)三个基 本控制构件。 24. 机器语言和汇编语言,也称为(低级)语言。 25. 软件测试是执行程序发现并排除程序中潜伏的(错误)的过程。 26. 软件可维护性,是指软件产品交付使用后,在实现改正潜伏的错误、改进性能等属性、适应环境变化等方面工作的(难易)程度。 27. 软件可理解性,指系统具有清晰的结构,能直接反映问题的(需求)。 28 在实体-关系图简称E-R图中,数据对象实体用长方形、关系用(菱形)、属性用椭 圆表示。 29. 建立数据流模型要遵循的原则包括:每个加工至少应有一个输入数据流以反映被处 理数据的来源和一个(输出)数据流来反映加工的结果 30. 从工程管理的角度软件设计可分为概要设计和(详细)设计两大步骤。

山东大学-软件工程复习重点整理

第一章 1.1软件工程(SE)的定义、向、作用: SE:在将有关软件开发与应用的概念科学体系化的基础上,研究如有计划、有效率、经济的开发和利用能在就算机上正确运行的软件的理论和技术的工程法学,一些开发和维护软件的法、过程、原则。是一个系统工程,既有对技术问题的分析与综合,也有对开发过程和参与者的管理。 SE的向:面向对象模式,结构化模式,基于过程的模式等 SE的作用:付出较低的开发成本,达到要求的软件功能,取得较好的软件性能,开发的软件易于移植,需要较低的维护费用,能按时完成开发工作,及时交付使用。 1.2开发模式:软件开发的全部过程,活动和任务的结构框架,它能直观的表达的表达软件开发全过程,明确要完成的主要活动,任务和开发策略。 1.3说明错误、故障和失效的含义及联系(并举例): 错误:是在软件生产过程中人为产生的错误(需求说明中的错误,代码中的错误) 故障:是在功能实现过程中产生的问题;是错误导致的结果,是在软件中一个错误的表现(一个错误可能产生多个缺陷,静态存在的) 失效:是相对于系统指定行为的偏离,系统违背了它应有的行为(动态存在的) 联系:当一个开发者编写程序时,会在代码中出现错误。当这个程序被编译或集成到一个系统中时,系统就存在故障。当你运行这个系统时,可能会导致失效,即人们产生错误,故障是错误的结果(部观角:从开发者的角度看待问题),当故障执行时出现失效(外部视角:从用户角度看到的问题)。并不是所有的错误会导致故障,并非每个缺陷都对应相应的失败。1.4软件质量应从哪几个面衡量,论述之: (1产品的质量)(2过程的质量)(3商业环境背景下的质量) (1)产品的质量:用户从失败的数目和类型等外部特征进行评价,如果软件具有足够的功能并且易于学习和使用,用户就断定软件是高质量的;开发者从缺陷的数目和类型等部特征来作为产品质量的依据。 (2)过程的质量:有很多过程都会影响到最终的产品质量,只要有活动出了差错,产品的质量就会受到影响;开发和维护过程的质量与产品的质量是同等重要的。 (3)商业环境背景下的软件质量:将技术价值和商业价值统一起来。 1.5软件系统的系统组成(系统的要素有哪些):对象(实体)+ 活动+ 关系+ 系统边界活动:活动是发生在系统中的某些事情,通常描述为由某个触发器引发的事件,活动通过改变属性把一个事物变成另一个事物。 对象:活动中涉及的元素称为对象。 关系:是指活动与对象之间的关系。 系统边界:即系统包含的功能与系统不包含的功能之间的界限。 1.6现代软件工程大致包含几个阶段及各个阶段的文档: (1)需求分析:主要包括问题定义、可行性分析、需求分析《需求规格说明书》

软件工程期末考试复习资料1

版权声明:本文版权归05112114、05112125 所 有,未经许可,任何任何媒体均不得改变其形 式,进行转载或摘录,违者必究! 软件工程期末考试复习资料一 (仅参考) 拟订人:超越吉他手、朱古力、哖_少オ輕狂第一章:软件工程的产生和发展有关复习资料 一、软件工程的定义: 1、软件危机的产生:软件危机的出现是由于软件的规模越来越大,复杂度不断增加,软件需求量增大。 2、软件危机主要表现:两个方面:①软件产品质量低劣,甚至开发过程就夭折 ②软件生产率低,不能满足需要 3、软件工程的三要素:①方法:完成软件开发各项任务的技术方法 ②工具:研究支撑软件开发方法的工具 ③过程:为开发高质量软件所规定的各项任务的工作步骤 4、软件工程研究的标准及目标: 标准:分为4个层次,国际标准、行业标准、企业规划、项目规划 目标:以较少的投资获取高质量的软件。有易于维护、低的开发成本、高性能、缩短开发期 5、软件工程研究的主要内容:以下两个方面:①软件开发方法、技术;软件开发工具及环境 ②软件管理技术、软件规范(国际规范) 7、软件工程学的目的:①以较少的投资获取高质量的软件 ②运用科学的方法和工程化的规范管理来指导软件开发 ③克服软件危机 8、软件工程的基本原则:如下4条基本原则 ①必须认识软件需求的变动性,采取适当措施来保证结果产品能忠实地满足用户需求 ②稳妥的设计方法大大地方便了软件开发,以达到软件工程的目标 ③软件工程项目的质量与经济开销直接取决于对它所提供的支撑的质量与效用 ④有效的软件工程只有在对软件过程进行有效管理的情况下才能实现 9、软件工程过程及特性:是指在软件工具的支持下,所进行的一系列软件工程活动 包括4类基本过程:1)软件规格说明书2)软件开发3)软件确认4)软件演进 特性:可理解性、可见性、可靠性、可支持性、可维护性、可接受性、开发效率和健壮性等。 二、软件与软件生存周期 1、软件的概念和特点 1)概念:软件是程序以及开发使用维护程序所需的所有文档 2)软件的构成:由应用程序、系统程序、面向用户的文档及面向开发者的文档4部分构成即:软件=程序+文档 3)特点:①软件是一种逻辑实体,不是具体的物理实体

软件工程经济学 课程学习报告

《软件工程经济学》课程学习报告 计算机科学与技术学院学院: 班软件工程班级: 号:1208060389 学 名:姓 指导教师:

专业资料. 目录 《软件工程经济学》课程学习报告 (1) 目录 (2) 1. 章节知识点 (3) 1.1第一章: (3) 1.2第二章: (4) 1.3第三章: (7) 1.4第四章: (10) 1.5第五章: (12) 1.6第六章: (14) 2. 知识点掌握................................................................................ 16 3. 软件工程经济学心得体会及感悟............................................... 19

专业资料 1.章节知识点 1.1第一章: 本课程第一章的开始部分讲的是《软件工程经济学》 这门课以下面几个章节:第1章软件工程与软件工程经济学,第2章软件工程经济学基础,第3章软件的成本、工期与定价分析,第4章软件项目的经济、社会效益与风险分析,第5章软件生产过程经济分析,第6章软件项目的进度计划制订与团队组织,第7章软件测试的资源分配、进度管理与最优发行,来进行讲解。然后介绍了,Software Engineering Technology是研究软件的分析、设计、开发和维护的工程技术方法的一门学科分支,Software Engineering Economics是研究软件的分析、设计、开发和维护的工程经济方法的一门学科分支,Software Engineering Management是研究软件的分析、设计、开发和维护的工程管理方法的一门学科分支,SEE

软件工程期末复习知识点整理

复习整理 一、绪论 1.软件的定义 软件是能够完成预定功能和性能的可执行的计算机程序,包括使程序正常执行所需要的数据,以及有关描述程序操作和使用的文档。(软件=程序+文档) 2.软件工程的定义 ●是指导计算机软件开发和维护的一门工程学科; ●采用工程化的原理及方法对软件进行计划、开发和维护; ●把证明正确的管理技术和最好技术综合运用到软件开发中; ●研究经济地开发出高质量的软件方法和技术; ●研究有效维护软件的方法和技术。 3.软件危机的概念,及出现的原因 软件开发技术的进步未能满足发展的要求。在软件开发中遇到的问题找不到解决的办法,问题积累起来,形态尖锐的矛盾,导致了软件危机。 产生原因: ⑴软件规模越来越大,结构越来越复杂 ⑵软件开发管理困难而复杂。 ⑶软件开发费用不断增加。 ⑷软件开发技术落后。 ⑸生产方式落后,仍采用手工方式。

⑹开发工具落后,生产率提高缓慢。 4.三种编程范型的特点 (1) 过程式编程范型:把程序理解为一组被动的数据和一组能 动的过程所构成;程序=数据结构+算法;着眼于程序的过程和基本控制结构,粒度最小 (2) 面向对象编程范型:数据及其操作被封装在对象中;程序 =对象+消息;着眼于程序中的对象,粒度比较大 (3) 基于构件技术的编程范型:构件是通用的、可复用的对象 类;程序=构件+架构;眼于适合整个领域的类对象,粒度最大 二、软件生存周期及软件过程 1、软件生存周期的定义,把生存周期划分为若干阶段的目的是什么, 有哪几个主要活动 ●定义:一个软件从开始立项起,到废弃不用止,统称为软件的 生存周期 ●目的:软件生存周期划分为计划、开发和运行3个时期;把整 个生存周期划分为较小的阶段,给每个阶段赋予确定而有限的 任务,就能够化简每一步的工作内容,使因为软件规模而增长 而大大增加了软件复杂性变得较易控制和管理。 ●主要活动:需求分析、软件分析、软件设计、编码、软件测试、 运行维护(P19) 2、软件生命周期划分为哪几个阶段

《软件工程》期末考试题及答案++精华版!!

《软件工程》期末考试样题 一、填空题 1.软件开发模型有(瀑布模型)(螺旋模型)第四代技术模型(原型模型)构件组装模型、混合模型。 2.可行性研究一般可以从(经济)可行性、(技术)可行性、运行可行性、法律可行性和开发可行性等方面来研究。 3.现在向银行存款,年利率为i,若希望在n年后从银行得到F元,现在应该存入的钱数为(F/(1+i)n)。 4.数据流图的基本符号包括(数据输入的源点和数据输出的汇点)、(加工)、(数据流)、(数据存储文件)。 5.Jackson图除了可以表达程序结构外,还可以表达(数据结构),它首先要分析(数据结构),并用适当的工具来描述。 6.详细设计的工具有图形工具)、表格工具和(语言工具)。 7.IPO图由(输入)、处理和(输出)三个框组成。这个图的特点是能够直观的显示三者之间的关系。 8.面向对象技术是一整套关于如何看待(软件系统)和(现实世界)的关系,以什么观点来研究问题并进行分析求解,以及如何进行系统构造的软件方法学。面向对象方法是一种运用(对象)、(类)、(继承)、(封装)、聚集、消息传送、多态性等概念来构造系统的软件开发方法。 二、单项选择题 1.下列( A )属于系统软件。 A.WINDOWS 2000 B.Word C.Flash D.3D MAX 2.下列哪个图是N-S图的构件( C )。 A. B. C. D. 3.对于螺旋模型,下列( D )不是利用笛卡尔坐 标表达的活动。 A. 制定计划 B. 实施工程 C. 风险分析 D. 程序编码 三、多项选择题 1.软件危机可以表现为(ABXD )。 A.产品不符合用户的需要 B.软件产品的质量差 C.软件的可维护性差 D.软件的价格昂贵 2.Jackson图中一般可能包括(ABCD )。 A.表头 B.表体 C.表名 D.字段名 3.关于内容耦合的描述正确的是(AD )。 A、内容耦合是最高程度的耦合 B、应该尽量使用内容耦合 C、高级语言一般设计成允许内容耦合的形式 D、如果一个模块有多个入口,可能发生内容耦合 4.下列属于不标准的书写格式(BCD )。 A、书写时适当使用空格分隔 B、一行写入多条语句 C、嵌套结构不使用分层缩进的写法 D、程序中不加注释 四、判断题(正确的在括号内打上“√”,错误的打上“×”) 1.软件生存周期是从软件开始开发到开发结束的整个时 期。() 2.系统流程图是一个典型的描述逻辑系统的传统工具。 () 3.数据流图和数据字典共同构成系统的逻辑模型。 (1) 4.扇出是一个模块直接调用的模块数目,一般推荐的扇出 为3或4。( 1 ) 5.耦合用于衡量一个模块内部的各个元素彼此结合的紧 密程度。()

软件工程期末考试复习题及答案

(4分) 变换型结构的数据流呈() A. 线性形状 B. 辐射状 C. 椭圆形 D. 阶梯形 得分: 0 知识点: 软件工程,软件工程作业题展开解析 .答案 A .解析..2. (4分) 可行性研究阶段使用的图形工具是() A. DFD图 B. N-S图 C. PAD图 D. Warnier图 得分: 0 知识点: 软件工程,软件工程作业题展开解析 .答案 A .解析..3. (4分) 软件的开发模式有() A. 面向过程模式、面向对象模式、混合模式 B. 变换模式、渐增模式、瀑布模式 C. 自顶向下模式、自底向上模式、关系模式 D. 分步模式、渐增模式、非渐增模式 得分: 0 知识点: 软件工程,软件工程作业题展开解析 .答案 B .解析..4. (4分) 模块的初始化工作和模块处理意外故障均属于() A. 时间内聚 B. 顺序内聚 C. 功能内聚 D. 逻辑内聚 得分: 0 知识点: 软件工程作业题,软件工程展开解析 .答案 A .解析..5. (4分) HIPO的含义是()

A. 层次、输入、处理、输出 B. 高速、信息、程序、目标 C. 顶层的IPO图 D. 关于输入、处理、输出的层次 得分: 0 知识点: 软件工程,软件工程作业题展开解析 .答案 A .解析..6. (4分) 数据字典和数据流图共同构成系统的() A. 物理模型 B. 结构模型 C. 设计说明书 D. 逻辑模型 得分: 0 知识点: 软件工程作业题,软件工程展开解析 .答案D .解析..7. (4分) 好的软件结构它的外观形状一般呈() A. 线性 B. 扇形 C. 椭圆形 D. 层次型 得分: 0 知识点: 软件工程,软件工程作业题展开解析 .答案 C .解析..8. (4分) CMU/SEI推出的()将软件组织的过程能力分为五个成熟度级别,每一个级别定义了一组过程能力目标,并描述了要达到这些目标应该具备的实践活动。 A. CMM B. PSP C. ISO-9000 D. RUP 得分: 0 知识点: 软件工程,软件工程作业题展开解析 .答案 A .解析..9. (4分) 若要保证开发出来的软件局部优化,而且能尽早发现设计上的错误,应采用()

软件工程期末复习资料非常全

1、下列哪一模型是软件的基础模型 A.瀑布模型 B.快速原型 C.增量模型 D.螺旋模型 2、划分软件生存周期的阶段时所应遵循的基本原则是 A.各阶段的任务尽可能相对独立 B.各阶段的任务在时间上连续 C.各阶段的任务尽可能相关性 D.各阶段的任务在时间上相对独立 3、下列哪个办法不属于解决软件危机的途径之一 A.采用软件工程的解决途径 B.研制新一代智能计算机 C.采用面向对象的软件设计方法 D.大力扶持软件企业 4、下列哪个不属于软件工程的内涵之一 A.扶持培养软件高手的学院 B.开发既可靠又能有效运行的软件 C.应用完善的科学与工程原理 D.经济地开发软件 5.造成大型软件开发困难的根本原因在于 A.开发人员缺乏足够的开发经验 B.项目开发进度不合理 C.软件系统的复杂性 D.对软件开发的资金投入不足 6.软件会逐渐退化而不会磨损,其原因在于 A.软件备件很难订购 B.不断的变更使组件接口之间引起错误

C.软件错误在经常使用之后会逐渐增加 D.软件通常暴露在恶劣的环境下 7.下面说法正确的是 A.大多数软件系统是不容易修改的,除非它们在设计时考虑了变化 B.由于软件是产品,因此可以应用其他工程制品所用的技术进行生产 C.一般来说,软件只有在其行为与开发者的目标一致的情况下才能成功 D.购买大多数计算机系统所需的硬件比软件更昂贵 8.Ariane 5火箭发射失败的事例告诉我们 A.(2)软件后备系统可以通过复制生成 B.(3)软件重用必须重新进行系统论证和系统测试 C. 选项(1)和(3) D.(1)系统环境的变化可能影响软件采集数据的精度、范围和对系统的控制 9.软件危机的主要原因是 A.软件本身的特点及开发方法。 B.软件工具落后。 C.软件生产能力不足。 D.对软件的认识不够。 10.下面的描述正确的是 A.软件质量是在开发过程中逐渐构建起来的。

软件工程经济学复习

第1章软件工程与软件工程经济学 1、软件的分类 按功能分类:系统软件、支撑软件、应用软件 按规模分类:微型,小型,…,超大型 按标准化程度分类:标准化、半定制、软件服务 按与有关硬件和软件的关联程度分类:嵌入式软件、组织型软件、半独立软件 2、软件是一种逻辑的实体而非物理实体。 软件不会“磨损”但会退化。 软件需开发成本、销售成本、维护成本,但无需库存成本; 人力成本占开发成本中绝大比例。 3、软件危机是一种矛盾,就是弱的软件生产能力与强的业务需求之间的矛盾。 通常可以找到的导致项目缺陷的原因都与项目管理有关。 4、软件工程包括:过程、方法和工具

第2章软件工程经济学基础 1、从信息系统工程的观点来看,任何对软件项目的工程经济分析与评价都必须从实 体维、时间维和要素维三个维度的层面来展开。 2、投资 3、可行性分析解决四方面问题:必要性、可实现性、效果性、风险性 4、可行性研究的主要内容:投资需求可行性、技术可行性、财务可行性、环境可行 性、组织可行性、风险分析与对策 5、资金只有赋予时间的概念才具有真正的完整的价值 资金的时间价值可能是增加额也可能是减少额。 6、现金流的贴现与预计 一次性支付现金流的贴现与预计 S n=S0(1+i)n

S0=S n(1+i)-n 多次性支付现金流的贴现和预计 7、资金回收系数(CRF)偿债基金系数(SFF) 8、项目决策与评价 9、关联矩阵法本质是一种权系数确定采用二分比较法而综合评价采用线性加权和 的一种综合评价模型。 10、一致性检验:方法有相对比较法、统计检验法、K因子检验法等。三个指标:偏离一致性指标(CI)、平均随机一致性指标(RI)、不一致性指标(CR)。 第3章软件的成本、工期与定价分析 1、成本 是取得各项生产要素、商品或劳务以及为实现特定经济目的而发生的费用。 2、成本的经济内容:劳动资料、劳动对象、劳动者 3、成本特点:消耗性补偿性目的性综合性代偿性 4、软件成本与工期的测算方法:功能分解法、价值工程法、影响因子法、统计模型 法 5、功能分解法按照功能/性能以及生存周期阶段两个维度对软件进行分解

软件工程期末复习要点归纳总结精编WORD版

软件工程期末复习要点归纳总结精编W O R D 版 IBM system office room 【A0816H-A0912AAAHH-GX8Q8-GNTHHJ8】

第一章软件工程学概论 1、软件危机产生的原因 软件本身的特点:难于维护、逻辑复杂 软件开发与维护的方法不正确:忽略需求分析重要性、轻视软件维护 课本表述: 1、软件不同于硬件,它是计算机中的逻辑部件而不是物理部件 2、软件不同于一般程序,它的一个显着特点是规模庞大,而且程序的复杂性将规模 的增加而呈现指数上升。 3、软件本身特有的特点确实给开发和维护带了一些客观困难 4、软件开发与维护有关的许多错误认识与做法有关(忽略需求分析,轻视软件维 护) 5、对用户要求没有完整准确的认识就匆忙开始着手编写程序 6、在软件不同阶段进行修改需要付出的代价是很不相同的 2、软件危机的表现(什么是软件危机) (1)、成本高: (2)、软件质量得不到保证:软件质量问题导致失败的软件项目非常多 (3)、进度难以控制:

●项目延期比比皆是 ●由于进度问题而取消的软件项目较常见 ●只有一小部分的项目能够按期完成 (4)、维护十分困难: ▼软件维护的多样性 ▼软件维护的复杂性 ▼软件维护的副作用 3、克服软件危机 (1)、管理的角度: 软件开发过程的研究、文档的标准化以及人员的交流方式等 (2)、软件开发方法的研究 结构化软件开发方法, 面向对象的开发 4、软件工程的定义 概括的说,软件工程师指导计算机软件开发和维护的一门工程学科。采用工程的概念、原理、技术和方法来开发和维护软件,把经过时间考验而证明正确的管理技术和当前能够得到的最好的技术方法结合起来,以经济地开发出高质量的软件并有效地维护它,这就是软件工程。

相关文档
最新文档