资源描述
单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,目录,概要设计的概念,概要设计的目的、任务和步骤,概要设计文档,界面设计,概要设计的概念,在软件,需求分析阶段,,已经搞清楚了软件,“做什么”,的问题,并通过说明书描述了出来,这算是完成了目标系统的,逻辑模型,。,进入,设计阶段,,要把软件“做什么”变换成,“怎么做”,,这就是变为了,物理模型,。,把软件需求转换为软件表示的过程,这种表示最开始,只描述了软件的总体体系结构,称为概要设计。,概要设计的目的,将软件系统需求转换为未来系统的设计,,准确无误地,用计算机处理过程来表达用户的各项要求,,以此做为详细设计的大纲,做为软件设计的第一阶段,日后的设计均在此基础之上进行,概要设计的任务和步骤,设计系统方案,确定大致的功能模块划分,并选择最佳实施方案。,数据库设计,模块功能分解描述-流程图,Web页面结构的设计,编写概要设计文档,概要设计文档,概要设计文档应说明:,程序的总体结构,、,功能分配,、,模块划分,、,输入输出,、,接口设计,、,运行设计,、,数据结构设计,和,出错处理设计,等,为详细设计提供基础,数据库,E-R,图,模块基本设计概念和处理流程:通过,文字,和,图形,的方式表示模块设计结构,设计用户的所有,界面,网站布局,主题、颜色、图片等,概要设计文档的主要内容,任务概述,总体设计,模块设计,接口定义,数据结构设计,运行设计,出错处理设计,等等,.,主要功能模块(需求设计),CMS,系统,网,站,首,页,前台显示,后台管理,栏,目,列,表,内,容,列,表,内,容,页,面,搜,索,页,面,多,用,户,权,限,系,统,内,容,添,加,栏,目,添,加,栏,目,管,理,系,统,管,理,管,理,员,登,陆,内,容,管,理,会员管理,会,员,登,陆,会,员,注,册,进行模块概要设计,广告管理,留言管理,一级栏目管理,二级栏目管理,三级栏目管理,用户级别分析,用户操作管理,用户管理,更改密码,设置权限,数据备份,数据还原,数据清空,页眉页脚信息,关于我们,重新登录,内容管理,栏目管理,权限管理,用户管理,系统维护,帮助,退出,内容信息管理系统,系统功能模块结构图(概要设计),信息管理,接口设计,用户接口,:,B/S,结构,网页图形用户界面,外部接口,:与其他信息网站交互数据,达到信息传递和共享的目的,主要有:,RSS,订阅等,实现方法,XML,。,内部接口,:本系统采用框架结构,框架通过使数据数据视图数据行为相分离的方法,数据视图:基于数据结构来建立,数据行为:以数据视图的选择信息做为参数来调用,数据:隐藏在数据视图和数据行为的背后,数据库接口,系统内部的各种数据通常会以数据库的方式保存,因此在接口定义时应确定与数据库进行数据交换的数据格式、时机、方式等。,数据库设计,数据库管理系统选型,数据库设计,设计E-R图,数据库规范化,建立数据库表结构,设计数据库的步骤 1,收集信息,:,与该系统有关人员进行交流、坐谈,充分理解数据库需要完成的任务,BBS,论坛的基本功能:,用户注册和登录,后台数据库需要存放用户的注册信息和在线状态信息;,用户发贴,后台数据库需要存放贴子相关信息,如贴子内容、标题等;,论坛版块管理:后台数据库需要存放各个版块信息,如版主、版块名称、贴子数等;,设计数据库的步骤 2,标识对象,(实体,Entity,),标识数据库要管理的关键对象或实体,实体一般是名词:,用户:论坛普通用户、各版块的版主。,用户发的主贴,用户发的跟贴(回贴),版块:论坛的各个版块信息,设计数据库的步骤 3,论坛用户:,呢称,密码,电子邮件,生日,性别,用户的等级,备注信息,注册日期,状态,积分,主贴,发贴人,发贴表情,回复数量,标题,正文,发贴时间,点击数,状态:,最后回复时间,回贴,贴子编号,回贴人,回贴表情,标题,正文,回贴时间,点击数,版块,版块名称,版主,本版格言,点击率,发贴数,标识,每个实体的属性(,Attribute,),设计数据库的步骤 4,标识对象之间的关系,(,Relationship,),跟贴和主贴有主从关系:我们需要在跟贴对象中表明它是谁的跟贴;,版块和用户有关系:从用户对象中可以根据版块对象查出对应的版主用户的情况;,主贴和版块有主从关系:需要表明发贴是属于哪个版块的;,跟贴和版块有主从关系:需要表明跟贴是属于哪个版块的;,绘制E-R图 1,E-R,(,Entity,Relationship,),实体关系图,符合,含义,实体,一般是名词,属性,一般是名词,关系,一般是动词,绘制E-R图 2,管理,bbsUser,(用户,版主),出生日期,昵称,版块名称,版主,bbsSection,(版块),绘制E-R图 3,映射基数,一对一,X,X,X,X,Y,Y,Y,Y,X,X,X,X,Y,Y,Y,Y,一对多,X,X,X,X,Y,Y,Y,多对一,X,X,X,X,Y,Y,Y,Y,多对多,客户,订单,产品,1 N,M N,绘制E-R图,1,1,1,1,M,1,M,M,M,用户积分,性别,用户等级,备注信息,注册日期,状态,密码,昵称,电子邮件,生日,论坛用户(,BBSUser,),管理,发表,发表,属于,属于,版块名称,本版留言,发贴数,点击率,版主,版块(,BBSSection,),发贴(,BBSTopic,),发贴人,正文,状态,贴子编号,所在版块,最后回复时间,发贴表情,回复数量,点击率,发贴时间,标题,跟随,M,跟贴(,BBSReply,),标题,发贴人,贴子编号,正文,点击率,所在版块,发贴时间,最后回复时间,发贴表情,1,论坛,E-R,图,M,如何将,E-R,图转换为表,实体,-,表,属性,-,字段(列),关系,-,表之间的主外键关系,注意:没有主键的表添加,ID,编号列,它没有实际含义,用于做主键或外键,例如用户表中的“,UID”,列,版块表中添加“,SID”,列,发贴表和跟贴表中的“,TID”,列,如何将,E-R,图转换为表,UID,主键,TID,主键,RID,主键,SID,主键,如何将E-R图转换为表,添加各表之间的关系,数据规范化,仅有好的,RDBMS,并不足以避免数据冗余,必须在数据库的设计中创建好的表结构,Dr E.F.codd,最初定义了规范化的三个级别,范式是具有最小冗余的表结构。这些范式是:,第一范式,(1st NF,First Normal Fromate),第二范式,(2nd NF,Second Normal Fromate),第三范式,(3rd NF,Third Normal Fromate),第一范式 (1st NF),B,uyer,ID,Country,City,1,1,4,2,中国,中国,日本,美国,北京,北京,东京,纽约,B,uyer,ID,Address,1,2,3,4,中国北京市,美国纽约市,英国利物浦,日本东京市,第一范式的目标是确保每列的原子性,如果每列都是不可再分的最小数据单元(也称为最小的原子单元),则满足第一范式(,1NF,),第二范式 (2nd NF),如果一个关系满足,1NF,,并且除了主键以外的其他列,都依赖与该主键,则满足第二范式(,2NF,),第二范式要求每个表只描述一件事情,Orders,字段,例子,订单编号,产品编号,订购日期,价 格,001,A001,2000-2-3,$29.00,Orders,字段,例子,订单编号,订购日期,001,2000-2-3,Products,字段,例子,产品编号,价 格,A001,$29.00,第三范式 (3rd NF),如果一个关系满足,2NF,,并且除了主键以外的其他列都不传递依赖于主键列,则满足第三范式(,3NF,),Orders,字段,例子,订单编号,订购日期,顾客编号,001,2000-2-3,AB001,顾客姓名,Tony,Orders,字段,例子,订单编号,订购日期,顾客编号,001,2000-2-3,AB001,最终生成:,E-R,实体关系图,数据存储的完整性,Roll Number,Name,Address,BookTaken,12,Alicia Ruth,12, Temple Street,AC091,14,Jason Darren,123, Sunset Blvd.,AC043,15,Mary Beth,32, Golden Avenue,AC021,12,Alicia Ruth,12, Temple Street,AC043,12,Alicia Ruth,12, Tmple Street,AC011,15,Mary Beth,33, Golden Avenue,AC011,不同的地址,!,存在不正确、不准确的数据,数据库“失去了完整性”,姓名,完整性分类,数据实体完整性,字段完整性,引用完整性,自定义完整性,数据实体完整性,河南新乡,赵可以,0010016,河南新乡,张丽鹃,0010015,江西南昌,雷铜,0010014,湖南新田,吴兰,0010013,山东定陶,李山,0010012,.,地址,姓名,学号,江西南昌,雷铜,0010014,约束方法:唯一约束、主键约束、标识列,字段完整性,河南新乡,赵可以,0010016,河南新乡,张丽鹃,0010015,江西南昌,雷铜,0010014,湖南新田,吴兰,0010013,山东定陶,李山,0010012,.,地址,姓名,学号,湖北江门,李亮,8700000000,约束方法:限制数据类型、外键约束、,默认值、非空约束,引用完整性,河南新乡,赵可以,0010016,河南新乡,张丽鹃,0010015,江西南昌,雷铜,0010014,湖南新田,吴兰,0010013,山东定陶,李山,0010012,地址,姓名,学号,98,0010021,数学,约束方法:外键约束,科目,学号,分数,数学,0010012,88,数学,0010013,74,语文,0010012,67,语文,0010013,81,数学,0010016,98,自定义完整性,AV121322,乔峰,CV0016,AV372133,玄痛,CV0015,AV378291,沙悟净,AV0014,AV378290,猪悟能,AV0013,AV378289,孙悟空,AV0012,.,会员证,用户姓名,用户编号,约束方法:存储过程、触发器,帐号,姓名,信用,.,00192,孙悟空,7,00288,猪悟能,6,12333,段誉,8,90111,虚竹,40,93000,岳不群,-10,触发器:检查信用值,常见完整性约束:,PRIMARY KEY,主码约束,(,主键,),UNIQUE,唯一性约束,NOT NULL,非空值约束,AUTO_INCREMENT,用于整数列默认自增,1,UNSIGNED,无符号整数,DEFAULT default_value,默认值约束,DEFAULT current_timestamp,创建新记录时默认保存当前时间(仅适用,timestamp,数据列),ON UPDATE current_timestamp,修改记录时默认保存当前时间(仅适用,timestamp,数据列),CHARACTER SET name,指定字符集(仅适用字符串),数据库编码命名规范,数据库:,命名以字母“,db”,开头(小写),后面加数据库相关英文单词或缩写。如:,db_CRM,。,数据表:,以字母“,tb”,开头(小写),后面加数据表相关英文单词或缩写。如:,tb_User,。,字段:,一般采用英文单词或词组命名,如找不到专业的英文单词或词组,可以用相同意义的英文单词或词组代替。如:,UserName,。,数据库结构设计,数据表,功能,tb_content,内容数据表,tb_comment,用户评论表,tb_category,栏目信息表,tb_user,用户信息表,用户信息表,字段,类型,属性,描述,uid,unsigned int(10),NOT NULL,auto_increment,PRIMARY KEY,用户,id,username,varchar(20),NOT NULL,UNIQUE,用户名,password,varchar(50),NOT NULL,用户密码,time,datatime,NOT NULL,注册时间,ip,varchar(16),NOT NULL,登录,IP,email,varchar(30),NOT NULL,UNIQUE,用户邮箱,level,tinyint(1),NOT NULL,default 1,用户级别,默认为普通权限,1,插入测试样本数据,最后,针对表结构特点,插入测试样本数据,模块设计,模块设计方式,业务功能描述,:功能说明、业务场景、表示层、业务层、数据层,用例事件描述,:前置条件、主流事件、备选事件、结果事件,图形描述,:流程图、用例图,业务描述:栏目管理模块,添加栏目模块,功能说明:添加新栏目,业务场景:查看栏目,并进行添加新栏目操作,表示层规格:,输入信息:栏目标题、栏目描述,选择信息:选择父栏目,输出信息:显示提交信息,添加成功与否,业务层规格:,业务规则:只有系统管理员可以对栏目添加,业务操作:添加栏目,判断是几级栏目,父栏目是什么,数据层规格:,业务数据:栏目编号、栏目名称、栏目描述、父栏目编号等,数据操作:数据库栏目记录增加,如果是一级栏目没有父栏目设置,其他的都要设置父栏目编号,用例设计,用例名称:添加栏目,前置条件:系统管理员登录,主流事件:,输入栏目名称,栏目描述,选择父栏目,提交服务器,异常事件:,栏目名称未输入或者已经存在,父栏目不存在,结果事件:,提示栏目添加成功,流程图-栏目添加,栏目添加模块,流程图,业务描述:用户管理模块,用户登录模块,功能说明:用户登录,业务场景:首页,用户进行登录,表示层规格:,输入信息:用户名、密码、验证码等等,输出信息:登录成功,用户控制界面或后台进入链接,业务层规格:,业务规则:访问主页的任何人都可以进行登录,业务操作:验证用户名、密码是否为空和验证码是否输入正确,验证用户是否存在和密码是否正确,数据层规格:,业务数据:用户名、密码,数据操作:查询是否具有满足条件的记录,用例设计,用例名称:用户登录,前置条件:无,主流事件:,输入用户名、密码,提交服务器,异常事件:,未输入用户名、密码,用户名验证不存在或密码输入不正确,结果事件:,提示用户登录成功,流程图-登录,用户登录,流程图,用户界面设计原则,命令排序:,(,1,)最常用的放在前面;,(,2,)按习惯工作步骤排序;,极小化:尽量少用键盘组合命令,减少用户击键次数;,广度和深度:由于人的记忆局限,层次不宜大于,3,;,一致性:使用一致的术语、一致的步骤、一致的动作行为;,显示提示信息;,减少用户记忆内容;,存在删除操作时,应能提示或恢复操作;,用户界面吸引人,首页,DIV布局,首页,二级栏目首页,内容显示页面,搜索页面,搜索内容显示页面,用户注册、登录,后台登录页面,后台页面,添加用户,用户列表,添加栏目,栏目列表,添加内容,文章列表,概要设计文档与界面设计,
展开阅读全文