Service-Oriented Architecture (SOA) is considered to be the new phase in the evolution of distributed enterprise applications. SOA could enable the design and realization of flexible applications across multiple organizations. Enterprise SOA provides strategies that help large enterprises to increase the agility of their IT systems and is one of the most pressing issues of contemporary IT. Since this strategy covers both business and technical viewpoint it aims to provide the implementation of an IT infrastructure that can serve as a base for the development of truly flexible business processes. Ultimately Service Oriented Architecture (SOA) is a design approach that promotes better alignment of IT with business needs, enabling both IT and the business to more quickly respond and adapt to changing business pressures and opportunities.
This module prepares the students to understand different approaches used in developing applications and Web Services using the principles of Service-Oriented Architecture (SOA). The students are trained to write applications or services that employ many heterogeneous technologies. This module also gives an insight to the students regarding the present IT world’s approach towards implementing services using SOA.
This assignment is designed to test both conceptual and practical understanding of the principles of SOA and implementation of services. In Part A of the assignment, students are required to write an essay on a given topic. In Part B, students are required to design an Enterprise System. In Part C, the designed system is to be implemented.
Services are a good approach to implementing IT functionality. Building enterprise solution(s) typically requires combining multiple existing enterprise services. These composite services can be in turn recursively composed with other services into higher level solutions, and so on. A service composition is an aggregation process that creates composite services from the existing ones. To realize the real world business functionality, autonomous services are aggregated into a composite service. To assemble smaller services together to create bigger services there are two main approaches: Orchestration and Choreography. Orchestration is where a central or master element controls all aspects of the process. Choreography is where each element of the process is autonomous and controls its own agenda.
A Movie Advisor lets you view the list of movies that is running in different theatres in the city. Users can book the ticket for a show with the help of Movie Advisor. Movie Advisor provides services where a user will be provided with a list of languages. User, when selecting a language, will be given the list of movies that are now running in the city for that language. User can then select the movie that he/she wants to watch. Movie Advisor will contact the various theatres where the movie is running, and will list the theatre name, show time, availability of tickets, price of ticket, etc. Movie Advisor will then book the ticket according to customer choice from the available list. User is provided the option to cancel a ticket that he/she booked earlier. Movie Advisor also helps the user by providing User reviews and rating for a movie. User can also write review for a movie that he/she watched. In order to book a ticket or to write a review, user needs to have a profile associated with Movie Advisor, and he/she needs to login to Movie Advisor.