sirius viewpoints and modernization paris 2015

48
Sirius Viewpoints & Software Modernization Stéphane Barbey, PhD December 2015

Upload: adrian-kiener

Post on 12-Apr-2017

232 views

Category:

Software


0 download

TRANSCRIPT

Page 1: Sirius viewpoints and modernization paris 2015

Sirius Viewpoints & Software Modernization

Stéphane Barbey, PhDDecember 2015

Page 2: Sirius viewpoints and modernization paris 2015

Sirius Viewpoints & Software Modernization 2

About Paranor

02/12/15

Founded in 197835 Employees PhD/Msc/Bsc

Individual Software Development

ModernizationConsulting

High Standards

Model Based Approaches

DSLs

Offices in Wahlendorf (CH)Stansstadt (CH)

Cebu (PH)

FinancePublic

AdministrationTransportation

EnergyCommunication

s

Continuous innovation

state-of-the-art methods

and technologies

Page 3: Sirius viewpoints and modernization paris 2015

3

AgendaSoftware Modernization

The Respec Approach to Business Rules mining

Its Tooling

The Use of Sirius Viewpoints

02/12/15 Sirius Viewpoints & Software Modernization

Page 4: Sirius viewpoints and modernization paris 2015

Sirius Viewpoints & Software Modernization 4

I – Modernization

02/12/15

Page 5: Sirius viewpoints and modernization paris 2015

Sirius Viewpoints & Software Modernization 502/12/15

Over time, any successful systemwill become a legacy system.

Page 6: Sirius viewpoints and modernization paris 2015

Software Modernization Workbench 602/12/14

First Lehman‘s Law of Software Evolution

A software system either undergoes continual change or becomes progressively less useful.

Page 7: Sirius viewpoints and modernization paris 2015

Software Modernization Workbench 702/12/14

Change or decay process continues until it is judged more cost-effective to replace the system.

Page 8: Sirius viewpoints and modernization paris 2015

Sirius Viewpoints & Software Modernization 8

Why Replace?

02/12/15

Skills shortage

Vendor support

Regulatory compliance

Maintenance costs

Access to data

Meeting client

expectations

Security Green IT initiatives

Disaster recovery

Interoperability

Source: TSRi

Page 9: Sirius viewpoints and modernization paris 2015

Sirius Viewpoints & Software Modernization 902/12/15

Your Journey depends on your Destination

Page 10: Sirius viewpoints and modernization paris 2015

Sirius Viewpoints & Software Modernization 10

Architecture-Driven ModernizationHorseshoe Model (OMG)

02/12/15

Business Architecture

Application & DataArchitecture

TechnicalArchitecture

Longer Journey / Greater Impact

Shorter Journey / Lesser Impact

Business Domain

IT Domain

Existing Solution Target Solution

Technical Architecture-Driven

Application/Data Architecture-Driven

Business Architecture-Driven

Source: OMG

Page 11: Sirius viewpoints and modernization paris 2015

Sirius Viewpoints & Software Modernization 1102/12/15

Modernization

New Implementati

onMigration

Manual Standard Tool Model-Based Generation

COTS

Page 12: Sirius viewpoints and modernization paris 2015

Software Modernization Workbench 1202/12/14

96%…of COTS users did not achieve all the

benefits they had expected.

Source: Accenture

Page 13: Sirius viewpoints and modernization paris 2015

Sirius Viewpoints & Software Modernization 1302/12/15

Modernization

New Implementati

onMigration

Manual Standard Tool Model-Based Generation

COTS

Page 14: Sirius viewpoints and modernization paris 2015

Software Modernization Workbench 1402/12/14

7%Success rate of new implementation / manual migrations projects.

Source: Gartner

Page 15: Sirius viewpoints and modernization paris 2015

Sirius Viewpoints & Software Modernization 1502/12/15

Modernization

New Implementati

onMigration

Manual Standard Tool Model-Based Generation

COTS

Page 16: Sirius viewpoints and modernization paris 2015

Sirius Viewpoints & Software Modernization 16

Modernization Process

02/12/15

Data Migration

Models (DSLs)

Iterative MigrationAssess

Import and transform into models (DSL)

Code Generation and/or Business Semantics Extraction

Transform into models

ExtractRules &Generat

e

JavaXMLPDF…

EnterpriseArchitectu

reRepositor

y

Page 17: Sirius viewpoints and modernization paris 2015

Sirius Viewpoints & Software Modernization 17

Advantages and Benefits ofModel-based Migration

02/12/15

Source: itemis

Automation• Optimization of

Quality/Cost/Time• Accurately fitting automation

leads to maintainable software• Short freeze-time• Parallel development of old and

new system

Target Architecture• Full freedom in definition of

architecture• Consistent implementation

through code generation• Easier to integrate developers

from the legacy system

Future Development• Model-driven software

development• Adaptations are easier• Cheaper Maintenance

Page 18: Sirius viewpoints and modernization paris 2015

Sirius Viewpoints & Software Modernization 18

II – Mining Business Rules

02/12/15 18

Page 19: Sirius viewpoints and modernization paris 2015

Sirius Viewpoints & Software Modernization 1902/12/15

Business Rules Mining:Extracting the essence of the business

Page 20: Sirius viewpoints and modernization paris 2015

Sirius Viewpoints & Software Modernization 2002/12/15

Source code contains the whole truth

Page 21: Sirius viewpoints and modernization paris 2015

Sirius Viewpoints & Software Modernization 2102/12/15

30%• …of source code contains business logic.

• Remaining supports infrastructure-related activities.

Source: Ulrich & Newcomb

Page 22: Sirius viewpoints and modernization paris 2015

Sirius Viewpoints & Software Modernization 22

RespecExtracting Business Rules• Extracting business logic from legacy code

to obtain a first-class asset for:• Architectural assessments and blueprints• Migration• Business re-engineering• and more

Respec = (code + knowhow) × tooling

02/12/15

Page 23: Sirius viewpoints and modernization paris 2015

Sirius Viewpoints & Software Modernization 23

Respec Process & Tool Support

Code• Possibly

multiple programming languages

Business Logic• Readable• Descriptive• Simplified• Procedural

Business Specification• Basis for

new requirements

• Basis for code generation

• Rigorous Business Logic mining method

• Rooted in true operational business rules• Prevents “invention” of facts• Provides traceability through interlinking• Supports coverage analysis and progress

monitoring• Business Logic model and

Specification model … • Can be augmented with new or changed

requirements• Provide a precise and detailed basis for

implementation / retargeting

02/12/15

Page 24: Sirius viewpoints and modernization paris 2015

Sirius Viewpoints & Software Modernization 2402/12/15

“The amateur software engineer is always in search of magic, some sensational method or tool whose application promises to render software development trivial. It is the mark of the professional software engineer to know that no such panacea exist.”

Grady Booch

Page 25: Sirius viewpoints and modernization paris 2015

Sirius Viewpoints & Software Modernization 25

Bottom Up / Reverse Engineering

02/12/15

Page 26: Sirius viewpoints and modernization paris 2015

Sirius Viewpoints & Software Modernization 26

Business Logic (Editor)

➔ readable➔ descriptive➔ simplified➔ procedural

02/12/15

Page 27: Sirius viewpoints and modernization paris 2015

Business Logic before & afterraw BLogic (≅ Code) genuine BLogic

➔ Focus on business logic

➔ No technical noise02/12/15 Sirius Viewpoints & Software Modernization 27

Page 28: Sirius viewpoints and modernization paris 2015

Sirius Viewpoints & Software Modernization 28

BLogic before & after

Genuine BLogic➔ business terminology➔ annotated

02/12/15

Page 29: Sirius viewpoints and modernization paris 2015

Sirius Viewpoints & Software Modernization 29

Bottom Up / Reverse Engineering

02/12/15

Page 30: Sirius viewpoints and modernization paris 2015

Sirius Viewpoints & Software Modernization 30

Specification Composer

02/12/15

Page 31: Sirius viewpoints and modernization paris 2015

Sirius Viewpoints & Software Modernization 31

Specification artifacts• Specification Composer allows to edit specification

model, mainly referencing Business Logic artifacts

• Derived products (from spec model):• generated specs as PDF or Wiki• generated viewpoints (diagrams)• generated input for EA tool/repository• basis for code generation

02/12/15

Page 32: Sirius viewpoints and modernization paris 2015

Sirius Viewpoints & Software Modernization 32

III Viewpoints on Modernization Artifacts

02/12/15

Page 33: Sirius viewpoints and modernization paris 2015

Sirius Viewpoints & Software Modernization 33

Viewpoints• A software system usually cannot be described with one notation for all relevant aspects.

• Also, the development process requires different aspects to be described by different roles at different times, as you want to be sure to have a clean separation of concerns.

• Hence it is important to identify the set of viewpoints relevant for describing the different concerns of a system

02/12/15

Page 34: Sirius viewpoints and modernization paris 2015

Sirius Viewpoints & Software Modernization 34

Viewpoints

GraphicalTextualSpreadsheetForm...

• Provide notations and abstractions for viewpoint.

• Choose the best representation to convey the concepts you need to express.

• Consider mixed notations• E.g. text inside diagrams

02/12/15

Page 35: Sirius viewpoints and modernization paris 2015

Sirius Viewpoints & Software Modernization 35

Graphical Editors• Good to express

• Sequence flows / State machines• Relationships and Dependencies• Timing / Synchronizations• ....

• Not good for e.g. expressions• ... But think of formulas

02/12/15

Page 36: Sirius viewpoints and modernization paris 2015

Sirius Viewpoints & Software Modernization 36

Editors (Text)

02/12/15

Every model (DSL) has its own editor, and is stored as a file, or as XML.

Page 37: Sirius viewpoints and modernization paris 2015

Sirius Viewpoints & Software Modernization 37

Editors (Forms)

02/12/15

Workbench also supports form-based editors

Example: business specification editor

Page 38: Sirius viewpoints and modernization paris 2015

Sirius Viewpoints & Software Modernization 38

Editors (Graphical)

02/12/15

… and graphical editors

Example: component-architecture diagram

Page 39: Sirius viewpoints and modernization paris 2015

Sirius Viewpoints & Software Modernization 39

Editors (Wireframe Sketches)

02/12/15

… and UI editors

Example: wire-frame sketch for 3270 block mode terminal interface

Page 40: Sirius viewpoints and modernization paris 2015

Sirius Viewpoints & Software Modernization 40

Cartography: Impact Analysis

02/12/15

Cluster visualization

of model dependencies

allows for impact

analysis and decision-

making w.r.t. iterative

migration.

Page 41: Sirius viewpoints and modernization paris 2015

Sirius Viewpoints & Software Modernization 41

Viewpoints• Consider not just the notation• But also the tooling

• Actions,• Refactorings,• Filter,• Customization,• Grouping,• Printing• ...

02/12/15

Page 42: Sirius viewpoints and modernization paris 2015

Sirius Viewpoints & Software Modernization 42

Generated Documentation

Component Diagram

02/12/15

Page 43: Sirius viewpoints and modernization paris 2015

Sirius Viewpoints & Software Modernization 43

Types Overview

02/12/15

Page 44: Sirius viewpoints and modernization paris 2015

Sirius Viewpoints & Software Modernization 44

Types Hierarchy

02/12/15

Page 45: Sirius viewpoints and modernization paris 2015

Sirius Viewpoints & Software Modernization 45

Dependency Diagrams

02/12/15

Page 46: Sirius viewpoints and modernization paris 2015

Sirius Viewpoints & Software Modernization 46

Sequence Diagrams

02/12/15

Page 47: Sirius viewpoints and modernization paris 2015

Sirius Viewpoints & Software Modernization 4702/12/15

Sirius does not render software development trivial.

However,• Easy—one gets

diagram editors in literally hours.

• Powerful—all kinds of presentations.

• Customizable—representation and behaviour.

• Integrated-works perfectly with other eclipse modeling tools.

Page 48: Sirius viewpoints and modernization paris 2015

Sirius Viewpoints & Software Modernization 48

Thank You!Stéphane Barbey, [email protected]

02/12/15

https://www.linkedin.com/in/barbey

All illustrations used in this presentation are either owned by the author or licensed under “CC BY 2.0” or “CC BY SA 2.0”.