书籍详情

敏捷数据

敏捷数据

作者:(加)艾姆布勒 著,李巍 译;李巍译

出版社:机械工业出版社

出版时间:2005-12-01

ISBN:9787111175766

定价:¥39.00

购买这本书可以去
内容简介
  本书作者在数据及对象技术方面都有很深造诣,多年的经验使他深刻地认识到:数据专业人员常常过于专注数据而忽视对象开发人员所面临的困难;而对象开发人员又没有或有很少的数据方面的经验。本书作者探索了有机结合数据和对象两个开发团队的方式,将敏捷方法拓展到了应用程序开发的一个关键领域——数据库,阐述了数据架构设计师、数据库管理员掌握敏捷方法进行面向数据开发的必要性。本书分四部分。第一部分描述数据专业人员和对象专业人员所需的基本技能和方法,第二部分介绍进行渐进式数据库开发的方法,第三部分概述有效地结合使用对象技术、关系数据库技术和XML技术的方法,第四部分总结如何成功地采用本书所描述的技术方法。本书适合应用程序开发人员及数据处理人员阅读。...主要内容:敏捷数据库管理员(DBA)承担着专门解决面向数据问题的艰巨任务,包括传统意义上的数据库管理和所有涉及数据的应用程序开发。敏捷DBA还要与企业专业人员一起协作,以确保项目团队的工作能够反映企业的现实情况。本书从敏捷DBA的角度论述开发过程,通过本书能够学习敏捷DBA在渐进式(迭代和增量式)软件项目上有效进行工作所采用的方法。.本书每章都涉及面向数据活动的核心方面,例如:●面向对象、关系型数据库、数据建模,以及如何处理遗留数据问题的基本知识。●数据库重构,这是一种以小步渐进的方式改善自己数据库设计的方法。●对象—关系数据库映射、性能优化、数据库封装和辅助工具。..●实现方法和策略,如并发控制、安全访问控制、在关系数据库中查找对象、引用完整性,以及有效使用XML。●对那些想要成为敏捷开发人员和想要采纳敏捷方法的组织机构提供了策略和建议。
作者简介
  ScottW.AmblerScottW.Ambler是敏捷建模方法学的创建者和思想领导者,是软件开发方法年轻一代的领军人物之一,在理论和实践上的造诣都很深厚。作为一位高级咨询师,他一直积极参与全球各种大型软件开发和过程改进项目。他是RoninInternational公司的高级顾问,该公司是专门提供软件过程指导、敏捷建模(AgileModeling)及基于对象/组件的软件架构建设和开发等方面服务的软件公司。同时,他还是一位视野广阔的方法学者,是《SoftwareDevelopment》杂志的专栏作家,撰写了多部颇受推崇的著作,其中包括《TheObjectPrimer》、《AgileModeling》、《TheElementsofUMLStyle》、《MoreProcessPatterns》等。>>更多作品
目录
译者序
Jon Kern序
Douglas K.Barry序
致谢
前言
第一部分 基础背景
第1章 敏捷数据方法
1.1 缘何当前难以相互合作
1.2 发现问题
1.3 敏捷运动
1.3.1 敏捷软件开发宣言
1.3.2 敏捷软件开发原则
1.4 敏捷数据的基本原理
1.5 敏捷数据概述
1.5.1 敏捷DBA
1.5.2 应用程序开发者
1.5.3 企业管理员
1.5.4 企业架构设计师
1.6 敏捷软件开发者
1.7 敏捷数据能解决我们的问题吗
1.8 总结
第2章 从用例到数据库——现实世界的UML
2.1 面向对象概念简述
2.2 UML介绍
2.2.1 核心UML图
2.2.2 辅助UML图
2.3 数据建模的UML档案
2.3.1 标识模型或存储机制的类型
2.3.2 建模表、实体和视图
2.3.3 建模关系
2.3.4 建模数据属性和列
2.3.5 建模键
2.3.6 建模约束和触发器
2.3.7 建模存储过程
2.3.8 建模数据库内的段
2.3.9 建模其他概念
2.4 总结
第3章 数据建模基础
3.1 敏捷DBA的角色
3.2 什么是数据建模
3.2.1 如何实际运用数据模型
3.2.2 基本标记:如何阅读数据模型
3.3 如何建模数据
3.3.1 识别数据实体
3.3.2 识别属性
3.3.3 应用数据命名规范
3.3.4 识别关系
3.3.5 应用数据建模模式
3.3.6 分配键
3.4 如何更好地先进行数据建模
3.5 总结
第4章 数据规范化
4.1 为什么需要数据规范化
4.2 敏捷DBA的角色
4.3 数据规范化的准则
4.3.1 第一范式(1NF)
4.3.2 第二范式(2NF)
4.3.3 第三范式(3NF)
4.3.4 超越3NF
4.4 总结
第5章 类规范化
5.1 如何将类规范化和基他面向对象的设计实践联系起来
5.2 敏捷DBA的角色
5.3 类规范化的准则
5.3.1 第一对象范式(1ONF)
5.3.2 第二对象范式(2ONF)
5.3.3 第三对象范式(3ONF)
5.3.4 超越3ONF
5.4 总结
第6章 关系数据库技术,无论你喜欢与否
6.1 关系数据库技术
6.1.1 关系数据库的简明特性
6.1.2 关系数据库的高级特性
6.2 耦合:你最大的敌人
6.3 关系数据库的额外挑战
6.4 封装:你最好的盟友
6.5 超越关系数据库:根据实际情况做出选择
6.6 总结
第7章 对象-关系的阻抗失配
7.1 敏捷DBA的角色
7.2 技术上的阻抗失配
7.2.1 虚假的相似性
7.2.2 微妙的差异性
7.3 文化上的阻抗失配
7.4 总结
第8章 遗留数据库——所有你需要了解却害怕应付的事物
8.1 敏捷DBA角色
8.2 遗留数据源
8.3 理解与遗留数据相关的常见问题
8.3.1 数据质量挑战
8.3.2 数据库设计问题
8.3.3 数据架构问题
8.3.4 过程错误
8.4 使用遗留数据的策略
8.4.1 尽量避免使用遗留数据
8.4.2 开发一种数据错误处理策略
8.4.3 迭代和增量式地工作
8.4.4 优先考虑只读的遗留数据访问
8.4.5 封装遗留数据访问
8.4.6 为简单的遗留访问引入数据适配器
8.4.7 为复杂的数据访问引入中间数据库
8.4.8 采用现有的工具
8.5 数据集成技术
8.6 总结
第二部分
第9章 革命万岁
9.1 方法灵活性的需要
9.2 谨防面向数据的BDUF
9.3 针对项目的渐进式开发
9.4 事物的“自然顺序”和渐进式开发
9.5 总结
第10章 敏捷模型驱动开发
10.1敏捷DBA的角色
10.2 什么是敏捷建模
10.2.1 AM价值观
10.2.2 AM原则
10.2.3 敏捷建模实践
10.3 什么时候模型才算敏捷
10.4 什么是敏捷模型驱动开发
10.5 敏捷文档
10.6 总结
第11章 测试驱动开发
11.1 TDD如何工作的
11.2 TDD的步骤
11.3 TDD与传统测试
11.4 TDD与文档
11.5 测试驱动的数据库开发
11.6 TDD与AMDD
11.7 总结
第12章 数据库重构
12.1 重构
12.2 数据库重构
12.2.1 保持语义
12.2.2 什么不是数据库重构
12.2.3 数据库重构类别
12.3 为什么数据库难以重构
12.4 如何重构数据库
12.4.1 步骤1:在开发沙箱中开始
12.4.2 步骤2:在集成沙箱中实现代码
12.4.3 步骤3:实地安装代码
12.5 常见的数据库重构味道
12.6 在你的组织机构内采用数据库重构
12.7 数据库重构最佳实践
12.8 现实中的数据库重构
12.9 总结
第13章 数据库封装策略
13.1 数据库封装层
13.2 敏捷DBA的角色
13.3 封装层的架构
13.4 封装层的实现策略
13.4.1 蛮力方式(并非一种封装策略)
13.4.2 数据访问对象
13.4.3 持久化框架
13.4.4 服务
13.4.5 每种策各的适用场合
13.4.6 策略间的转化
13.5 整编和数据验证
13.6 错误处理
13.7 总结
第14章 对象-关系数据库映射
14.1 敏捷DBA的角色
14.2 基本的映射概念
14.2.1 影子信息
14.2.2 映射元数据
14.3 映射继承结构
14.3.1 将整个类层次体系映射成一个表
14.3.2 将每个具体类映射成它自己的表
14.3.3 将每个类映射成它自己的表
14.3.4 将类映射成一个通用结构
14.3.5 映射策略的对比
14.3.6 多继承的映射
14.4 映射对象的关系
14.4.1 关系的类型
14.4.2 如何实现对象间的关系
14.4.3 如何在关系数据库内实现关系
14.4.4 关系映射
14.4.5 映射有序集合
14.4.6 映射递归关系
14.5 映射类作用范围的特性
14.6 为何数据方案不应该驱动对象方案
14.7 对对象的实现影响
14.8 模型驱动架构的启示
14.9 映射模式化
14.10 总结
第15章 性能优化
15.1 性能优化概述
15.2 敏捷DBA的角色
15.3 步骤1:识别性能问题
15.4 步骤2:剖析问题
15.5 步骤3:优化解决问题
15.5.1 系统优化
15.5.2 数据库访问优化
15.5.3 数据库优化
15.5.4 应用程序优化
15.6 总结
第16章 渐进式数据库开发的工具
16.1 工具
16.2 沙箱
16.3 脚本
16.4 总结
第三部分 实用的面向数据的开发方法
第17章 实现并发控制
17.1 敏捷DBA的角色
17.2 冲突
17.2.1 锁定类型
17.2.2 解决冲突
17.3 理解事和
17.3.1 事务的基本概念
17.3.2 实现事务
17.4 总结
第18章 在关系数据库内查找对象
18.1 敏捷DBA的角色
18.2 查找策略
18.2.1 蛮力方式(嵌入式SQL)
18.2.2 查询对象
18.2.3 元数据驱动
18.2.4 每种策略的应用时机
18.3 实现方法
18.3.1 使用原生的错误处理策略
18.3.2 能够预见“逻辑”错误
18.3.3 总是返回一个集合
18.3.4 针对查询列表采用代理和惰性初始化
18.3.5 对高开销的属性使用惰性读取
18.3.6 为他人编程
18.4 表示查找的结果
18.5 总结
第19章 实现引用完整性和共享
19.1 敏捷DBA角色
19.2 对象技术是如何将引用完整性复杂化的
19.2.1 多种实体/关系的表现形式
19.2.2 对象关系管理
19.2.3 惰式读取
19.2.4 缓存
19.2.5 聚合、组俣和关联
19.2.6 架构分层
19.2.7 从内存中移除与永久删除
19.3 应该在何处实现引用完整性
19.3.1 引用完整性的实现选择
19.3.2 业务逻辑的实现选择
19.3.3 通用实现策略
19.4 总结
第20章 实现安全访问控制
20.1 敏捷DBA角色
20.2 身份验证
20.3 授权
20.3.1 问题
20.3.2 数据库实现策略
20.3.3 安全设计模式
20.3.4 面向对象的实现策略
20.3.5 启示
20.4 有效的安全策略
20.5 总结
第21章 实现报表
21.1 敏捷DBA的角色
21.2 数据库部署架构
21.3 在应用程序内部进行报表统计
21.4 在应用程序外部进行报表统计
21.5 数据库设计策略
21.6 实现策略
21.7 使报表统计变难的挑战
21.8 总结
第22章 现实中的XML
22.1 敏捷DBA的角色
22.2 XML入门
22.2.1 XML的优势
22.2.2 XML的弱点
22.3 XML的实际应用
22.4 词汇表
22.5 如何建模XML
22.6 XML映射和数据绑定
22.7 如何在关系数据库中持久化XML
22.8 如何在XML数据库中持久化XML
22.9 XML开发策略
22.10 总结
第四部分 采用敏捷数据库方法
第23章 你如何才能变得敏捷
23.1 不必非要做一个超人
23.2 敏捷性其实只是一个思维集
23.3 成为一名博学型的专家
23.4 总结
第24章 将敏捷性带到你的组织机构中
24.1 改变你看待软件开发的方式
24.2 理解你所面对的挑战
24.3 实际去尝试它
24.4 阻止非敏捷的合作者
24.5 切合实际
24.6 临别感想
附录 数据库构目录
参考资料及推荐读物
猜您喜欢

读书导航