The Oracle SOA Platform

Ac.Year:2017/2018 (Not opened)
Public info:http://www.fit.vutbr.cz/study/courses/IOA/public/
Private info:http://www.fit.vutbr.cz/study/courses/IOA/private/
Completion:classified accreditation
Type of
Hour/semLecturesSem. ExercisesLab. exercisesComp. exercisesOther
Guarantee:Rychlý Marek, RNDr., Ph.D., DIFS
Lecturer:Rychlý Marek, RNDr., Ph.D., DIFS
Instructor:Rychlý Marek, RNDr., Ph.D., DIFS
Faculty:Faculty of Information Technology BUT
Department:Department of Information Systems FIT BUT
Learning objectives:
  The goal of this course is to provide students with an overview of the implementation approaches to service-oriented architectures in the Oracle environment and to provide practical knowledge on design and implementation of services in the Oracle SOA Suite 11g platform.
  Service-oriented architecture (SOA) concept and related technologies; standards and specifications of SOA implementations; SOA as an approach to enterprise business processes integration; service design in SOA; components "Mediator", "BPEL", "Business Rules", and "Human Task", and their applications; an implementation of a component-based system as SOA in the Oracle SOA Suite 11g platform; monitoring and testing of component-based systems as SOA.
Knowledge and skills required for the course:
  • Basic knowledge and skills from the "Introduction to Software Engineering" course, particularly modelling skills.
  • To be able to understand documents in XML.
Subject specific learning outcomes and competences:
  Students will gain knowledge and skills in design and implementation of information systems with SOA. They will learn how to develop and deploy the systems with SOA in the Oracle SOA Suite 11g platform, namely, how to define a service's interface, to use components "Mediator", "BPEL", "Business Rules", and "Human Task", in implementation of the service, to integrate the components into complex services, to use adapters, and to test and debug resulting implementation of SOA.
Generic learning outcomes and competences:
  Students will have knowledge of the principles of design and implementation of component-based systems with SOA. They will be able to actively participate in the design and implementation of the such system in the Oracle SOA Suite 11g platform.
Syllabus of lectures:
  1. Introduction: Structure and objectives of the course, organization of projects. Service-oriented architecture (SOA): SOA as an approach to enterprise information systems integration, "Oracle SOA Maturity Model", implementation standards of SOA, SOA principles, and integration requirements for SOA.
  2. "SOA Governance" and service life-cycle: Service life-cycle management, management of individual services, "SOA Governance". Design of services and SOA implementation: Service and its documentation, services layers and their responsibilities, XML schemas, service interface design and its description in WSDL.
  3. Oracle SOA Suite: Introduction to the Oracle SOA Suite 11g platform, components for service implementation, component-based systems as SOA, synchronous and asynchronous patterns of components communication, "Enterprise Manager" responsibilities, service adapters and their different types.
  4. Component-based Systems as SOA: Service component architecture (SCA), introduction into components and component-based systems, components in SCA, "Service Data Objects", an example of design of a component-based system as SOA in Oracle JDeveloper.
  5. Systems Management with SOA - explanation and typical activities of SOA management, an example of usage of the "Enterprise Manager" tool, deployment of systems with SOA, testing of SOA and message-flow monitoring between services.
  6. Services Integration and the "Mediator" Component: Services integration issues and utilisation of the "Mediator" component, business events in "Event Driven Architecture" and "Event Delivery Network", the "Mediator" component, routing rules.
  7. Service Orchestration and the "BPEL" Component: Business processes and service orchestration, BPEL (Business Process Execution Language) and its usage in the service orchestration, an example of BPEL process created in Oracle JDeveloper, description of activities, relations and service calls in a BPEL process.
  8. Services Coordination, Interaction Patterns, Exception Handling - implementation of concurrent processing by the "Flow" activity, request/response interaction pattern, processing of messages and handling of warnings by the "Pick" activity, loops in the "While" activity and the "Wait" activity in a BPEL process, exception handling in SOA, the exceptions in synchronous and asynchronous service calls, throwing and catching exceptions in a BPEL process.
  9. Transactions in SOA: Transactions issues in business processes, transactions with services database adapters, access to "Service Data Objects" inside of a transaction, transactions endings in BPEL processes.
  10. Integration of User Interfaces in a Business Process and the "Human Task" Component: Interaction with users in a business process, a workflow as a service, utilising of the "Human Task" component in SOA and its integration into a BPEL process, user forms, setting the list of possible user actions with an assigned task by Oracle BPM Worklist and description of API for further client applications.
  11. Usage of Oracle Business Rules in SOA and the "Business Rule" component: Introduction to business rules, how to define Oracle Business Rules and use them, description of facts, sets, and dictionaries of rules, usage of the "Business Rule" component and its integration into a BPEL process, an example of a rules definition and description of decision rules in Oracle JDeveloper.
  12. Testing and Debugging of Systems with SOA, Monitoring of Business Processes: Design of test of component-based systems, testing initiated by incoming messages, emulation of outgoing messages, errors, and call-backs, design of a test-set by value- and XML-conditions, debugging techniques, design and configuration of BPEL and composite sensors, monitoring of the sensors in "Enterprise Manager", publishing the sensors in "Oracle Business Activity Monitoring".
  13. Web-Service Security: Security in SOA, usage of Oracle Web Service Manager for description of security policies and their assignment to services.
Syllabus of computer exercises:
 Computer exercises, 2 hours each 14 days.
  1. Introduction - demonstration of the computer laboratory and the virtualisation environment, information about further submission of the projects' results and their evaluation.
  2. Integrated development environment Oracle jDeveloper, installation and configuration of the Oracle SOA Suite 11g platform. Business process modelling.
  3. Service description in the WSDL language and the description of service messages in XML scheme. A service composition in SOA via Oracle jDeveloper and its deployment into the Oracle SOA Suite 11g platform.
  4. Controlling of deployed services via Oracle Enterprise Manager, their testing. Usage of the "Mediator" component to requirements/messages routing in a composition of services.
  5. Usage of the "BPEL" component, description of a BPEL process and its integration into the services composition. Usage of the "Human Task" component, its integration into the BPEL process and into the services composition.
  6. Usage of the "Business Rule" component, its integration into the BPEL process and into the services composition. Security polices and their assignment to services (authentication and authorisation for access to interfaces a messages logging).
Syllabus - others, projects and individual work of students:
 An individually solved project aimed at design of a business process according to a given specification and at implementation of a system with SOA as a composition of services utilising basic components in the Oracle SOA Suite 11g platform.
Fundamental literature:
Study literature:
Controlled instruction:
  • Submission of an individual project's results and their final defence.
  • A written test taken individually.
Progress assessment:
  • An individually solved project according to a given specification (60 points).
  • A final test (40 points).
Exam prerequisites:
  To pass this course and to get credits a student must gain at least 50 points (of 100 points). Classification is according to standard ECTS scale.