数据库应用系统功能设计与实施幻想Elapse

软件体系结构(软件架构):{构建,连接件,约束}。

构件:组成系统的具有一定独立功能的不同粒度的程序模块等。

连接件:将不同的构件连接起来,表示构件间的相互作用,如信号量的传递、功能和方法的调用。

约束:对象连接时的规则。

软件设计过程:

概要设计:

完成软件的总体结构设计。

对每个功能模块进行功能描述、全局数据定义和外部文件定义。

做到低耦合,高内聚,降低模块接口的复杂性。

可采用层次结构图表示软件总体结构,体现自顶向下、逐步求精的设计思想。

应提供概要设计说明书等

详细设计:

细化概要设计产生的功能模块,形成可编程的程序模块。

用某种过程设计语言设计程序模块的内部细节。

还要制定模块测试方案。

可采用结构化设计方法(面向数据流的设计方法)、面向对象设计方法或面向数据设计方法。

总体设计:

对软件需求进行分解,划分成若干个子系统,定义各个子系统应事先的功能和相互间的交互关系和通信机制。

将每个子系统进一步划分为功能模块,定义各功能模块的数据结构、相互间交互关系。

二、DBAS总体设计

内容:DBAS体系结构设计、DBAS软件总体设计、软硬件选型与配置设计、业务规则初步设计。

体系结构设计:

将系统从功能、层次/结构、地理分布等角度进行分解,划分为多个子系统,定义各子系统应事先的功能。

设计系统的全局控制,明确各子系统间的交互和接口关系。

客户/服务器体系结构:(两层C/S结构)

数据管理功能在客户端上,数据处理功能在数据库服务器上。

数据库服务器可以为多个客户端应用一共共享的数据管理功能。

客户端应用可以通过网络访问多个不同数据源。

客户端除了完成人机交互功能外,还需要完成面向应用的数据处理功能,属于“胖客户端”。

浏览器/服务器结构:(三层B/S结构)表示层位于客户端,有Web浏览器实现。

客户端:根据现实逻辑完成具体的数据表示和人机交互功能,属于“瘦客户端”。

功能层:位于Web应用服务器,实现面向具体应用领域的业务规则,接收用户请求,向数据库服务器提出数据操作请求,接收数据访问结果,通过客户端将结果返回给用户。

数据层:位于数据库服务器,通过DBMS完成具体的数据存储和数据存取等数据管理功能。接收来自应用服务器提出的数据操作请求,将数据访问结果返回给应用服务器。

二者特点:使用Internet、维护工作量方便B/S优于C/S,在运行速度、数据安全、人机交互方面,B/S不如C/S。

DBAS软件总体设计:将DBAS软件系统分解为一系列子系统,为各子系统分配相应功能,定义子系统间的协调相互机制。

软硬件选型和配置设计

业务规则初步设计:用业务流程图表示出来。

三、DBAS功能概要设计

表示层:负责所有与用户交互的功能。

业务逻辑层:根据业务逻辑将表示层获取的数据进行组织后传递给数据访问层。

数据访问层:与DBMS系统进行交互,提取或存入应用系统所需的数据。

数据持久层:数据组织和存储。

表示层概要设计:主要任务是人能及界面设计。

业务逻辑层概要设计:高内聚,低耦合。构件间接口明确。如果构件过于复杂,可进一步细分。

数据访问层概要设计:主要任务是针对DBAS的数据处理需求设计用于操作数据库的各类事务。

事务的特性:原子性、一致性(保证事务的操作状态是正确的)、隔离性(互不打扰)、持续性(影响是永久的,对于撤销的事务影响可以消除)。

四、DBAS功能详细设计:

表示层详细设计:初步设计、用户界面细节设计、原型设计与改进。

业务逻辑层详细设计:

根据概要设计中定义的个程序模块功能和输入输出数据需求,设计各模块的内部处理流程和算法、数据结构、对外接口,是对概要设计的细化。

可以通过UML类图、活动图、协作图来描述DBAS对用户业务的详细实现逻辑。

五、应用系统安全架构设计

数据安全设计:

安全性保护、完整性保护、并发控制、数据库的备份与恢复、数据加密传输。

安全性保护:

用户身份鉴别:windows集成,用户名和密码。权限控制、视图机制:建立用户时设好权限等级。

视图机制:即使数据存在,但用户看不到它们。

完整性保护:指正确性、一致性、相容性。

防止假如不合语义的数据。

方法:设置完整性检查,即对数据库中的数据设置一些约束条件。

作用对象:分为列、元组、关系三种级别,列:值的类型、范围、精度、排序,元组:各个属性间的约束(主键约束,外键约束)。

完整性约束条件的设置由用户通过完整性约束语句给出,完整性检查由数据库管理系统完成。

排它锁x和共享锁s。

避免死锁:同一顺序访问资源。

采用小事务模式,尽量缩短事务长度。

使用记录级别的锁(行锁),少用表级别的锁。

使用绑定连接。

解决方法:基于封锁方法、基于撤回方法

事务:

一条或多条SQL语句的一次执行。

可串行性:一个调度对数据库的状态的影响都和某个串行调度相同

冲突:

什么是锁:

排它锁X:只有一个一个事务能读,写,其他事务不能读、写。

共享锁S:所有事务都可以读,但任何事务不能写。

更新锁U

增量所I

相容性(矩阵):

有S锁,其他能申请S,不能申请X

有X锁,其他不能申请S和X

饿死:数据项A现在有共享型锁,T1对数据项A申请排它锁,此时需要等待A上锁的释放,但是此时T2向A申请了共享型锁,因为是相容的,所以当A上刚开始的共享型锁释放后,T1还需等待T2,而此时,T3又向A申请了共享型锁……那么T1的加锁申请一直不能的得到满足,称饿死。

如何避免饿死?

假如T对Q申请的M型锁

1.不存在对Q持有与M不相容的锁

2.不存在等待Q加锁且先于T申请加锁的事务

这样,一个加锁申请就不会被其后申请加锁的事务所阻塞。

封锁协议(加/解锁时机):

隔离性级别:

两段封锁协议:对于每一个事务,在有加锁的地方前不能解锁,在有解锁的地方前加锁。

THE END
1.设计一个图书管理系统数据库数据库缓存:我们可以使用缓存技术,将常用的数据缓存到内存中,以提高查询速度。 五、总结 设计一个图书管理系统数据库需要进行需求分析、数据库设计、数据库实现和数据库优化等步骤。通过合理的数据库设计和优化,可以提高图书管理系统的性能,提高图书馆的服务质量。https://www.dugusoft.com/zixun/zixun1351.html
2.一文带你了解数据库设计基础简介:什么是数据库设计?数据库设计(Database Design)是指对于一个给定的应用环境,构造最优的数据库模式,建立数据库及其应用系统,使之能够有效地存储数据,满足各种用户的应用需求(信息要求和处理要求)。在数据库领域内,常常把使用数据库的各类系统统称为数据库应用系统。 https://developer.aliyun.com/article/852495
3.数据库技术系统设计方案.docx数据库技术系统设计方案第一章、概述项目背景建设目标及建设容第二章、需求分析功能要求数据采集整合通过数据采集、加工、整合服务,进行整理后,汇入统一的系统数据库存储。其处理过程可监控,可回溯,可重新采集。系统详细记录数据处理的原则和整合规则,提供编辑处理。数据采集主要的对象主要包括以下三大类:.文档:采集存储...https://www.renrendoc.com/paper/227595065.html
1.《数据库应用系统实践》产品生产信息系统系统功能详细描述,包括需求分析、E-R图、数据流图、关系模式、物理结构设计、数据库表建立、功能实现代码以及功能评价。 3. ...数据库课程设计---医院信息系统的设计 07-03 数据库课程设计---医院信息系统的设计 里面包含了源码和课程设计报告,可供学习参考。高分课设。一、课程设计目的及基本要求 数据库系统...https://blog.csdn.net/Lixu_No_1/article/details/143859795
2.第二十九章:数据库的设计规范其他实例文章**第二十九章:数据库的设计规范** 在软件开发领域,数据库是系统中最重要的一部分,它负责存储和管理数据。然而,很多时候,我们会发现数据库设计不合理,导致性能问题、维护困难等问题。因此,在本章中,我们将讨论数据库设计的规范。 **1. 数据库设计原则** ...http://www.shili8.cn/article/detail_20002674471.html
3.人脸系统数据库设计本文档全面系统的简介描述了人脸系统的数据库结构与设计。 2. 设计约束 人脸系统基于分布式数据OPAQ和业务数据库MYSQL实现。因为人脸抓拍日志(capture_log)数据量非常大,设计上存放在OPAQ,布控报警(alarm)后续要存入到OPAQ中,其余数据存在MySQL。 人脸默认是Hibernate ORM框架...https://www.jianshu.com/p/786126cf69d7
4.数据库系统原理课程设计51CTO博客课程名称: 数据库系统原理课程设计 设计题目:图书借阅管理系统。 已知技术参数和设计要求: 图书借阅管理系统 (1)某图书借阅管理系统需要如下信息: 读者信息,包括身份证号,姓名,性别,电话号码等。 书籍信息,包括书籍ISBN编号,书籍名称,作者,单价,出版社,出版日期,库存数等。 https://blog.51cto.com/u_15740728/5614588
5.图书管理系统数据库设计示例(精选9篇)图书管理系统数据库设计 一个简单的图书管理系统包括图书馆内书籍的信息、学校在校学生的信息以及学生的借阅信息。此系统功能分为面向学生和面向管理员两部分,其中学生可以进行借阅、续借、归还和查询书籍等操作,管理员可以完成书籍和学生的增加,删除和修改以及对学生,借阅、续借、归还的确认。 https://www.360wenmi.com/f/filea884fq3r.html
6.轨道交通综合监控系统数据库集群设计AET而构建一个实时的、高可用性的数据库系统正是建立稳定高效的综合监控平台的基础条件。MySQL Cluster是MySQL适用于分布式计算环境、多主机架构的实时数据库版本,具有高可用性和无单点故障的应用特点。根据轨道交通综合监控系统的应用需求,设计了综合监控系统数据库集群架构。 http://www.chinaaet.com/article/3000003582
7.计算机毕业设计jsp医院管理系统springmvc毕设42用户选择要删除的信息,单击删除按钮,系统则提示是否确定删除信息,用户选择确定删除,则删除信息成功,系统数据库将信息进行删除。删除信息流程图如图3-4所示。 图3-4 删除信息流程图 4 系统设计 3.1 系统概要设计 本医院管理系统主采用b/s结构(browser/server,浏览器/服务器结构)和基于web服务两种模式,是一个适用于...https://m.11467.com/blog/d6468288.htm
8.数据库设计:架构和可伸缩性数据库正如你可以想象的那样,包含广泛的应用程序和要求。 为此,我们将讨论数据库创建者在创建数据库系统时必须完成的一些特定设计模式。 架构实施 数据库系统通常需要一些有关要存储在数据库中的数据的类型和结构的信息。 对于关系数据库系统,架构通过以下术语正式定义: ...https://docs.microsoft.com/zh-cn/learn/cmu-cloud-computing/cmu-cloud-storage/8-database-schema-scalability
9.数据库(表结构)设计技巧及注意事项腾讯云开发者社区库设计: 1、数据库名称要明确,可以加前缀或后缀的方式,使其看起来有业务含义,比如数据库名称可以为Business_DB(业务数据库)。 2、在一个企业中,如果依赖很多产品,但是每个产品都使用同一套用户,那么应该将用户单独构建一个库,叫做企业用户中心。 3、不同类型的https://cloud.tencent.com/developer/article/1347054
10.数据库系统课程设计毕业生管理系统.doc2005数据库 3 需求分析 2.1任务概述 4 2.1.1开发目标 4 2.1.2用户特点 4 2.2系统的功能需求 4 2.2.1系统功能角色需求 4 2.2.2功能模块 5 2.3系统的数据需求 5 系统总体设计 3.1系统功能设计 6 3.1.1系统的总体模块 6 数据库设计 4.1数据库概念设计 8 4.2数据库逻辑设计 11 4.2.1表汇总 11 4.2.2表...https://max.book118.com/html/2021/1128/5120230114004123.shtm
11.数据库系统:设计实现与管理(基础篇)(原书第6版)中文pdf扫描版[137...书籍类别:数据库其它 应用平台:PDF 更新时间:2018-10-15 购买链接:京东异步社区 网友评分: 360通过腾讯通过金山通过 137.1MB 详情介绍 数据库系统:设计、实现与管理(基础篇)(原书第6版)是数据库领域的经典著作,内容系统、全面、实用,被世界多所大学选为数据库相关课程的教材。中文版分为基础篇和进阶篇,分别对应...https://www.jb51.net/books/641058.html
12.地理信息系统的研究内容开源地理空间基金会中文分会开放地理...地理信息系统技术系统设计? 包括地理信息系统硬件设计与配置;地理空间数据结构及表示;输入与输出系统;空间数据库管理系统;用户界面与用户工具设计;地理信息系统工具软件研制;微机地理信息系统的开发;网络地理信息系统的研制等。 地理信息系统应用方法研究? https://www.osgeo.cn/tutorial/k1014