Introduction to Service Software Engineering



Similar documents
Business Process Management The Must Have Enterprise Solution for the New Century

SOA + BPM = Agile Integrated Tax Systems. Hemant Sharma CTO, State and Local Government

Application Overhaul. Key Initiative Overview

SOA and Cloud in practice - An Example Case Study

ERP. Key Initiative Overview

Business-Driven Software Engineering Lecture 3 Foundations of Processes

Service Oriented Architecture(SOA)

SOA Myth or Reality??

FUJITSU Software Interstage Business Operations Platform: A Foundation for Smart Process Applications

Extend the value of your core business systems.

Service-Oriented Architecture: Analysis, the Keys to Success!

Do Your IT Housekeeping with UC4 Workload Automation Suite

Service Oriented Architecture and Its Advantages

Introduction to SOA governance and service lifecycle management.

CONDIS. IT Service Management and CMDB

Outline SOA. Properties of SOA. Service 2/19/2016. Definitions. Comparison of component technologies. Definitions Component technologies

26/10/2015. Enterprise Information Systems. Learning Objectives. System Category Enterprise Systems. ACS-1803 Introduction to Information Systems

Impact of Service Oriented Architecture on ERP Implementations in Technical Education

Service-Oriented Architecture Maturity Self-Assessment Report. by Hewlett-Packard Company. Developed for Shrinivas Yawalkar Yawalkar of CTS

An Overview of. BPM and SOA In Practice. Paul C. Brown, Principal Software Architect TIBCO Software Inc. All Rights Reserved..

Cloud Computing & Service Oriented Architecture An Overview

BEA BPM an integrated solution for business processes modelling. Frederik Frederiksen Principal PreSales Consultant BEA Systems

WHITE PAPER: STRATEGIC IMPACT PILLARS FOR EFFICIENT MIGRATION TO CLOUD COMPUTING IN GOVERNMENT

Realize More Success with Software-plus-Services. Cloud-based software from Microsoft Dynamics ERP

Business Process Management and Cloud Computing

Getting Started with Service- Oriented Architecture (SOA) Terminology

Service-Oriented Integration: Managed File Transfer within an SOA (Service- Oriented Architecture)

The Private Cloud Your Controlled Access Infrastructure

SOA, Cloud Computing & Semantic Web Technology: Understanding How They Can Work Together. Thomas Erl, Arcitura Education Inc. & SOA Systems Inc.

Business Process Management in Manufacturing: From Process to Value

How To Understand The Software Process

Service Oriented Patterns and Anti-patterns

Introduction to Service Oriented Architectures (SOA)

Applying Business Architecture to the Cloud

SAP ERP OPERATIONS SOLUTION OVERVIEW

L Impatto della SOA sulle competenze e l organizzazione ICT di Fornitori e Clienti

The Service, The Cloud & The Method: The Connection Points

InforCloudSuite. Business. Overview INFOR CLOUDSUITE BUSINESS 1

SOACertifiedProfessional.Braindumps.S90-03A.v by.JANET.100q. Exam Code: S90-03A. Exam Name: SOA Design & Architecture

Methods and tools for data and software integration Enterprise Service Bus

2 (18) - SOFTWARE ARCHITECTURE Service Oriented Architecture - Sven Arne Andreasson - Computer Science and Engineering.

The Integration Between EAI and SOA - Part I

VBLOCK SOLUTION FOR SAP APPLICATION SERVER ELASTICITY

Service Oriented Architecture (SOA) An Introduction

Cross-Domain Service Management vs. Traditional IT Service Management for Service Providers

mysap ERP FINANCIALS SOLUTION OVERVIEW

Service Oriented Architecture Based Integration. Mike Rosen CTO, AZORA Technologies, Inc.

An Oracle White Paper October Maximize the Benefits of Oracle SOA Suite 11g with Oracle Service Bus

ACS-1803 Introduction to Information Systems. Enterprise Information Systems. Lecture Outline 6

Business Intelligence Meets Business Process Management. Powerful technologies can work in tandem to drive successful operations

SaaS, PaaS & TaaS. By: Raza Usmani

Sage ERP I White Paper. An ERP Guide to Driving Efficiency

IBM SmartCloud Workload Automation

Epicor Financial Services Overview. Business without Barriers

CT30A8901 Chapter 10 SOA Delivery Strategies

<Insert Picture Here> Integrating your On-Premise Applications with Cloud Applications

Information Systems in the Enterprise

1) A complete SCM solution includes customers, service providers and partners. Answer: TRUE Diff: 2 Page Ref: 304

SOA Governance and the Service Lifecycle

Approaching SaaS Integration with Data Integration Best Practices and Technology

Turn Your Business Vision into Reality with Microsoft Dynamics NAV. icepts Technology Group, Inc. Dynamics NAV Gold ERP Partner

BPM Perspectives Positioning and Fitment drivers

Service-Oriented Architecture and its Implications for Software Life Cycle Activities

QAD ENTERPRISE APPLICATIONS

Optimizing Service Levels in Public Cloud Deployments

Virtualization. Key Initiative Overview

Cloud Computing for Architects

Microsoft SOA Roadmap

Retail Case Study COMPANY OVERVIEW CHALLENGES

FREQUENTLY ASKED QUESTIONS. Oracle Applications Strategy

About ERP Software Whitepaper

Cloud Computing. Key Initiative Overview

Software as a Service Business Model (Introducing SOA and Web Service)

Reaching for the cloud: the potential and the reality of using cloud-based platforms. Speaker: Michael Michaelides October 22, 2015

How CFOs and their teams are supercharging financial reporting

IBM WebSphere application integration software: A faster way to respond to new business-driven opportunities.

HP SOA Systinet software

Achieving business agility and cost optimization by reducing IT complexity. The value of adding ESB enrichment to your existing messaging solution

How To Understand A Services-Oriented Architecture

Improve business agility with WebSphere Message Broker

Realizing business flexibility through integrated SOA policy management.

Strategic Solutions that Make Your Work Easier. Projects Made Easier Decisions Made Easier Business Made Easier

Legacy Application Modernization

Chapter 15. Web services development lifecycle

I D C V E N D O R S P O T L I G H T

What are the systems to implement for Public Sector?

Sage 300 Distribution

Service Oriented Architecture

Business Administration Prof. Dr. J. Nonhoff. Content. Business Administration Prof. Dr. J. Nonhoff. Introduction ERP Vendors/ Architecture SAP

Cloud Solutions for Bigger Business

Business Process Management Tampereen Teknillinen Yliopisto

Service Oriented Architecture (SOA) Architecture, Governance, Standards and Technologies

WHAT IS BPEL AND WHY IS IT SO IMPORTANT TO MY BUSINESS?

IBM Information Management

EnergySync and AquaSys. Technology and Architecture

H4 Tackling the Challenges of Implementing Emerging HR Technologies

Transcription:

Ingegneria del Software Orientata ai Servizi Corso di Laurea Magistrale in Informatica Introduction to Service Software Engineering Davide Rossi Dipartimento di Informatica Università di Bologna

Rationale Building software systems is complex Building large software systems is more complex Building large software system integrating functions provided by multiple organizations is even more complex

Managing complexity How do we face complexity? Abstractions Models

Abstraction The process of formulating generalized ideas or concepts by extracting common qualities from specific examples...the entire history of software engineering is one of rising levels of abstraction (for abstraction is the primary way we as humans deal with complexity) [G. Booch]

Model A representation of the system under analysis that answers as the system does for a given set of questions

Model A representation of the system under analysis that answers as the system does for a given set of questions All models are in simulacra, that is, simplified reflections of reality, but, despite their inherent falsity, they are nevertheless extremely useful

Model

Our key ingredients In this course we will learn how to manage the complexities of large distributed system (and the organizations they support) using two main abstractions: Services Processes

Services and processes Services are the structural... Processes are the behavioral... cornerstones around which we design our systems Services expose functions realized by processes Processes implement services (potentially using other services)

Services and processes Services will be discussed in the context of Service-Oriented Architectures (SOAs) Processes will be discussed in the context of Business Process Management (BPM) We will analyze SOA and BPM from a conceptual and from a technological point of view

Software architecture The software architecture of a program or computing system is the structure or structures of the system, which comprise software elements, the externally visible properties of those elements, and the relationships among them. Bass, Clements, Kazman - Software Architecture in Practice

Software architecture A software architecture defines a structure that organizes the software elements and the resources of a software system. Software elements and resources are represented by subsystems. In a given software architecture, these subsystems have specific responsibilities and relationships to other subsystems.

Software architecture The set of principal design decisions governing a system. Taylor, Medvidovic, Dashofy Software Architecture

Software architecture All architecture is design but not all design is architecture. Architecture represents the significant design decisions that shape a system, where significant is measured by cost of change. Grady Booch

Service-Oriented Architectures One of the great buzzwords of the beginning of the 21 st century A concept impacting both IT and management Several (broad) definitions: almost every distributed system can fit one of these

The SOA mandate All teams will henceforth expose their data and functionality through service interfaces. Teams must communicate with each other through these interfaces. There will be no other form of interprocess communication allowed: no direct linking, no direct reads of another team s data store, no shared-memory model, no back-doors whatsoever. The only communication allowed is via service interface calls over the network.

The SOA mandate It doesn t matter what technology they use. HTTP, Corba, Pub-Sub, custom protocols doesn t matter. [...] All service interfaces, without exception, must be designed from the ground up to be externalizable. That is to say, the team must plan and design to be able to expose the interface to developers in the outside world. No exceptions. Anyone who doesn t do this will be fired. Jeff Bezos

The SOA mandate This effort was still underway when I left to join Google in mid-2005, but it was pretty far advanced. From the time Bezos issued his edict through the time I left, Amazon had transformed culturally into a company that thinks about everything in a servicesfirst fashion. It is now fundamental to how they approach all designs, including internal designs for stuff that might never see the light of day externally. Steve Yegge

OASIS OASIS is a nonprofit consortium that drives the development, convergence and adoption of open standards for the global information society. OASIS promotes industry consensus and produces worldwide standards for security, Internet of Things, cloud computing, energy, content technologies, emergency management, and other areas. OASIS open standards offer the potential to lower cost, stimulate innovation, grow global markets, and protect the right of free choice of technology. OASIS members broadly represent the marketplace of public and private sector technology leaders, users and influencers. The consortium has more than 5,000 participants representing over 600 organizations and individual members in more than 65 countries.

The Open Group The Open Group is a global consortium that enables the achievement of business objectives through IT standards. With more than 500 member organizations, we have a diverse membership that spans all sectors of the IT community customers, systems and solutions suppliers, tool vendors, integrators and consultants, as well as academics and researchers to: Capture, understand and address current and emerging requirements, and establish policies and share best practices Facilitate interoperability, develop consensus, and evolve and integrate specifications and open source technologies Offer a comprehensive set of services to enhance the operational efficiency of consortia Operate the industry s premier certification service

Service-Oriented Architecture The SOA Source Book (Open Group) Service-Oriented Architecture (SOA) is an architectural style that supports service-orientation. Service-orientation is a way of thinking in terms of services and service-based development and the outcomes of services. A service: Is a logical representation of a repeatable business activity that has a specified outcome (e.g., check customer credit, provide weather data, consolidate drilling reports) Is self-contained May be composed of other services Is a black box to consumers of the service

Service-Oriented Architecture Reference Model for SOA (OASIS) Service Oriented Architecture (SOA) is a paradigm for organizing and utilizing distributed capabilities that may be under the control of different ownership domains. [...] In SOA, services are the mechanism by which needs and capabilities are brought together.

Enterprise applications Enterprise applications include: Manufacturing: Engineering, bills of material, scheduling, capacity, workflow management, quality control, cost management, manufacturing process, manufacturing projects, manufacturing flow; Supply chain management: Order to cash, inventory, order entry, purchasing, product configurator, supply chain planning, supplier scheduling, inspection of goods, claim processing, commission calculation; Financials: General ledger, cash management, accounts payable, accounts receivable, fixed assets; Projects: Costing, billing, time and expense, activity management; Human resources: Human resources, payroll, training, time and attendance, rostering, benefits; Customer relationship management: Sales and marketing, commissions, service, customer contact and call center support; Data warehouse and various self-service interfaces for customers, suppliers, and employees. wikipedia

Early architectures POM DB Purchase Order Management Human Resources Application OS HR DB OS WM FS Warehouse Management OS

Early architectures POM DB Purchase Order Management Human Resources Application OS HR DB Redundancy of data OS WM FS Warehouse Management OS

Enterprise Resource Planning Systems An ERP is an enterprise-wide information system designed to coordinate all the resources, information, and activities needed to complete business processes such as order fulfillment or billing. ERPs are commonly based on an integrated and consistent database.

Back to the future At around year 2000, stand-alone Supply Chain Management Systems and Customer Relationship Management Systems start to be deployed along existing ERP. These new systems were not integrated with the ERP bringing back the old integration problems.

Siloed enterprise applications GUI GUI GUI Application logic of CRM system CRM DB Application logic of SCM system SCM DB Application logic of ERP system ERP DB OS OS OS

Enterprise Application Integration Enterprise application integration (EAI) is the process of linking siloed applications in order to simplify and automate business processes. The main challenge is information exchange: data transfer and data transformation. Two main integration patterns: mediation and federation. Two main topologies: hub-and-spoke and bus.

Service-enabled application ERP Enterprise Services ERP system ERP DB OS

Composite Service-based Application Composite Application Composite Application ERP Enterprise Services SCM Enterprise Services CRM Enterprise Services ERP system SCM system CRM system OS OS OS

Enterprise Service Bus ERP System CRM System SCM System HR Management Data Warehouse Inventory Mgmt

Enterprise Service Bus Alternative to point-to-point integration Message routing Content adaptation Mediation (deployment and versioning) Transaction management, security, monitoring, error handling,

The big picture Buyer Place Order Receive Invoice Receive Products Settle Invoice Business-to- Business Processes Human Interaction Workflows Service Interfaces SystemWorkflows/ Composite Applications ServiceLayer M. Weske: BusinessProcessManagement, Springer-VerlagBerlinHeidelberg2007 EnterpriseApplicationIntegration Enterprise Application Integration EAI Adapter ERPSystem SCMSystem CRMSystem Enterprise Applications Data Fig2.26.Businessprocessmanagement landscape

SOA is dead SOA met its demise on January 1, 2009, when it was wiped out by the catastrophic impact of the economic recession. SOA is survived by its offspring: mashups, BPM, SaaS, Cloud Computing, and all other architectural approaches that depend on services. [Anne Thomas Manes, 2009]

Really? Successful SOA (i.e., application rearchitecture) requires disruption to the status quo. SOA is not simply a matter of deploying new technology and building service interfaces to existing applications; it requires redesign of the application portfolio. And it requires a massive shift in the way IT operates.

SOA manifesto Service orientation is a paradigm that frames what you do. Service-oriented architecture (SOA) is a type of architecture that results from applying service orientation. We have been applying service orientation to help organizations consistently deliver sustainable business value, with increased agility and cost effectiveness, in line with changing business needs.

SOA manifesto - values Through our work we have come to prioritize: Business value over technical strategy Strategic goals over project-specific benefits Intrinsic interoperability over custom integration Shared services over specific-purpose implementations Flexibility over optimization Evolutionary refinement over pursuit of initial perfection That is, while we value the items on the right, we value the items on the left more.

SOA manifesto - principles Respect the social and power structure of the organization Recognize that SOA ultimately demands change on many levels The scope of SOA adoption can vary. Keep efforts manageable and within meaningful boundaries Products and standards alone will neither give you SOA nor apply the service orientation paradigm for you

SOA manifesto - principles SOA can be realized through a variety of technologies and standards Establish a uniform set of enterprise standards and policies based on industry, de facto, and community standards Pursue uniformity on the outside while allowing diversity on the inside Identify services through collaboration with business and technology stakeholders

SOA manifesto - principles Maximize service usage by considering the current and future scope of utilization Verify that services satisfy business requirements and goals Evolve services and their organization in response to real use Evolve services and their organization in response to real use At every level of abstraction, organize each service around a cohesive and manageable unit of functionality