一、填空题
1 软件工程是应用  计算机科学    数学    管理科学  等学科的原理,借鉴传统工程的原理和方法,创建软件的工程。
2 继瀑布模型之后,提出了  演化模型    螺旋模型    喷泉模型  等软件开发模型。
3 用况(use case)之间具有  包含    扩展    泛化  关系。
4.为建立系统的对象关系模型(静态模型),面向对象方法使用的概念包括  对象          关联  等。
5 结构化分析方法建立的系统模型包括三部分,它们是  DFD    数据字典    加工小说明 
6.在软件过程中,基本过程包括  获取过程    供应过程  开发过程  等。
二、概念题
7.模块之间的内容耦合和公共耦合。
解答:耦合是模块之间相互关联程度的度量。内容耦合是指一个模块直接访问另一模块的私有数据或通过非正常入口进入另一模块。公共耦合是指两个或多个模块通过访问一个公共的数据结构发生关联。
8.变换型数据流图,并以图示说明之。
解答:如果一个数据流图具有明显的输入与变换、变换与输出之间的界面,那么,我们把这种数据流图称为变换型数据流图。
9.面向对象方法中的接口,并以图示说明之。
解答:接口是一种功能抽象机制,用于描述类、构件或子系统的外部可见操作,但并不描述这些操作的内部实现。即接口没有实现,也没有属性、状态和关联。接口只可以被其他模型元素使用,而不能访问其它模型元素。
10.类的N元关联,并以图示说明之。
解答:N元关联是三个类或多个类之间的一种关联。该关联的每一实例是一个N元组。二元关联是N元关联的特殊情况。
三、简答题
11.在面向对象分析方法中,为了描述客观事物之间的关系所给出的基本概念。
解答:在面向对象分析方法中,为了描述客观事物之间的关系,给出的基本概念主要有:
链:用于描述对象之间的任一引用关系;
关联:一组具有相同结构和语义的链称为关联。可见,关联用于描述类、构件等之间的一种语义关系。关联包括二元关联和N元关联。
关联端点:引入关联端点的目的,主要是为了表达关联的一些特定属性,例如多重性、可变性等,并且为了表达一些特定的关联:聚合、组合、泛化等。
限定符:一种特定的关联属性,该属性的值将相关联的对象集进行了一个划分。
关联类:一个关联类是一个关联,该关联也有类的一些性质。通过关联类,可以更详细的表达一个关联的语义。
12.举例说明软件开发方法学的基本构成。
解答:从构成上来讲,软件开发方法学主要由三部分组成,它们是:概念与表示、过程以及工具。例如:结构化分析方法提出的概念有:数据流、加工、数据存储、数据源和数据潭,其表示分别为:数据流:      ;加工:        ;数据存储:        ;数据源与数据潭:      。就过程而言,结构化分析方法首先根据问题陈述,画出该系统的DFD;然后,针对该DFD,给出相应的数据字典;最后,根据问题陈述,给出“叶”加工的加工小说明。
13.软件测试过程模型。
解答:软件测试过程模型如下所示:
14.质量体系以及CMM的关键过程域。
解答:按费根堡姆的观点,“在制造及传递某种特定质量标准的产品时,必须配合适当的管理和技术作业程序,由这些程序所组成的结构,称为质量体系。”根据这一定义,在一个侧面,我们可以把CMM看作是质量体系的一个具体实现。其中,每一等级有若干关键过程域定义。所谓关键过程域,是指那样的过程域(相互关联的若干软件实践活动和有关的基础设施的集合),它们的实施对达到该成熟度等级的目标具有保证作用。例如,CMM2级的关键过程域包括:软件配置管理,软件质量保证,软件子产品工程,软件项目规划,软件项目跟踪和监督,需求管理。
四、变换题
15.将下面的PAD图转换为N-S图和伪码。
解答:1N-S图:
2)伪码:
begin    S1;
while X>1 do if y>1 then S3
                else  while Z>5 do S2;
S4;
If w>0 then S5 else while w>1 do S6;
S7;
While x>10 do begin S8; S9 end
            End.
16.将下面的数据流图(DFD)转换为初始的模块结构图(MSD)。
解答:初始的模块结构图如下所示:
五、解答题
17.根据下面给出的程序控制流程图,设计最少的测试用例,实现:
(1) 分支覆盖;
(2) 条件组合覆盖。
其中:
(1) 分支2的条件为X>0;分支5为条件组合y>0 and z>1
(2) 假定在执行时,过程块6x的值加1,结点8yz的值均加1,而其他过程块、结点和分支均不改变xyz的值。
解答:1)分支覆盖,设用例的形式为[xyz]
用例1[001] 覆盖路径abhgkjmbcde
用例2[012] 覆盖路径 abhglie
2)组合覆盖
软件工程学什么用例1[012]
用例2[-411]
用例3[-3-12]
用例4[-301]
六、建模题
18.问题陈述:在一简化的某学校图书管理系统中,图书订购员根据各系的要求(书名或期刊名,作者或期刊出版社,单价,数量)负责购买图书,并以入库单的形式交库房管理员。
库房管理员按购买日期负责登记库存账目,并将图书和期刊摆放在不同的位置,以便借阅和阅读。
借书员根据借还书的要求(书名或期刊名,作者或期刊出版社)负责借还图书处理:
1) 当没有要借的图书时,通知借阅人;
2) 当借书人将图书丢失时,以图书丢失单的形式报告借书员,由借书员负责修改账目,并通知库房管理员;
图书管理负责人每月末查看图书和期刊存量(包括数量和金额),还在必要时,根据书名或期刊名查看库存量。
(1) 请给出该系统顶层的DFD0层的DFD,并给出相应的数据字典。
(2) 标识该系统中的类,并给出其中库存账目(类)的基本属性和操作。
解答:该题的答案不是唯一的。下面给出参考答案。
1、该系统的顶层DFD为:
0DFD
数据字典:
入库单=[书名|期刊名]+[作者|期刊出版社]+单价+数量+购买日期
借还书要求=[书名|期刊名] +[作者|期刊出版社]+借书日期
丢失报告单=[书名|期刊名] +[作者|期刊出版社]+报告日期
图书丢失单=丢失报告单
无书通知单=[书名|期刊名] +[作者|期刊出版社]
查看要求=[书名|期刊名] +[作者|期刊出版社]
月末库存量=数量+金额
某书/刊库存=[书名|期刊名] +[作者|期刊出版社]+数量
时间=//
库房账目={入库单}
2 该系统中的类有:
    图书管理单据:可以作为一个一般类。其子类有:
                                                入库单
                                                借书单
                                                还书单
                                                图书丢失单
    库房账目:是图书馆库房的抽象
    图书馆工作人员:可以作为一个一般类。其子类有:
                                        库房管理人员
                                        借阅工作人员
                                        管理负责人
    其中,库房账目类的基本属性有:
                          {书名/期刊名
                          作者/期刊出版社
                          单价
                          总数量
                          库存量
                          购买日期}