Models and architecture
now browsing by category
The main category of my posts, my experience and research as well.
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).
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.
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.
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
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
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.
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
Exactly one year ago my first paper in US ? (see liflet)
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
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).
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