未分类题

某医院欲开发病人监控系统。该系统通过各种设备监控病人的生命体征,并在生命体征异常时向医生和护理人员报警。该系统的主要功能如下:
(1)本地监控:定期获取病人的生命体征,如体温、血压、心率等数据。
(2)格式化生命体征:对病人的各项重要生命体征数据进行格式化,然后存入日志文件并检查生命体征。
(3)检查生命体征:将格式化后的生命体征与生命体征范围文件中预设的正常范围进行比较。如果超出了预设范围,系统就发送一条警告信息给医生和护理人员。
(4)维护生命体征范围:医生在必要时(如,新的研究结果出现时)添加或更新生命体征值的正常范围。
(5)提取报告:在医生或护理人员请求病人生命体征报告时,从日志文件中获取病人生命体征生成体征报告,并返回给请求者。
(6)生成病历:根据日志文件中的生命体征,医生对病人的病情进行描述,形成病历存入病历文件。
(7)查询病历:根据医生的病历查询请求,查询病历文件,给医生返回病历报告。
(8)生成治疗意见:根据日志文件中的生命体征和病历,医生给出治疗意见,如处方等,并存入治疗意见文件。
(9)查询治疗意见:医生和护理人员查询治疗意见,据此对病人进行治疗。
现采用结构化方法对病人监控系统进行分析与设计,获得如图1-1所示的顶层数据流图和图1-2所示的0层数据流图。
中级软件设计师,历年真题,2011年上半年(下午)《软件设计师》真题
图1-1顶层数据流图
中级软件设计师,历年真题,2011年上半年(下午)《软件设计师》真题
图1-2 0层数据流图
【问题1】(3分)
使用说明中的词语,给出图1-1中的实体E1~E3的名称。
【问题2】(4分)
使用说明中的词语,给出图1.2中的数据存储D1~D4的名称。
【问题3】(6分)
图1-2中缺失了4条数据流,使用说明、图1-1和图1-2中的术语,给出数据流的名称及其起点和终点。
【问题4】(2分)
说明实体E1和E3之间可否有数据流,并解释其原因。

【参考答案】

【问题1】(3分,各1分)
E1:病人E2:护理人员E3:医生
【问题2】(4分,各1分).
D......

(↓↓↓ 点击下方‘点击查看答案’看完整答案 ↓↓↓)
热门 试题

未分类题
某饭店在不同的时段提供多种不同的餐饮,其菜单的结构图如下图所示。图5-1菜单结构图现在采用组合(Composition)模式来构造该饭店的菜单,使得饭店可以方便地在其中增加新的餐饮形式,得到如下图所示的类图。其中MenuComponent为抽象类,定义了添加(add)新菜单和打印饭店所有菜单信息(print)的方法接口。类Menu表示饭店提供的每种餐饮形式的菜单,如煎饼屋菜单、咖啡屋菜单等。每种菜单中都可以添加子菜单,例如图中的甜点菜单。类MenuItem表示菜单中的菜式。图5-2类图【C++代码】#include<iostream>#include<list>#include<string>using namespace std;class MenuComponent{protected:string name;public:MenuComponent(string name){this->name=name;)string getName( ){return name;)(1); 添加新菜单virtual void print( )=0; 打印菜单信息};class Menultem:public MenuComponent{private:double price;public:Menultem(string name,double price):MenuComponent(name){this->price=price;double getPrice( ){return price;)void add(MenuComponent*menuComponent){retum;} 添加新菜单void print( ){cout<< <<getName( )<< , <<getPrice( )<<endl;)};class Menu:public MenuComponent{private:list<(2)>menuComponents;public:Menu(string name):MenuComponent(name){}void add(MenuComponent*menuComponent) 添加新菜单{(3);}void print( ){cout<< n <<getName( )<< n------------------- <<endl;std::list<MenuComponent*>::iterator iter,for(iter=menuComponents.begin( );iter!=menuComponents.end( );iter++)(4)->print( );}};void main( ){MenuComponent*alIMenus=new Menu( ALL MENUS );MenuComponent*dinerMenu=new Menu( DINER MENU );…… 创建更多的Menu对象,此处代码省略alIMenus->add(dinerMenu); 将dinerMenu添加到餐厅菜单中…… 为餐厅增加更多的菜单,此处代码省略(5)->print( ); 打印饭店所有菜单的信息
未分类题
某公司拟开发一套小区物业收费管理系统。初步的需求分析结果如下:(1)业主信息主要包括:业主编号,姓名,房号,房屋面积,工作单位,联系电话等。房号可唯一标识一条业主信息,且一个房号仅对应一套房屋;一个业主可以有一套或多套的房屋。(2)部门信息主要包括:部门号,部门名称,部门负责人,部门电话等;一个员工只能属于一个部门,一个部门只有一位负责人。(3)员工信息主要包括:员工号,姓名,出生年月,性别,住址,联系电话,所在部门号,职务和密码等。根据职务不同员工可以有不同的权限,职务为“经理”的员工具有更改(添加、删除和修改)员工表中本部门员工信息的操作权限;职务为“收费”的员工只具有收费的操作权限。(4)收费信息包括:房号,业主编号,收费日期,收费类型,数量,收费金额,员工号等。收费类型包括物业费、卫生费、水费和电费,并按月收取,收费标准如表2-1所示。其中:物业费=房屋面积(平方米)×每平米单价,卫生费=套房数量(套)×每套房单价,水费=用水数量(吨)×每吨水单价,电费=用电数量(度)×每度电单价。(5)收费完毕应为业主生成收费单,收费单示例如表2-2所示。表2-1收费标准表2-2收费单示例【概念模型设计】根据需求阶段收集的信息,设计的实体联系图(不完整)如图2-1所示。图2-1中收费员和经理是员工的子实体。图2-1实体联系图【逻辑结构设计】根据概念模型设计阶段完成的实体联系图,得出如下关系模式(不完整):业主((1),姓名,房屋面积,工作单位,联系电话)员工((2),姓名,出生年月,性别,住址,联系电话,职务,密码)部门((3),部门名称,部门电话)权限(职务,操作权限)收费标准((4))收费信息((5),收费类型,收费金额,员工号)【问题1】(8分)根据图2-1,将逻辑结构设计阶段生成的关系模式中的空(1)~(5)补充完整,然后给出各关系模式的主键和外键。【问题2】(5分)填写图2-1中(a)~(f)处联系的类型(注:一方用1表示,多方用m或n或*表示),并补充完整图2-1中的实体、联系和联系的类型。【问题3】(2分)业主关系属于第几范式?请说明存在的问题。