Model Driven Engineering | Inteca.pl http://www.inteca.
pl/en/model-driven-engineering/
Model Driven Engineering
Podziel się!
Share (//www.pinterest.com/pin/create/button/?url=http://www.inteca.pl/en)
Like
Throughout the years of running projects for various customers and
industries we’ve managed to learn, use, test and experiment with
various software engineering methodologies, architecture
paradigms and software design styles. We’ve learned that
regardless of the project management paradigm (being small agile
team up to multi-site/multi-vendor, large scale, enterprise program)
the risk concerned with running the IT projects is always linked to
missing the business requirements, specifically in the context of
organization’s business processes, lack of coherence between
products of different stages of software delivery process and
resulting miscommunication, lack of architecture consciousness.
Things like Process modelling in BPMN, Business Process Simulation, IT System analysis with Use Cases, Object
Oriented Design in UML, Design of Service Oriented Architecture driven by business domains and translating
Design artifacts into usable Implementation products (like source code, service contracts or data definitions) work
great as separate engineering practices.
However teams are seldom able to integrate these practices together, to work as a whole, consistent software
delivery process that guarantees consistency, repeatability and reduces risk.
Based on our experience, and input from projects from various industries, we managed to combine all these best
practices into single method that leverages best parts of specific standards, notations and work methods.
Model Driven Engineering
1 de 3 01/04/2019 03:26 p. m.
Model Driven Engineering | Inteca.pl http://www.inteca.pl/en/model-driven-engineering/
Model Driven Process Analysis
1. We use BPM / CASE tools to build process and domain models – we Combine BPMN with the business-level
UML views.
Information & Data objects are combined with process flow (a set of activities that work on data).
2. We simulate various variants of the process for impact analysis of planned changes and looking for optimal
variants
3. We don’t write documents – we generate it from our analysis models. Comments & changes are handled directly
in the model. It guarantees consistency.
4. Business review is done with on-line collaboration tools that hold on-line view of our analysis model that is
always visible to our stakeholders
Model Driven Business Solution Design
1. Process Analysis models are transformed and detailed at the IT System level using UML models.
2. We design system functionalities supporting required business process automation requirements
3. We identify and design reusable services (SOA/Microservices) to support designed business processes
4. Depending on the industry we apply reference-standards (like ISO20022, BIAN, Acord or APQC) – we own set of
industry specific, ready to use libraries and templates
5. We generate documents from the models in the CASE tools. It guarantees consistency between what is written in
the specification document and what is designed and to be converted into implementation artifacts. It also saves
a lot of time to our analysts and speeds up the whole process.
Model Driven Architecture
1. Architectural requirements realization models are derived from model elements from previous stages
2. We identify and design IT components of the target solution
3. Service contracts and message & data schemas that are directly usable by developers are generated from the
design model
4. We’ve built set of plugins for the modelling tools that automatically verify consistency and completeness of design
models
5. Obviously, Software Architecture Document is generated from the model
2 de 3 01/04/2019 03:26 p. m.
Model Driven Engineering | Inteca.pl http://www.inteca.pl/en/model-driven-engineering/
Software build chain automation
1. Our modelling products are input or the implementation stage were we transform models into messages and
source code
2. Our software build & deployment process is automated using DevOps & Continuous integration approach
3. We used automated tests for software quality assurance
4. We’ve build set of custom build & deployment automation for SoftwareAG webMethods platform
What are the key effects of this approach ?
Effectiveness
Each product of the process is traceable and forms an input for products at later stages.
We don’t maintain design models and documentation. Documentation is generated from our models same as
implementation artifacts – therefore we minimize work, waste and time to synchronize changes between software
development lifecycle work products .
Shorter Cycle Times of consecutive stages of software
delivery lifecycle
There is no wasted related to documentation and its review process. Requirements, process and design
documentation is consistent and verifiable for completeness as it is maintained in the model in the CASE tool.
Software building , deployment and testing is automated so it takes almost no time to test and release new &
modified functionalities.
Traceability and consistency
There is full traceability from business requirement, through functional requirements (like Use Cases or User
Stories) and their design realizations to resulting tasks in the development process. These traceability relations
could be visualised on diagrams and analysed in spreadsheets to improve verification & validation and give full
transparency to business stakeholders.
3 de 3 01/04/2019 03:26 p. m.