当前位置: 首页icon 51CTO软考 > 软考资讯 >考试科目 >软件设计师试题 软件设计师试题4

软件设计师试题 软件设计师试题4

作者:mb5ce3810a164cb2023-11-05 01:00:12
备考咨询 刷题指导
添加专属学姐
下载资料 2024上半年软考备考资料+考试大纲
下载按钮 下载
引号

2022年上半年软件设计师案例分析试题模拟试题及答案(4) 试题一:阅读下列说明和图,回答问题1至问题3,将解答填入答题纸的对应栏内。【说明】某物流公司为了整合上游供应商与下游客户,缩短物流过程,降低产品库存,需要构建一个信息系统以方便管理其业务运作活动。【需求分析结果】(1)物流公司包含若干部门,部门信息包括部门号、部门名称、经理、电话和邮箱。一个部门可以有多名员工处理部门的日常事务,每名员工

引号

2022年上半年软件设计师案例分析试题模拟试题及答案(4)

  • 试题一:阅读下列说明和图,回答问题1至问题3,将解答填入答题纸的对应栏内。
  • 【说明】
  • 某物流公司为了整合上游供应商与下游客户,缩短物流过程,降低产品库存,需要构建一个信息系统以方便管理其业务运作活动。
  • 【需求分析结果】
  • (1)物流公司包含若干部门,部门信息包括部门号、部门名称、经理、电话和邮箱。一个部门可以有多名员工处理部门的日常事务,每名员工只能在一个部门工作。每个部门有一名经理,只需负责管理本部门的事务和人员。
  • (2)员工信息包括员工号、姓名、职位、电话号码和工资;其中,职位包括:经理、业务员等。业务员根据托运申请负责安排承运货物事宜,例如:装货时间、到达时间等。一个业务员可以安排多个托运申请,但一个托运申请只由一个业务员处理。
  • (3)客户信息包括客户号、单位名称、通信地址、所属省份、联系人、联系电话、银行账号,其中,客户号唯一标识客户信息的每一个元组。每当客户要进行货物托运时,先要提出货物托运申请。托运申请信息包括申请号、客户号、货物名称、数量、运费、出发地、目的地。其中,一个申请号对应唯一的一个托运申请;一个客户可以有多个货物托运申请,但一个托运申请对应唯一的一个客户号。
  • 【概念模型设计】
  • 根据需求阶段收集的信息,设计的实体联系图和关系模式(不完整)如图2-1所示。

  • 【关系模式设计】
  • 部门(部门号,部门名称,经理,电话,邮箱)
  • 员工(员工号,姓名,职位,电话号码,工资,   (a)   )
  • 客户(   (b)   ,单位名称,通信地址,所属省份,联系人,联系电话,银行账号)
  • 托运申请(   (c)  ,货物名称,数量,运费,出发地,目的地)
  • 安排承运(   (d)  ,装货时间,到达时间,业务员)
  • 【问题1】(5分)
  • 根据问题描述,补充四个联系、联系的类型,以及实体与子实体的联系,完善图2-1所示的实体联系图。
  • 【问题2】(8分)
  • 根据实体联系图,将关系模式中的空(a)~(d)补充完整。分别指出部门、员工和安排承运关系模式的主键和外键。
  • 【问题3】(2分)
  • 若系统新增需求描述如下:
  • 为了数据库信息的安全性,公司要求对数据库操作设置权限管理功能,当员工登录系统时,系统需要检查员工的权限。权限的设置人是部门经理。为满足上述需要,应如何修改(或补充)图2-1所示的实体联系图,请给出修改后的实体联系图和关系模式。
    查看答案
  • 1. 2. a 部门号 b 客户号 c 申请号 d 申请号 部门 主键:部门号 外键:员工号 员工 主键:员工号 外键:部门号 安排承运 主键:申请号 外键:员工号
  • 试题二:阅读下列说明和java代码,将应填入(n)处的字句写在答题纸的对应栏内。
  • 【说明】
  • 现欲开发一个软件系统,要求能够同时支持多种不同的数据库,为此采用抽象工厂模式设计该系统。以sql server和access两种数据库以及系统中的数据库表department为例,其类图如图6-1所示。

  • 图6-1 类图
  • 【java代码】
  • import java.util.*;
  • class department{/*代码省略*/}
  • interface idepartment{
  • (1)    ;
  • (2)    ;
  • }
  • class sqlserverdepartment (3) {
  • public voidinsert(department department){
  • system.out.println(”insert a record into department in sql server!");
  • ∥其余代码省略
  • }
  • public department getdepartment(int id){
  • /*代码省略*/
  • }
  • }
  • classaccessdepartment(4) {
  • public void insert(department department){
  • system.out.println("insert a record into department in access!”);
  • ∥其余代码省略
  • }
  • public department getdepartment(int id){
  • /*代码省略*/
  • }
  • }
  • (5)  {
  • (6)   ;
  • }
  • class sqlserverfactory implements ifactory{
  • public idepartment createdepartment(){
  • retum new sqlserverdepartment();
  • }
  • ∥其余代码省略
  • }
  • class accessfactory implements ifactory{
  • public idepartment createdepartment(){
  • return new accessdepartment();
  • }
  • ∥其余代码省略
  • }
    查看答案
免费刷题报考资讯 机考模拟 学习群