The diagram below illustrates some challenges we have in BSA – how does things glue together ? The small diagram have a single class “Customer”, a small state diagram and a Data Table – all providing different part of an application.
Class as an example is a declaration of a “datatype” with attributes, methods and events. Data Table is an actual instance of a class or loose data stored at an exact location, a state diagram on the other hand visualize the logic behind methods and events in a class. You do not need to have a 1:1 between diagrams and class names etc, but if the names are the same they will be treated as an representation of each other.
A class definition is global for the module and as discussed before we can visualize data using presentations – which is needed on some physical classes due to their volumious content. If you create a diagram “Customer” that will be a different visualization of a class “Customer” where PLD show executable logic and the class show content and associations to other classes in you model.
These links are currently free text with no rules attached. That will change later as the compiler get activated – for now I will create navigation links between a state “Customer” and a diagram “Customer” and class “Customer” + links between member/events and terminals. It is straight forward to do, but to get it correct I will need to start using names correctly “diagram1.start1” etc which is a pain, but I will see how it works out – This has been long-time coming and is one of the issues that has caused me some trouble, but I think it will work out. To shorten name I could allow usage of full name as well as adding a “using” definition – simply a list of content used in a diagram, but this again have a different issue.
These things will not be written in stone – the reality is that we need to see what works and what does not and evolve as we go – this also means that these early Beta releases migh include non-backward compatible changes – I will try to avoid that, but it must be expected to some degree before we reach maturity.