doc(onboarding): WiP structure added

This commit is contained in:
Stephan Lo 2024-09-16 00:22:11 +02:00
parent 63e809b719
commit 565f0b2744
11 changed files with 475 additions and 78 deletions

View file

@ -1,11 +1,9 @@
---
title: Onboarding [WiP]
title: Onboarding
weight: 1
---
{{% blocks/lead color="dark" %}}
You are new to IPCEI-CIS subproject 'DeveloperFramework' ?
@ -15,89 +13,38 @@ why we think it's the stuff we need to create the DeveloperFramework?
So please feel free to read this Onboarding guide!
{{% /blocks/lead %}}
## Project context
## Platforms
## Storyline of our current project plan (2024)
{{% pageinfo color="info" %}}
Since 2010 we have DevOps. This brings increasing delivery speed and efficiency at scale.
Next we got high cognitive loads for developers.
So we need on top of DevOps an instrumentation to ensure and enforce speed, quality, security in modern, cloud native software development.
{{% /pageinfo %}}
1. We have the ['Edge Developer Framework'](./edgel-developer-framework/)
2. We think the solution for EDF is in relation to ['Platforming' (Digital Platforms)](./platforming/)
1. The next evolution after DevOps
2. Gartner predicts 80% of SWE companies to have platforms in 2026
3. Platforms have a history since roundabout 2019
4. CNCF has a working group which created capabilities and a maturity model
3. Platforms evolve - nowadys there are [Platform Orchestrators](./orchestrators/)
1. Humanitec set up a Reference Architecture
2. There is this 'Orchestrator' thing - declaratively describe, customize and change platforms!
4. Mapping our assumptions to the [CNOE solution](./cnoe/)
1. CNOE is a hot candidate to help and fulfill our platform building
2. CNOE aims to embrace change and customization!
5. [Showtime CNOE](./cnoe-showtime/)
## History
## Please challenge this story!
https://platformengineering.org/blog/the-story-of-platform-engineering
Please do not think this story and the underlying assumptions are carved in stone!
![alt text](image-1.png)
1. Don't miss to further investigate and truely understand [**EDF specification needs**](./edgel-developer-framework/)
2. Don't miss to further investigate and truely understand [**Platform capabilities on top of DevOps**](./platforming/)
3. Don't miss to further investigate and truely understand [**Platform orchestration**](./orchestrators/)
3. Don't miss to further investigate and truely understand [**specific orchestratiing solutions like CNOE**](./cnoe/)
https://martinfowler.com/articles/talk-about-platforms.html
## Your role as 'Framework Engineer' in the Domain Architecture
https://developers.redhat.com/articles/2024/05/06/what-platform-engineering-and-why-do-we-need-it#why_we_need_platform_engineering
Pls be aware of the the following domain and task structure of our mission:
https://orkohunter.net/blog/a-brief-history-of-platform-engineering
https://softwareengineeringdaily.com/2020/02/13/setting-the-stage-for-platform-engineering/
![](./conclusio/images/modern.png)
### DevOps, Cloud Native, and the Rise of Platform Engineering
https://www.linkedin.com/pulse/evolution-platform-engineering-gaurav-goel
## CNCF Working group / White paper
--> porfolio
### Platform definition / essence
https://medium.com/@bijit211987/what-is-platform-engineering-and-how-it-reduce-cognitive-load-on-developers-ac7805603925
#### Ontology: What is 'Platform' (Digital Platform) --> Fowler / Thoughtworks
https://martinfowler.com/articles/talk-about-platforms.html
##### What is a 'Platform' anyway?
> Words are hard, it seems. Platform is just about the most ambiguous term we could use for an approach that is super-important for increasing delivery speed and efficiency at scale. Hence the title of this article, here is what Ive been talking about most recently.
\
Definitions for software and hardware platforms abound, generally describing an operating environment upon which applications can execute and which provides reusable capabilities such as file systems and security.
\
Zooming out, at an organisational level a digital platform has similar characteristics - an operating environment which teams can build upon to deliver product features to customers more quickly, supported by reusable capabilities.
\
A digital platform is a foundation of self-service APIs, tools, services, knowledge and support which are arranged as a compelling internal product. Autonomous delivery teams can make use of the platform to deliver product features at a higher pace, with reduced co-ordination.
#### myths :-)
https://cloud.google.com/blog/products/application-development/common-myths-about-platform-engineering?hl=en
### Platform Teams
https://platformengineering.org/blog/how-to-build-your-platform-engineering-team
#### in comparison: devops vs sre vs platform
https://www.qovery.com/blog/devops-vs-platform-engineering-is-there-a-difference/
![alt text](image.png)
## Internal Developer Platforms
--> portfolio cont'd
## Platform Orchestrator
--> dynamic configuration
Humanitec, massdriver, CNOE, Kratix, ... (?) ...
## Reference Architecture
## Developer Framework Architecture
## Developer Framework Project Epics & Use Cases

View file

@ -0,0 +1,93 @@
---
title: CNOE Showtime
weight: 50
---
## Project context
## Platforms
{{% pageinfo color="info" %}}
Since 2010 we have DevOps. This brings increasing delivery speed and efficiency at scale.
Next we got high cognitive loads for developers.
So we need on top of DevOps an instrumentation to ensure and enforce speed, quality, security in modern, cloud native software development.
{{% /pageinfo %}}
## History
https://platformengineering.org/blog/the-story-of-platform-engineering
![alt text](image-1.png)
https://martinfowler.com/articles/talk-about-platforms.html
https://developers.redhat.com/articles/2024/05/06/what-platform-engineering-and-why-do-we-need-it#why_we_need_platform_engineering
https://orkohunter.net/blog/a-brief-history-of-platform-engineering
https://softwareengineeringdaily.com/2020/02/13/setting-the-stage-for-platform-engineering/
### DevOps, Cloud Native, and the Rise of Platform Engineering
https://www.linkedin.com/pulse/evolution-platform-engineering-gaurav-goel
## CNCF Working group / White paper
--> porfolio
### Platform definition / essence
https://medium.com/@bijit211987/what-is-platform-engineering-and-how-it-reduce-cognitive-load-on-developers-ac7805603925
#### Ontology: What is 'Platform' (Digital Platform) --> Fowler / Thoughtworks
https://martinfowler.com/articles/talk-about-platforms.html
##### What is a 'Platform' anyway?
> Words are hard, it seems. Platform is just about the most ambiguous term we could use for an approach that is super-important for increasing delivery speed and efficiency at scale. Hence the title of this article, here is what Ive been talking about most recently.
\
Definitions for software and hardware platforms abound, generally describing an operating environment upon which applications can execute and which provides reusable capabilities such as file systems and security.
\
Zooming out, at an organisational level a digital platform has similar characteristics - an operating environment which teams can build upon to deliver product features to customers more quickly, supported by reusable capabilities.
\
A digital platform is a foundation of self-service APIs, tools, services, knowledge and support which are arranged as a compelling internal product. Autonomous delivery teams can make use of the platform to deliver product features at a higher pace, with reduced co-ordination.
#### myths :-)
https://cloud.google.com/blog/products/application-development/common-myths-about-platform-engineering?hl=en
### Platform Teams
https://platformengineering.org/blog/how-to-build-your-platform-engineering-team
#### in comparison: devops vs sre vs platform
https://www.qovery.com/blog/devops-vs-platform-engineering-is-there-a-difference/
![alt text](image.png)
## Internal Developer Platforms
--> portfolio cont'd
## Platform Orchestrator
--> dynamic configuration
Humanitec, massdriver, CNOE, Kratix, ... (?) ...
## Reference Architecture
## Developer Framework Architecture
## Developer Framework Project Epics & Use Cases

View file

@ -0,0 +1,93 @@
---
title: CNOE
weight: 20
---
## Project context
## Platforms
{{% pageinfo color="info" %}}
Since 2010 we have DevOps. This brings increasing delivery speed and efficiency at scale.
Next we got high cognitive loads for developers.
So we need on top of DevOps an instrumentation to ensure and enforce speed, quality, security in modern, cloud native software development.
{{% /pageinfo %}}
## History
https://platformengineering.org/blog/the-story-of-platform-engineering
![alt text](image-1.png)
https://martinfowler.com/articles/talk-about-platforms.html
https://developers.redhat.com/articles/2024/05/06/what-platform-engineering-and-why-do-we-need-it#why_we_need_platform_engineering
https://orkohunter.net/blog/a-brief-history-of-platform-engineering
https://softwareengineeringdaily.com/2020/02/13/setting-the-stage-for-platform-engineering/
### DevOps, Cloud Native, and the Rise of Platform Engineering
https://www.linkedin.com/pulse/evolution-platform-engineering-gaurav-goel
## CNCF Working group / White paper
--> porfolio
### Platform definition / essence
https://medium.com/@bijit211987/what-is-platform-engineering-and-how-it-reduce-cognitive-load-on-developers-ac7805603925
#### Ontology: What is 'Platform' (Digital Platform) --> Fowler / Thoughtworks
https://martinfowler.com/articles/talk-about-platforms.html
##### What is a 'Platform' anyway?
> Words are hard, it seems. Platform is just about the most ambiguous term we could use for an approach that is super-important for increasing delivery speed and efficiency at scale. Hence the title of this article, here is what Ive been talking about most recently.
\
Definitions for software and hardware platforms abound, generally describing an operating environment upon which applications can execute and which provides reusable capabilities such as file systems and security.
\
Zooming out, at an organisational level a digital platform has similar characteristics - an operating environment which teams can build upon to deliver product features to customers more quickly, supported by reusable capabilities.
\
A digital platform is a foundation of self-service APIs, tools, services, knowledge and support which are arranged as a compelling internal product. Autonomous delivery teams can make use of the platform to deliver product features at a higher pace, with reduced co-ordination.
#### myths :-)
https://cloud.google.com/blog/products/application-development/common-myths-about-platform-engineering?hl=en
### Platform Teams
https://platformengineering.org/blog/how-to-build-your-platform-engineering-team
#### in comparison: devops vs sre vs platform
https://www.qovery.com/blog/devops-vs-platform-engineering-is-there-a-difference/
![alt text](image.png)
## Internal Developer Platforms
--> portfolio cont'd
## Platform Orchestrator
--> dynamic configuration
Humanitec, massdriver, CNOE, Kratix, ... (?) ...
## Reference Architecture
## Developer Framework Architecture
## Developer Framework Project Epics & Use Cases

View file

@ -1,6 +1,6 @@
---
title: Conclusio
weight: 1
weight: 100
---
## From Devops over Platform to Framework Engineering

View file

Before

Width:  |  Height:  |  Size: 600 KiB

After

Width:  |  Height:  |  Size: 600 KiB

Before After
Before After

View file

@ -0,0 +1,50 @@
---
title: Edge Developer Framework
weight: 1
---
## What are the specifications we know from the IPCEI-CIS Project Portfolio document
> Reference: IPCEI-CIS Project Portfolio
> Version 5.9, November 17, 2023
### DTAG´s IPCEI-CIS Project Portfolio (p.12)
e. Development of DTAG/TSI Edge Developer Framework
* Goal: All developed innovations must be accessible to developer communities in a highly user-friendly and easy way
### Development of DTAG/TSI Edge Developer Framework (p.14)
| capability | major novelties |||
| -- | -- | -- | -- |
| e.1. Edge Developer full service framework (SDK + day1 +day2 support for edge installations) | Adaptive CI/CD pipelines for heterogeneous edge environments | Decentralized and selfhealing deployment and management | edge-driven monitoring and analytics |
| e.2. Built-in sustainabilityoptimization in Edge developer framework | sustainabilityoptimized edge-aware CI/CD tooling | sustainability-optimized configuration management | sustainability-optimized efficient deployment strategies |
| e.3. Sustainable-edgemanagement-optimized user interface for edge developers | sustainabilityoptimized User Interface | Ai-Enabled intelligent experience | AI/ML-based automated user experience testing and optimization |
### DTAG objectives & contributions (p.27)
DTAG will also focus on developing an easy-to-use Edge Developer framework for software
developers to manage the whole lifecycle of edge applications, i.e. for day-0-, day-1- and up to day-2-
operations. With this DTAG will strongly enable the ecosystem building for the entire IPCEI-CIS edge to
cloud continuum and ensure openness and accessibility for anyone or any company to make use and
further build on the edge to cloud continuum. Providing the use of the tool framework via an open-sourceapproach will further reduce entry barriers and enhance the openness and accessibility for anyone or
any organization (see innovations e.).
### WP Deliverables (p.170)
e.1 Edge developer full-service framework
This tool set and related best
practices and guidelines will
adapt, enhance and further
innovate DevOps principles and
their related, necessary
supporting technologies
according to the specific
requirements and constraints
associated with edge or edgecloud development, in order to
keep the healthy and balanced
innovation path on both sides,
the (software) development side
and the operations side in the
field of DevOps.

View file

@ -0,0 +1,93 @@
---
title: Orchestrators
weight: 10
---
## Project context
## Platforms
{{% pageinfo color="info" %}}
Since 2010 we have DevOps. This brings increasing delivery speed and efficiency at scale.
Next we got high cognitive loads for developers.
So we need on top of DevOps an instrumentation to ensure and enforce speed, quality, security in modern, cloud native software development.
{{% /pageinfo %}}
## History
https://platformengineering.org/blog/the-story-of-platform-engineering
![alt text](image-1.png)
https://martinfowler.com/articles/talk-about-platforms.html
https://developers.redhat.com/articles/2024/05/06/what-platform-engineering-and-why-do-we-need-it#why_we_need_platform_engineering
https://orkohunter.net/blog/a-brief-history-of-platform-engineering
https://softwareengineeringdaily.com/2020/02/13/setting-the-stage-for-platform-engineering/
### DevOps, Cloud Native, and the Rise of Platform Engineering
https://www.linkedin.com/pulse/evolution-platform-engineering-gaurav-goel
## CNCF Working group / White paper
--> porfolio
### Platform definition / essence
https://medium.com/@bijit211987/what-is-platform-engineering-and-how-it-reduce-cognitive-load-on-developers-ac7805603925
#### Ontology: What is 'Platform' (Digital Platform) --> Fowler / Thoughtworks
https://martinfowler.com/articles/talk-about-platforms.html
##### What is a 'Platform' anyway?
> Words are hard, it seems. Platform is just about the most ambiguous term we could use for an approach that is super-important for increasing delivery speed and efficiency at scale. Hence the title of this article, here is what Ive been talking about most recently.
\
Definitions for software and hardware platforms abound, generally describing an operating environment upon which applications can execute and which provides reusable capabilities such as file systems and security.
\
Zooming out, at an organisational level a digital platform has similar characteristics - an operating environment which teams can build upon to deliver product features to customers more quickly, supported by reusable capabilities.
\
A digital platform is a foundation of self-service APIs, tools, services, knowledge and support which are arranged as a compelling internal product. Autonomous delivery teams can make use of the platform to deliver product features at a higher pace, with reduced co-ordination.
#### myths :-)
https://cloud.google.com/blog/products/application-development/common-myths-about-platform-engineering?hl=en
### Platform Teams
https://platformengineering.org/blog/how-to-build-your-platform-engineering-team
#### in comparison: devops vs sre vs platform
https://www.qovery.com/blog/devops-vs-platform-engineering-is-there-a-difference/
![alt text](image.png)
## Internal Developer Platforms
--> portfolio cont'd
## Platform Orchestrator
--> dynamic configuration
Humanitec, massdriver, CNOE, Kratix, ... (?) ...
## Reference Architecture
## Developer Framework Architecture
## Developer Framework Project Epics & Use Cases

View file

@ -0,0 +1,93 @@
---
title: Platforming
weight: 2
---
![](./platform-tooling-humanitec-platform-report-2024.PNG)
## Project context
## Platforms
{{% pageinfo color="info" %}}
Since 2010 we have DevOps. This brings increasing delivery speed and efficiency at scale.
Next we got high cognitive loads for developers.
So we need on top of DevOps an instrumentation to ensure and enforce speed, quality, security in modern, cloud native software development.
{{% /pageinfo %}}
## History
https://platformengineering.org/blog/the-story-of-platform-engineering
![alt text](image-1.png)
https://martinfowler.com/articles/talk-about-platforms.html
https://developers.redhat.com/articles/2024/05/06/what-platform-engineering-and-why-do-we-need-it#why_we_need_platform_engineering
https://orkohunter.net/blog/a-brief-history-of-platform-engineering
https://softwareengineeringdaily.com/2020/02/13/setting-the-stage-for-platform-engineering/
### DevOps, Cloud Native, and the Rise of Platform Engineering
https://www.linkedin.com/pulse/evolution-platform-engineering-gaurav-goel
## CNCF Working group / White paper
--> porfolio
### Platform definition / essence
https://medium.com/@bijit211987/what-is-platform-engineering-and-how-it-reduce-cognitive-load-on-developers-ac7805603925
#### Ontology: What is 'Platform' (Digital Platform) --> Fowler / Thoughtworks
https://martinfowler.com/articles/talk-about-platforms.html
##### What is a 'Platform' anyway?
> Words are hard, it seems. Platform is just about the most ambiguous term we could use for an approach that is super-important for increasing delivery speed and efficiency at scale. Hence the title of this article, here is what Ive been talking about most recently.
\
Definitions for software and hardware platforms abound, generally describing an operating environment upon which applications can execute and which provides reusable capabilities such as file systems and security.
\
Zooming out, at an organisational level a digital platform has similar characteristics - an operating environment which teams can build upon to deliver product features to customers more quickly, supported by reusable capabilities.
\
A digital platform is a foundation of self-service APIs, tools, services, knowledge and support which are arranged as a compelling internal product. Autonomous delivery teams can make use of the platform to deliver product features at a higher pace, with reduced co-ordination.
#### myths :-)
https://cloud.google.com/blog/products/application-development/common-myths-about-platform-engineering?hl=en
### Platform Teams
https://platformengineering.org/blog/how-to-build-your-platform-engineering-team
#### in comparison: devops vs sre vs platform
https://www.qovery.com/blog/devops-vs-platform-engineering-is-there-a-difference/
![alt text](image.png)
## Internal Developer Platforms
--> portfolio cont'd
## Platform Orchestrator
--> dynamic configuration
Humanitec, massdriver, CNOE, Kratix, ... (?) ...
## Reference Architecture
## Developer Framework Architecture
## Developer Framework Project Epics & Use Cases

View file

Before

Width:  |  Height:  |  Size: 904 KiB

After

Width:  |  Height:  |  Size: 904 KiB

Before After
Before After

Binary file not shown.

After

Width:  |  Height:  |  Size: 723 KiB

View file

@ -0,0 +1,28 @@
## Storyline
1. We have the 'Developer Framework'
2. We think the solution for DF is 'Platforming' (Digital Platforms)
1. The next evolution after DevOps
2. Gartner predicts 80% of SWE companies to have platforms in 2026
3. Platforms have a history since roundabout 2019
4. CNCF has a working group which created capabilities and a maturity model
3. Platforms evolve - nowadys there are Platform Orchestrators
1. Humanitec set up a Reference Architecture
2. There is this 'Orchestrator' thing - declaratively describe, customize and change platforms!
4. Mapping our assumptions to solutions
1. CNOE is a hot candidate to help and fulfill our platform building
2. CNOE aims to embrace change and customization!
5. Showtime CNOE
## Challenges
1. Don't miss to further investigate and truely understand **DF needs**
2. Don't miss to further investigate and truely understand **Platform capabilities**
3. Don't miss to further investigate and truely understand **Platform orchestration**
3. Don't miss to further investigate and truely understand **CNOE solution**
## Architecture