Software Development on a Leash

Software Development on a Leash
Authors
David Birmingham, Valerie Haynes Perry
ISBN
1893115917
Published
18 Mar 2002
Purchase online
amazon.com

Suitable for any project manager or VB software professional willing to think outside the proverbial box, Software Development on a Leash presents some innovative ideas for building more flexible software based on patterns, and "best practices" for reusable component design illustrated in Visual Basic.This book's most salient feature is the authors' no-holds-barred attack on "traditional" ways of designing software.

Editorial Reviews

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.

Suitable for any project manager or VB software professional willing to think outside the proverbial box, Software Development on a Leash presents some innovative ideas for building more flexible software based on patterns, and "best practices" for reusable component design illustrated in Visual Basic.

This book's most salient feature is the authors' no-holds-barred attack on "traditional" ways of designing software. Instead, the approach advocated here is based on software patterns and self-modifying objects. (Instead of hard coding properties and methods as in mainstream object-oriented design, for example, this text shows how objects can modify themselves through metadata.) The result is undoubtedly more flexible objects, which can be better adapted to constantly shifting user requirements (the cost, judging from the VB code snippets provided here, is a very different programming syntax for most programmers).

What keeps the discussion in check here is the book's reliance on software patterns, which recur throughout this text to enrich design concepts. Early sections look at how to create objects flexibly using Builder patterns. A chapter on collections (including iterators) shows off the author's own Visual Basic source code (all freely downloadable from the publisher's Web site).

A fascinating later chapter looks at virtualizing database code. (This section more than justifies the cost of the book, and you might well productively adapt the suggestions given here, apart from the rest.) By aliasing table and field names, for example, the author shows how your team can sail smoothly despite quickly changing database requirements. Final sections glance at screen and report design, completing the circle of software that isn't at all hard-coded, but can change on the fly to meet new design requirements, even after deployment.

Though probably not for every team, this text presents a good many innovative and worthwhile ideas for building more adaptable software. Even though you might not adopt its entire program, this title bears reading for any technical lead or advanced VB developer interested in software patterns and some leading-edge object-oriented design. --Richard Dragan

You might also like...

Comments

Contribute

Why not write for us? Or you could submit an event or a user group in your area. Alternatively just tell us what you think!

Our tools

We've got automatic conversion tools to convert C# to VB.NET, VB.NET to C#. Also you can compress javascript and compress css and generate sql connection strings.

“Engineers are all basically high-functioning autistics who have no idea how normal people do stuff.” - Cory Doctorow