Demonstrator Video

Cosmic Autosize is a software tool that takes Controlled Natural Language requirements, automatically measures the functional size and documents in the form of a set of Data Movement Sequence diagrams. Please view our demo video.
A CNL is simply a language where the structure is defined by a formal syntax and is restricted to a vocabulary comprising defined words with specific meanings.These constraints are designed to improve clarity and to avoid misinterpretation and misunderstanding.
These same constraints make a CNL an ideal candidate for automation. There are several candidates; currently VisualFSM-Autosize is targeting 4 of them:

EARS (Easy Approach to Requirements Specification) Ears was devised by Marvin et all when working at Rolls Royce as a solution to the problem of poor requirements leading to misinterpretation and misunderstanding.

User Story.  A User Story comprises 3 parts, The Card, the Conversation and the Confirmation. The Card begins with the familiar "As a User I want..."  which is the Goal, the conversation elicits more information about the Requirement, sufficient to engineer it, and the Confirmation is the test to Validate that the delivery satisfies the Goal and the Requirement.  VisualFSM-Autosize can deal with the Card only, the result being suitable for outline budgeting and planning, but before any work begins, the Conversion has to take place, at that time VisualFSM-Autosize is able to generate a result which is  fit for the purpose of estimation, prediction and tracking.

CUSS (Cosmic User Story Standard). The Cosmic User Story Standard was proposed in a paper as an improvement to the standard user story. The COSMIC organization has not yet issued a specification for CUSS,

29148 (ISO/IEC 29148).SO/IEC 29148 is an international Standard for use by Requirements writers as a guide and reference for writing clear and unambiguous requirements. It provides a template describing the syntax to be used.

VisualFSM-Autosize Architecture

Input the set of requirements conforming to the required Syntax.

Perform Syntactical Analysis to extract the keywords and Vocabulary

Perform Semantic Analysis to interpret the keywords and Vocabulary to build the Measurements Model

Calculate the Functional Size

Document using Data Movement Sequence Diagrams

VisualFSM-Autosize Agile Workbench Architecture

VisualFSM-Autosize Agile Workbench DEMO

Functional size is an important driver for estimating cost and duration of development. Done by an expert, manually measuring functional size results in an accurate measure but consumes time and resource. However different expert may not measure in the same way so could be some variability. Automation of themeasurement process is both quicker and cheaper  and when engineered correctly can yield an equally accurate result with the added benefit is that the result is the measurement is repeatable.

In an Agile environment estimates are derived by subjective means which by their nature results in a measure that is not repeatable nor transportable. The use of a Functional Size measurement removes the subjectivity while retaining the metrics and indicators familiar to the Agile community

In addition, automating measurement using VisualFSM-Autosize results in an immediate and repeatable result, important consideration for estimating and predicion in an project run in an Agile manner.

To illustrate the value of functional size in an Agile environment a demonstration version of VisualFSM-Agile Workbench is available for download to demonstrate the benefits of investing effort into specifying requirements using a CNL and show the claomed benefits in action.

VisualFSM-Autosize Agile Outputs

The Agile Workbench takes the Autosize measured size and immediately combines it with other metric to produce:

  • Project Burndown Chart
  • Iteration Plan
  • Iteration Burndown Chart
  • Projectect Duration and End Date
  • Projected Cost

VisualFSM-Autosize Agile Workbench Process

As soon as a functional size has been measured it triggers the Agile Workbench to generate the Iteration Plan by allocating each function to an iteration

The generation is instantaneous after which the total cost and duration is automatically calculated

The user is then able to adjust the values for the drivers:

    • Resources
    • Resource Cost
    • Working days per Iteration
    • Calendar Days per Iteration
    • Delivery Rate (Hrs per CFP)

Adjustment results in the immediate regeneration of the iteration plan, cost and duration.


i love the whooshing sound they make as they fly by