Snippet-driven engineering: a meta-process for documentation-driven software and systems engineering

Source URL (as named hyperlink)

The term "snippet-driven engineering" was coined by Dr Darren Kelly of Webel to describe a particular recipe and process for strongly document-driven software and systems engineering, a strategy that is designed to integrate well with a modern Content Management System (CMS) like Drupal™ (if you consider that modern), and with Dr Darren's UML™ Parsing Analysis recipe.

The idea behind Snippet-Driven Engineering is very easy to describe, yet the consequences (just as for disciplined requirements-driven engineering) are ground-breaking and of wide-ranging consequence to every engineering discipline, because it can be applied to any engineering documentation in nearly any form. It is a value-adding meta-process.

The main elements and principles of Snippet-Driven Engineering are stated as child Snippets of this very introduction page, which acts as a Source for each demonstration Snippet, and you'll notice on each Snippet's focus web page that it knows its Source. The Snippets that describe Snippet-Driven Engineering are stated as hyperlinks to each Snippet's focus page of course, and they include:

- Every Snippet gets a dedicated analysis "focus" page in a CMS, and can appear as a "titled" link to its unique focus page

- The title of a Snippet's focus web page is typically a sentence

- Every Parsing Snippet is a consumer of text for a source document known by URL, URI, ISBN, or by another unique source identifier.

- Each Snippet may be represented in a graphical language such as UML or SysML

- Where possible, the title of a Snippet should be digitally transferred from the source Document, not typed.

- A source document may be reconstructed (at least in part) as the union of all downstream Snippets that have it as source

- A Snippet may carry standardised editorial flags, error and warning flags, and ratings

- Wherever and whenever possible, a Snippet should be bound to an executable or functioning expression of the represented text in the real-world

Q: Isn't this just text-based requirements-driven engineering ?

A: No, it is far more than text-based requirements engineering, especially when combined with graphical Unified Modeling Language™ (UML™) or Systems Modeling Language™ (SysML™) models of each Snippet.

A requirement stated as text may be a Snippet, and thus some popular forms of text-requirements-driven engineering are achieved as a mere side-effect of the Snippet-based UML™ Parsing Analysis and Snippet-Driven Engineering meta-processes, which are ways of organising UML™ and Content Management System (CMS) page representations of Snippets of document text to create massively hyperlinked and massively cross-referenced text resources.

Requirements documents are of course excellent candidates for Snippet-Driven Engineering and for UML™ Parsing Analysis, and nearly all good principles of disciplined requirements engineering apply also to Snippet-Driven Engineering. Snippet-Driven Engineering can be combined easily with most popular modern requirements tools (by managing requirements as bound URL targets with matching snippets).

Snippet-Driven Engineering is however far more powerful and far-reaching and all-encompassing than requirements engineering, especially when combined with graphical parsing anaysis engineering such as the UML™ Parsing Analysis recipe. Because Snippet-Driven Engineering and UML™ Parsing Analysis are about meta-processing of and value-adding for any useful documents, (not just those that are already stated in a special form like requirements documents).

Above all, Snippet-Driven Engineering is conceived to work with any document, written in your natural language, not just with documents already in a very specific form.