Copyright 2006 Robert J. Glushko
Architecture and Integration
Loose vs Tight Coupling
Web Services and SOA
Co-evolution of technology and business architecture
Assignments and Course Project
What is an architecture?
An "architected" system has an explicit model, in contrast with systems that are implemented incrementally without a "master plan"
Architectures range in abstraction and scope
Architecture reduces the (apparent) complexity of a system and makes it easier to communicate and understand
What are some of the ways in which public sector concerns and priorities differ from those of commerical enterprises?
What is "lock-in" and if "most software business models are based on lock-in" why is this a concern for governments?
Why are many governments endorsing XML?
An important goal for most businesses is increased efficiency through greater automation and "straight through" or "end-to-end" processing of the information that it creates and receives
But even though business processes span multiple departments (or companies) business applications (run by separate departments) may not have been designed to share information with each other
Integration is the controlled sharing of data and business processes among any connected applications and data sources, intra- or inter-company
Integration has long been a substantial portion of the IT activities in many companies
Reduce errors by replacing manual methods of information sharing like re-typing with automated interchange
Reduce the time for information to flow from one system or process to another
Other reasons?
Integration means that one application can extract or obtain information from another one
It doesn't mean that the information will work "as is" in the target application
Transformation of the incoming information is often required before it can make sense to the receiving application
What is the impact of XML on integration and transformation problems?
Two businesses anywhere in the world can do business with each other using telephones and fax machines.
They don't need to know anything about each other's computer systems or technology platforms
All the inititiating business needs is the other's phone number, which it might find in a directory
What principles of loosely-coupled information exchange does this illustrate?
At the other extreme of "tight coupling" two businesses or applications can exchange information in completely automated and processable ways
What is required to enable a tightly-coupled information exchange?
Integration accomplished using a document-centric and loosely-coupled interface
Use "interchange standards" for the documents and transform to and from internal document models
The technology and location of the application performing the service is treated as a "black box"
The particular integration technology is less important than the philosophy or business model that requires it – treating different organizations, applications, and devices as loosely-coupled cooperating entities regardless of where they fit within or across enterprise boundaries
From the document exchange or information model perspective, a web service is any functionality that is invoked and delivered by XML documents
What's important is what the documents mean
Almost any service can be implemented to use documents as interfaces (request and response)
Anything that can send or receive a document
Anything that can accept a document and forward it to some other application or gateway (queuing, integration or routing service)
Anything that can generate a document as a result of user interaction, processing a received document, or some other event
What special skills or knowledge do you have? What do you know how to do that has business value? What "units of business functionality" could you provide?
Could your service be requested by sending you a document? Could the information requirements or inputs to your service be described that way?
Could the results of your service be returned to the service requestor as a document?
Web services are an important physical architectural idea and a set of standards and techniques
Service Oriented Architecture is a conceptual architectural perspective and design philosophy
MBAs and CIOs talk about SOAs, software architects and developers talk about web services
Business processes are increasingly global and involve widely dispersed parts of an enterprise or multiple enterprises
A business needs to be able to quickly and cost-effectively change how it does business and who it does business with (suppliers, business partners, customers)
So we need to think of "what a business does" in more granular terms so that the right set of business services can be assembled as needed to carry out a business model
These business services can be a mix of core, internal ones that a business does itself and outsourced ones provided by other businesses
Large enterprises are faced with heterogeneous mix of client-server and desktop computing environments and are having mixed success with cross-platform distributed applications
E-mail and the HTML-powered Web are starting to take off, demonstrating the promise of a "loosely coupled" architecture for distributed computing
There is a creative explosion of new business models for the Web co-evolving with completely unstandardized technology for Web publishing, catalog management, and "commerce servers"
The "SGML on the Web" effort chartered by the W3C in 1996 is underway and will yield XML by early 1998, but there will be no standards beyond basic XML and DTDs for a few more years
No Silicon Valley startup has ever heard of EDI
Making the web work for all businesses will require both the "plug and play" ease of the telephone or fax machine and the precise interface specification and processability offered by APIs
If we are to enable small businesses to participate in the web economy, the solution must be technically simple and relatively inexpensive to start with
These requirements for "easy and cheap" are especially important in the lower tiers of supply chains
XML-based document exchange is clearly going to be a part of the solution... and we know that without standards, XML will enable such anarchy in document types that we'd blow the promise of e-business
So we invented web services
From the technology implementation perspective, a web service is a platform-independent implementation that conforms to published specifications for its public interfaces (Web Service Description Language) and for the messaging protocol used to send and receive XML documents through those interfaces (SOAP)
What's important is that the service works (the correct "electronic envelope" and "address")
The content of the documents is outside the scope of the web services specifications
To whom should we address the letter? ==> need directory so we can "discover" service providers (UDDI)
To what address do we send it, and what should the letter say? ==> need service description (WSDL)
How to address the envelope and put the letter in it? ==> need message packaging protocol (SOAP)



Business patterns are continuously evolving, mostly as a result of changes in information and communications technology
Businesses don't just select a pattern and follow it; they may have to adapt a pattern or change to a different pattern to succeed
New technologies pose predictable problems for the business models of incumbents (as opposed to new firms) in an industry
What are the internal or external signs that an enterprise should consider new technology?
Ronald Coase: 1991 Nobel Prize in Economics for work done 50 years earlier
Transaction costs are a useful framework or vocabulary for answering some of the questions about the co-evolution of business models and technologies
Simply put, what are the types of costs to use the marketplace (everything outside of an enterprise) to influence business decisions?
Search – Discovery of potential business partners
Information Analysis – Determining what products and services are offered and whether the partner is appropriate on other dimensions
Bargaining – Proposing the terms of a business relationship
Decision-making – Agreeing on the terms and ensuring their fit with other business processes
Monitoring – Ensuring that the terms and conditions are being met
Enforcement – Taking corrective action if they are not
Does this list remind you of the Web Services Stack?
Note that what one firm views as its transaction costs another firm may view as "how we make money"
Firms are created when hierarchical coordination of internal processes is more efficient than carrying out the same processes externally "in the market"
New technologies (e.g. telephone, mainframe computer) reduce coordination costs so firms can get bigger
Vertical integration also reduces all of these costs
Coase's Law: A firm grows until internal and external costs are the same
When (historically speaking, as in what decade) are firms the biggest?
1990s rise of E-mail and instant messaging make it possible to communicate with anyone in the world who has Internet access in qualitatively faster and cheaper ways
As communication, coordination, and monitoring costs decline because of new technology and more organizational autonomy it becomes possible to outsource non-essential functions
And makes it cheaper to work with new business partners on shorter term, more ad hoc relationships
New possibilities for disintermediation and reintermediation are created as value chains get more decomposable and granular
Technical standards for product description and document exchange can also be seen as enabling technology that reduces transaction costs
Google and other search engines make it extremely easy to locate potential sellers and select on basis of price
Internet auctions enable suppliers to be found and prices established (for reverse auctions) for goods and in situations that would otherwise be infeasible
Browser-based interfaces enable businesses to drastically reduce costs for procurement, supply chain management, other critical business processes that used to require EDI (expensive) or manual processes (inefficient)
As XML becomes increasingly common as data format doing all of these things becomes easier and less expensive
Existing business processes and technology may not be flexible enough to support optimal supply chain models
Point-to-point (bilateral) methods and technologies for interconnecting the business systems of supply chain participants increase costs, increase delays, and reduce flexibility while making the chain only as strong as its weakest (slowest) links
New technology can be used to speed information flows within an enterprise and between the enterprise and its suppliers and customers:
Feedback on Scavenger Hunt sent out by email, see Sylvia for details
Assignment 3 on "Business Patterns" posted on Sylvia
16 SHORT answer questions applying key concepts and patterns of last few weeks
Due a week from Friday on March 3
2/22 Assignment 3, Business patterns, due 3/3
3/8 Assignment 6, Requirements and Source Inventory, due 3/15
3/15 Assignment 7, Business Process Analysis,due 3/23
4/3 Assignment 8, Document Analysis, due 4/14
2/27 Assignment 4 (ungraded), Getting to Know UML, due 3/13
Individual assignments teach separate skills that you'll bring together in a 2-3 person team project
Last half of the semester; pick project by March 13, incremental reports up to final presentation and report at semester end
Find something that turns you on... it might be a DE+IA spin on something you're already working on or about some news article
30% of final grade
For SIMS 2007ers, could be incubator for MIMS project (or summer internship, or 2006-7 GSR appt.)
2/27 Assignment 5 (ungraded) Project Proposal, due 3/13
4/5 Assignment 9 (ungraded) 1-page Project Status Report (and short presentation), due 4/5
4/24 Assignment 10 (ungraded) 1-page Project Status Report (and short presentation), due 4/24
5/8 Assignment 11 - Final Project Presentation and Deliverables Due
Document Engineering, Chapter 7
Universal Business Language 1.0 Appendix B