Model-based tool support for Service Design
Francisco J. Pérez-Blanco, Juan M. Vara,
Cristian Gómez, Valeria De Castro, Esperanza Marcos
Kybele Research Group, Universidad Rey Juan Carlos, Madrid, Spain
Submitted to the 23rd International Conference on Fundamental Approaches to Software Engineering – FASE 2020
The main goal of this microsite is to introduce a more detailed vision of the case study used in the work Model-based tool support for Service Design, submitted to the 23rd International Conference on Fundamental Approaches to Software Engineering. The aim here is at showing the models developed during the Service Design process described in the paper, without the space constraints imposed by the paper.The context
The number of students enrolled in a particular public university has doubles in the last six years. The number of final thesis projects has been therefore increased, what supposes a problem for the management of these projects. In order to analyze the problem, along with the rest of stakeholders (supervisors, senior students, administrative staff, etc.) a service design process was deployed in order to explore and ideate solutions to this problem.The process
An exploration and creation phase was first carried out, with the aim of visualizing and producing a common understanding of the problem context. To that end, the Canvas business model shown below was first produced. It shows the different assets and stakeholders related with the main actor of this scenario: the Unit of Undergraduate Thesis, which is the unit in charge of the correct management of final thesis projects in the university. For instance, note that the key partners of this Unit are the supervisors, and two organizations that provide software systems with which final thesis projects are handled.
The previous Canvas model was later used to automatically generate a partial view of the corresponding e³value model. This diagram contains additional information about the scenario, such as the value exchanges taking place between the different actors. This way, two complementary (and shared) visions of the context were explicited in the couple of visual models shown in Figure 1 and Figure 2. The Canvas business model provides a global vision of the organization (in this case the Unit of Undergraduate Thesis), without going deep into value chains or service operations, something that is possible with the e³value one in Figure 2.
Along with the e³value model, the traces model in Figure 3 is generated keeping track of the relationships that hold between the elements of both models (canvas and e³value). Note for instance that key partners of the Canvas business model are mapped into actors in the e³value model. Likewise, many of the value objects involved in the value exchanges of the e³value model are mapped from objects in the Canvas model. For example, in exchange of a payment to the Corporate Aplications Area (one of the elements in the cost structure of the Canvas model), this area provides a web app to the Unit of Undergraduate Thesis. This web app is one of the elements identified as key resource in the Canvas model.
After exploring the problem space, the time has come to move into the solutions space. To that end, INNoVaServ supports 3 business process modeling notations with which the service operations involved in the value exchanges identified in the previous phase can be specified: Service Blueprint, Process Chain Network (PCN) and BPMN. The models defined with these notations play a key role during the reflection and implementation stages of the service design process, since they help to develop, prototype and test solutions.
For instance, the Service Blueprint model shown in Figure 4 was defined during the reflection stage of our case study to design a service that helped on the management of the final thesis lifecycle, along with a supporting application. Note that it gathers all the interactions between the student (service consumer) and its supervisor (service provider), as well as the internal and supporting processes.
Automatic transitions are supported between the business models used in the previous phases (Canvas and e³value) and those used here (all of them business process modeling notations). Note however that mappings between models in the same category (either business or business process models) are more complete that those between models of different category. For instance, around 75% of the e3value model can be generated from the corresponding Canvas model. As well, 98% of the BPMN model can be generated from the corresponding PCN model. By contrast, only 10% of the Service Blueprint can be generated from the corresponding e3value model.
When moving from business to business process models, something particularly useful is to know how many service operations (business processes) will be needed to implement the scenario represented by the business models developed. To that end, the number of value exchanges gathered in the e³value model can be used. Back to Figure 2, five value exchanges are represented. Therefore, five different business process models would be needed to model the underlying service operations. Figure 4 above showed one of them.
Provided that more detail will be needed later on, when diving into implementation, the PCN model shown in Figure 5 was partially generated from the previous Service Blueprint which is quite useful at the time of presenting the new process to the administrative staff of the university.
Figure 6 shows the trace model resulting from the generation of the PCN model from the previous Service Blueprint model. We can observe how the two actors involved in the Service Blueprint model (service provider and customer), are converted into two PCN entities along with the other entities in charge of carrying out the external processes. Observe also how the Service Blueprint steps are converted into PCN activities and placed inside the proper entities.
By contrast, the BPMN shown in Figure 7 below, that was also automatically generated from the previous PCN, turned to be more useful in order to provide with the information needed by the developers to start building the application.
Figure 8 shows the trace model involved in the transformation betwen the previous PCN and BPMN models. As we can see, all the PCN entities are converted into BPMN lanes, which contains all of its corresponding activities (differentiating from normal activities or decision nodes among other types of activities). In the same way, all the sequences contained in the PCN model are mantained in the generated BPMN model.
Finally, note that the generated trace models can explicit the relationships of the model elements involved in each transformation what eases the tracing of every action or decision, despite the language used to represent the model.