Download presentation
Presentation is loading. Please wait.
Published byWilla Allen Modified over 9 years ago
1
CS 4720 Enterprise Architecture CS 4720 – Web & Mobile Systems
2
CS 4720 The Concept of a Web Service Each service is built around a function/feature That function is surrounded by a specified set of protocols (SOAP, POX, WSDL, WSD, etc) to govern communication Services can be distributed in such a way that then end “application” is a completely distributed application that is transparent to the end user 2
3
CS 4720 The Concept of a Web Service We are focused on creating a full “service” Something that has a fully transparent methodology for talking to it Something that can be invoked by remote applications (or other services) All for the purpose of creating a larger system solution 3
4
CS 4720 Defining a System Solution Computer Science education tends to be rather product focused “Build an app that does x” Most of you probably think about taking a programming job as going to work for IBM, Microsoft, etc and building software that is actually sold 4
5
CS 4720 Who's the Customer? Think of the number of software development companies out there that sell software? Name some. What is their business model? Now name some other major companies that you know of who's core business isn’t software. How does software play in their business? Who do you think writes that code? Who are the customers of those systems? 5
6
CS 4720 The Enterprise 6
7
CS 4720 The Enterprise A business, company, or other comparable organization Businesses have business models and goals Businesses have various resources –Staff –Products –Services –Information Technology All have to work together to succeed 7
8
CS 4720 Enterprise Architecture “The primary purpose of describing the architecture of an enterprise is to improve the effectiveness or efficiency of the business itself. This includes innovations in the structure of an organization, the centralization or federation of business processes, the quality and timeliness of business information, or ensuring that money spent on information technology (IT) can be justified.” 8
9
CS 4720 Enterprise Architecture 9
10
CS 4720 What do we use web services for? Sure, we can use web services to build applications that we distribute or sell to end users But what if we need some very specific services based around our very specific business model? Not necessarily going to be a huge market for that The customer is internal to the business 10
11
CS 4720 How does this relate to web services? SOA and EA both: –address similar architectural domains –are intended to closely align IT with business –use input based on business objectives –require similar strategies and planning activities 11
12
CS 4720 How does this relate to web services? SOA is (in effect) a partial subset of EA SOA is a potential tool in creating a full enterprise architecture –Businesses build services around core functions/features in the enterprise For example: UPS might have a service that finds the current location of a package This is an internally created service that has both internal and external uses But what about a service to assign a driver to a route? 12
13
CS 4720 Internal Business Services These services are geared specifically to one particular business What are some examples? Our favorite example: SIS Peoplesoft didn't build that from scratch The brought together existing components and make some custom changes to create a new internal business solution That's enterprise architecture (and why you need to learn to do it better) 13
14
CS 4720 So… why are we talking about this? Creating web-enabled software is not always about building web pages Creating mobile software is not always about building consumer apps Web services are about building a software solution around a very specific problem Where do we see some of the most change in the way the world works? Where is most software used? 14
15
CS 4720 That's the why; now the how We’ve done web services in PHP/Python, now Appian/BPEL/BPMN, next Java, then.NET 15
16
CS 4720 BPMN Business Process Model and Notation Latest version from March 2011 Used to model and specify business processes Flowchart-like notation Meant to look like UML Meant to be easy for everyone to read and understand 16
17
CS 4720 BPMN 17
18
CS 4720 BPMN 18
19
CS 4720 Appian 19
20
CS 4720 BPEL Remember BPEL? Business Process Execution Language An XML format that is meant to “orchestrate” various functions/methods that are built in other languages Takes inputs and outputs and passes them between web services! BPMN can mesh with BPEL 20
21
CS 4720 BPEL Why build from the ground up? Combining web services (WSDL) with BPEL to build your own applications internal to an enterprise Eclipse plugins and open-source projects 21
22
CS 4720 Our Friend Java We know so much, but actually so little Java has been around for nearly 20 years Lots of people know it Can't hardly find a college CS grad that can't program something in Java 22
23
CS 4720 The Java Family Java is Java is Java no matter what you download/run The core is the same – that's the “Write Once, Run Anywhere*” idea * Well… sorta Java might be too big for some devices or need more functionality for others How do we change that? We change the imports 23
24
CS 4720 The Java Family Any Java application is contingent on the libraries you include with it Thus, we have three basic branches of Java, based on the core set of libraries: –Java SE (Standard Edition): has everything for desktop use, including GUIs, basic threading, etc –Java EE (Enterprise Edition): has more than SE, and includes packages specifically for enterprise arch –Java ME (Mobile Edition): has less than SE and a different GUI package 24
25
CS 4720 Java EE's New Packages javax.ejb – Enterprise JavaBeans, the core of Java's EA model, includes API for persistence, remote procedure calls, concurrency control, and access to distributed objects javax.jms – the Java Message Service provides methods for communicating between enterprise objects javax.resource – the Java EE Connector allows for connecting to application servers 25
26
CS 4720 How is Java EE like Web Services? In a web service 26
27
CS 4720 How is Java EE like Web Services? In Java EE 27
28
CS 4720 Why Java EE? When dealing with business processes, you will often run into questions like these: –“What if the server goes down while I'm assigning a route to a truck delivering packages?” –“How do we keep the data secure on our network?” –“We have thousands of people using this system – how do we keep it online?” –“I don't want to have to keep rewriting business logic for every tiny program we need.” 28
29
CS 4720 Java EE Terminology JAR (Java Archive): a collection of Java libraries WAR (Web Archive): a Java web application, consisting of JSP files and servlets JSP (Java Server Pages): dynamically executed HTML + Java web pages Servlet: pre-compiled, request/respond object, kinda like a pre-compiled PHP page EJB (Enterprise JavaBean): where the business logic lies, exists server-side EAR (Enterprise Archive): a full enterprise solution with JARs, WARs, and EJBs inside Application Server / Container: a server that can handle EARs 29
30
CS 4720 How it all fits together 30
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.