1 / 30

Enterprise Architecture

Enterprise Architecture. CS 4720 – Web & Mobile Systems. 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

audi
Télécharger la présentation

Enterprise Architecture

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Enterprise Architecture CS 4720 – Web & Mobile Systems

  2. 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. 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. 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. 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. The Enterprise 6

  7. 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. 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. Enterprise Architecture 9

  10. 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. 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. 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. Internal Business Services • These services are geared specifically to one particular business • What are some examples? • Our favorite example: SIS • Peoplesoftdidn'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. 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. 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. 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. BPMN 17

  18. BPMN 18

  19. Appian 19

  20. 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. 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. 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. 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. 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. 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. How is Java EE like Web Services? • In a web service 26

  27. How is Java EE like Web Services? • In Java EE 27

  28. 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. 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. How it all fits together 30

More Related