Published Sep 3, 2019

Episode 33: Service Oriented Architecture, Pt.2b

Delve into the complexities of Service-Oriented Architecture as Markus Völter and Eberhard Wolff tackle middleware strategies, process component design, service reuse, and the challenges of simplifying SOA for developers, all while ensuring flexibility and smoothly evolving existing systems.
Episode Highlights
Software Engineering Radio - the podcast for professional software developers logo

Popular Clips

Episode Highlights

  • Standardization

    In the realm of Service-Oriented Architecture (SOA), meta-level standardization plays a crucial role in defining services and their interfaces. emphasizes the importance of agreeing on meta models to describe services, which simplifies the process of standardizing data structures and middleware across an enterprise. However, he notes that achieving standardization at the concrete level is challenging due to varying client requirements and the need for different data views.

    The harmonization of interfaces of data structures will not really work easily in practice, if only because you have to consider versioning and data migration over time.

    ---

    This complexity is compounded by the necessity to accommodate different quality of service requirements, making it difficult to maintain a uniform data structure across all services 1.

       

    Versioning

    Service versioning is a critical strategy for evolving services without disrupting existing systems. explains that once a service is in production, it cannot be easily changed; instead, a new version must be defined and deployed. This approach allows for controlled evolution of services by tracking dependencies and ensuring that outdated versions are only removed when no longer in use.

    We can now, in a controlled manner, evolve services by defining new versions and get rid of the old stuff once we know that nobody's using it anymore.

    ---

    This method ensures that services remain functional and relevant, while also addressing the differing goals of IT departments and business units within an organization 2.

Related Episodes