The BSP Design Model, Going Beyond MVC.


1. What is the BSP (Behaviour, Service, Presentation) Model ?

BSP is a progression in the evolution of software design models. It extends to address the whole UI App design, while honouring the cornerstone principles of view-models from MVC. It decouples the unique, abstract application behaviour from the system services that the App merely exercises. It separates the App design into three models, the structurally rich Behaviour model and the thin hosted OS Service and Presentation models.

It expresses the design as a fabric of Actors interacting via notifications through well defined pathways called Notifiers. So the Behaviour, Service and Presentation models are idealised as Actors emitting and observing Request and Event notifications. This separates the concept of activity, represented by the Request and Event Notifiers from the actual behaviour, given by the Actors.

BSP Notifier Diagram

The basic BSP model in diagram form is given below:

BSP Model Diagram

The BSP methodology identifies the Behaviour Model as the most complex component of the design and so provides for Behavioural Decomposition in the form of simpler sub-interactions through the mechanism of hierarchical Scoping.

For a proper explanation of BSP please read the associated PDF doc:   

BSP Design Model Brief.pdf

There is also an example App (in source form), to give an idea of what a BSP App actually looks like. The provided example is given as a fully functional iPad Xcode project, written in Swift 5.5:   

The BSP Demo App Repository@BitBucket.org

2. What are the benefits of BSP ?

BSP as a technology:

Addresses: The whole UI App design, for design completeness.
Classifies: Levels of behaviour, to recognize behaviour context.
Provides for: The decomposition of behaviour, to express in terms of simpler behaviour.
Supports: An incremental, collaborative design process, to share through design visualization.
Decouples: Design from implementation, to provide a design workspace that expresses behaviour in terms of interactions:
BSP Notifier Diagram

BSP provides a number of design constructs which in turn provide design capabilities:

BSP Provide Diagram

3. The BSP Talk Slide Set.

The BSP talk slides are also available in three formats:

4. More information.

Contact Terry Stillone  (terry@originware.com) for more direct information.

Back Home Button

Home

About

Contact