Bane Final Essay


Published on

Published in: Technology, Business
  • Be the first to comment

  • Be the first to like this

Bane Final Essay

  1. 1. Suchita Bane CPSC 5555 Answer 1: A summary of what you learned. IT has played a substantial role in the globalization and virtualization of our economic lives. Modern enterprises are completely dependent on their IT. Today’s enterprise and IT share the same dynamics. It is seen that business rules have been constantly redefined. Due to constant increasing pressures, high level of agility and flexibility is expected from enterprise IT. Also cost efficiency plays a key role in today’s scenario. These pressures have put a compulsion on the enterprises to efficiently reuse their existing systems. This is done while developing new functionality and constantly adapting to changing business requirements. This compulsion has been met by integrating IT landscapes which also improves IT efficiency and agility. Thus, it led to the emergence of middleware tools and Enterprise Application Integration platforms which have now been culminated in the principles of Service Oriented Architecture. An enterprise application landscapes a variety of technologies and concepts for distribution. A modern architecture should embrace all these technologies and concepts. The book discusses the necessity of carefully choosing the correct approach to integrate different software components. SOA is an important revolutionary point in the development of integration technologies. It focuses on business centric services with business level transaction granularity. SOA is not dependent on a single technical protocol but represents an architectural blueprint which incorporates many technologies and bridges these technologies. The core issue is defining clear service contracts with clear business orientation. SOA is based on four key abstractions: application frontend service, service, service repository and service bus. Application frontend service initiates all activity, start business processes and receive their results. Typical examples of application frontends are GUIs, long-running server- processes or batch programs. They utilize the services of an SOA that provide the business logic and data. A service is a fundamental building block of an SOA. It consists of a service contract, one or more service interfaces, and a service implementation. The different categories of services are, namely basic services, intermediary services, process- centric services, and public enterprise services. An Enterprise Service Bus (ESB) is a software bus that enables communication between the various components of an SOA. An ESB usually provides additional value by solving issues like security, fault-tolerance, distributed transactions, logging and auditing, unified access to different synchronous and asynchronous communication modes, scalability, etc. A service repository is a database that provides information about services of an SOA. As a key element it provides the service contract of the individual services. An architectural roadmap identifies three level of maturity (Expansion stages) of an SOA: fundamental, networked, and process-enabled. A simple approach to SOA is a fundamental SOA comprising basic services and application frontends. The fundamental SOA delivers a maintainable infrastructure containing business logic and data of the
  2. 2. enterprise. A networked SOA is an expansion stage of an SOA that comprises application frontends, basic services, and intermediary services. A process-enabled SOA is the most sophisticated SOA expansion stage. It comprises all service types - i.e. basic, intermediary and process-centric services. Most importantly a process-enabled SOA is characterized by process-centric services that manage the state of the business processes and provide the rules for their execution. The process-driven and service-oriented architecture presented by the combination of SOA and BPM provides an ideal environment for building adaptable, model-driven composite applications from existing IT assets and infrastructure. It is important to ensure process integrity however, it is more important to understand the tradeoff between process integrity and implementation costs. A 2PC protocol provides a high level of integrity but comes with a very high implementation costs. SOA project management provides tools to enable project managers to find the right trade off between implementation costs and integrity requirements. The organizational roadmap discusses the benefits of an SOA at the organizational level. How the perspective of key players and individual stakeholders play an important role in building an SOA driven enterprise. We have talked about the increasing pressures on an enterprise to withstand ever changing demands in a competitive market. This leads to the necessity for an enterprise to be agile thus the requirement of SOA. Though agility and efficiency are the prime benefits of an SOA, they should help increase the profit and foster savings of an enterprise. The savings are distinguished as direct (IT savings) and indirect (business savings). Code reuse reduces redundancies and inconsistencies in business data. SOA provides a lot of technological independence, decoupling of technology lifecycles from the lifecycles of business services. However, it can be said that technology dependencies can never be completely eliminated. SOA’s are different from other architectures since they enables an efficient decomposition of functionality into largely decoupled components of manageable size and are not tied to any specific technology. For an SOA endeavor to become successful, it is required to convince key stakeholders of the enterprise to support the SOA. The four pillars that determine the success of an enterprise’s SOA are securing a budget, choosing a suitable project, setting up a strong SOA team and finding backers and buddies. SOA driven project management means adopting a set of useful, SOA practices that are complementary to an established methodology. The key issue learned in project management is the mapping of project control elements and software artifacts. Another important role in the enterprise level project management is that enterprise level applications always have to be synchronizes not only during the development time but also during their lifetime in a production environment. Services are ideally suited for managing runtime synchronization of sub-systems. It is required to drive the projects
  3. 3. with service contracts. Service contracts provide the backbone for coordinating multiple projects on the program level and coordinating multiple sub projects on the project level. Testing is a quality control tool in software development and is grouped in different categories depending on the required objective and level of granularity. Load testing means testing a component under specific load for a defined time. Functional testing means ensuring that the operational results of a software component are consistent with expectations. The book also illustrates an example for SOA driven project management as chapter 15 in which a leading Swiss insurance company Winterthur faced issues of historical grown systems and information pits. The company largely banked on their IT infrastructure to manage assets, products, processes, customers. The company found the need to increase their IT efficiency and agility. The company’s core business systems were based on mainframe computers for their back-end systems. They found the need to open these back-end systems. The main reason behind this was the reuse of the core business logic and data on these systems for new front-end systems on non mainframe platforms. They built an application and integration platform which was the technical basis for Winterthur’s SOA. Similarly, the Credit Suisse Group was re-architectured on the basis of this technical platform as discussed in Chapter 16. The CIO of the company introduces an integration architecture based on SOA. Describe in one or two paragraphs what SOA is about : The book conveys the ultimate goal of an enterprise is to be agile. The Agile Enterprise embodies the vision of an enterprise capable of dealing with and thriving in a complex and ever changing business environment – an enterprise that can continually reinvent itself. It is one of the major goals of SOA to provide an IT infrastructure for the Agile Enterprise by creating services that act as flexible building blocks that can easily be rearranged according to the needs of the Agile Enterprise. SOA is an intended state that many organizations may approach but never fully attain. It’s all about achieving maximum reuse and minimum redundancy of services throughout complex, multiplatform distributed environments. In SOA architecture, every function is defined as a service with a service interface. Services are abstracted from the underlying logic that delivers the result. An SOA facilitates loose coupling by separating the producer of the service from the consumer of the service. Services are coarsely grained. The SOA vision is elaborated by adding Web services, IT governance, enterprise service bus (ESB), business process management (BPM), model-driven architecture (MDA). The goal for a SOA is collaboration of services, which are available for invocation on the Service Bus. Adopting SOA is essential to deliver the business agility and IT flexibility promised by Web Services.
  4. 4. Web services are middleware and development environment that enable complete service virtualization, abstraction, loose coupling, and reuse. Web services are the preferred environment for SOA. SOAP— The Simple Object Access Protocol is a standard of the W3C. It provides a framework for exchanging XML-based information. WSDL— Web Services Description Language (WSDL) is a standard of the W3C. It is an XML-based language for the description of capabilities and locations of Web services. UDDI— Universal Description, Discovery, and Integration (UDDI) represents a standard for the implementation of service repositories. UDDI provides a platform around Web services technologies such as Simple Object Access Protocol (SOAP) and Web Services Description Language (WSDL). This course has been extremely helpful to me in envisioning what SOA is really about. I am an undergraduate student and have no real world enterprise experience. Though I was a tiny bit aware of what SOA is and how it has catapulted itself in modern enterprise, the in-depth knowledge and technical aspects were learned from the book. The architectural roadmap was taught in chapters 4 to chapter 10. However, chapter 6,7,9 and 10 were of particular interest since they taught the fundamentals of SOA and business project management. In the second part of the book, chapter 11 was of particular interest to me solely because it was the chapter that was assigned to me as a project, but besides it shows the organizational roadmap of an SOA. It helps us know how an SOA can be successfully established, how an enterprise can reach a competitive edge by becoming agile and flexible and the key roles to be considered rather convinced in an enterprise for an SOA to happen. I guess the driving force behind learning this chapter very well was that I had to make a presentation on it. The third section deals with real world experiences cited as examples, which I have discussed above. It describes the successful introduction of SOA on the enterprise level. It discusses aspects on how SOA was introduced both at organizational and technical level. The book for enterprise SOA is compact and basically teaches us all the aspects that are required to know, however it would have been good to learn the use of Service Component Architecture (SCA) to implement SOA, as this is a current area of research. In the building web services with java book I liked chapters 3, 4 and 5. I grabbed the gist of SOAP protocol and how web services were described using WSDL. I learned that Web services are application components that communicate using open protocols and that XML is the basis for web services. The topic of interest in this book was about SOAP, the messaging network, the need for intermediaries, the processing model, how errors and faults were handled. It was taught very well. A web service approach is about integrating business functionality within an organization or integrating applications between business partners. A more hands on experience on building web services would be appreciated. In all, the inclusion of this course has enhanced our enterprise vision and the Enterprise SOA book can be seen as a guideline to building SOA in our next endeavor. Answer 2: Secret code = WSDL