INTRODUCING SOA AND WORKFLOW MODELING TO NON- TECHNICAL STUDENTS Bruce J. Neubauer University of...

Post on 19-Dec-2015

218 views 3 download

Tags:

Transcript of INTRODUCING SOA AND WORKFLOW MODELING TO NON- TECHNICAL STUDENTS Bruce J. Neubauer University of...

INTRODUCING SOA AND WORKFLOW MODELING TO NON-TECHNICAL

STUDENTS

Bruce J. Neubauer

University of South Florida

Paper is intended to be a contribution to Pedagogy and to MIS

Generalist managers need to understand some implications of software engineering.

Programmers increasingly have reason to understand business processes.

Convergent engineering is the concurrent design of software applications and the business processes supported. See David Taylor.

Familiar Benefits of Modular Design of Software Applications

“Divide and conquer” approach to complexity Facilitates coordination of team members Project easier to document and comprehend Opportunities for code reuse Application easier to maintain

Traditional Distributed Applications

Remote procedure calls across local networks

Calls to DBMS’s within organizations. CORBA DCOM

CORBA Standards

Source: Wikipedia.com

Web Services Standards

Source: Wikipedia.com

Web Services Standards

Built on Internet protocols Facilitate creation of distributed applications

for the Internet and intranets Generally do not hold state Tend to be slow because of overhead

required by use of SOAP and XML Used to implement Service Oriented

Architectures

Service-oriented Architecture (SOA)

Distributed systems in which some of the modules of software are Web Services

Involves the concept of SERVICES, that is not necessarily intuitive to either programmers or to business analysts

Service-oriented Architecture (SOA)

As I understand it, the design goal is not only to design the software code, but to integrate the design of business processes into the design of the software code.

Blurs the distinction between (business) analysis and design

The goal is convergent engineering as envisioned by David Taylor

Business Process Modeling Language (BPML) is a meta-language for the modeling of business processes, just as XML is a meta-language for the modeling of business data. BPML was a proposed language, that has been dropped in favor of BPEL4WS.

Source: Wikipedia.com

Business Process Execution Language (BPEL)

BPEL's focus on modern business processes,

BPEL uses Web services BPEL is an orchestration language Supports “programming in the large”

Orchestration and Choreography

Workflow Design

What software permits visual modeling of business processes and outputs BPEL? AquaLogic (formerly FuegoBPM)

The Interface is Intuitive

Business Process Change: A Manager's Guide to Improving, Redesigning, and Automating Processes (2002)

Simple Business Process Model

Convergent Engineering

We are designing both business processes and the software that automates processes

We define Roles, Rules and Activities We identify unconditional and conditional

paths between activities We identify sub processes to address

complexity

Convergent Design

Who are the actors (roles) in this business process?

What activies must be performed in what order?

Under what circumstances must conditional paths be possible?

What might we outsource using Web Services?

Web Services and SOA

An activity can be implemented as a Web service and outsourced beyond the focal organization.

A Web service may be used to tap into part of the functionality of a legacy system, within or outside of a focal organization.

Business Process Using Multiple Web Services

Verify customer’s credit Verify history of trade in

vehicle Get three finance offers Calculate license plate fee Notify insurance company

Conclusions

There is something important here. BizTalk Server, orchestration, choreography

of Web Services, convergent engineering Service Oriented Architecture On my first effort to teach this, I found the to

actually do the design of business processes.

The BEA software got in the way of learning.