11第十二章数据库设计与界面设计三种数据模型2数据模型按不同的应用层次分成三种类型,它们是概念数据模型(conceptualdatamodel)、逻辑数据模型(logicdatamodel)、物理数据模型(physicaldatamodel)。概念数据模型简称概念模型,它是一种面向客观世界、面向用户的模型。逻辑数据模型又称数据模型,它是一种面向数据库系统的模型,该模型着重于在数据库系统一级的实现。物理数据模型又称物理模型,它是一种面向计算机物理表示的模型,此模型给出了数据模型在计算机物理结构的表示。逻辑结构设计3概念结构是独立于任何一种数据模型的信息结构。逻辑结构设计的任务就是把概念结构设计阶段设计好的基本E-R图转换为与选用DBMS产品所支持的数据模型相符合的逻辑结构,并对数据模型进行优化。早期设计的应用系统使用网状或层次数据模型,而新设计的数据库应用系统都普遍采用支持关系数据模型的RDBMS,所以这里只介绍E-R图向关系数据模型的转换原则与方法。第一范式(1NF)第一范式(1NF):确保每一列的原子性。如果每列都是不可再分的最小单位,即满足第一范式。4BuyerIDCountryCity1142中国中国日本美国北京北京东京纽约………BuyerIDAddress1234中国北京市美国纽约市英国利物浦日本东京市……第二范式(2NF)第二范式(2NF):满足了第一范式,并且确保每列都与主键相关,即满足第二范式。第二范式处理冗余数据的删除问题。当某张表中的信息依赖于该表中其它的不是主键部分的列的时候,通常会违反第二范式。5Orders字段例子订单编号产品编号订购日期价格001A0012000-2-3$29.00……Orders字段例子订单编号订购日期0012000-2-3Products字段例子产品编号价格A001$29.00第三范式(3NF)第三范式(3NF):满足了第二范式,并且确保每列都与主键直接相关而不是间接相关,则满足第三范式。6Orders字段例子订单编号订购日期顾客编号0012000-2-3AB001顾客姓名Tony……Orders字段例子订单编号订购日期顾客编号0012000-2-3AB001……7什么是界面设计?系统界面处理需要少量人员干预的输入和输出用户界面处理需要人员直接参与的输入和输出设计指导原则有助于确保系统的可用性8用户界面与系统界面无论传统设计还是OO设计方法中,系统设计的一个关键步骤是将每一事件的I/O分类划分到系统界面或用户界面中。将二者的设计分开,是因为两种设计需要不同的专业知识和技术。用户眼中的好软件“好”的软件意味着“实用、易用、美观”如果软件的功能不实用(不能为用户解决问题),那么不管该软件是否易用和美观,用户一般都不愿意购买该软件,除非用户没有选择余地。如果两个软件的功能和价格都相似,那么用户会挑选更加易用的那个软件。如果两个软件的功能、价格、易用性都差不多,那么用户会选择更加美观的那个软件。谁来评价“好或差”用户才真正有资格说软件“好或坏”。如果用户对软件很不满意,开发人员不要有逆反情绪:从哪里找来的笨蛋用户!910可用性学习和使用系统的容易程度。自解释型的系统:拥有大量表单、对话框、广泛提示信息和指导信息的基于菜单的应用程序。适用于那些用户并不经常使用的系统。但如果是办公室职员整天都在使用的系统,设计的重点应该放在界面的快速切换和灵活性方面,应该有包括快捷键、热键、大信息量屏幕显示等方面的设计。11界面设计指导原则⑴窗体布局与格式化⑵数据的键控与输入⑶导航与支持控件⑷帮助支持12⑴窗体布局与格式化主要关注窗体的整体外观和感觉。设计输入窗体时,应该考虑:一致性;标题、标签和徽标;字体大小、亮度对比和颜色。13⑵数据的键控与输入输入窗体核心任务是新数据的输入。主要目的:尽可能地减少输入数据量,任何计算机已有信息或者由计算机生成的信息应该不必重新输入。数据输入控件:文本框、列表框、微调框、组合框、无线按钮(或单选按钮)、复选框。14⑶导航与支持控件标准Windows界面提供用于导航和窗口操纵的控件。包括:窗体右上角的最小化、最大化和关闭按钮,水平和垂直滚动条,位于左侧面板上的记录选择条和窗体底部的记录导航箭头等。为维护系统一致性,要求尽可能地利用这些导航控件来实现界面设计。15⑷帮助支持三种通用类型的帮助信息:①与窗体的使用流程相关的指导信息;②帮助主题的索引列表;③上下文相关的帮助信息。16网页设计中的十种好的做法⑴将机构名称和徽标放置在所有网页上,并建立徽标与主页的链接。⑵网页数量若超过100,应提拱搜索功能。⑶书写简洁的标题行和页面标题。⑷构造页面的原则是便于读者浏览并帮助读者忽略大块而在匆匆一瞥中找到关键内容。17⑸不要将有关某一产品或某一主题的所有内容拥挤地塞满单一页面,而应使用超文本来构造内容空间。⑹可以使用产品照片,但要避免在产品系统页面上混乱而繁杂地堆满照片,主要产品页面必须做到迅速地加载和执行功能,所以其中内容应该短小精悍。18⑺页面上准备放置小的照片和图像时要利用相关增强图像缩影功能,实现在原始图像缩影时不是简单地缩小成看不清楚的小东西,而是在剪切图片、缩小尺寸的同时放大相关细节。19⑻利用链接标题为用户提供链接内容预览信息。⑼要保证所有重要的页面都能被视力不好的用户访问到。⑽工作方式应与一般人一致,如果某个大网站按照特定的方式工作,用户往往因为不习惯新的方式而将注意力转向其他的网站。20系统界面设计系统界面输出:账单、报表、打印表格,以及流向其他自动化系统的电子输出。系统界面输入:自动化输入和来自于非用户界面设备的输入。21报表类型①详细报表②汇总报表③异常报表④决策报表将下表改为满足第二范式。学号姓名年龄课程成绩学分22课堂练习——第二范式(2NF)学号姓名年龄课程成绩学分学号姓名年龄课程学分学号课程成绩23课堂练习——第二范式(2NF)24课堂复习1.用户界面与系统界面的区别有哪些?2.用户界面设计指导原则有哪些?3.常见的报表类型有哪些?