Web Services and Middleware
Code | Completion | Credits | Range | Language |
---|---|---|---|---|
MIE-MDW | Z,ZK | 4 | 2+1 |
- Lecturer:
- Tomáš Vitvar (gar.), Milan Dojchinovski
- Tutor:
- Jaroslav Kuchař, Tomáš Vitvar (gar.), Milan Dojchinovski, Vojtěch Jirkovský
- Supervisor:
- Department of Software Engineering
- Synopsis:
-
Students learn new trends and technologies in the area of service-oriented architectures, web services, middleware, and cloud computing, including their theoretical background.
- Requirements:
-
Software architectures and Web technologies (HTTP, HTML, URI, XML), programming skills (Java, JavaScript), computer networks, basic algorithms.
- Syllabus of lectures:
-
1. Current and future roles of web services in ICT industry.
2. Objects, components, services. SOA.
3. Web Service Description Language (WSDL) and selected WS-* specifications.
4. Representational State Transfer (REST) and its RESTful realization, comparison with WSDL.
5. Process modelling workflow patterns, Business Process Execution Language (BPEL).
6. Middleware architectures: ESB, P/S, MQ.
7. Reliability and scalability of applications.
8. P2P systems, Skype case study.
9. Commercial software model vs. SaaS model.
10. Cloud computing, architectures of modern applications.
11. Infrastructure as a Service (IaaS), distributed processing and distributed file systems.
12. Platform as a Service (PaaS), Google case study.
13. Software as a Service (SaaS), SalesForce and GoodData case study.
- Syllabus of tutorials:
-
1. Application requirements analysis.
2. Object oriented application design, components and objects integration.
3. Web API application design (WSDL and RESTful).
4. Application implementation in the Web server environment.
5. Application implementation in the cloud computing environment (e.g. Google, Amazon).
6. Benchmarking, results comparison.
- Study Objective:
-
Modern applications require a certain level of flexibility with respect to changes that may occur in requirements on applications. From this reason, there are new types of application architectures with services exposing application functionality that allow to configure application processes. Another important requirement is to provide scalable, secure, and reliable infrastructures for applications. This module provides information about concepts, architectures, and technologies for the development of such applications.
- Study materials:
-
1. Erl, T. ''Service-Oriented Architecture: Concepts, Technology, and Design''. Prentice Hall, 2005. ISBN 0131858580.
2. Steinmetz, R., Wehrle, K. ''Peer-to-Peer Systems and Applications''. Springer, 2005. ISBN 354029192X.
3. Foster, I., Kesselman, C. ''The Grid 2: Blueprint for a New Computing Infrastructure (2nd Edition)''. Morgan Kaufmann, 2003. ISBN 1558609334.
4. Reese, G. ''Cloud Application Architectures: Building Applications and Infrastructure in the Cloud''. O'Reilly Media, 2009. ISBN 0596156367.
- Note:
- Time-table for winter semester 2011/2012:
-
06:00–08:0008:00–10:0010:00–12:0012:00–14:0014:00–16:0016:00–18:0018:00–20:0020:00–22:0022:00–24:00
Mon Tue Fri Thu Fri - Time-table for summer semester 2011/2012:
- Time-table is not available yet
- The course is a part of the following study plans:
-
- Computer Security, Presented in English, Version for Students, who Enrolled in 2010 and 2011 (compulsory course of the specialization)
- Information Systems and Management, in English, Version for Students, Succeeding in 2010 and 2011 (compulsory course of the specialization)
- Software Engineering, Presented in English, Version for Students, who Enrolled in 2010 and 2011 (compulsory course of the specialization)
- Web Engineering, Presented in English, Version for Students, who Enrolled in 2010 and 2011 (compulsory course of the specialization)
- Master Informatics, Presented in English - Version for Students who Enrolled in 2010 (VO)
- Master Informatics, Presented in English - Version for Students who Enrolled in 2011 (VO)
- Master Informatics, Presented in English - Version for Students who Enrolled in 2012 (VO)
- Information Systems and Management, Presented in English - Version for Students who Enrolled in 2012 (compulsory course of the specialization)
- Software Engineering, Presented in English - Version for Students who Enrolled in 2012 (compulsory course of the specialization)
- Web Engineering, Presented in English - Version for Students who Enrolled in 2012 (compulsory course of the specialization)
- Computer Systems and Networks, Presented in English - Version for Students who Enrolled in 2012 (compulsory course of the specialization)