aster.cloud aster.cloud
  • /
  • Platforms
    • Public Cloud
    • On-Premise
    • Hybrid Cloud
    • Data
  • Architecture
    • Design
    • Solutions
    • Enterprise
  • Engineering
    • Automation
    • Software Engineering
    • Project Management
    • DevOps
  • Programming
  • Tools
  • About
  • /
  • Platforms
    • Public Cloud
    • On-Premise
    • Hybrid Cloud
    • Data
  • Architecture
    • Design
    • Solutions
    • Enterprise
  • Engineering
    • Automation
    • Software Engineering
    • Project Management
    • DevOps
  • Programming
  • Tools
  • About
aster.cloud aster.cloud
  • /
  • Platforms
    • Public Cloud
    • On-Premise
    • Hybrid Cloud
    • Data
  • Architecture
    • Design
    • Solutions
    • Enterprise
  • Engineering
    • Automation
    • Software Engineering
    • Project Management
    • DevOps
  • Programming
  • Tools
  • About
  • Computing
  • Engineering

Component-Based Development Has Been A Long Time Coming

  • aster_cloud
  • May 16, 2023
  • 4 minute read

The ability to build systems out of reusable and interchangeable parts has been growing for the past 30 years. We are finally getting there with cloud. Expect big changes in the near future.

It was 1991, and I was sitting at yet another software development conference listening to a presentation on a new concept: developing applications from reusable and interchangeable parts or component-based development.


Partner with aster.cloud
for your next big idea.
Let us know here.


cyberpogo

The presenter made compelling comparisons with the manufacturing industry. We don’t build cars from scratch, building each part as we manufacture the car. We build cars from prebuilt components, such as steering systems, engines, drivetrains, and other parts that are often used within other vehicles, including other types of cars and trucks.

It made sense. And I, a C coder at the time, was building everything mostly from scratch. Why couldn’t I build software the same way we manufacture cars?

Component-based development offers a structured approach to building software systems by breaking them down into reusable, self-contained modules known as components. This was a good idea, at least conceptually. 

However, in practice, it was far more difficult to do. There was no standard as to what the components should be as a technology, and common interfaces were nonexistent. Perhaps I just needed to wait 30 years.

A good idea evolves

We did chase this idea. Software development has witnessed a slow but significant shift towards component-based development methodologies, driven by the need for modularity, reusability, and increased efficiency. This happened within many technology trends, including object-oriented development, distributed object-based development, service-oriented architecture, and now cloud computing, containers, and specific cloud services that can be leveraged on demand, such as industry clouds.

Read More  Dynatrace Launches Automationengine To Drive Intelligent Cloud Automation

First, let’s consider a bit of history, which I think is an important part of the story.

Modularity has always been a desirable characteristic in software development, even when I became a new coder in the 1980s. In the early days, developers aimed to break down applications into logical modules to improve code organization and maintainability.

Modules were typically designed to encapsulate specific functionalities and were often built as part of monolithic applications. We only thought about components and modularity within a single application domain. This was core to structured programming, which was trendy at the time.

Component-based development took modularity to the next level by introducing the concept of reusable software components. Components encapsulated both functionality and data, providing well-defined interfaces for interaction with other components or the application that acted as a container (not containers as they are understood today).

In the 1990s, the rise of component-based development frameworks, such as JavaBeans, COM/DCOM, and CORBA, was a reaction to the industry focusing on component-based development and further accelerating the adoption of component-based development. These “frameworks” provided standardized methodologies and tools for building, integrating, and reusing components across different platforms and languages. Developers could now create components that adhered to platform-agnostic interfaces, facilitating interoperability and code reuse through the execution of reusable behaviors accessible using standard APIs.

Although there was a huge amount of interest in component-based development and emerging component standards such as CORBA, this technology largely became a stepping stone to other things that worked better. Others may have had a more positive experience, but I found that building applications using these standards was more costly and much more difficult to deploy and maintain. Epic fail so far.

Read More  Architecting For Database Encryption On Google Cloud

Component-based architectures, such as service-oriented architecture and microservices architecture, emerged as a response to the need for highly scalable and loosely coupled systems. These architectures rely on independent, self-contained components that communicate through well-defined interfaces. By decomposing complex systems into smaller, autonomous components, organizations could indeed achieve agility, scalability, and resilience using SOA approaches. This was really the jumping off point to cloud computing where we are today.

“Are we there yet?”

Today the evolution of component-based development has been fueled by advances in containerization and cloud-native technologies. I won’t dig deep into those now, but I’ve covered this a great deal. Containerization platforms such as Docker and Kubernetes provide a standardized and portable runtime environment for components, enabling easy deployment, scaling, and management. Cloud-native development further extends the concept of components by incorporating cloud services, serverless functions, and APIs as building blocks for component-based applications.

This seems to work much better than previous concepts, but it’s missing a core element: having an inventory of specific and useful components. That may be changing, and I’m now, in 2023, calling out the evolution of components that we’ll likely see explode in 2024.

I’m seeing a huge amount of interest and investment in industry-specific cloud services (industry clouds), which are component analogs. You can leverage sets of supply chain optimization services specifically built for furniture manufacturers, or a derivative trading system that can be used as microservices specific to banks in a particular country. Success now comes from services that are easy to access, use well-defined interfaces, are offered as a service, and most importantly, provide useful services that speed up productivity and innovation.

Read More  Take The 2022 Accelerate State Of DevOps Survey

Component-based development has undergone a remarkable evolution from the early days of modularity to the current era of reusable and scalable software components that are true services. The focus on modularity, reusability, and well-defined interfaces has paved the way to technology that finally works. Perhaps we can now build systems like we build cars—and hopefully even better.

By: David Linthicum
Originally published at InfoWorld

Source: cyberpogo.com


Our humans need coffee too! Your support is highly appreciated, thank you!

aster_cloud

Related Topics
  • Cloud Computing
  • Containers
  • Development
  • InfoWorld
  • Software Development
You May Also Like
View Post
  • Computing
  • Design
  • Engineering
  • Multi-Cloud

Amazing Federated Multicloud Apps

  • June 2, 2023
View Post
  • Engineering

Resolving Deployment Issues With Ts-node And Azure Development Pipelines

  • June 1, 2023
View Post
  • Design
  • Engineering

Four Steps To Managing Your Cloud Logging Costs On A Budget

  • May 31, 2023
View Post
  • Engineering
  • Tools

Red Hat Puts Podman Container Management On The Desktop

  • May 30, 2023
View Post
  • Automation
  • Computing
  • Data

IBM To Help Automate Cloud Data Protection With Acquisition Of Polar Security

  • May 25, 2023
View Post
  • Engineering
  • Practices
  • Tools

Tricentis Launches Quality Engineering Community ShiftSync

  • May 23, 2023
View Post
  • Computing
  • Platforms

Oracle Cloud Infrastructure Adds To Growing List Of Government Approved Cloud Services

  • May 22, 2023
View Post
  • Design
  • Engineering
  • Public Cloud

Kubernetes Costs Less, But Less Than What?

  • May 18, 2023

Stay Connected!
LATEST
  • 1
    Amazing Federated Multicloud Apps
    • June 2, 2023
  • 2
    What’s The Future Of DevOps? You Tell Us. Take The 2023 Accelerate State Of DevOps Survey
    • June 2, 2023
  • 3
    Resolving Deployment Issues With Ts-node And Azure Development Pipelines
    • June 1, 2023
  • 4
    What To Expect From Apple’s WWDC 2023
    • June 1, 2023
  • 5
    What Is Platform Engineering And Why Adopt It In Your Company?
    • June 1, 2023
  • 6
    Four Steps To Managing Your Cloud Logging Costs On A Budget
    • May 31, 2023
  • 7
    Red Hat Puts Podman Container Management On The Desktop
    • May 30, 2023
  • 8
    The Agile Mindset: A Path to Personal Fulfillment and Growth
    • May 30, 2023
  • 9
    G7 2023: The Real Threat To The World Order Is Hypocrisy.
    • May 27, 2023
  • 10
    Build Next-Generation, AI-Powered Applications On Microsoft Azure
    • May 26, 2023
about
Hello World!

We are aster.cloud. We’re created by programmers for programmers.

Our site aims to provide guides, programming tips, reviews, and interesting materials for tech people and those who want to learn in general.

We would like to hear from you.

If you have any feedback, enquiries, or sponsorship request, kindly reach out to us at:

[email protected]
Most Popular
  • 1
    Huawei OceanStor Pacific Scale-Out Storage Tops IO500 Rankings
    • May 26, 2023
  • 2
    MongoDB And Alibaba Cloud Extend Global Partnership
    • May 25, 2023
  • 3
    Tricentis Launches Quality Engineering Community ShiftSync
    • May 23, 2023
  • 4
    Oracle Cloud Infrastructure Adds To Growing List Of Government Approved Cloud Services
    • May 22, 2023
  • 5
    Huawei And Partners Announce Yucatan Wildlife Conservation Findings
    • May 18, 2023
  • /
  • Technology
  • Tools
  • About
  • Contact Us

Input your search keywords and press Enter.