110 likes | 126 Views
Chapter 4: Enterprise Architectures. Service-Oriented Computing: Semantics, Processes, Agents – Munindar P. Singh and Michael N. Huhns, Wiley, 2005. Highlights of this Chapter. Enterprise Integration J2EE .NET Model Driven Architecture Legacy Systems. J2EE Technology. .NET Technology.
E N D
Chapter 4:Enterprise Architectures Service-Oriented Computing: Semantics, Processes, Agents– Munindar P. Singh and Michael N. Huhns, Wiley, 2005
Highlights of this Chapter • Enterprise Integration • J2EE • .NET • Model Driven Architecture • Legacy Systems Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns
J2EE Technology Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns
.NET Technology Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns
.NET Web Services • COBOL Web service for multiplication <%@ webservice language=''COBOL'' %> CLASS-ID. MULTIPLICATIONSERVICE. FACTORY. PROCEDURE DIVISION. METHOD-ID. MULTIPLY. DATA DIVISION. LINKAGE SECTION. 01 VAL-1 PIC S9(9) COMP-5. 02 VAL-2 PIC S9(9) COMP-5. 01 PRODUCT PIC S9(9) COMP-5. PROCEDURE DIVISION USING BY VALUE VAL-1 VAL-2 RETURNING PRODUCT. COMPUTE PRODUCT = VAL-1 * VAL-2. END METHOD MULTIPLY. END FACTORY. END CLASS MULTIPLICATIONSERVICE. Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns
Legacy Systems • A pejorative term for computing systems that • Run on obsolete hardware and nonstandard networks • Run poorly documented, difficult-to-maintain software • Consist of poorly modeled databases • Support rigid user interfaces • Notice that “legacy systems” is not synonymous with “mainframe” • Mainframes have had a resurgence in the last decade: no longer obsolete hardware; often support modern OSs (Linux); not necessarily poorly modeled or rigid (though some elements are obsolete or arcane) Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns
How Legacy Systems Arise • Proprietary software • Not supporting industry standards • Sold by vendors who hope to lock in the market through incompatibility • Meaning embedded procedurally in the code • Ad hoc changes to software in response to • Changing requirements (laws, regulations, competition, or other business needs) • Bugs Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns
Legacy Systems: Pros and Cons • Fulfill crucial business functions • Run the world’s airline reservation systems • Run most air traffic control programs • Have loyal users, reluctant to migrate • Represent huge investments in time and money • Complicate reuse and sharing of data • Cause redundancy, wasted effort, and integrity violations Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns
Migration • Updating technology is • Essential • A continual process • All at once? • Expensive • Risky • Brittle • Frustrating for users • Gradual change: dismantle legacy and build desired system hand-in-hand • Install and test piecemeal Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns
Applying Services New Service Services Refactored from Legacy Backend Application Legacy Backend Legacy Interface • ERROR: using services at too coarse of a granularity (see chapter 3) Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns
Chapter 4 Summary • Services must fit into existing architectures • J2EE and .NET are architecturally quite similar • Legacy systems provide the basis for many modern services • They host key data and processes • Interoperating with them is nontrivial • Challenge: refactoring legacy capabilities to derive best value from resulting services Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns