and that the utilization of the dynamic planning
capability can reduce the labor overhead of manual
planning of workflows in the microservice space,
especially if these are expected to vary often.
Analogous to the more heavyweight EJB containers
vs. more lightweight containers, perhaps the more
lightweight form of microflows could be beneficial
when the more complete BPMS functionality is not
needed.
To validate its exception handling and replanning
capability, we manually created situations where
certain microservice returned an error, and observed
that the agent triggered a replanning consisting of
the error segment plus the remaining segments,
providing some resilience.
Note that performance was intentionally not
optimized in order to provide an indicator of the
default viability and investigate how lightweight the
approach is. In future work, we plan optimizations.
6 CONCLUSIONS
We described Microflows, an automatic lightweight
declarative approach for the workflow-centric
orchestration of semantically-annotated
microservices using agent-based clients, graph-based
methods, and lightweight semantic vocabularies.
Microflow principles and its lifecycle were
described. Based on a realization, the evaluation
showed that the approach is lightweight, while still
offering optimization potential. Although its
scalability is impeded, depending on the
environmental performance constraints and
deployment configuration, the automatic planning
may be viable for typical workflow scenarios using a
limited set of microservices. Further, the evaluation
showed that its automated planning offers efficiency
benefits vs. manual modelling, and that its
enactment performance can be on par with that of
commercial BPMS systems.
One advantage we see in the Microflow
approach is that the workflow (or plan) is not
thoroughly adhoc and dynamic, so that validation
and verification checks can be performed before
execution and one is assured that an the workflow is
executable as planned. For instance, if all
microservices were there, but a payment service is
missing, then a client without this knowledge would
work its way through and realize at the very end that
it has no way to pay. However, enhanced support for
verification and validation of the correctness of the
microflow is still needed for users to entrust the
automatic planning.
Future work includes integrating advanced
verification and validation techniques, optimizing
resource usage, integrating semantic support in the
discovery service, transactional workflow support,
support for gateways, supporting compensation and
long-running processes, and enhancing the
declarative and semantic support and capabilities.
ACKNOWLEDGEMENTS
The author thanks Florian Sorg for his assistance
with the design, implementation, evaluation, and
diagrams.
REFERENCES
Alpers, S., Becker, C., Oberweis, A. and Schuster, T.
(2015). Microservice based tool support for business
process modelling. In Enterprise Distributed Object
Computing Workshop (EDOCW), 2015 IEEE 19th
International (pp. 71-78). IEEE.
Anderson, C., Suarez, I., Xu, Y., & David, K. (2015). An
Ontology-Based Reasoning Framework for Context-
Aware Applications. In Modeling and Using Context
(pp. 471-476). Springer International Publishing.
Bouguettaya, A., Sheng, Q.Z. and Daniel, F. (2014). Web
services foundations. Springer.
Bratman, M.E., Israel, D.J. and Pollack, M.E. (1988).
Plans and resourcebounded practical reasoning.
Computational intelligence, 4(3), pp.349-355.
Eureka (2016). Retrieved April 20, 2016 from:
https://github.com/Netflix/eureka/wiki
Fielding, R. T. (2000). Architectural Styles and the Design
of Network-based Software Architectures. Doctoral
dissertation, University of California, Irvine.
Florio, L. (2015). Decentralized self-adaptation in large-
scale distributed systems. In Proceedings of the 2015
10th Joint Meeting on Foundations of Software
Engineering (pp. 1022-1025). ACM.
Fowler, M. & Lewis, J. (2014). Microservices a
definition of this new architectural term.
Retrieved April 15, 2016 from:
http://martinfowler.com/articles/microservices.htm
Gartner (2015). Gartner Says Spending on Business
Process Management Suites to Reach $2.7 Billion in
2015 as Organizations Digitalize Processes. Press
release. Retrieved April 15, 2016 from:
https://www.gartner.com/newsroom/id/3064717
Heitmann, B., Cyganiak, R., Hayes, C. & Decker, S.
(2012). An empirically grounded conceptual
architecture for applications on the web of data.
Systems, Man, and Cybernetics, Part C: Applications
and Reviews, IEEE Transactions on, 42(1), 51-60.
IBM (2015). IBM Business Process Manager V8.5.6
documentation. Retrieved May 2, 2016 from:
Sixth International Symposium on Business Modeling and Software Design
142