收藏 分销(赏)

-数据库应用系统开发过程.ppt

上传人:二*** 文档编号:12595920 上传时间:2025-11-08 格式:PPT 页数:25 大小:56KB 下载积分:5 金币
下载 相关 举报
-数据库应用系统开发过程.ppt_第1页
第1页 / 共25页
本文档共25页,全文阅读请下载到手机保存,查看更方便
资源描述
,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,.,*,第6章 第1讲,第6章,MIS,系统设计与实践,第1讲 数据库应用系统开发过程,数据库工程概述,项目视图与范围,需求分析和需求定义,数据库设计,软件体系结构设计,详细设计和编码实现,测试,发布和实施,快速原型技术的应用,.,6.1,数据库工程概述,数据库应用系统的开发是一项复杂的软件工程,但又有其自身的一些特点,因此,特称为“,数据库工程,”。,数据库工程按其内容可分为两个部分,数据库的设计实现。数据库的设计实现是开发数据库应用系统的核心工作,应用程序的设计实现。应用程序设计实现本身也是一项软件工程,但与数据库的设计实现紧密相关。,数据库应用系统从开始规划、分析、设计、实现、测试、运行、维护到系统退役的整个过程称为数据库应用系统的生存期,.,6.1,数据库工程概述,数据库工程主要包括以下步骤或开发阶段:,规划阶段,建立项目视图与范围,需求分析,和需求定义,数据库概念结构设计,数据库逻辑结构设计,在,DBMS,中实施数据库逻辑结构和物理结构设计,应用程序的概要设计,应用程序的详细设计和编码实现,数据库、应用程序和系统集成测试,设计数据库的索引等物理结构,制作应用程序安装程序,规划整个数据库应用系统在用户环境中的实施方案,制订数据库应用系统的常规维护活动计划,.,6.2,项目视图与范围,6.2.1 项目视图和范围的概念和用途,项目视图可以把项目参与者(开发者和用户双方)定位到一个共同和明确的目标上,项目视图描述了软件产品所涉及到的和在一个理想环境中最终所应具有的功能。,项目范围描述软件产品应包括的功能和不包括在内的功能,范围描述在应包括和不包括在内的功能之间划清了界限,同时确定项目的局限性。,项目的业务需求分析是在项目视图和范围描述的基础上进行的,因此,一定要在业务需求分析之前完成项目视图和范围的蓝图。如果不能清楚地标识项目的视图和范围,业务需求可能会无边无际,最终导致无法完成整个软件系统。,.,6.2.2,项目视图和范围的规格说明模板,1,业务需求,1.1,背景,1.2,业务机遇,1.3,业务目标,1.4,客户或市场需求,1.5,提供给客户的价值,1.6,业务风险,2,项目视图的解决方案,2.1,项目视图的陈述,2.2,主要特性,2.3,假设和环境依赖,3,范围和局限性,3.1,首次发行的范围,3.2,随后发行的范围,3.3,局限性和专用性,4,业务环境,4.1,客户概貌,4.2,项目优先级,5,产品成功的因素,.,6.2.3,有关项目视图和范围的一些建议,如果在项目视图与范围规格说明中还不能澄清软件的开发范围以及系统和外部的界限,建议使用关联图进一步描述系统和外部的关系。,项目视图和范围文档可以帮助开发者和用户代表判断所提出的特性和需求放进项目中是否合适。,如果建议在项目范围之外,应重新协商项目费用、项目计划,并考虑相关的资源与技术等是否能够实现新的需求,在需求变更得到双方赞同后才能重新开始。,如果建议在项目范围之内,应分析该建议相关的需求在项目中的优先级别,根据分析结果更改项目优先级安排和项目开发计划。,应该牢记,项目开发过程中应始终把注意力集中在项目视图和范围的规格定义上,需求变更时应标识出项目视图和范围的变更。,.,6.3,需求分析和需求定义,需求分析规格说明是项目开发过程中后续工作的参考基础,数据库设计、系统结构设计、编码实现、测试和产品交付时都需要以需求分析规格说明为参考依据。需求规格说明也是需求变更的重要依据。,需求分析越清楚,设计和维护工作就越轻松,在未澄清关键需求之前请不要急于系统结构设计、界面设计和编码实现。,推荐的,需求分析过程,需求准备,从轮廓到细节逐步获取用户需求,需求整理和分析,确定关键需求,编写需求分析规格说明书,对需求进行验证核实,划分出明确的需求和模糊的需求,.,6.3.1,需求准备,了解项目或系统所涉及到的领域知识,编写简要的项目术语参考手册,确定需求分析过程,明确需求目标,将用户群分类并归纳各自特点,确定每类用户的代表,确定需求决策者,编写项目视图和范围的文档,.,6.3.2,从轮廓到细节逐步获取用户需求,从各用户代表处获取业务实例。业务实例有助于详细了解业务的细节和用户的真正需求,召开需求讨论会议。这是获取需求的一种方法,在需求获取过程中可能需要多次需求讨论会议,以便不断了解用户需求,分析业务的工作流程。最好用示意图的方式表示出来。编制业务的工作流程有助于明确系统的使用实例和功能需求,确定质量特性和其他非功能的需求,综合用户需求,进一步完善需求分析,.,6.3.3,需求整理和分析,绘制系统关联图,定义系统与外部实体之间的界限和接口,明确两者间的信息流和物质流。,创建用户界面原型。当开发人员或用户不能明确需求时,最好的办法是开发一个用户界面原型。,分析需求的可行性。,建立需求的表示模型。使用图表分析模型来表示需求是比较好的方法,也是对文字描述最好的补充说明。,创建数据字典,定义系统中系统的所有数据项和数据结构。,明确用户功能需求的等级:期望需求、普通需求和兴奋需求,有助于建立开发优先级和需求的重要等级。,.,6.3.4,编写需求分析规格说明书,使用标准模板编写需求分析规格说明书。,指明各需求项的来源。,标识需求定义,为各项需求标注上唯一的标号,记录业务规范。业务规范是指产品的操作原则或操作要求。,创建需求跟踪表。需求跟踪表是为了将各项需求与实现、测试它的设计和代码部分联系起来,这样有助于需求变更时能够同时标识并修改相应的内容,获得一致的版本。,.,6.3.5,需求验证,审查需求规格说明文档,以需求为依据编写功能测试用例,编写用户手册,确定产品或项目的验收标准,.,6.3.6,软件需求规格说明模板,1,引言,1.1,目的,1.2,文档约定,1.3,预期的读者和阅读建议,1.4,产品范围,1.5,参考文献,2,综合描述,2.1,产品的前景,2.2,产品的功能,2.3,用户类及其特征,2.4,运行环境,2.5,设计和实现上的限制,2.6,假设和依赖,3,外部接口需求,3.1,用户界面,3.2,硬件接口,3.3,软件接口,3.4,通信接口,4,系统特性,4.1,说明和优先级,4.2,激励,/,响应序列,4.3,功能需求,5,其他非功能需求,5.1,性能需求,5.2,安全设施需求,5.3,安全性需求,5.4,软件质量属性,5.5,业务规则,5.6,用户文档,6,其他需求,附录,A:,词汇表,附录,B:,分析模型,附录,C:,待确定问题的列表,.,6.4,数据库设计,数据库设计是数据库应用系统开发的核心任务。,数据库设计的好坏直接影响整个系统的质量,比较极端的说法是,只要设计的数据库能够很好地完成业务的数据管理和操作需求,那么就已经保证整个数据库应用系统的质量。,如果数据库设计得有问题,则无论客户端应用程序开发技术多么高明,花费再多的成本也无法构建出一个好的数据库应用系统来。,应反复斟酌和验证数据库结构,确保数据库设计能够满足业务的数据管理需求才能进行后一阶段的开发工作。,.,6.4.1,数据库设计过程和设计基础,数据库设计过程主要包括以下步骤:,概念结构设计。概念结构设计一定要抛开平台约束,将注意力集中在业务数据的表示上。,逻辑结构设计。,针对具体的,DBMS,,实现数据库逻辑结构设计。应充分利用,DBMS,提供的实现功能,尽量减少编码实现数据库完整性约束的工作量。,物理结构设计和实现。应充分理解,DBMS,的存储和索引技术再决定如何存储数据,如何设计索引等。,装载数据,测试数据库的运行状况。压力测试和性能测试等,要想设计出性能优秀的数据库,必须掌握数据库设计的基本原理知识和,DBMS,的应用技能,.,6.4.2,数据库设计规格说明模板,1 引言,1.1 编写目的,1.2 设计背景,1.3 定义,1.4 参考资料,2 外部设计,2.1 标识符和状态,2.2 使用它的程序,2.3 约定,专门指导,2.4 支持软件,3 结构设计,3.1 概念结构设计,3.2 逻辑结构设计,3.3 物理结构设计,4 运用设计,4.1 数据字典设计,4.2 安全保密设计,.,6.4.3,数据库设计的一些建议,概念结构设计的重要性,不要因问题简单而忽视概念结构设计,除非你的理解力和记忆力足够好。没有概念结构设计,无法直接跟踪和验证设计是否满足业务需求。,概念结构设计的好坏直接影响逻辑结构设计的工作量。,某些数据库概念结构设计,CASE,工具不能反映真正的业务对象,不能过份迷信,CASE,工具,设计概念模型最重要的是勾画出数据对象间的关系,未完整验证概念模型之前,不要急于开始下一步,标识业务规则,业务规则是保证数据完整性的约束,是逻辑结构设计、完整性约束实现和事务实现的重要参考,业务规则应该是涉及到数据完整性问题的功能需求,.,6.4.3,数据库设计的一些建议,数据库逻辑结构设计,设计出与,DBMS,平台无关的数据库逻辑结构是最佳的设计,这将有助于数据库的移植。,数据库的关系模式最低要求应满足3,NF,,而且应尽量减少关系和字段的冗余,这是设计数据库的基本准则。但在实际数据库工程中,还应考虑客户端应用程序开发的问题,并非规划化程度越高的数据库就一定是高质量的数据库。,某些属性具有随时间变化的特征,称为时间关联属性。在设计数据库逻辑结构时应充分考虑属性与“时间”的关系,应考虑属性的动态特性,聚集属性是否需要作持久数据存储,验证逻辑结构是否满足业务数据管理的需求,.,6.4.3,数据库设计的一些建议,参考数据表,在设计数据库逻辑结构时,某些数据对象具有相似的逻辑结构,并且这些数据对象的用途也相似,例如职务类别、学历类别、政治面貌类别等数据对象。这些数据对象通常用来作为其它数据对象的分类属性,分析概念模型时通常是某一个实体的一个属性。,为了便于管理维护这些参考数据,同时也为了减少数据库中表的大小,在设计数据库的逻辑结构时,可将数据库中存在的各种参考数据都单独设计为一个表。所有参考数据表都由两个字段构成:编号和名称。,使用参考数据编号字段来替换数据库中所有表的参考数据字段,这样表之间就建立起了参照关系(主码外码的关系)。应将这类参照关系设置为禁止级联删除、级联修改,或在代码中保证这样的参照关系。,.,6.4.3,数据库设计的一些建议,数据完整性,业务规则在数据库中通过实施数据完整性来实现。,数据完整性的层次分为,字段级,、,表级,和,数据库级,三种,按照实现方式相应地可称为,域约束,、,表约束,和,断言,实现。,字段级数据完整性指一条数据记录(或实体)中,字段的取值、不同字段值之间应满足的约束条件,表级数据完整性指表(或关系)中某些字段的取值约束,通常指候选码和外码约束。候选码约束实现时采用主码和唯一约束来实现,断言实现数据库级的约束,通常这类约束不能使用上述约束实现机制完成,有可能很复杂,也有可能很简单,设计实现数据库完整性时,应根据业务规则列表建立完整性约束标识列表,在列表中清楚地描述完整性约束表达式或规则,标识出实现约束的方式,.,6.4.3,数据库设计的一些建议,视图、存储过程和事务,数据库应用系统的业务需求规格说明中部分业务功能是用户查询和操作数据库的数据,对于这类业务功能,应在数据库中设计相应的视图或存储过程来实现。返回数据集的存储过程也可以当做视图来使用。存储过程能够实现相当复杂的数据操作功能,尤其是事务类型的业务功能。,即使所采用的,DBMS,未提供视图或存储过程机制,在设计数据库时也应标识出用户视图和事务(也可以在业务规则中标识事务),这将有助于数据库应用程序的开发。从极端角度来看,数据库应用程序是数据库的子模式,应用程序是用户视图的表现。,.,6.4.3,数据库设计的一些建议,数据库测试。验证设计的数据库是否满足业务数据管理和操作的需求,数据库逻辑结构是否能够满足数据存储和管理的需求,测试数据库的性能是否能够满足预期的目标,压力测试和极限模拟应用测试等都是用来测试数据库性能的技术,命名问题,随意命名,重复命名,汉语拼音或拼音缩写,使用数据库应用系统支持软件的关键字或保留字命名,不区分大小,.,6.5,软件体系结构设计,6.5.1 设计问题,数据库的表与应用程序功能模块有一定对应关系。对独立的表或表集的数据管理通常由一个个独立的功能模块实现。,应对这些统计需求进行分类,不同类的统计功能需求由不同的功能模块实现,最好为操作需求差异很大的用户类提供不同的应用程序。将各用户类应用程序中功能相近或完全相同的功能模块设计为公用模块,数据库应用程序都涉及数据库连接、用户登录等操作,这些操作都应当由独立的功能模块实现,软件体系结构设计最好在数据库逻辑结构设计结束后开始,这样能够根据数据关系优化体系结构,.,6.5.2,软件体系结构设计规格说明模板,1 引言,1.1 编写目的,1.2 设计背景,1.3 定义,1.4 参考资料,2,总体设计,2.1,需求规定,2.2,运行环境,2.3 结构,2.4 功能需求与程序的关系,2.5 人工处理过程,2.6 尚未解决的问题,3,接口设计,3.1 用户接口,3.2 外部接口,3.3 内部接口,4 运行设计,4.1 运行模块组合,4.2 运行控制,4.3 运行时间,5 系统数据结构设计,5.1 逻辑结构设计要点,5.2 物理结构设计要点,5.3 数据结构与程序的关系,6 系统出错处理设计,6.1 出错信息,6.2 补救措施,6.3 系统维护设计,.,6.6 其他开发问题,软件详细设计和编码实现。可将详细设计和编码实现作为一个开发阶段,但绝对不能忽略详细设计。实现任何模块时,都先进行细设计,将详细设计的规格说明作为程序模块的注释,编码实现基于详细设计的注释而进行。,测试,系统发布和实施,快速原型技术在数据库工程中的应用,.,
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 包罗万象 > 大杂烩

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2025 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服