METHODOLOGIES, TECHNIQUES AND TOOLS FOR
SOFTWARE DEVELOPMENT
BASED ON MODELS
BASED ON MODELS
Dra. Ing. Andrea Delgado, Dr. Ing. Daniel Calegari COAL, InCo, FING, UdelaR
6 de Abril de 2016 Montevideo, Uruguay
Outline
Context & Motivation
COAL research lines
BPM lifecycle
ICT4V project
ICT4V project
Context & Motivation
Organizations carry out their daily operations to achieve their objectives
Business Processes
Software supporting them mostly have BPs implicitly included in user’s screens Software real execution as key input
Context & Motivation
Organizations carry out their daily operations to achieve their objectives
Business Processes
Software supporting them mostly have BPs implicitly included in user’s screens Software real execution as key input
to find improvement opportunities
Context & Motivation
Our vision to solve this problem has two main pillars
Software development is top-down from business
definitions
Models as first-class citizens for all the software Models as first-class citizens for all the software
development process Business processes Software design Software implementation V E R T I C A L H O R I Z O N T A L
COAL research lines
Business Process Management and Technologies
(BPM, BPMS)
Model Driven Engineering and Development
(MDE, MDD)
(MDE, MDD)
Service Oriented Computing and Architectures
BPM lifecycle (extended)
(Weske, 2007)
(Delgado et al, 2013-14)
BPSOM methodology for SO development from BPs
A. Delgado, D. Calegari, Business Process Management (BPM): aspectos clave para la construcción de software de soporte e impacto en la mejora continua de las organizaciones, INNOTEC Gestión No. 6, 2014.
BPM lifecycle ::
Design & Analysis
Focus on identifying and modeling BPs in organizations,
validation (simulation) and verification
Important aspects:
BP models as basis for BPM providing a common view and
BP models as basis for BPM providing a common view and
understanding (make BPs explicit)
Best practices for modeling (WPatterns, 7PMG)
Joint work of Business and IT areas to bridge the gap
between Business and Systems
BPM lifecycle ::
Design & Analysis
Some works related to this phase
Automatic generation of Service Oriented Architectures
(SOA) from BPMN 2.0 BPs to implement services (FCE-ANII)
Analysis of the BPSim standard (simulation) and tools Analysis of the BPSim standard (simulation) and tools
support, extension of Activiti BPMN 2.0 modeler 4 simulation
BPM lifecycle ::
Configuration
Focus on implementing the BPs in a selected BPMS
Using BPMN 2.0 the model is the same adding execution
information
Some works related with this phase
Some works related with this phase
Business Process Service Oriented Methodology (BPSOM)
for software development from BPs
Systematic approach and methodology for evaluating
BPMS tools based on a selected list of characteristics
Definition of a generic information model and API for BPMS
BPM lifecycle ::
Enactment
Focus on executing BPs within the organization’s daily
operation, collecting real execution data
Start: timestamp
(Weske, 2007)
Start: timestamp Complete: timestamp Originator: Person
BPM lifecycle ::
Evaluation
Focus on analyzing the real execution data gathered in
the previous phase, to find improvement opportunities
Works related with this phase
Business Process Continuous Improvement Process (BPCIP) to
Business Process Continuous Improvement Process (BPCIP) to
guide BPs measurement and improvement efforts
Business Process Execution Measurement Model (BPEMM)
providing a set of core execution measures for BPs
BPEMM plug-in for ProM to be able to analyze these
ICT4V project :: general idea
BP-centric approach
Many viewpoints expressing requirements (textual
notation is one of them)
Intermediate language based on BPMN for PAIS
Intermediate language based on BPMN for PAIS
(Process-Aware Information Systems)
Model-driven development to several (possibly)
Viewpoints
BP model Data model GUI
Textual notation
Business rules
ICT4V project :: general idea
BPMN+
Execution platforms: BPMS, DB engine, Java code, WS, etc.
• Control flow • Resources • Business rules • Structured data • GUI • Etc.
ICT4V project :: objectives
1.
Definition of an (un)structured textual language for
expressing BP (control flow, resources, data)
2.
Automatic generation of a BPMN model from this
language
language
3.
Automatic enriching of the BPMN model for
prototype generation
1. For selected platforms allowing basic execution (user
and service tasks)
F. Friedrich, Automated Generation of Business Process Models from Natural Language, Master Thesis, Humboldt University, Berlin, Germany, 2010
Conclusions & future work
Implementing systems that supports the horizontal BPs
vision in organizations requires
explicit modeling of BPs, working jointly with the business
area, with an adequate notation (i.e. BPMN 2.0)
Models are first-class citizens in development translated
to one into another and vice versa in the same level
refining the level of abstraction each time until reaching code
Automating the process of software artifacts from BP
models increases reusability and productivity, minimizing the error prone process of manual translation
METHODOLOGIES, TECHNIQUES AND TOOLS FOR
SOFTWARE DEVELOPMENT
BASED ON MODELS
BASED ON MODELS
Dra. Ing. Andrea Delgado, Dr. Ing. Daniel Calegari COAL, InCo, FING, UdelaR
https://www.fing.edu.uy/inco/grupos/coal/field.php/Main/Principal
6 de Abril de 2016 Montevideo, Uruguay