Service-Oriented Software Engineering : Basic information
Course description
Service-oriented software engineering (SOSE) is a software engineering approach which utilises constructs and concepts conforming with the service-oriented computing paradigm for designing, modelling and developing service based systems. The course introduces principles behind service-oriented software engineering, and approaches and methods for efficient service production in service ecosystems using model-driven engineering paradigm (MDE). The emphasis of the course is on service design, composition and modelling principles instead of specific implementation technologies as the MDE aims on hiding the technological detail with automated transformations from more abstract models to implementations.
Position in the studies
This course can be part of your MSc, BSc or PhD studies and is targeted especially to Networking and Services and Software Systems lines.
The prerequisites knowledge can be gained in courses Distributed systems, Software architecture, Software modeling (part of BSc studies), and Software engineering (part of BSc studies) - as taught at this department. Please refer to materials on those courses as needed. If you have not taken any of these courses, it is strongly recommendable that you take Software architectures or Distributed systems first, as they are the primary starting courses of specialisation lines.
Aspects expected to be known by participants of the course:
- middleware or platform (operating system and communication system functionality)
- software engineering process (waterfall, others)
- has done programming projects (with Java, for example) and modeling tasks (with UML, for example).
Learning objectives
See the learning objectives table.
Outline
- Introduction
- Service-oriented engineering in business/service ecosystem context
- ecosystems and SOC environments, inter-enterprise service systems
- servitization from service science perspective
- what is expected from SOSE processes in this context
- Service quality ("handbook style" to be used as reference in exercises)
- SOSE process as supported by MDE tool (chains)
- MDE basics
- Modelio tool introduction
- Large service system example model (INCOSE 2012 challenge)
- Introduction of the exercise project (for portfolio)
- case study
- expected key model types and concepts in them (ref charts for them)
- Connection of EA, SOSE and MDE
- connecting MDE development into SOSE processes and enterprise architecture models
- conceptual modeling and design science as background
- Conclusion
How to take the course
The course consists of
- Lectures: The lectures discusses various themes affecting the design of services, service constellations and business processes and the model-driven methods used in these tasks. Lectures also include brief tutorials on the use of the required tools.
- Exercises of two types taking place according to the weekly schedule given in the tab Exercises and development task:
- In traditional exercises we read and discuss papers to support this material.
- Modeling exercises that form a small project to be reported in a final portfolio. Normal exercise session times are used for supporting the preparation of these projects by sharing experience and clinic-type problem resolution and feedback on work in progress.
- Exam: A classroom-based exam will cover the conceptual, methodological and scientific aspects of the material covered. The reading material for the exam is listed in the Compulsory reading list provided in the tab Lectures and materials.
Grading
- Exam (on generic principles and guidelines): 18 points ( min 6 points)
- Exercises / learning diaries: 12 points ( min 5 points)
- Business process modeling, service realisation and service composition: 36 points ( min 8 points) ( the portfolio has parts A, B and C where A is preparatory work, B represents the main body of design task, and C is incrementing the design; majority of the points will be focused on part B)
The grading scheme is normal: 30 p - 1; 35 p - 2: 40 p - 3; 45 p - 4; 50 p - 5