Software Development on a Leash

Software Development on a Leash

4.6 5
by David Birmingham, Valerie Haynes Perry

Software Development on a Leash is designed as a roadmap for experienced developers and architects who are interested in implementing a turbocharged software development process that encourages reuse and innovation. Author David Birmingham's products have been successfully deployed in a variety of venues, including highly complex desktop

…  See more details below


Software Development on a Leash is designed as a roadmap for experienced developers and architects who are interested in implementing a turbocharged software development process that encourages reuse and innovation. Author David Birmingham's products have been successfully deployed in a variety of venues, including highly complex desktop environments, with rapid turnaround and high-intensity delivery deadlines.

This book contrasts the application-centric development approach to the architecture-centric development approach, introducing the concept of the metamorphic superpattern—the capability of a software program to dynamically adapt to changing application requirements without rebuilding the binary executable.

Birmingham invites the reader to deploy reusable structural and behavioral building blocks, along with some powerful frameworks to gain immediate traction in any setting. He includes a high-speed multidimensional toolkit to organize and deploy the building blocks, essentially weaving the application together at run-time rather than being hard-wired in program code.

Birmingham then ties the building blocks together with structural and behavioral metadata, allowing simple, interpreted macros to drive everything from database access, screen layouts, and many aspects of software development normally embedded directly into the software programand reused! The rapid deployment effect this creates allows developers to perform simple surgical application changes or rapid, sweeping rework/enhancement—without changing compiled software.

Read More

Product Details

Publication date:
Edition description:
Product dimensions:
7.52(w) x 9.25(h) x 0.04(d)

Meet the Author

David Birmingham is president and chief executive officer of Virtual Machine Intelligence and chief architect of vMach 4.0, a high-reuse Visual Basic framework. He has written numerous articles on design patterns and data warehousing for Pinnacle Publishing and Data Management Review, and he provides consulting services to large-scale enterprises on a regular basis.

Valerie Haynes Perry has edited a wide variety of computer books over the past 11 years. During that time, she's held editorial staff positions and has freelanced in the publishing industry since 1997. Valerie also writes novels that she hopes to get published in the near future.

Customer Reviews

Average Review:

Write a Review

and post it to your social network


Most Helpful Customer Reviews

See all customer reviews >

Software Development on a Leash 4.6 out of 5 based on 0 ratings. 5 reviews.
Guest More than 1 year ago
This book is directed at a junior programmer who is coding in .NET. It spends a fair amount of time carefully teaching the idea of patterns, and naturally fleshing this out by going over many common ones. As is now industry practice, the patterns and their names are taken from the Gang of Four (Gamma et al). If you are, or aspire to be, a professional programmer, this should be part of your vocabulary. The authors have chosen to use Visual Basic as the language of the code examples. But they stress that the principles are far broader than just that language. Broader still than even .NET, for that matter. Certainly, the examples are very clean and have been chosen to illustrate particular ideas, without drawing you into a lot of gritty but ultimately irrelevant details. Now, within the last 15 years, three of the biggest ideas in programming have been object oriented programming, patterns and Extreme Programming. The book attends to the first two. Amusingly, it only has a throwaway comment about XP not being very likely to produce reusable code. Not being a fan of XP myself, I'm glad the authors have not taken you down that road. Though XP proponents may gnash their teeth at this book.
Guest More than 1 year ago
This book is perhaps the deepest tour of software development I've seen in a while. The author deals with toxic programming environments and bad development practices by driving straight to the roots. Rather than giving us a platitude of 'use what you've got' - he directly asserts that what we've got will never be good enough without diving much, much deeper. Interestingly, many of us are doing part of this, so any one individual might think 'so what?' until he starts tying it together. I would implore any reader of this book to be patient as he weaves the tale - he's got to lay some common ground work before he gets to the meat. The author drives directly to the patterns we'll need to implement a 'metamorphic' program, so don't expect a discussion of all the Gamma patterns here. Metamorphism as a concept is easy to understand but getting my arms around it was a challenge - he's talking about doing this for overall application development not just a particular part of the technology. The .NET framework can definitely put wings on the parts of his concept that could not be covered under 6.0. The author has a C++ background so I was interested to see what C-like structures were included in the discussion. I was not disapppointed - in fact the author's TurboCollection is an excellent power tool for people like me and a great learning kit for new developers trying to grasp data structures. Some of our offerings allow the program to accept VBScript or other scripting instructions on the fly, but these will always be application-like instructions and will always be Microsoft-centric. The author's vScript is more pattern-based and abstract, and is portable to Linux, where we'll be needing it badly in the next few months. Will metamorphism ultimately set aside polymorphism? At the application level, I hope so - the application classes we are used to dealing with are constantly in flux, so we rarely have use for all the cool polymorphic inheritance hooks in the language reference. The author's strategy provides the ultimate foundation for strong, reusable software, but I can see where competitive firms will not want to share their forays or successes with it. If I had a fully metamorphic application model I could conquer the world, and so could anyone else who masters this approach and puts real code behind it. In the downloads, the author's project exercises are great teasers, and the demo program proves that he's 'done it' at some level, while the binary toolbase is useful no matter what.
Guest More than 1 year ago
This book ties together some things we are already doing, except not at the same level or approach as the author explains. I'm interested in applying these things and if we get even part of the 'traction' he implies, we'll be better off. I've got several new programmers working for me that are having trouble understanding why these things are necessary. So if a reader is new to the profession, this book might not have much meaning. You need to have been there a few times to appreciate it. The project examples do well with .NET but like anything .NET I would like to see more. The toolkit he includes is like some things we're already using, but has more functionality and some great ideas. As for separating the application logic completely from the physical software, we're just not there yet. We've used extensive dynamic browsing functionality but the users still think it feels weak compared to a desktop application. Java sucks so we don't have any real options. If we could have the same rapid development but with an application look and feel, especially for hand-held computers, we'd win a lot of users. So this approach is worth a deeper look. He touts 100% reuse and I see how he gets there, but I'll remain a skeptic until we actually pull it off.
Guest More than 1 year ago
Why didn't someone think of this stuff sooner? I've been spinning my wheels for 10 years. This book gives the best explanation of why common reuse techniques don't work, and gives an amazingly simple but powerful way to actually make it happen. I'm ordering a copy for every member on my team.
Guest More than 1 year ago
This book took my feet off my desk (finally). Birmingham drives home point after point as to why current software development approaches don't work, and offers some exciting, fun (and realistic!) alternatives. The book's software downloads alone are worth their weight in gold. An excellent read!