The TMF Milton Keynes case study is a world-class Smarty City reference, but also it is an ideal blueprint for a generic 'Solution DevOps Ecosystem'.
This is a system I define as a superset of DevOps best practices, the same core methods of Continuous Delivery et al, but with the scope abstracted to a level of Solutions, not just software. Where software development units are the 'line items' in IT delivery, sometimes the requirements are as simple as providing email, no new software required.
Meeting all of these needs is the process of Solution Design, and you can utilize the same practices of User Stories, Roadmaps, Sprints et al, to improve the speed and quality in the same way you can do for software. Indeed because it's based on software it's a direct interpretation, and you can further accelerate the Solution Design through the use of a patterns-based, Model-Driven approach, principles extended from software development as well.
As a core capability it can be reused by many types of organizations for many types of scenarios. Milton Keynes applies to a Smart City context but IT companies could also employ it as a pre-sales, consultative selling model, an ability to design and price new solution proposals for potential clients faster, leveraging the ecosystem component to build a Channel Partner program.
How MK:Smart is powered by the BT "Cloud of Clouds" platform is explored in this TMF case study (including this detailed presentation), and in conjunction with the further case study resources available through the associated Catalyst project innovation, the project offers a detailed capability blueprint for a City Platform Model, an implementation of ‘DERA‘, the TMF design framework for a Digital Ecosystem Platform Model.
At a headline level MK:Smart defines a City Platform Model comprised:
- Cloud Ecosystem Enablement Platform
- Apps Store Data Hub
- API and Identity Service Architecture
Cloud Ecosystem Enablement Platform
MK:Smart is powered through a BT managed implementation of an combination of vendor offerings from Infonova and Cloudsoft, a combination that integrates an 'Digital Ecosystem Enablement Platform' with a Cloud Management Platform. Ecosystem Enablement refers to the high level business processes that facilitate the marketplace itself, such as:
- On boarding workflows for new apps and vendors.
- Multi-Tenant Product Catalogue - Enable vendors to directly on board their own internal products as well as consume wholesale offers from partner providers.
- Packaging solutions for specific markets, such as B2C Consumer Services, IoT Business and Enterprise and Wholesale Revenue Management. This can be achieved through 'mash-ups' of Digital Services, composite data models based on feeds from multiple other data sources.
- Order collection, service provisioning, mediation, rating and billing, invoicing and payments, etc. as well as critically the revenue allocation that underpins multi-party business model.
Cloud Management Platform
The role of Cloudsoft in conjunction with Infonova is an especially powerful vendor pairing to highlight. As a 'Cloud Management Platform' Cloudsoft enables the automated delivery of the underlying IT infrastructure services, that enable all of these higher level business functions. This includes the provisioning and deployment of new virtual resources in response to capacity demand, implemented through the core engine that enables configurations of software to be defined through some form of template creation process, married with the ability to execute these templates across multiple Cloud providers.
Infonova integrates this IaaS orchestration into their Digital Service billing environment and so it too can be part of the resources that are monitored via SLA Management methods, and also included into service packaging for onward delivery to new clients too.
Apps Store City Data Hub
The Apps Store element of the model can be further decomposed into a number of key Capabilities:
- A SandBox Developers Environment
- Onboarding workflows for new apps
- Open Data Store
- Big Data IoT Feeds
It also acts as an overall unifying architecture, an 'information spine' that aggregates all the sensor data to make it usable to the higher level apps, an especially powerful enabling approach for the core audience of software developers, providing them a virtual toolbox of every app component and data feed they may need to creative build a new type of Digital City app.
This is an extremely granular level of enablement. For example the combination of API and SLA systems, with IoT open data feeds from parking meters, means developers can create different classes of service within their app, ones based on the different data sets that are published.
API and Identity Service Architecture
These capabilities are combined with another lynchpin that unlocks Developer innovation, the API and Identity service architecture. Again, this refers to this core functionality being built into the Platform, and made accessible 'as a Service' to the community.
Common Identity functions enables the Compliance that is a critical requirement for the public sector, a modular approach that means they can plug in Identity Provider services aligned to and compliant with UK requirements like the Identity Assurance program. APIs are intertwined in that they too need to request access permissions, albeit as a proxy, but this means the same core Authentication and Authorization process must still be conducted.
Baking this into the Platform frees Developers from this level of detail, especially so since it is a mandated requirement, it is pointless for them to reinvent the wheel, the essence of the modular PaaS - Platform as a Service approach. Identity and APIs are one of these PaaS level components.
Ecosystem Role Models
An Ecosystem is formed through 'Actors' playing 'Roles', and implementation of a DevOps solutioning community means these are formed:
- As part of a Continuous Delivery process. Testing is a backbone process and can be applied across the whole solution scope. In their white paper Continuous Testing for Continuous Delivery CA defines the role of Testing within an overall Continuous Delivery pipeline.
- Product Owners. DevOps emphasizes an agile, modular team approach vs organizational hierarchy, that is Organized around Business Capabilities, encouraging lifetime ownership of Products from cradle to grave.
In this excellent decomposition of the Roles and Responsibilities for DevOps Teams the author identifies Ecosystem Roles including:
- Product Owner/Product Manager
- Data scientists
The abstraction to a Solution DevOps approach is simply to allow these Roles to be fulfilled by multiple organizations forming the Ecosystem. For example 'Tester' could be abstrated to 'Testing-as-a-Service Provider', to reflect the much larger capacity being applied but for the same purpose.
High Performance DevOps
It is also formed through defining the core business processes it is intended to fulfil that are essential to its commercial success. For example a key capability that Infonova builds into their platform is 'Vendor Onboarding', and 'Product Testing and Certification' may be an essential stage gate process to approve the developer into the community, and the Product Owner has responsibility for overseeing this among many other PLM (Product Lifecycle Management) procedures that are required for ecosystem participation.
Lifecycle stage-gates define Quality goals and thus the High Performance goals that the platform owner and community want to achieve - For example fast production of client proposals to close more deals, and high quality test & implementation onboarding workflows to ensure delivery is smooth and fast too.
User Stories and Solution Canvas Design
The success steps required to achieve these process goals can be defined into the Ecosystem, as can User Stories and other Business Model dimensions. For example MK:Smart defines a number of user scenarios based around the Developer innovators, identifying Roles and Goals like:
- As a 'Citizen API Developer', I want to ensure platform performance so that I can provide high performance APIs.
- As an Application Developer or Data Aggregator I want to have rich sharing-based pricing models, so that I can use paid data sources under a revenue sharing model.
- As a City Authority I want to offer a robust Data Hub Service, so that I can Guarantee the delivery of data to support my customers applications.
These User Stories can form part of a 'Solution Canvas' design, a Business Model Canvas tailored for these scenarios, populated by the User Stories and the Business Model dynamics they describe, as well as other Requirements gathered through Agile analysis.
Critically as the image demonstrates it identifies the specific Cloud Capabilities needed to support these goals, such as End to End SLA Management of API Data Feeds for example. These are the types of Capabilities that the Infonova/Cloudsoft combination make possible, and so they highlight these accordingly on their portion of the business model canvas.
Ecosystem Design Tools
In conclusion this approach highlights the core value of tools like the TMF CurateFx service, described in this previous blog.
This specifically caters for all of the steps described above, literally providing an 'Ecosystem Planning Tool', where you can quickly generate transformation roadmaps, articulated through Solution Canvas Designs and Ecosystem Role Model blueprints.