可行性分析-逻辑图:
技术可行性;
开始 医生输出病患标准数据 服务器 采集病人生理数据 在预测范围内 对比大小 不在预测范围警报 结束 医生 D1:标准数据 服务器 D4:指定打印数据 病人端客户机 D2:实测数据 D3:警报数据 护士 虽然生理数据的采集需要涉及大量的专业精密仪器,软件工程师并不精通,但是可以在专业人士的帮助下完成。
经济可行性:
支出方面由医院方面承担,是否可行取决于医院方面是否能支付所需的费用。
操作可行性:
医生并不具有软件维护的能力,在数据库的维护上需要专业人士来进行,因为病患数目并不会太多,所以只需一个人或者几个人定期对数据库进行管理和维护就行了。
5北京某高校可用的电话号码有以下几类:校内电话号码由4位数字组成,第一位数字不是0.校外电话又分为本市电话和外地电话两类。拨校外电话需要先拨0,若是本市电话则接着拨8位数字(第一位不是0),若是外地电话则拨3位区码后再拨8位电话号码(第一位不是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]
其中,[ ]意思是或,从校内电话号码或校外电话号码中选择一个;{ }表示重复,两边的数字表示重复次数的下限和上限;=意思是定义为;+意思是和,连接两个分量。
第三章
(1).为什么要进行需求分析?通常对软件系统有哪些要求?
答: 1) 为了开发出真正满足用户需求的软件产品,首先必须知道用户的需求。对软件需求的深入理解是软件开发工作获得成功的前提条件,不论我们把设计和编码工作做得如何出色,不能真正满足用户需求的程序只会令用户失望,给开发者带来烦恼。 2)确定对系统的综合要求:1、功能需求;2、性能需求;3、可靠性和可用性需求;4、出错处理需求;5、接口需求;6、约束;7、逆向需求;8、将来可以提出的要求,分析系统的数据要求。
(2)怎样与用户有效地沟通以获取用户的真实需求? 答案 :
与用户沟通获取需求的方法:访谈;面向数据流自顶向下求精;简易的应用规格说明技术;快速建立软件原型
3 银行计算机储蓄系统的工作过程大致如下:储户填写的存款单或取款单由业务员键入系统,如果是存款则系统记录存款人姓名、住址、身份证号码等存款信息,并打印出存款存单给储户;如果是取款且存款时留有密码,则系统首先核对储户密码,若密码正确或存款时未留密码,则系统计算利息并打印出利息清单给储户。
答案: 用ER图描绘系统中的数据对象。
住址电话号码姓名身份证号码名称电话号码地址储户M存取款N储蓄所到期日期数额类型利率密码
(5)分所析习题2中第4题的患者监狱系统。试用实体-联系图描述本系统中的数据对象并用数据流程描绘本系统的功能。
(6 )复印机的工作过程大致如下:未接到复印命令时处于闲置状态,一旦接到复印命令则进入复印状态,完成一个复印命令规定的工作后又回到闲置状态,等待下一个复印命令;如果执行复印命令时发现没纸,则进入缺纸状态,发出警告,等待装纸,装满纸后进入闲置状态,准备接收复印命令;如果复印时发生卡纸故障,则进入卡纸状态,发出警告等待维修人员来排除故障,故障排除后回到闲置状态。
请用状态转换图描绘复印机的行为。
答案: 从问题陈述可知,复印机的状态主要有“闲置”、“复印”、“缺纸”和“卡纸”。引起状态转换的事件主要是“复印命令”、“完成复印命令”、“发现缺纸”、“装满纸”、“发生卡纸故障”和“排除了卡纸故障”。
排除了卡纸故障 缺纸 do /警告 复印命令 闲置 完成复印命令 复印 do /复印 装满纸 卡纸 do /警告 第五章
5.1为每种类型的模块耦合举一个具体的例子。
答:耦合式对一个软件结构内不同模块之间互联程度的度量。耦合强弱取决于接口的复杂度,进入或访问某一模块的点,以及通过接口的数据。一般模块之间的可能的连接方式有七种,构成耦合的七种类型,它们的关系为:
低 耦合性 高 非直接耦合
强 独立性 弱 下面举例说明以上耦合:
A. 非直接耦合:两个模块没有直接的关系(模块1和模块2),独立性最强 B.数据耦合:即一个模块访问另一个模块的时候,彼此之间是通过数据参数来交换输入、输出信息的,这种耦合为数据耦合。这种耦合较为松散,模块间独立性较强。 数据耦合 特征耦合 控制耦合 外部耦合 公共耦合 内容耦合 模块1 模块2 模块3 模块4 开发票 金额 单价 数量 交房费 C.特征耦合:即一组模块通过参数传递记录信息,用户情况是个数据结构,图中模块都与此有关,“计算水费”和“计算电费”本没有关系,由于引用了此数据结构产生了依赖关系 水费 电费 用户情况 计算水电费 用户情况 计算水费费 计算电费 D.控制耦合:即如果一个模块通过传送开关、标志、名字等控制信息,明显地控制选择另一模块的功能,就是控制耦合 A模块Flag B F1 F2 … Fn E.外部耦合:一组模块都访问同一全局简单变量而不是同一全局数据结构,而且不是通过参数表传递该全局变量的信息,则称之为外部耦合。 F.公共耦合: 若一组模块都访问同一个公共数据环境,则它们之间的耦合就称为公共耦合。
G.内容耦合:如果出现以下情况之一,两个模块就发生了内容耦合 ① 一个模块访问另一个模块的内部数据。
② 一个模块不通过正常入口儿转到另一个模块的内部
③ 两个模块有一部分程序代码重叠(只可能发生在汇编程序中) ④ 一个模块有多个入口(这意味着一个模块有几种功能) Sub AA(….) …
A模块 B模块 使用 打印机 使用 A模块 B模块 C模块 全局数组