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.
The basic BSP model in diagram form is given below:
For a proper explanation of BSP please read the associated PDF doc:
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:
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 provides a number of design constructs which in turn provide design capabilities:
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.
Home
About
Contact
Originware is based in Sydney, Australia.
| Email: | Terry Stillone (terry@originware.com) |
| Linked-in | Terry Stillone |
| Mobile International: | +61-456091812 |
| Mobile Australia: | 045 6091 812 |
Originware designs and develops software for a broad range of platforms: Mobile, Web, Desktop and Embedded.
Software development is undergoing radical transformation. Applications have evolved from standalone programs into components of an interconnected ecosystem fabric spanning servers, networks, and devices. Modern systems operate through asynchronous interactions across multiple technologies and platforms, requiring new frameworks for architecture, automation, and observability. Originware is committed to developing innovative approaches for this new paradigm.
Originware is based in Sydney Australia.
(ABN: 71 209 353 700)
