Skip to content
Scan a barcode
Scan
Paperback Agile Database Techniques: Effective Strategies for the Agile Software Developer Book

ISBN: 0471202835

ISBN13: 9780471202837

Agile Database Techniques: Effective Strategies for the Agile Software Developer

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,...

Recommended

Format: Paperback

Temporarily Unavailable

3 people are interested in this title.

We receive 8 copies every 6 months.

Customer Reviews

5 ratings

Excellent book. Required reading for anyone who works with databases.

If you are an application developer that has ever worked with a system that is difficult and convoluted because of fear of touching the Database then you owe it to yourself to read this book. This book will provide you with the insight and techniques to make changes to your Database with confidence. I also recommend Refactoring Databases: Evolutionary Database Design (The Addison-Wesley Signature Series) for those who seek details on how to implement the topics discussed in "Agile Database Techniques"

quick easy read

The book was well written and very easy to use. I found many insightfull thoughts as to the purpose of Agile development. If you are looking for a great book to guide you into AGILE development, this will do it. Drawbacks or missed points, yes this book has two flaws that I have to list. 1. the repeated use of the word Legacy and the very negative congnitation of the word. Older database will have many flaws, and we need to identify them. They will also have many objects and data patterns that are valid and efficient and should not be abandoned because its not todays effort. 2. Agile and refactoring of tables does not address, production, zero down time, large volume databases. How do you refactor a table with 2 terabites of data and can not allow downtime. (medical)

Reconciles Relational and OO DB

I fully agree with the other reviewers who have given detailed and glowing descriptions of this book and why it is an important work that addresses the real challenges of developing to a relational model in OO environments. Agile techniques are also interwoven into this book, but it is in overcoming the relational-OO challenges that I found this book to be most valuable.The first part of the book, "Foundational Skills and Knowledge", covers the challenges and how to meet them with eight excellent chapters that truly give the foundational knowledge. The next part, "Evolutionary Database Development", is comprised of seven chapters that introduce Agile techniques as they relate to DB development. Among the two strongest chapters in this part of the book are the ones covering DB refactoring and mapping objects to relational databases. This material, to me, clarified a lot of issues I had before reading this book. Part 3 is more focused on development techniques, with excellent information about concurrency control, access controls and related topics. The final part of the book is specific to general Agile implementation. You need not embrace Agile methods to learn an enormous amount from this book.If you want to know more about this book's contents you will find a great deal of information on the author's Agile Data web site (paste the ASIN, B0000A3527, into the search box at the top of this page, select All Products and click GO). I also recommend Clifton Nock's "Data Access Patterns: Database Interactions in Object-Oriented Applications" (ISBN 0131401572), which augments this book in many respects.

A book for all seasons--and programmers and DBAs

Scott Ambler is uniquely qualified to write this book. He started his software life as a data modeler, and is now an industry thought-leader in agile, object-oriented software development practices. He wrote Agile Database Techniques to address a single issue that he is obviously passionate about: is it possible for data professionals to develop their data in an evolutionary way? Ambler answers this question with a resounding "yes"! And his book is a manifesto on how the data and object communities can lay down their weapons and join forces to create better software.Part One addresses the basics of agile development, database concepts and data normalization, object concepts and object normalization ¯- which may be a new concept to some readers. If you are not a data person, you will get a good introduction to the data world-view. If you are not an object person, you will gain insight into why object people see the world from a behavioral view, not the data-centric view. What I found appealing was Ambler's willingness to leave out all the fluff and deliver just enough detail to equip us to move to the next part of his presentation: Evolutionary Database Development.This second part of the book covers *a lot* of ground. After a well-crafted appeal for flexibility as a major success factor in software development, Ambler introduces the principles and practices of his own "Agile Model-Driven Development" approach, then a concise discussion of Test-Driven Development, also known as "test-first programming". This is a very brief chapter, and I wish Ambler had developed these concepts a bit more, but he has much bigger fish to fry in this book. His discussion of the need for, and practices of, database refactoring will be provocative for many data people. In my own consulting experience the "rot" or "smell" of database entropy is everywhere. The rigor of the original data models is lost under the pressure of schedule, or the inertia of inexperienced persons not taking the time to think about the downstream effects of reusing a table column for an obscure and transient purpose...which soon becomes permanent. The most significant chapter in the second part discusses mapping objects to relational databases. Ambler has written often and extensively about the object-relational "impedance mismatch", and this chapter offers the programmer and DBA much to think about.A theme that runs throughout the entire book is what Ambler calls the "role of the agile DBA". These brief discussions, almost sidebars in their presentation, are aimed squarely at DBAs working on agile, OO projects. Most OO developers will kill for a DBA who actually supports the software effort rather than being an institutionalized impediment. Ambler's tips to the "agile DBA" are worth the price of the book, IMHO. Part 3 is a collage of database concepts that are essential for software developers to understand if they are to be successful as a programming and data team. The topics include refere

If this was a novel they'd be bidding for the movie rights

This is the best book I've bought in years. It starts with an overview of agile software development, something that every single IT professional needs to understand these days. It also overviews basic skills such as data modeling, object modeling, and normalization. Ambler is absolutely dead on with this material: everyone needs to understand the basics of both object development and database development if they're going to get the job done. I'm really surprised how few object and data books actually deal with these basics, they always seem to focus on only one part of the overall picture. Why hasn't someone written just this section before?????More importantly the book has chapters on agile model driven development and test driven development, two topics that are critical to your success as an agile programmer. Anyone doing XP needs to be up to speed on both these techniques. in particular TDD but just as importantly AMDD.A really cool chapter talks about database refactoring, which is basically refactoring for relational databases. Anyone who wants to be an effective DBA needs to learn this stuff. There's also an appendix with a catalog of DB refactorings. This material alone is worth the price of the book.I didn't think that the chapters on basic programming issues such as concurrency control, referential integrity, database access, and reporting would be of interest. Man was I wrong. Ambler takes what I thought were dry subjects and shows how many implementation choices you actually have. I can't remember how many arguments I've gotten into with DBAs, or programmers, who thought there was only one way to do these things. Most importantly he discusses the tradeoffs of each strategy and tells you when they work best. If you're designing a new application this material is critical.If you're struggling to find ways for programmers and DBAs to work together effectively you really need this book. It shows how to overcome the "people impedance mismatch" that you see in most companies. DBAs need to work in agile ways, and this book tells how to do exactly this.
Copyright © 2024 Thriftbooks.com Terms of Use | Privacy Policy | Do Not Sell/Share My Personal Information | Cookie Policy | Cookie Preferences | Accessibility Statement
ThriftBooks® and the ThriftBooks® logo are registered trademarks of Thrift Books Global, LLC
GoDaddy Verified and Secured