未分类题

某销售公司当前的销售业务为商城实体店销售。现该公司拟开展网络销售业务,需要开发一个信息化管理系统。请根据公司现有业务及需求完成该系统的数据库设计。
【需求描述】
(1)记录公司所有员工的信息。员工信息包括工号、身份证号、姓名、性别、出生日期和电话,并只登记一部电话。
(2)记录所有商品的信息。商品信息包括商品名称、生产厂家、销售价格和商品介绍。系统内部用商品条码唯一区别每种商品。
(3)记录所有顾客的信息。顾客信息包括顾客姓名、身份证号、登录名、登录密码、和电话号码。一位顾客只能提供一个电话号码。系统自动生成唯一的顾客编号。
(4)顾客登录系统之后,在网上商城购买商品。顾客可将选购的商品置入虚拟的购物车内,购物车可长期存放顾客选购的所有商品。顾客可在购物车内选择商品、修改商品数量后生成网购订单。订单生成后,由顾客选择系统提供的备选第三方支付平台进行电子支付,支付成功后系统需要记录唯一的支付凭证编号,然后由商城根据订单进行线下配送。
(5)所有的配送商品均由仓库统一出库。为方便顾客,允许每位顾客在系统中提供多组收货地址、收货人及联系电话。一份订单所含的多个商品可能由多名分拣员根据商品所在仓库信息从仓库中进行分拣操作,分拣后的商品交由配送员根据配送单上的收货地址进行配送。
(6)新设计的系统要求记录实体店的每笔销售信息,包括营业员、顾客、所售商品及其数量。
【概念模型设计】
根据需求阶段收集的信息,设计的实体联系图(不完整)如图所示。
中级软件设计师,历年真题,2016年上半年(下午)《软件设计师》真题
【逻辑结构设计】
根据概念模型设计阶段完成的实体联系图,得出如下关系模式(不完整):
员工(工号,身份证号,姓名,性别,出生日期,电话)
商品(商品条码,商品名称,生产厂家,销售价格,商品介绍,(a))
顾客(顾客编号,姓名,身份证号,登录名,登录密码,电话)
收货地点(收货ID,顾客编号,收货地址,收货人,联系电话)
购物车(顾客编号,商品条码,商品数量)
订单(订单ID,顾客编号,商品条码,商品数量,(b))
分检(分拣ID,分拣员工号,(c),分拣时间)
配送(配送ID,分拣ID,配送员工号,收货ID,配送时间,签收时间,签收快照)
销售(销售ID,营业员工号,顾客编号,商品条码,商品数量)
【问题1】(4分)
补充图中的“配送“联系所关联的对象及联系类型。
【问题2】(6分)
补充逻辑结构设计中的(a)、(b)和(c)三处空缺。
【问题3】(5分)
对于实体店销售,若要增加送货上门服务,由营业员在系统中下订单,与网购的订单进行后续的统一管理。请根据该需求,对图进行补充,并修改订单关系模式。

【参考答案】

【问题1】
补充内容如图中虚线所示:

【问题2】
(a)所在仓库
(b)支付凭......

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

未分类题
计算两个字符串x和y的最长公共子串(Longest Common Substring)。假设字符串x和字符串y的长度分别为m和n,用数组c的元素c[i][j]记录x中前i个字符和y中前j个字符的最长公共子串的长度。c[i][j]满足最优子结构,其递归定义为:计算所有c[i][j](0≤i≤m,0≤j≤n)的值,值最大的c[i][j]即为字符串x和y的最长公共子串的长度。根据该长度即i和j,确定一个最长公共子串。【C代码】(1)常量和变量说明x,y:长度分别为m和n的字符串c[i][j]:记录x中前i个字符和y中前j个字符的最长公共子串的长度max:x和y的最长公共子串的长度maxi,maXj:分别表示x和y的某个最长公共子串的最后一个字符在x和y中的位置(序号)(2)C程序#include<stdio.h>#include<string.h>int c[50][50];int maxi;int maxj;int lcs(char*x,int m,char*y,int n){int i,j;int max=0;maxi=0;maxj=0;for(i=0;i<=m;i++)c[i][0]=0;for(i=1;i<=n;i++)c[0][i]=0;for(i=1;i<=m;i++){for(j=1;j<=n;j++){if((1)){c[i][j]=c[i-1][j-1]+1;if(max<c[i][j]){(2);maxi=i;maxj=j;}}else(3);}}return max;}void printLCS(int max,char*x){int i=0;if(max==0)return;for((4);i<maxi;i++)printf( %c ,x[i]);}void main( ){char*x= ABCADAB ;char*y= BDCABA ;int max=0;int m=strlen(x);int n=strlen(y);max=lcs(x,m,y,n);printLCS(max,x);}【问题1】(8分)根据以上说明和C代码,填充C代码中的空(1)~(4)。【问题2】(4分)根据题干说明和以上C代码,算法采用了(5)设计策略。分析时间复杂度为(6)(用O符号表示)。【问题3】(3分)根据题干说明和以上C代码,输入字符串x= ABCADAB','y= BDCABA ,则输出为(7)。