《项目实训概要设计》由会员分享,可在线阅读,更多相关《项目实训概要设计(65页珍藏版)》请在金锄头文库上搜索。
1、目录,概要设计的概念 概要设计的目的、任务和步骤 概要设计文档 界面设计,概要设计的概念,在软件需求分析阶段,已经搞清楚了软件“做什么”的问题,并通过说明书描述了出来,这算是完成了目标系统的逻辑模型。 进入设计阶段,要把软件“做什么”变换成“怎么做”,这就是变为了物理模型。 把软件需求转换为软件表示的过程,这种表示最开始只描述了软件的总体体系结构,称为概要设计。,概要设计的目的,将软件系统需求转换为未来系统的设计,准确无误地用计算机处理过程来表达用户的各项要求,以此做为详细设计的大纲 做为软件设计的第一阶段,日后的设计均在此基础之上进行,概要设计的任务和步骤,设计系统方案,确定大致的功能模块划
2、分,并选择最佳实施方案。 数据库设计 模块功能分解描述-流程图 Web页面结构的设计 编写概要设计文档,概要设计文档,概要设计文档应说明:程序的总体结构、功能分配、模块划分、输入输出、接口设计、运行设计、数据结构设计和出错处理设计等,为详细设计提供基础 数据库E-R图 模块基本设计概念和处理流程:通过文字和图形的方式表示模块设计结构 设计用户的所有界面 网站布局,主题、颜色、图片等,概要设计文档的主要内容,任务概述 总体设计 模块设计 接口定义 数据结构设计 运行设计 出错处理设计 等等.,主要功能模块(需求设计),进行模块概要设计,广告管理,留言管理,一级栏目管理,二级栏目管理,三级栏目管理
3、,用户级别分析,用户操作管理,用户管理,更改密码,设置权限,数据备份,数据还原,数据清空,页眉页脚信息,关于我们,重新登录,系统功能模块结构图(概要设计),信息管理,接口设计,用户接口:B/S结构,网页图形用户界面 外部接口:与其他信息网站交互数据,达到信息传递和共享的目的,主要有:RSS订阅等,实现方法XML。 内部接口:本系统采用框架结构,框架通过使数据数据视图数据行为相分离的方法 数据视图:基于数据结构来建立 数据行为:以数据视图的选择信息做为参数来调用 数据:隐藏在数据视图和数据行为的背后 数据库接口 系统内部的各种数据通常会以数据库的方式保存,因此在接口定义时应确定与数据库进行数据交
4、换的数据格式、时机、方式等。,数据库设计,数据库管理系统选型 数据库设计 设计E-R图 数据库规范化 建立数据库表结构,设计数据库的步骤 1,收集信息: 与该系统有关人员进行交流、坐谈,充分理解数据库需要完成的任务,BBS论坛的基本功能: 用户注册和登录,后台数据库需要存放用户的注册信息和在线状态信息; 用户发贴,后台数据库需要存放贴子相关信息,如贴子内容、标题等; 论坛版块管理:后台数据库需要存放各个版块信息,如版主、版块名称、贴子数等;,设计数据库的步骤 2,标识对象(实体Entity) 标识数据库要管理的关键对象或实体,实体一般是名词: 用户:论坛普通用户、各版块的版主。 用户发的主贴
5、用户发的跟贴(回贴) 版块:论坛的各个版块信息,设计数据库的步骤 3,论坛用户: 呢称 密码 电子邮件 生日 性别 用户的等级 备注信息 注册日期 状态 积分,主贴 发贴人 发贴表情 回复数量 标题 正文 发贴时间 点击数 状态: 最后回复时间,回贴 贴子编号 回贴人, 回贴表情 标题 正文 回贴时间 点击数,版块 版块名称 版主 本版格言 点击率 发贴数,标识每个实体的属性(Attribute),设计数据库的步骤 4,标识对象之间的关系(Relationship),跟贴和主贴有主从关系:我们需要在跟贴对象中表明它是谁的跟贴; 版块和用户有关系:从用户对象中可以根据版块对象查出对应的版主用户的
6、情况; 主贴和版块有主从关系:需要表明发贴是属于哪个版块的; 跟贴和版块有主从关系:需要表明跟贴是属于哪个版块的;,绘制E-R图 1,E-R(EntityRelationship)实体关系图,绘制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,多对多,绘制E-R图,1,1,1,1,M,1,M,M,M,论坛用户(BBSUser),版块(BBSSection
7、),发贴(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 最初定义了规范化的三个级别,范式是具有最小冗余的表结构。这
8、些范式是: 第一范式(1st NF First Normal Fromate) 第二范式(2nd NFSecond Normal Fromate) 第三范式(3rd NF Third Normal Fromate),第一范式 (1st NF),第一范式的目标是确保每列的原子性 如果每列都是不可再分的最小数据单元(也称为最小的原子单元),则满足第一范式(1NF),第二范式 (2nd NF),如果一个关系满足1NF,并且除了主键以外的其他列,都依赖与该主键,则满足第二范式(2NF) 第二范式要求每个表只描述一件事情,第三范式 (3rd NF),如果一个关系满足2NF,并且除了主键以外的其他列都不传
9、递依赖于主键列,则满足第三范式(3NF),Orders,字 段,例 子,订单编号,订购日期,顾客编号,001,2000-2-3,AB001,最终生成:E-R实体关系图,数据存储的完整性,存在不正确、不准确的数据,数据库“失去了完整性”,完整性分类,数据实体完整性 字段完整性 引用完整性 自定义完整性,数据实体完整性,约束方法:唯一约束、主键约束、标识列,字段完整性,约束方法:限制数据类型、外键约束、 默认值、非空约束,引用完整性,约束方法:外键约束,自定义完整性,约束方法:存储过程、触发器,常见完整性约束: PRIMARY KEY 主码约束(主键) UNIQUE 唯一性约束 NOT NULL
10、非空值约束 AUTO_INCREMENT 用于整数列默认自增1 UNSIGNED 无符号整数 DEFAULT default_value 默认值约束 DEFAULT current_timestamp 创建新记录时默认保存当前时间(仅适用timestamp数据列) ON UPDATE current_timestamp 修改记录时默认保存当前时间(仅适用timestamp数据列) CHARACTER SET name 指定字符集(仅适用字符串),数据库编码命名规范,数据库: 命名以字母“db”开头(小写),后面加数据库相关英文单词或缩写。如:db_CRM。 数据表: 以字母“tb”开头(小写)
11、,后面加数据表相关英文单词或缩写。如:tb_User。 字段: 一般采用英文单词或词组命名,如找不到专业的英文单词或词组,可以用相同意义的英文单词或词组代替。如:UserName。,数据库结构设计,用户信息表,插入测试样本数据,最后,针对表结构特点,插入测试样本数据,模块设计,模块设计方式 业务功能描述:功能说明、业务场景、表示层、业务层、数据层 用例事件描述:前置条件、主流事件、备选事件、结果事件 图形描述:流程图、用例图,业务描述:栏目管理模块,添加栏目模块 功能说明:添加新栏目 业务场景:查看栏目,并进行添加新栏目操作 表示层规格: 输入信息:栏目标题、栏目描述 选择信息:选择父栏目 输
12、出信息:显示提交信息,添加成功与否,业务层规格: 业务规则:只有系统管理员可以对栏目添加 业务操作:添加栏目,判断是几级栏目,父栏目是什么 数据层规格: 业务数据:栏目编号、栏目名称、栏目描述、父栏目编号等 数据操作:数据库栏目记录增加,如果是一级栏目没有父栏目设置,其他的都要设置父栏目编号,用例设计,用例名称:添加栏目 前置条件:系统管理员登录 主流事件: 输入栏目名称,栏目描述,选择父栏目 提交服务器 异常事件: 栏目名称未输入或者已经存在 父栏目不存在 结果事件: 提示栏目添加成功,流程图-栏目添加,栏目添加模块 流程图,业务描述:用户管理模块,用户登录模块 功能说明:用户登录 业务场景
13、:首页,用户进行登录 表示层规格: 输入信息:用户名、密码、验证码等等 输出信息:登录成功,用户控制界面或后台进入链接,业务层规格: 业务规则:访问主页的任何人都可以进行登录 业务操作:验证用户名、密码是否为空和验证码是否输入正确,验证用户是否存在和密码是否正确 数据层规格: 业务数据:用户名、密码 数据操作:查询是否具有满足条件的记录,用例设计,用例名称:用户登录 前置条件:无 主流事件: 输入用户名、密码 提交服务器 异常事件: 未输入用户名、密码 用户名验证不存在或密码输入不正确 结果事件: 提示用户登录成功,流程图-登录,用户登录 流程图,用户界面设计原则,命令排序: (1)最常用的放在前面; (2)按习惯工作步骤排序; 极小化:尽量少用键盘组合命令,减少用户击键次数; 广度和深度:由于人的记忆局限,层次不宜大于3; 一致性:使用一致的术语、一致的步骤、一致的动作行为; 显示提示信息; 减少用户记忆内容; 存在删除操作时,应能提示或恢复操作; 用户界面吸引人,首页,DIV布局,首页,二级栏目首页,内容显示页面,搜索页面,搜索内容显示页面,用户注册、登录,后台登录页面,后台页面,添加用户,用户列表,添加栏目,栏目列表,添加内容,文章列表,概要设计文档与界面设计,