Course Details for A.Y. 2018/2019
Name:
Service - Oriented Software Engineering / Service - Oriented Software Engineering
Basic information
Credits:
: Master Degree in Computer Science 6 CFU (b)
Degree(s):
Master Degree in Computer Science curriculum GSEEM Elective
Master Degree in Computer Science 2nd anno curriculum NEDAS Elective
Master Degree in Computer Science 2nd anno curriculum SEAS Compulsory
Master Degree in Computer Science curriculum UBIDIS Elective
Language:
English
Course Objectives
The objective of this course is to introduce Service-oriented Architecture (SOA) as a way of building distributed applications using Web Services (WS). The course aims at deepening the understanding of key aspects and principles of SOA and WS technologies, as well as related Software Engineering methodologies.
At the end of the course the students will:
(i) understand the notions of WSs, WS standards, and SOA;
(ii) understand the service engineering development processes that can be followed to realize reusable and flexible WSs;
(iii) understand how business process models and service-oriented programming models can be used as a basis for the design and the implementation of service-oriented systems;
(iv) be familiar with a number of frameworks that support the development and deployment of service-oriented applications, both WS clients and WS providers;
(v) have been introduced to the notion of service composition as a means for developing complex service-oriented applications.
Course Content
- Reuse-based System Development
- Component-based System Development
- Service Oriented Architecture (SOA)
- Service-oriented Distributed System Development (WEB Services, REST Services, Microservices, Data as a Service (DaaS), Load Balancer)
- SOA-enabling Technologies (XML, SOAP, WSDL, WADL, etc)
- SOA-supporting Frameworks (ANT, MAVEN, SPRING WS, JAX WS, APACHE AXIS, APACHE CXF, etc.)
- Service Composition
- Numerous Practical Sessions in Classroom
Learning Outcomes (Dublin Descriptors)
On successful completion of this course, the student should
-
have profound knowledge of the notions of Web Services, Web Service standards, and Service-oriented Architecture (SOA);
-
have knowledge and understanding of the service engineering development processes that can be followed to realize reusable and flexible Web Services;
-
analyse and discuss the Service-oriented Architecture principles and the related engineering development processes;
-
be familiar with a number of frameworks that support the development and deployment of service-oriented applications, both WS clients and WS providers;
-
explain and illustrate how business process models and service-oriented programming models can be used as a basis for the design and the implementation of service-oriented systems;
-
explain and illustrate the notion of service composition as a means for developing complex service-oriented applications;
-
demonstrate skill in problem-solving, demonstrate ability to use (subset of) the programming framework to realize service-oriented applications;
-
demonstrate capacity of abstraction and modularity when designing service-oriented applications.
Prerequisites and Learning Activities
Object-oriented programming, Java language, and XML basics.
Assessment Methods and Criteria
MID-TERM TEST (OPTIONAL - to be decided during the course):
either students will be assigned a homework concerning the course topics (tutorial preparation, lecture simulation, small project, ...), or students will be asked questions concerning the Software Engineering aspects learned during the first lessons including all topics of PART I and SOA Principles of PART II.
FINAL TEST:
Students will be given the specification of a Service-oriented System to be implemented by applying the learned service-oriented engineering principles and methods, and by using the SOA enabling technologies and the Java frameworks taught and demonstrated during the classroom activities. Students will present the system and discuss the way it has been realized. Contextually, if the mid-term test was not given or was not passed, students will be asked questions concerning the Software Engineering aspects learned during the first lessons including all topics of PART I and SOA Principles of PART II.
Textbooks
- Ian Sommerville, Software Engineering(vol. 10th Edition) 2016.
- Michael P. Papazoglou, Web Services & SOA, Principles and Technology(vol. 2nd Edition) 2012.
Notes
- Office hours: every Thursday 11:30 to 13:30.
Course page updates
This course page is available (with possible updates) also for the following academic years:
To read the current information on this course, if it is still available, go to the university course catalogue .
Course information last updated on: 20 giugno 2019, 16:32