
Agile Database Techniques: Effective Strategies for the Agile Software Developer
by Scott Ambler- Describes Agile Modeling Driven Design (AMDD) and Test-Driven Design (TDD) approaches, database refactoring, database encapsulation strategies, and tools that support evolutionary techniques
- Agile software developers often use object and relational database (RDB) technology together and as a result must overcome the impedance mismatch
- The /li>/li>
Overview
- Describes Agile Modeling Driven Design (AMDD) and Test-Driven Design (TDD) approaches, database refactoring, database encapsulation strategies, and tools that support evolutionary techniques
- Agile software developers often use object and relational database (RDB) technology together and as a result must overcome the impedance mismatch
- The author covers techniques for mapping objects to RDBs and for implementing concurrency control, referential integrity, shared business logic, security access control, reports, and XML
- An agile foundation describes fundamental skills that all agile software developers require, particularly Agile DBAs
- Includes object modeling, UML data modeling, data normalization, class normalization, and how to deal with legacy databases
- Scott W. Ambler is author of Agile Modeling (0471202827), a contributing editor with Software Development (www.sdmagazine.com), and a featured speaker at software conferences worldwide
Product Details
- ISBN-13:
- 9780471202837
- Publisher:
- Wiley
- Publication date:
- 10/06/2003
- Pages:
- 480
- Product dimensions:
- 7.40(w) x 9.30(h) x 1.00(d)
Meet the Author
SCOTT AMBLER is president and a senior consultant of Ronin International (www.ronin-intl.com), a software services consulting firm that specializes in software process mentoring and object/component-based software architecture and development. He is a contributing editor for Software Development magazine and a columnist for Computing Canada. His personal Web site is www.ambysoft.com.
Customer Reviews
Average Review:
Most Helpful Customer Reviews
Agile Database Techniques: Effective Strategies for the Agile Software Developer
3.5 out of 5
based on
0 ratings.
2 reviews.
![]() |
|
![]() |
If you have some interest in the Agile Software development methodologies then you should know Scott W. Ambler already and probably have read his another excellent book: Agile Modeling: Effective Practices for Extreme Programming and the Unified Process. When I was reading ¿Effective Practices ¿¿ I started highlighting sentences which I would like to say myself and then stopped because I quickly realized that I am about to highlight the entire book. Even I did not try highlighting entire ¿Agile Database Techniques¿ book; I still have bookmarked many pages and wrote many notes on pages. It is very interesting book not only because it describes technical aspects of agile approach to database techniques but also because it describes certain political and psychological aspects of software development. For example there is a chapter about ¿Bringing Agility into Your Organization¿ and about ¿Blocking NonAgile Coworkers¿. Also the book fills that ¿artificial¿ gap between Object Oriented and RDBMS worlds. By some reasons OO world has alienated itself from RDBMS by marking all that as ¿Legacy¿ with shadow of negative meaning, and this book makes great job of explaining why it should not be like that. I am wholeheartedly agree with Scott that ¿every developer should know basics of data modeling¿ and I think that the book is a very suitable introduction to the word of Data Modeling and RDBMS specific. So, if you are not very comfortable with Data Modeling I suggest you looking straight into chapter that tells about common signs of bad design and make sure that you cannot recognize them in your database schema design. There is an interesting chapter named ¿Why Data Schemas Should Not Drive Object Schemas¿ which will talk about the topic but then says: ¿ Actually, it is not such a bad idea, as long as you are tacking an iterative and incremental approach; the real problem is the big design up front (BDUF) approach that many data professionals seem to prefer .¿ It was a great relief for me personally to read those Scott's words because I am a long believer in the fact that proper DB schema may and should drive class model and artificial differences do more harm then good even when it is necessary to sacrifice purity of OO design for the sake of smooth DB mapping. Seasoned data modelers and novices alike might find chapters about ¿Data Normalization¿ to be very useful: one will find clear and compressed explanation of database normalization process and others may use the chapters as references when communicating with less experienced colleagues. Scott does great job by taking a denormalized Lotus Notes style table and explaining step-by-step how to normalize it and why it is beneficial. DB specialists: please do not rush defending denormalization and RDBMS performance improvement tricks! Scott W. Ambler talks a lot about benefits of denormalization as well, and he always suggests balanced approach to the modeling with careful consideration of all aspects. Proponents of raw database access and users of persistence framework alike can be benefited from reading Chapter #14: Mapping Objects to Relational Databases . Fellow Agile Developers find in the book wise advices of the experiences consultant regarding dealing with database refactoring and surrounding issues. I have read it twice and would recommend it to any developer who wants to grow and eventually become a ¿ Generalizing Specialist ¿.
|