Larger Processes
Describing a much larger procedure in Technique
An example showing using Technique to describe a much larger procedure — in this case the entire process of doing systems engineering on a software project. This pushes the limits of what the language is for, but nevertheless illustrates that Technique can be used for very large structures as well as very detailed ones:
III. Implementation
design_and_build : Requirements -> System
# Engineering Design, Build, and Verification
4. Engineering Design <engineering_design>(requirements) ~ designs
5. Software Development
{ foreach design in designs }
a. <implement>(design) ~ component
6. Integration Testing
{ foreach (design, component) in zip(designs, components) }
a. <integration_testing>(design, component)
engineering_design : Requirements -> [Design]
# Engineering Design
Given a set of requirements the engineering profession can undertake detailed
analysis and turn the _idea_ into a technical _design_ for how the problem
will be approached and what is actually to be built.
implement : Design -> Component
# Build and Test
1. Prototypes and explorations <prototypes>(design)
2. Software Development <build_software>
3. Local Testing and Experimentation <local_experiments>