Budapest University of Technology and Economics, Faculty of Electrical Engineering and Informatics

    Belépés
    címtáras azonosítással

    vissza a tantárgylistához   nyomtatható verzió    

    Service Oriented System Integration

    A tantárgy neve magyarul / Name of the subject in Hungarian: Szolgáltatásorientált rendszerintegráció

    Last updated: 2016. november 11.

    Budapest University of Technology and Economics
    Faculty of Electrical Engineering and Informatics
    Műszaki Informatika MSc, Alkalmazott Informatika főspecializáció
    Course ID Semester Assessment Credit Tantárgyfélév
    VIIIMA04 1 2/1/0/v 4  
    3. Course coordinator and department Dr. Simon Balázs,
    Web page of the course https://www.iit.bme.hu/~soi/en/
    4. Instructors

    Dr. Balázs Simon, senior lecturer, Department of Control Engineering and Information Technology

    5. Required knowledge
    • Operating systems
    • Computer networks
    • XML
    6. Pre-requisites
    Kötelező:
    NEM ( TárgyEredmény( "BMEVIAUM208" , "jegy" , _ ) >= 2
    VAGY
    TárgyEredmény( "BMEVIIIM140" , "jegy" , _ ) >= 2
    VAGY
    TárgyEredmény( "BMEVIMIM234" , "jegy" , _ ) >= 2
    VAGY
    TárgyEredmény("BMEVIAUM208", "FELVETEL", AktualisFelev()) > 0
    VAGY
    TárgyEredmény("BMEVIIIM140", "FELVETEL", AktualisFelev()) > 0
    VAGY
    TárgyEredmény("BMEVIMIM234", "FELVETEL", AktualisFelev()) > 0
    VAGY
    TárgyEredmény( "BMEVIIIMA27", "jegy" , _ ) >= 2
    VAGY
    TárgyEredmény("BMEVIIIMA27", "FELVETEL", AktualisFelev()) > 0)

    A fenti forma a Neptun sajátja, ezen technikai okokból nem változtattunk.

    A kötelező előtanulmányi rend az adott szak honlapján és képzési programjában található.

    Ajánlott:

    Recommended: Operating systems, computer networks, software technology

    7. Objectives, learning outcomes and obtained knowledge

    The goal of this course is for students to:

    1. deepen their understanding of Service-Oriented Architecture
    2. get familiar with designing services and business processes,
    3. learn about web services and the related standards,
    4. learn about the BPEL and BPMN standards for describing business processes
    5. learn about the capabilities of an ESB
    6. be able to create web services on different platforms (.NET and Java)
    8. Synopsis

    1. Service-Oriented Architecture (SOA)

    History of SOA in the light of earlier technologies (distributed object-orientation, distributed components). The definition of SOA, the principles of SOA.

     

    2. Web services

    XML namespaces, Web Services Description Language (WSDL), communication protocol of web services (SOAP).

     

    3. Developing web services

    Web service APIs: .NET Windows Communication Foundation (WCF), Java API for XML-based Web Services (JAX-WS)

    Practice: creating a simple web service in .NET and in Java, examining the WSDL interface, logging and examining SOAP messages

     

    4. Developing complex web services

    Enabling middleware (WS-*) protocols for web services: configuration (WS-Policy), addessing (WS-Addressing), reliable messaging (WS-ReliableMessaging), secure messaging (WS-Security, WS-SecureConversation)

    Practice: creating a complex web service in .NET and in Java, examining WS-Policy configurations, logging and examining complex SOAP messages

     

    5. Lightweight web services

    The REpresentational State Transfer (REST) technology and its principles, comparison of REST and web services

     

    6. Developing lightweight web services

    REST API-k: .NET-ben a Windows Communication Foundation (WCF), Java-ban a Java API for RESTful Web Services (JAX-RS), JavaScript Object Notation (JSON)

    Practice: creating simple REST services in .NET and in Java, logging and examining messages

     

    7. Design and development guidelines for web services

    Advantages and disadvantages of bottom-up (code first) development, advantages and disadvantages of top-down (WSDL first) development, hybrid development, interface design principles, versioning interfaces, architectural consideration of Java and .NET applications

     

    8. Testing web services

    Principles of testing web services, unit testing, integration testing, regression testing, running external test, test frameworks

    Practice: testing complex web services with different methods

     

    9. Describing executable business processes

    Elements of the Business Process Execution Language (BPEL) language, connection of BPEL with web services

    Practice: designing a simple BPEL process, calling external web services from the process

     

    10. High level description of business processes

    The Business Process Modeling Notation (BPMN) language, comparison of BPMN and BPEL, mapping BPMN processes to BPEL

    Practice: designing a simple BPMN process and making it executable

     

    11. Integration tasks

    The Enterprise Service Bus (ESB) for integrating various technologies (database, FTP, SMTP, web services, etc.), routing and transforming messages, processing events, management

    Practice: integration using an ESB, including message transformation and event handling

     

    12. Business rules and human tasks

    Outsourcing frequently changing business rules from the process, accessing human activities from processes

     

    13. SOA tools and frameworks

    Comparison of the most important SOA tools and frameworks in the industry

     

    14. Homework submission

    Checking the homeworks of the students

    9. Method of instruction Lecture and practice
    10. Assessment

    a. In lecture term:

    During the semester a homework has to be completed. The condition for acquiring a signature is the acceptance of the homework.

    b. In exam term:

    Written exam for those who acquired a signature.

    11. Recaps

    Recap of the homework is possible on the replacement week, subject to paying a fee.

    12. Consultations

    Based on the demand, appointed with the lecturer.

    13. References, textbooks and resources
    • Thomas Erl: Service-Oriented Architecture: A Field Guide to Integrating XML and Web Services, Prentice Hall (April 26, 2004), ISBN-10: 0131428985, ISBN-13: 978-0131428980
    • Thomas Erl: Service-Oriented Architecture: Concepts, Technology, and Design, Prentice Hall (August 12, 2005), ISBN-10: 0131858580, ISBN-13: 978-0131858589
    • Thomas Erl: Service-Oriented Architecture: Principles of Service Design, Prentice Hall (July 28, 2007), ISBN-10: 0132344823, ISBN-13: 978-0132344821
    • Thomas Erl: Service-Oriented Architecture: SOA Design Patterns, Prentice Hall (January 9, 2009), ISBN-10: 0136135161, ISBN-13: 978-0136135166
    • Thomas Erl: SOA Governance: Governing Shared Services On-Premise and in the Cloud, Prentice Hall (April 24, 2011), ISBN-10: 0138156751, ISBN-13: 978-0138156756
    • Dirk Krafzig, Karl Banke, Dirk Slama: Enterprise SOA: Service-Oriented Architecture Best Practices, Prentice Hall (November 19, 2004), ISBN-10: 0131465759, ISBN-13: 978-0131465756
    14. Required learning hours and assignment
    Lecture42
    Preparation for lectures
    14
    Preparation for in-cass tests
     
    Homework24
    Processing prescribed texts 
    Preparation for the exam
    40
    Summary120
    15. Syllabus prepared by Dr. Balázs Simon, senior lecturer, Department of Control Engineering and Information Technology