1. 为什么要进行需求分析?通常对软件系统有哪些需求?
(1)需求分析的原因
为了开发真正满足用户需求的成功的软件产品,必须进行需求分析。
(2)对软件系统的需求
功能需求、性能需求、可靠性和可用性需求、出错处理、接口需求、约束、逆向需求、将来可能提出的要求。
2. 怎样与用户有效地沟通以获取用户的真实需求?
可采用以下四种方法获取真实需求:
(1)访谈;
(2)面向数据流自顶向下求精;
(3)简易的应用规格说明技术;
(4)快速建立软件原型。
3. 银行计算机储蓄系统的工作过程大致如下:储户填写的存款单或取款单由业务员输入系统,如果是存款则系统记录存款人姓名、住址(或电话号码)、身份证号码、存款类型、存款日期、到期日期、利率及密码(可选)等信息,并印出存单给储户;如果是取款而且存款时留有密码,则系统首先核对储户密码,若密码正确或存款时未留密码,则系统计算利息并印出利息清单给储户。用数据流图描绘系统中的数据对象,并用实体联系图描绘系统中的数据对象。
(1)数据流图
(2)E-R模型
如图3-4所示。本题中共有两类实体,分别是“储户”和“储蓄所”,在它们之间存在“存取款”关系。因为一位储户可以在多家储蓄所存取款,一家储蓄所拥有多位储户,所以“存取款”是多对多(M:N)关系。
储户的属性主要有姓名、住址、电话号码和身份证号码,储蓄所的属性主要是名称、地址和电话号码,而数额、类型、到期日期、利率和密码则是关系类型存取款的属性。
4. 分析习题2第3题所述的机票预订系统。试用实体-联系图描绘本系统中的数据对象并用数据流图描绘本系统的功能。
(1)数据流图
(2)E-R图
数据流图与ER图的第二种画法:
5. 分析习题2第4题所述的患者监护系统。试用实体联系图描绘本系统中的数据对象,画出本系统的顶层IPO图。
E-R图
IPO图
6. 复印机的工作过程大致如下:未接到复印命令时处于闲置状态,一旦接到复印命令则进入复印状态,完成一个复印命令规定的工作后又回到闲置状态,等待下一个复印命令;如果执行复印命令时发现没纸,则进入缺纸状态,发出警告,等待装纸,装满纸后进入闲置状态,准备接收复印命令;如果复印时发生卡纸故障,则进入卡纸状态,发出警告, 等待维修人员来排除故障,故障排除后回到闲置状态。试用状态转换图描绘复印机的行为。
从题中描述可知,复印机的状态主要有“闲置”“复印”“缺纸”和“卡纸”。引起状态转换的事件主要是“复印命令”“完成复印命令”“发现缺 纸”“装满纸”“发生卡纸故障”和“排除卡纸故障”。故状态转换图,如图所示。