·天新网首页·加入收藏·设为首页·网站导航
数码笔记本手机摄像机相机MP3MP4GPS
硬件台式机网络服务器主板CPU硬盘显卡
办公投影打印传真
家电电视影院空调
游戏网游单机动漫
汽车新车购车试驾
下载驱动源码
学院开发设计
考试公务员高考考研
业界互联网通信探索
解析数据库设计中的敏捷方法
http://www.21tx.com 2005年08月26日 CSDN Friecin

上一页 1 2 3 4

  3.8清晰地分离所有的数据库获取代码

  为了理解数据库重构的结果,了解应用程序如何使用数据库也非常重要。如果SQL语句分布在代码基础周围,则很难这样去做。因此一个清晰的数据库获取层很重要,它用来显示数据库如何被使用,在哪里被使用。

  清晰的数据库层有很多好处。它减少了开发人员操纵数据库时需要使用SQL知识的地方,这样使对SQL语句不太熟悉的开发人员更易开发。对于DBA来说,给他提供了清晰的代码,可以清楚地了解数据库将如何使用。这也帮助准备索引、数据库优化,优化SQL语句,使DBA更好地理解数据库如何被使用。

  4、变化法则

  如同任何实践一样,这些原则必须根据你特殊的环境变化。没有一成不变的项目,我们必须要应对变化。

  4.1保持多个数据库在一个系统中

  简单项目也许只需要一个主数据库。但是复杂项目需要有多个数据库,即数据库系。如果在投入生产之前数据库必须分支,那么我们可以创建新的数据库系。数据库系类似于代码的分支,需要不同测试数据集来进行测试。

  当开发人员从主数据库中获取了一份拷贝,必须注册他们在修改哪个数据库系。当DBA更新主数据库某个数据库系时,同时更新了所有注册这个数据库系的开发人员的数据库。

  4.2不需要专职的DBA

  所有这些听上去好像需要大量的工作,但它并不需要大量的人力资源。在最大的项目中,我们有30个开发人员,项目组规模100人(包括质量评价、分析人员和管理人员),我们大概有100多个不同系列的产品分布在各工作站上。但所有这些工作只需要一个专职DBA,只有两个编程人员业余帮忙。

  在小项目中甚至不需要专职DBA。当我们将这些技巧用于更小的项目--12人左右的小项目时,发现该项目不需要一个专职的DBA。与此相反,我们依靠两个对数据库感兴趣的开发人员业余处理DBA任务。

  这是自动化的功劳。如果对每项任务进行自动化处理,就可以用更少的人来完成更多的工作。

  5、辅助工具

  数据库进化需要大量的重复性工作,我们可以开发一些简单工具来帮助我们解决大量的重复性工作。

  自动化的最有价值的地方就是有一个通用数据库任务简单代码集。自动化的任务包括:

   用户资料与现在管理员的资料一致

   创建新用户

   复制数据库计划并协同修改

   移动并合成数据库

   删除用户

   导出用户,这样项目组成员可以分发离线数据库备份。

   导入用户,这样项目组成员可以拥有数据库备份,导入数据库,创建新计划。

   导出基线,将主数据库进行备份,这是导出用户的一个特例。

   创建不同计划的报告,以便比较。

   将计划与主计划作比较,这样开发人员就可以将他们本地拷贝与主数据库作比较

   列出所有的用户

  分析人员和质量评价人员常常会去看测试数据,并且需要改变他们。因此我们用VBA语句开发一个Excel应用程序,从数据库里面提取数据到Excel文件中,允许用户修改这个文件,修改后又返回到数据库中去。当然,也可以使用其他工具来浏览和编辑数据库的内容,但是我们使用excel,因为很多人熟悉它。

  项目组的所有成员应该很容易获取数据库设计的详细内容,从而发现什么表格可以获得,以及如何使用这些表格。我们建立了基于HTML的工具,使用servlets来查询数据库元数据。因此开发人员在添加字段之前,可以先通过搜索表和字段的元数据来看一看数据库中有没有这个字段。我们使用Erwin建模,将数据从Erwin提取到我们的元数据表中。

  6、结束语

  当然,这并不是敏捷方法在数据库设计中的全部应用,也不是数据库进化设计的全部,还有集成数据库和24*7小时实施以及其他一些没有解决的问题,数据库进化设计还需要进行进一步的研究工作。


  

上一篇: 湖南:2005年5月软考证书发放通知
下一篇: 计算机软件资格考试的备考要略

上一页 1 2 3 4

关于我们 | 联系我们 | 加入我们 | 广告服务 | 投诉意见 | 网站导航
Copyright © 2000-2011 21tx.com, All Rights Reserved.
晨新科技 版权所有 Created by TXSite.net