More Website Templates @ - November 14, 2011!

VisualBRON CASE Tool Key Concepts


What is VisualBRON?

  • A new way of developing software systems
  • Allows Design at a higher level of abstraction
  • Design, not just Implementation
  • Automatic Implementations from the Design
  • High Level designs are captured using the CASE tool. Designs are then applied to one or more Code Generators. Each code generator translates a design a different way, to map the high level design concepts on to concrete implementations in the target language.
    There are two Code Generators for VisualBRON at present, and more in development.
    Available now:

  • C Code Generator *
  • BRON Code Generator
  • Visual Basic Code Generator (deprecated - ask us if you have a need)
  • * This generator is available for purchase

    The BRON Code Generator translates VisualBRON designs into BRON Code, this BRON code can then be translated to C using the BRON2C generator.
    In development:
  • C# Code Generator (Alpha)
  • HTML design data generator
  • C++ Code generator
  • The VisualBRON CASE tool has 4 Design Views:
  • Information Model
  • Communications Model
  • State Model
  • Procedural Model
  • Information Model

    Each box represents an object type
    Each object generally has:
  • A unique name
  • Relationships to other object types
  • Data attributes
  • Method Prototypes
  • Communications Model

    Objects communicate using messages
    A message is comprised of:
  • A message name
  • An optional Data Payload
  • Data attributes
  • Method Prototypes
  • The Communication Model allows Message types to be defined, and the types of objects that send and receive the Message types to be specified.
    Objects on the Information Model design view are automatically present in the Communications Model view, as you'd expect.
    Messages may be sent to a specific object instance, or Broadcast to Subscribers. Messages can also be replied to, the senders address being part of a message header.

    State Model

    Each Object type may have a State Model.
    State models consist of States and State Transitions ( Events)
    New States are added in the Procedural Model, but can also be deleted in the State model. New State Transitions ( events ) can be added in the State and Procedural Model.

    Procedural Model

    The Procedural Model represents the run time behaviour of an object type over its lifetime, from object instantiation to object instance deletion.
    The design concept is forward flow design, it is similar in appearance and concept to SDL notation and has its origin in design notations used for Modula-2. Operations are the standard software basic concepts:
  • Terminal (stop processing)
  • Transition (Change state)
  • Switch (multiple decision branch)
  • Test (decision branch)
  • Expression (evaluations and expressions)
  • Loop (iterate a number of times)
  • Traversal/Iterator (iterate a number of times for each element of a navigation)
  • Send (Send a message)
  • Subscribe (message subscription operations)
  • Loop (iterate a number of times)

  • Objects may be passive or active.
    Passive Objects may
  • Have no events or methods, or
  • they may only support synchronous events (methods)
  • Have no need of a State Model
  • Active Objects may
  • Have events tiggered by asynchronous evnets
  • Triggers cause procedures to be executed
  • There are many kinds of trigger event
  • Passive Triggers
  • Active Triggers
  • State Independent Triggers
  • State Dependent Triggers
  • System Defined Events
  • Stateless Events
  • State Dependent Events

  • Training

    VisualBRON is more sophisticated than we can do justice to in a website.
    We offer a 4 day VisualBRON training course, at your site.

    Find out more about Amenuensis Training Courses

    Successful System Designs

    “Before Amenuensis, software projects we were involved in benefited greatly from the use of BRON technology. We formed Amenuensis to bring BRON 2 and it's sister product Visual BRON to a wider audience of software engineers.” Rebecca BryanCEO & Co-Founder

    “Using BRON 2 or VisualBRON allows time to ensure that systems designs are right, to test thoroughly, and to try what-if optimisations that simply aren't feasible without BRON. Design & code Reviews become a breeze.” Mark Gregory Co-Founder