Part 2 Technical Capability Chapter 6 Platform Development Platform development is the implementation of multiple applications or solutions common functions.

Three key factors for platform development:

  • Functionality: Refers to the functionality delivered by the platform, which essentially tells you what the platform can do.
  • Ecosystem: This is the operating environment of the platform, and it is related to everything around the platform.
  • Guiding Principles: This is a set of principles used to guide platform development and architecture.

Functional platforms can be viewed as a set of apis that provide a variety of capabilities that are key to platform development: apis, which provide developers with the ability to manage and access the platform.

Ecosystem An ecosystem that includes users, ownership, management, development, cost, quality, integration, scalability (resilience), and security

Guiding Principles 1. Excellence in quality 2. Excellence in operations 3. Configurability over hard coding (same behavior through inversion of control, external configuration or dynamic operational control like SpringCloud Config) 4. Pursue usability (platform development features should be used as widely as possible) 5. Pursue redundant architectures (redundancy refers to redundancy in performance, data backup, standby servers, etc., for scaling, availability, and reliability) 6. Pursue linear scalability (refers to the system’s resilience to the increase in new users) 7. Avoid platform entanglement: Avoid tighter coupling within the platform with every change to the platform. 8. Avoid platform creep: Refuse to add new features that are inconsistent with the platform’s evolution 9. Keep upgrading to the latest technology