Agile Database Techniques: Effective Strategies for the Agile Software Developer

Agile Database Techniques: Effective Strategies for the Agile Software Developer

3.5 2
by Scott Ambler
     
 

View All Available Formats & Editions

  • 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

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
Edition description:
New Edition
Pages:
480
Product dimensions:
7.38(w) x 9.12(h) x 1.03(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:

Write a Review

and post it to your social network

     

Most Helpful Customer Reviews

See all customer reviews >

Agile Database Techniques: Effective Strategies for the Agile Software Developer 3.5 out of 5 based on 0 ratings. 2 reviews.
Anonymous More than 1 year ago
Guest More than 1 year ago
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 ¿.