Software Intensity Growth

Digital Transformation entails an increasing software dependency. This is  raising  the interest on managing digital transformation across many sectors through scalable open technologies with the potential to accomodate software intensity growth.

Why OSGi?

Several proprietary solutions and components models exist in the past targeting flexible and dynamic system composition. OSGi is an open standard approach . The specifications of the Core Framework are supported by several Open Source implementations such as Apache Felix, Concierge, Eclipse Equinox, JBoss or Knopflerfish and multiple Open Source implementations of the standard services exist. A broad diversity of projects build on top.

OSGi approach can be found in many languages : C (Celix)C++ (nOStrum)Phyton (Pelix)Scala,JrubyAndroid Dalvik VMJavaScriptGo  and Kotlin. In the case of Java, a new Microprofile will allow for optimising applications for microservices architecture.

µ-services & n-services

µ-services & n-services as building blocks

The µservice term was introduced in the context of OSGi some years ago . More recently, the same term has been introduced for referring to independently deployable  modules frequently linked to Linux Containers. This leads to confusion when both concepts are used together. Due to the usual differences of granularity (among other differences) we use micro and nano services when both terms are used together.

The complementarity of µ-services & n-services has been a relevant subject in the exchanges between Spanish development and operation interest groups during the last years.

DevOps

Development and Operation are targeting two complementary, and everyday closer, engineering domains with their gravity centre in orthogonal technical challenges (optimisation of computing and human development resources).  The concept is stronly linked with the µ-services & n-services  addressed above. Taking into account their respective scope, both, µ-services & n-services, can be used complementing each other for optimising a DevOps environment.