数据库应用软件开发前3个步骤之实例讲解

简介:
摘要:目前大部分的公司开发软件都不规范,开发步骤混乱。究其原因,大致可以分为两方面,一方面是客户的需求简单,公司不需要正常的软件开发步骤就可以实现,另一个方面就是公司开发软件没有规范,凭感觉开发软件,因此便会出现每天有很多的软件公司成立,同时也有许多的软件公司关门大吉的现象。针对后一个问题,笔者再次讨论规范的数据库软件开发的前3个步骤。
       下面简要概述一下数据库软件开发的周期:数据库软件开发的周期主要包括:数据库规划,系统定义,需求的收集和分析,数据库设计(逻辑设计和物理设计)同时伴随着应用程序设计,实现,数据转换和加载,测试,操作性维护。在本篇文章中主要介绍前3个步骤,即数据库规划,系统定义和需求收集与分析。这三个步骤之间是一次进行的,他们之间不会有循环重复出现,因此可以作为一个整体来介绍。
       第一步:数据库规划:尽可能有效的实现数据库应用的各阶段的管理活动。创建数据库工程的起点是数据库系统的任务陈述和任务目标。任务陈述定义了数据库系统的主要目标,每个任务目标标示了数据库必须支持的特定任务。在数据库的规划过程中必然包含对工作量的估计,使用的资源和需要的经费,因此在数据库规划之后一个项目的报价大致也就出来了。规划数据库之前需要使用事实发现技术来获得数据库的整体需求,事实发现技术包括查阅资料,面谈,调查等多种方式。在本例子中,客户请人写了数据库应用程序的需求说明,因此在阅读需求说明的同时便可以获得数据库设计需要的大部分信息。最终得出的任务陈述是:
** 公司电子商务数据库系统的目的是收集、存储、发布和控制公司以及会员产生的数据,支持面向用户的网上订单业务,协调电子商务系统和ERP系统的数据整合。
仔细的阅读需求说明的过程中得到了任务目标:
1.  维护(注册 、更新和删除)会员数据
2.  维护(录入、更新和删除)产品数据
3.  维护( 录入、更新和删除)客户 讯价数据
4.  维护( 录入、更新和删除)供应商 报价数据
5.  维护( 录入、更新和删除)会员 对账单数据
6.  维护( 录入、更新和删除)合同 发货通知单数据
7.  维护( 录入、更新和删除)用户 投诉数据
8.  维护( 录入、更新和删除) 电子支付数据
9.  维护( 录入、更新和删除) 业务员的任务指标数据
10.    
38.     跟踪供应商采购应付账款对帐情况
39.     实现对垃圾数据的查询
任务目标还需要进一步的调整,在和客户的工作人员多次交流和确认之后,第一步工作总算完成了大概。在软件正式进入设计阶段,有可能还会回过头来重新调整任务目标。这个过程不是一次就能成功的,但是根据这个任务目标,一个软件的大致开发费用也就有了计算的依据。
      
第二步:系统定义,系统定义的目的是确定数据库应用的范围和边界以及他的主要用户的视图。一个用户视图代表了数据库应用必须支持的由一个特殊的工作角色或者业务范围所定义的需求。程序边界描述了系统中的实体之间相互关系的粗略向导,他没有详细的描述每一个可能发生的事件。定义程序边界可以参考前面第一步得到的结果,或者查看文档。下面是程序边界的概要描述。
对收集到的数据进行分析,以便于定义主要的用户视图,用户视图的定义主要靠于不同角色的人谈话中得到。比如得到的普通用户的视图:
普通用户视图
1.   实现所有的元件产品和价格的查询
2.   实现所有成套产品的查询
3.   维护个人的注册信息
4.   维护成套产品的讯价单
5.   维护个人订单
6.  维护个人投诉信息
7.   跟踪个人对账单数据
8.  实现发货合同查询
9.  跟踪个人订单
当然还有其他的几个视图,供应商,业务员管理员,在次不一一显示。
 
       第三步是需求的收集和分析:收集和分析数据库所支持的公司信息,并使用这些信息来标示新的数据库系统需求的过程。用户的需求说明详细描述了数据库中应该包含的数据以及数据的使用方式。在收集更多的用户视图相关的数据的同时,也应该收集系统的一般需求,收集信息的目的是产生系统的需求说明。系统需求说明描述了新的数据库应用中所要包含的各种特性,如网络需求,共享访问需求,效率需求以及安全级别需求。首先是管理数据库系统的用户视图:使用集中式方法或者使用视图集成式方法或者两者的综合,合并相同的视图,减少冗余。在这一步骤中需要明确数据需求,比如员工包含的信息: 用户名,登陆密码,姓名,性别,出生日期,身份证号码,常用电话,手机,E_mail,注册日期
数据库系统的事务需求,可以查看第一步产生的文档,比如分为数据录入,数据更新/删除,数据查询等事务。
最后需要明确的是系统说明,主要包括:初始化数据库大小,数据增长速度等。
结论:数据库开发的前三个步骤会在后面的开发中被重复,数据库规划是系统定义和需求收集和分析的前提条件,因此做好数据库规划可以为以后的开发节省费用,也是系统能否成功开发和实施的关键。
本文转自凌辉博客51CTO博客,原文链接http://blog.51cto.com/tianli/42693如需转载请自行联系原作者

lili00okok
相关文章
|
8月前
|
存储 人工智能 NoSQL
AI大模型应用实践 八:如何通过RAG数据库实现大模型的私有化定制与优化
RAG技术通过融合外部知识库与大模型,实现知识动态更新与私有化定制,解决大模型知识固化、幻觉及数据安全难题。本文详解RAG原理、数据库选型(向量库、图库、知识图谱、混合架构)及应用场景,助力企业高效构建安全、可解释的智能系统。
|
9月前
|
关系型数据库 MySQL 数据库
自建数据库如何迁移至RDS MySQL实例
数据库迁移是一项复杂且耗时的工程,需考虑数据安全、完整性及业务中断影响。使用阿里云数据传输服务DTS,可快速、平滑完成迁移任务,将应用停机时间降至分钟级。您还可通过全量备份自建数据库并恢复至RDS MySQL实例,实现间接迁移上云。
|
11月前
|
存储 关系型数据库 数据库
附部署代码|云数据库RDS 全托管 Supabase服务:小白轻松搞定开发AI应用
本文通过一个 Agentic RAG 应用的完整构建流程,展示了如何借助 RDS Supabase 快速搭建具备知识处理与智能决策能力的 AI 应用,展示从数据准备到应用部署的全流程,相较于传统开发模式效率大幅提升。
附部署代码|云数据库RDS 全托管 Supabase服务:小白轻松搞定开发AI应用
|
12月前
|
安全 druid Nacos
0 代码改造实现应用运行时数据库密码无损轮转
本文探讨了敏感数据的安全风险及降低账密泄漏风险的策略。国家颁布的《网络安全二级等保2.0标准》强调了企业数据安全的重要性。文章介绍了Nacos作为配置中心在提升数据库访问安全性方面的应用,并结合阿里云KMS、Druid连接池和Spring Cloud Alibaba社区推出的数据源动态轮转方案。该方案实现了加密配置统一托管、帐密全托管、双层权限管控等功能,将帐密切换时间从数小时优化到一秒,显著提升了安全性和效率。未来,MSE Nacos和KMS将扩展至更多组件如NoSQL、MQ等,提供一站式安全服务,助力AI时代的应用安全。
591 14
|
9月前
|
存储 JSON 数据建模
鸿蒙 HarmonyOS NEXT端云一体化开发-云数据库篇
云数据库采用存储区、对象类型、对象三级结构,支持灵活的数据建模与权限管理,可通过AGC平台或本地项目初始化,实现数据的增删改查及端侧高效调用。
448 1
|
9月前
|
存储 弹性计算 Cloud Native
云原生数据库的演进与应用实践
随着企业业务扩展,传统数据库难以应对高并发与弹性需求。云原生数据库应运而生,具备计算存储分离、弹性伸缩、高可用等核心特性,广泛应用于电商、金融、物联网等场景。阿里云PolarDB、Lindorm等产品已形成完善生态,助力企业高效处理数据。未来,AI驱动、Serverless与多云兼容将推动其进一步发展。
453 8
|
10月前
|
存储 关系型数据库 MySQL
【赵渝强老师】MySQL数据库的多实例环境
MySQL多实例是指在一台服务器上运行多个MySQL服务,通过不同端口提供独立的数据服务。各实例共享安装程序,但使用各自的配置文件和数据文件,实现资源高效利用。本文详细介绍了如何通过“mysqld_multi”工具配置和启动多个MySQL实例,并演示了目录创建、初始化、配置文件修改及实例启动等操作步骤。
430 1
|
9月前
|
存储 弹性计算 安全
现有数据库系统中应用加密技术的不同之处
本文介绍了数据库加密技术的种类及其在不同应用场景下的安全防护能力,包括云盘加密、透明数据加密(TDE)和选择列加密。分析了数据库面临的安全威胁,如管理员攻击、网络监听、绕过数据库访问等,并通过能力矩阵对比了各类加密技术的安全防护范围、加密粒度、业务影响及性能损耗。帮助用户根据安全需求、业务改造成本和性能要求,选择合适的加密方案,保障数据存储与传输安全。
|
存储 缓存 自然语言处理
评论功能开发全解析:从数据库设计到多语言实现-优雅草卓伊凡
评论功能开发全解析:从数据库设计到多语言实现-优雅草卓伊凡
383 8
评论功能开发全解析:从数据库设计到多语言实现-优雅草卓伊凡

热门文章

最新文章