楼主: rainbow

何时进行数据库设计合适

[复制链接]
论坛徽章:
62
ITPUB9周年纪念徽章
日期:2010-10-08 09:28:522012新春纪念徽章
日期:2012-02-13 15:12:252012新春纪念徽章
日期:2012-02-13 15:12:252012新春纪念徽章
日期:2012-02-13 15:12:252012新春纪念徽章
日期:2012-02-13 15:12:25马上有车
日期:2014-02-19 11:55:14马上有房
日期:2014-02-19 11:55:14马上有钱
日期:2014-02-19 11:55:14马上有对象
日期:2014-02-19 11:55:14马上加薪
日期:2014-02-19 11:55:14
31#
发表于 2013-12-29 11:02 | 只看该作者
本帖最后由 张恂 于 2013-12-29 11:05 编辑

>>进行数据库设计的时机,可以是需求分析结束以后,也可以在系统设计结束以后。

先进的做法是迭代开发,数据库设计在每次迭代中递增、演进地进行。

一般是在每次迭代中,完成了本次迭代或每天的需求分析和OOA后之后,数据库设计与系统设计、OOD同时进行;针对同一个OOA的实体模型,一拨人设计数据库表,一拨人设计系统的业务领域层,应用编程与数据库编程同时进行,这样效率最高。

数据库设计没必要等系统(应用程序)设计全部完成之后才开始,这有点瀑布思维,效率低。

使用道具 举报

回复
论坛徽章:
62
ITPUB9周年纪念徽章
日期:2010-10-08 09:28:522012新春纪念徽章
日期:2012-02-13 15:12:252012新春纪念徽章
日期:2012-02-13 15:12:252012新春纪念徽章
日期:2012-02-13 15:12:252012新春纪念徽章
日期:2012-02-13 15:12:25马上有车
日期:2014-02-19 11:55:14马上有房
日期:2014-02-19 11:55:14马上有钱
日期:2014-02-19 11:55:14马上有对象
日期:2014-02-19 11:55:14马上加薪
日期:2014-02-19 11:55:14
32#
发表于 2013-12-29 11:18 | 只看该作者
>>前者根据需求分析来构造数据模型,进行数据库的设计,从项目流程管理的角度看,可以与系统设计人员并行作业,但是导致了与系统设计人员的不断交互与check,因为两者对需求的理解可能有偏差。

这样并行作业效率高!

这两种人员之间的交互check需求很正常,很有必要,此时发现需求理解的偏差正是提高需求分析和OOA质量的良机。

使用道具 举报

回复
论坛徽章:
62
ITPUB9周年纪念徽章
日期:2010-10-08 09:28:522012新春纪念徽章
日期:2012-02-13 15:12:252012新春纪念徽章
日期:2012-02-13 15:12:252012新春纪念徽章
日期:2012-02-13 15:12:252012新春纪念徽章
日期:2012-02-13 15:12:25马上有车
日期:2014-02-19 11:55:14马上有房
日期:2014-02-19 11:55:14马上有钱
日期:2014-02-19 11:55:14马上有对象
日期:2014-02-19 11:55:14马上加薪
日期:2014-02-19 11:55:14
33#
发表于 2013-12-29 11:27 | 只看该作者
>>后者根据UseCase和Class的设计来构造数据模型,可以说此时数据库设计的输入比较确定,满足系统设计的要求即可,但是该阶段的时间会很短,可能在实施人员(coding)需要时,不能按时提交数据库的设计。

这么做不好,效率低。

不但可能影响数据库设计的进度,而且也无法保证系统OOD设计以及需求理解的正确性,同样可能导致返工和数据库设计的错误,所以check需求应尽可能前移。

把coding视为实施人员的工作,也体现了一种落后的瀑布开发思维。

使用道具 举报

回复
论坛徽章:
62
ITPUB9周年纪念徽章
日期:2010-10-08 09:28:522012新春纪念徽章
日期:2012-02-13 15:12:252012新春纪念徽章
日期:2012-02-13 15:12:252012新春纪念徽章
日期:2012-02-13 15:12:252012新春纪念徽章
日期:2012-02-13 15:12:25马上有车
日期:2014-02-19 11:55:14马上有房
日期:2014-02-19 11:55:14马上有钱
日期:2014-02-19 11:55:14马上有对象
日期:2014-02-19 11:55:14马上加薪
日期:2014-02-19 11:55:14
34#
发表于 2013-12-29 11:34 | 只看该作者
springdawn 发表于 2002-5-17 16:14
一般要看你的公司的规范长度,如果不规范的公司,拿了需求马上就开始设计数据库,呼啦呼啦开始编码啦。如果 ...

>>如果不规范的公司,拿了需求马上就开始设计数据库,呼啦呼啦开始编码啦。

需求搞清楚后,应用编码与数据库设计、开发同时进行,这是符合当代商业软件工程规范的有效实践,不是不规范,完全可以。



使用道具 举报

回复
论坛徽章:
62
ITPUB9周年纪念徽章
日期:2010-10-08 09:28:522012新春纪念徽章
日期:2012-02-13 15:12:252012新春纪念徽章
日期:2012-02-13 15:12:252012新春纪念徽章
日期:2012-02-13 15:12:252012新春纪念徽章
日期:2012-02-13 15:12:25马上有车
日期:2014-02-19 11:55:14马上有房
日期:2014-02-19 11:55:14马上有钱
日期:2014-02-19 11:55:14马上有对象
日期:2014-02-19 11:55:14马上加薪
日期:2014-02-19 11:55:14
35#
发表于 2013-12-29 11:35 | 只看该作者
feelcold 发表于 2002-7-24 12:34
采用结构化设计在概要设计阶段开始,
采用面向对象设计方法在详细设计后段进行。
同时迭代很重要。

>>采用面向对象设计方法在详细设计后段进行。

wrong!

使用道具 举报

回复
论坛徽章:
62
ITPUB9周年纪念徽章
日期:2010-10-08 09:28:522012新春纪念徽章
日期:2012-02-13 15:12:252012新春纪念徽章
日期:2012-02-13 15:12:252012新春纪念徽章
日期:2012-02-13 15:12:252012新春纪念徽章
日期:2012-02-13 15:12:25马上有车
日期:2014-02-19 11:55:14马上有房
日期:2014-02-19 11:55:14马上有钱
日期:2014-02-19 11:55:14马上有对象
日期:2014-02-19 11:55:14马上加薪
日期:2014-02-19 11:55:14
36#
发表于 2013-12-29 11:36 | 只看该作者
gozheng 发表于 2002-8-9 17:33
偶认为要区分数据设计和数据库设计。

数据设计只管表结构即E——R图之类的,在需求分析后就要做!否则后 ...

使用道具 举报

回复
论坛徽章:
62
ITPUB9周年纪念徽章
日期:2010-10-08 09:28:522012新春纪念徽章
日期:2012-02-13 15:12:252012新春纪念徽章
日期:2012-02-13 15:12:252012新春纪念徽章
日期:2012-02-13 15:12:252012新春纪念徽章
日期:2012-02-13 15:12:25马上有车
日期:2014-02-19 11:55:14马上有房
日期:2014-02-19 11:55:14马上有钱
日期:2014-02-19 11:55:14马上有对象
日期:2014-02-19 11:55:14马上加薪
日期:2014-02-19 11:55:14
37#
发表于 2013-12-29 11:46 | 只看该作者
weishouqun 发表于 2002-8-22 14:32
CDM用得少。
从来都是直接PDM.
但很明显要反复几遍。

>>CDM用得少。
从来都是直接PDM.
但很明显要反复几遍。
没办法,时间紧。而且关键是没人意识到其重要性。
孤掌难鸣啊。
设计数据库还要写程序。
<<

每次都直接PDM,说明high level和逻辑的思考少。

用好CDM,设计会更稳定,反复几遍可以少几遍

使用道具 举报

回复
论坛徽章:
62
ITPUB9周年纪念徽章
日期:2010-10-08 09:28:522012新春纪念徽章
日期:2012-02-13 15:12:252012新春纪念徽章
日期:2012-02-13 15:12:252012新春纪念徽章
日期:2012-02-13 15:12:252012新春纪念徽章
日期:2012-02-13 15:12:25马上有车
日期:2014-02-19 11:55:14马上有房
日期:2014-02-19 11:55:14马上有钱
日期:2014-02-19 11:55:14马上有对象
日期:2014-02-19 11:55:14马上加薪
日期:2014-02-19 11:55:14
38#
发表于 2013-12-30 10:56 | 只看该作者
zjfan 发表于 2002-8-10 08:51
ooa重于设计,而不太考虑实现的细节,在OOD时会有关于数据库设计,用户界面,平台选择的考虑,所以我以为在 ...

>>我以为在OOA完成后在OOD中做数据库设计比较好,在OOA中的类便可以成为数据库中的表!

确实这样,OOA之后OOD、数据库设计可并行

使用道具 举报

回复
论坛徽章:
62
ITPUB9周年纪念徽章
日期:2010-10-08 09:28:522012新春纪念徽章
日期:2012-02-13 15:12:252012新春纪念徽章
日期:2012-02-13 15:12:252012新春纪念徽章
日期:2012-02-13 15:12:252012新春纪念徽章
日期:2012-02-13 15:12:25马上有车
日期:2014-02-19 11:55:14马上有房
日期:2014-02-19 11:55:14马上有钱
日期:2014-02-19 11:55:14马上有对象
日期:2014-02-19 11:55:14马上加薪
日期:2014-02-19 11:55:14
39#
发表于 2013-12-30 10:59 | 只看该作者
kingofholly 发表于 2002-9-1 13:12
我现在作项目就是,在需求分析完了之后,有了数据字典,然后就开始设计数据库。
不知对不对,或者说好不好 ...

>>在需求分析完了之后,有了数据字典,然后就开始设计数据库。

光有数据字典不行,最好先有CDM、OOM或OOA模型。

使用道具 举报

回复
论坛徽章:
62
ITPUB9周年纪念徽章
日期:2010-10-08 09:28:522012新春纪念徽章
日期:2012-02-13 15:12:252012新春纪念徽章
日期:2012-02-13 15:12:252012新春纪念徽章
日期:2012-02-13 15:12:252012新春纪念徽章
日期:2012-02-13 15:12:25马上有车
日期:2014-02-19 11:55:14马上有房
日期:2014-02-19 11:55:14马上有钱
日期:2014-02-19 11:55:14马上有对象
日期:2014-02-19 11:55:14马上加薪
日期:2014-02-19 11:55:14
40#
发表于 2013-12-30 11:02 | 只看该作者
Martin.Wang 发表于 2002-9-3 17:40
数据库逻辑设计通常是从需求分析结束后,与系统分析与设计并行的;一般是经过主要实体的确定后过度到物理设计 ...

>>数据库逻辑设计通常是从需求分析结束后,与系统分析与设计并行的;一般是经过主要实体的确定后过度到物理设计的,通常包括到实体分解;设置辅助实体等等, 迭代是可能的.

使用道具 举报

回复

您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

TOP技术积分榜 社区积分榜 徽章 团队 统计 知识索引树 积分竞拍 文本模式 帮助
  ITPUB首页 | ITPUB论坛 | 数据库技术 | 企业信息化 | 开发技术 | 微软技术 | 软件工程与项目管理 | IBM技术园地 | 行业纵向讨论 | IT招聘 | IT文档
  ChinaUnix | ChinaUnix博客 | ChinaUnix论坛
CopyRight 1999-2011 itpub.net All Right Reserved. 北京盛拓优讯信息技术有限公司版权所有 联系我们 未成年人举报专区 
京ICP备16024965号-8  北京市公安局海淀分局网监中心备案编号:11010802021510 广播电视节目制作经营许可证:编号(京)字第1149号
  
快速回复 返回顶部 返回列表