This article is Part 7 in our Information Systems series.
Part 7: Grapevine (current)
By Jay Grieves
Tectonic’s methods for agile applications development, cumulative platform building, and unleashing the value of technology assets are called Grapevine. It’s a unique combination of capabilities, therefore a bit tricky to explain:
- It’s not a proprietary technology, but rather uses powerful technology available to all.
- It’s not a complete architecture, but it follows the architectural principles of a flexible platform.
- It’s not a development methodology, but it really calls for a “third way” approach to applications development and deployment.
- It’s not a productivity tool, but more an integrated set of technologies and techniques that yield unprecedented productivity.
- It’s not a product, but rather a way of working with Tectonic or on your own to tackle today’s biggest information systems challenges.
For the technologists: Grapevine is a collection of .NET servers designed to run custom software. We use NServiceBus to connect the servers together. The code that performs business functionality needs to be written or repurposed by developers, but Grapevine helps them to structure the solution, provides basic infrastructure functionality, and acts as the host services that run their code in test or production environments. Grapevine provides guidance and automation for retrieving and saving data (including from other systems), updating user interfaces, and maintaining security.
In layman’s terms, Grapevine provides the fabric for integration. The “plumbing” of interface management and other templates are predefined so developers can concentrate on business logic and data models and how they’re used. Very importantly for platform integration, Grapevine documents and publishes what it’s done.
Why “grapevine”? Think about running a vineyard. The terrain may be uneven, but the structure of rows and trellises is standardized, enabling consistent access for both workers and processes like irrigation. That corresponds to a common architecture enabling interfaces and automation. Individual vines correspond to applications. They follow their own patterns, but can be pruned or modified as they grow. The combination of common foundation and individual attention maximizes the productivity of each vine and the yield of the vineyard.
If the metaphor seems a stretch, just think of Grapevine as the flexible tendrils for extracting, modifying, revising, and repurposing data and code while applications go about their everyday duties. Grapevine is ultimately defined by its results – rapid implementation of new business capability and a way forward in overcoming the limitations of inflexible legacy systems.