co-design of business and it services€¦ · co-design of business and it services, blagovesta...
TRANSCRIPT
Co-Design of Business and IT Services
A Tool-Supported Approach
Blagovesta Pirelli, Natalia Nessler, Anton Ragot,
Alain Wegmann
LAMS, EPFL, Switzerland
Problem
•Business requirements are often semi-formal• “As a participant, I want to upload my camera-ready paper"
•IT specifications have to be precise• In (authorId: String, paperId: String, …) -> Out (200 OK)
➔ Why not use the same modeling method?
2Co-Design of Business and IT services, Blagovesta Pirelli Microservices 2019
Motivation: Design of Services
➕ Services are used in business and IT
➕ OpenAPI is prevalent for RESTful services
➖ No single service modeling method for business requirements and IT specifications
❓How do we extend existing service modeling to simultaneously design business and IT services?
3Co-Design of Business and IT services, Blagovesta Pirelli Microservices 2019
The SEAM Method
•Systemic(hierarchical complex systems, networked organizations)
•Concrete(project-based, story-telling, “examples”, …)
•Subject-based(viewpoints, goals)
- Slide credits: Alain Wegmann
4
Company structure:
- actors, processes, services,
partners, …
Technology:
- applications, libraries, VMs,
infrastructure, vendors, …
…
Business Process Specification
as-is / to-be
Marketing:
- segments, value network, customers,
value, motivation, …
Business
Idea (TYM)
Project
Proposal
CRM
Config.
Co-Design of Business and IT services, Blagovesta Pirelli Microservices 2019
Modeling Process – Top-Down
5
Service System Models
Information Properties
REST API Annotations
OpenAPISpecification
Business services IT services
SEAM models Generated
Co-Design of Business and IT services, Blagovesta Pirelli Microservices 2019
Modeling Process: Service Models
6
Service System Models
Information Properties
REST API Annotations
OpenAPISpecification
•Understand the business environment
•Model the services provided to the client
Co-Design of Business and IT services, Blagovesta Pirelli Microservices 2019
7
LegendExchange
relation
Refine
relation
Co-Design of Business and IT services, Blagovesta Pirelli Microservices 2019
Modeling Process: Service Models
8
Service System Models
Information Properties
REST API Annotations
OpenAPISpecification
•Understand the internal organization (value network) of the service provider
•Model the services of the actors of the service provider’s value network
Co-Design of Business and IT services, Blagovesta Pirelli Microservices 2019
9
LegendExchange
relation
Refine
relation
Co-Design of Business and IT services, Blagovesta Pirelli Microservices 2019
Modeling Process: Information
10
Service System Models
Information Properties
REST API Annotations
OpenAPISpecification
•Find the lingo of the actors
•Model the information actors have while participating in the service exchange
•Possible integration with DDD
Co-Design of Business and IT services, Blagovesta Pirelli Microservices 2019
11
LegendExchange
relation
Refine
relation
Co-Design of Business and IT services, Blagovesta Pirelli Microservices 2019
Modeling Process: REST Annotation
12
Service System Models
Information Properties
REST API Annotations
OpenAPISpecification
•Define CRUD operations on the information properties
•Connect the RESTful services to the business service they support
Co-Design of Business and IT services, Blagovesta Pirelli Microservices 2019
13
LegendExchange
relation
Refine
relation
Co-Design of Business and IT services, Blagovesta Pirelli Microservices 2019
Modeling Process: REST Annotation
14
Service System Models
Information Properties
REST API Annotations
OpenAPISpecification
•Specify the parameters and the path
•Possible: built-in, schema, enumeration, array
Co-Design of Business and IT services, Blagovesta Pirelli Microservices 2019
15Co-Design of Business and IT services, Blagovesta Pirelli Microservices 2019
Modeling Process: OpenAPI Specs
16
Service System Models
Information Properties
REST API Annotations
OpenAPISpecification
•Generate the OpenAPI specification with a tool
•Tool available on GitHub
=> https://github.com/lams-epfl/gen-rest/
Co-Design of Business and IT services, Blagovesta Pirelli Microservices 2019
17Co-Design of Business and IT services, Blagovesta Pirelli Microservices 2019
Modeling Process – Bottom-Up
18
Service System Models
Information Properties
REST API Annotations
OpenAPISpecification
Business services IT services
Generated ? Existing
Co-Design of Business and IT services, Blagovesta Pirelli Microservices 2019
19Co-Design of Business and IT services, Blagovesta Pirelli Microservices 2019
Additional Annotations
•Biz-to-REST tool generates annotations
20Co-Design of Business and IT services, Blagovesta Pirelli Microservices 2019
21Co-Design of Business and IT services, Blagovesta Pirelli Microservices 2019
Discussion
•Who do services belong to?• Provider, adopter, IT system
•How do we model the data?
•Model-driven anything: is it a good idea?
22Co-Design of Business and IT services, Blagovesta Pirelli Microservices 2019
Next Steps
•Validation of the modeling method
23Co-Design of Business and IT services, Blagovesta Pirelli Microservices 2019
Your Questions?
Thank you!
24
https://betty.github.io
@bettypirelli
Co-Design of Business and IT services, Blagovesta Pirelli Microservices 2019