Models and architecture

now browsing by category

The main category of my posts, my experience and research as well.

 

UML model and stereotypes as icons

Someone will ask: why all this? The thing is that managing presentation graphics (model consistency, tracing, etc.) is practically impossible: any change requires interference with block diagrams and laborious reinsertion into the analysis report (I wrote about this in an article about CASE tools). Such graphics are not transferable between tools other than as uneditable bitmaps. However, if someone feels that block diagrams expressed in more ‘friendly’ symbols add value to the project, they can do so. The UML provides for this and many tools allow it (I used Visual-Paradigm).

Source: UML model and stereotypes as icons – Jarosław Żeliński IT-Consulting.

Information architecture, information system vs. information technology in the organisation

There are also simple and obvious conclusions:

  • there is no point in designing an “information system” without fully understanding (i.e. also documenting) the “information system, “
  • there is no point in placing the elements of the “information system” on “information system” models (e.g. There is no point in putting the “information system” elements on “information system” models (e.g. symbols representing software on BPMN models)
  • the relationships between the “information system” elements and the “information system” elements are described with the help of the traceability matrix
  • Developing the requirements for the “information system” is about identifying the “business needs” and developing the logic of operation and architecture of the “information system” on their basis (MBSE, MDD), and not on collecting mythical “user requirements”, who in fact have no idea about “information systems”, but know very well if and when they need help in the business processes being implemented  this is why methods based on designing an “information system” on the basis of interviews (workshops) with future users are doomed to failure from the outset (because even if something sensible is finally created, it will take a lot of trial-and-error work)
  • One thing we have known for years: one of the most damaging theses in IT is the one saying that a document is a report from a database.

Source: Architektura informacji, system informacyjny a informatyczny w organizacji – Jarosław Żeliński IT-Consulting

Diagrams in UML notation

UML diagrams and the way they are used, since the very beginning of this notation, have aroused emotions and waves of conflicting comments. The reason for this is the high level of abstraction of the analysis stage and modelling as a discipline, and the fairly widespread misunderstanding of the essence of this notation. This is compounded by the huge difference between what we call analysis and object-oriented design (OOAD) and object-oriented programming languages (OOP).UML notation is mistakenly treated by many people as just another set of symbols for creating illustrations. Most developers I know feel that these diagrams do nothing to help them, and they are generally right, because the quality and content of much of the documentation produced with UML, is poor, and such documentation is actually useless to the software vendor.

Source: Diagramy w notacji UML – Jarosław Żeliński IT-Consulting

Value-stream mapping i.e. the value stream a company creates when creating its product

The acronym VSM has also started to appear in software engineering for some time now, but it has an old pedigree of more than 30 years. Value-stream Mapping (VSM), known for 30 years, more recently also as material- and information-flow mapping. It is a method with its origins in Lean Management, used to analyse the current state and design the future state for the series of events that lead a product or service from order to delivery to the customer.

Source: Value-stream mapping czyli strumień wartości jaki wytwarza firma tworząc swój produkt – Jarosław Żeliński IT-Consulting

What are tests and who tests what

Testing is checking, and here we have (should have) a clear division between the checker and the checked. It is typical of the IT market to tell customers that they have no competence in analysis, testing, design, that all this will be done by the software supplier. Thus, the following are ordered from the same, single, software supplier: business analysis, requirements analysis, design, implementation, writing acceptance tests and testing. An entity like the Purchaser in essence just watches, and pays as much as the suppliers want (T&M projects are out of control). In effect, the checker and checked are the same entity. Does this make sense?

Source: Czym są testy oraz kto i co testuje – Jarosław Żeliński IT-Consulting

SysML – a few words about

In this place, I have been collecting some speaks about the SysML language. It is origin from UML (it is a UML profile). SysML is the main MBSE method we use for documenting mechatronics models.

Who needs Model Based Systems Engineering (MBSE) in 6 minutes
Systems Engineering Your MBSE Deployment by David Long
SysML ?AND? Its Role and Place in Systems Engineering with Zane Scott
https://youtu.be/xGDErNmqNLw
Introduction to Systems Modeling Language (SysML)
The Four Pillars of SysML 

Ontology-Oriented Data Management and Document Databases

This study presents a method for the storage of data organized in digital documents, which is proven in practice. The discussed method does not bear any disadvantages of the relational model used for data organization, such as the loss of data context and complications evoked by the lack of data redundancy. The method presented here can be used for data organization into documents (digital and paper) as classified aggregates and for data classification. The study also describes a new metamodel for the data structure which assumes that documents, being data structures, form compact aggregates, classified as objects, or event descriptions, thus always assigning them a specific and unambiguous context. Furthermore, the study presents a design method for documents as context aggregates that allows leveling the disadvantages of the relational model and ensures efficient information management. The work also contains practical examples of the application of the described method.

Digital Documents as Data Carriers and a Method of Data Management Guaranteeing the Unambiguity of the Recorded Information: Ontology-Oriented Data Management and Document Databases

Buy and read more…

Synthesis of MOF, MDA, PIM, MVC, and BCE Notations and Patterns

Exactly one year ago my first paper in US ? (see liflet)

Abstract

Publications, including academic handbooks, contain numerous inconsistencies in the descriptions of applications of architectural methods and patterns hidden under the abbreviations such as MOF, MDA, PIM, MVC, BCE. An efficient analysis and the following software design, particularly when we are speaking of projects realized in large teams, requires standardization of the production process and the applied patterns and frameworks. This study attempted to sort out the system of notations describing this process and used to describe architectural patterns. Analysis of key notations?MOF and MDA, patterns MVC and BCE?was carried out, and a consistent system combining them into a whole was created.Chapter Preview Top

Background

In this study, Object Management Group notation systems have been used. MOF (Meta Object Facility) specification describes three abstraction levels: M1, M2, M3 and level M0 that is real items (OMG MOF, 2016). M0 is a real system, M1 level is abstraction of the items of this system (its model). Level M2 comprises of relationships between classes of these objects (names of their sets) that is system metamodel. M3 level is a meta-metamodel describing the modeling method with the use of named elements with specified semantics and syntactic.

The analysis and design process is based on the MDA (Model Driven Architecture) specifications. This process has three phases understood as creation of subsequent models: CIM (Computation Independent Model), PIM (Platform Independent Model), PSM (Platform Specific Model) and code creation phase. The CIM model is documented with the use of BPMN (Business Process Model and Notation) (OMG BPMN, 2013) and SBVR notation (Semantic of Business Vocabulary and Rules) (OMG SBVR, 2017). These are, respectively: business process models and notation models and business rules. PIM and PSM models are documented with the use of UML notation (Unified Modeling Language) (OMG UML, 2017).

Between CIM and PIM models, determination of the list of application services (system reactions) occurs, whose realization mechanism is described by PIM model. The standard pattern used for modeling application architecture is MVC pattern. Component Model of this pattern is modeled with the use of the BCE architectural pattern.

Semiotics vs. UML

Semiotics, as a science dealing with symbols and their meanings, provides us with the tool enabling determination of relationships between an object (thing), its name (expression) and definition of notation represented by the name (or sign, meaning). These relationships are referred to as the semiotic triangle. Figure 1 represents this triangle on the left (OMG SBVR, 2017).

The UML notation (OMG UML, 2017) operates instance classifier and class notations. To the right, Figure 1 demonstrates an equivalent to semiotic triangle expressed with those terms.

The UML notation further operates the general structure notation, which is the content of each correct UML diagram. Structures may express a conceptual model (Namespace) or model (also metamodel) of system architecture (e.g. software) in the form of a chart (Architecture).

Synthesis of MOF, MDA, PIM, MVC, and BCE Notations and Patterns

Jaroslaw Zelinski (Independent Researcher)
Source Title: Applications and Approaches to Object-Oriented Software Design: Emerging Research and OpportunitiesCopyright: ? 2020 |Pages: 12DOI: 10.4018/978-1-7998-2142-7.ch003

Business continuity management – how to model it

Business Continuity Management (BCM) projects are really difficult . The main reason is the system complexity: many documents, many tasks, many processes, many associations between all of them. Each task connected to one or more business application. Each documents stored in different database. The applications are integrated. Everything works like one chain ? but one broken link can crash everything .

How we can managing risks? We can create Business Architecture model and expand this up to Enterprise Architecture, as a model for trace process, data, IT system and infrastructure.

(source: https://en.wikipedia.org/wiki/Enterprise_architecture_framework)

How we prepare Enterprise Architecture model? Simple version: prepare business model :

Transform this to use case model (application services) :

Build matrix for trace mapping control :

Trace (map) use case to software components :

We have completed model, we can do impact analysis, e.g. what happens and where, when the Ruter go down:

Sometimes we ask: what does the possibility of carrying out the Package Goods task depend on?

How can we do this and what tools do we need? Welcome in my courses, hire me …

References

Types instead of inheritance

Many time we can see requirement written as a “class diagram for project”. What “class diagram” mean? We can use UML class diagram for: architecture model, notions model, sometimes other. Which type of model do you need? Class diagram is a tool. When we say model, we have to provided context: model of what?

We use inheritance in models of notions (for building taxonomies), never in architecture.. In architecture models we use types. In 2015 OMG published UML v.2.5. Inheritance was removed from UML . Why? Welcome in my courses?

References