SODDM Service Oriented Design and Development Method René van Donselaar Agenda • Introduction • PDD • Related literature • Conclusion • Questions Introduction • Service Oriented Architecture Applications Introduction • Service Oriented Architecture Deals with: • Growing application portfolio • Increased complexity • Redundancy Applications Introduction • Service Oriented Architecture Deals with: • Growing application portfolio • Increased complexity • Redundancy • Data interchange • Enterprise collaboration Applications Java .NET Ruby Python Introduction • Service Oriented Architecture Components Applications Java .NET Ruby Python Introduction • Service Oriented Architecture Services Components Applications Java .NET Ruby Python Introduction Business processes Business process Business process Business process Services Components Applications Java .NET Ruby Python Introduction • Service Oriented Architecture Benefits • Loose coupling • Reusability • Composability • Enterprise collaboration Introduction • Why SODDM? Wrapping old applications is not enough. Applications need to be specifically designed for SOA. Software development methods like Scrum do not cover services. Business alignment. Introduction • SODDM • By Papazoglou and Van den Heuvel (2004) M. Papazoglou Computer Science professor Specialized in Service Science Published over 18 articles related to SOA Over 1400 citations on Service-oriented computing (2003) Introduction • SODDM • By Papazoglou and Van den Heuvel (2004) W.J.A.M. van den Heuvel Information Systems professor Specialized in software service systems Expert in business process management Introduction • What is SODDM? • Service based • Uses an iterative process • Business alignment • Based on RUP, Component-based development and BPM Introduction • SODDM Main phases: • Planning • Analysis and design (A&D) • Construction and testing • Provisioning • Deployment • Execution and monitoring PDD PDD PDD PDD PDD <portType name=”canReceiveA43_PortType”> <operation name=”BookingRegistrationRequest”> <output message=”tns:BookingRegistrationRequest”/> </operation> </portType> PDD <portType name=”canReceiveA43_PortType”> <operation name=”BookingRegistrationRequest”> <output message=”tns:BookingRegistrationRequest”/> </operation> </portType> PDD PDD PDD Related literature • Using Service-Oriented Architecture and Component- Based Development to Build Web Service Applications (Brown at al., 2002). • Web‐service implementation methodology for SOA application (WSIM) (Lee et al., 2006; OASIS, 2005). • Service Oriented Modeling Architecture (SOMA) (Arsanjani et al., 2008). • Developing a Legacy to SOA Migration Method. (Reijnders et al., 2011). WISM • Based on agile development methods • Adapted them for creating services Phases: • Requirements • Analysis • Design • Implementation • Testing • Deployment SOMA • Based on best practises at IBM • Risk driven Phases: • Business modeling & solution management • Identification • Specification • Realization • Implementation • Deployment/monitoring • Management. Conclusion • SOA needs a design and development method in order to create services that align with the business. • SODDM provides an agile based development method that is geared towards managing services and tight business alignment in order to implement a SOA architecture. • SODDM is meant for large scale applications and large enterprises. Questions?