An Example Aligning computing systems with their en

5. An Example

This section works through sufficient steps of the proposed methodology to explain the SSM-XP linkage. This is illustrated through a fictional project for a pizza restaurant, Pizza Promise, which provides home delivery in its immediate area. It is assumed that the project has been instigated by the owner who is unhappy with the time taken to record customer details given over the telephone and the time wasted during delivery when addresses are not recorded accurately. The owner’s belief is that the situation can be improved by using a computing system to determine address details from a post code and house number, and then using this information to label each customer’s pizza box, thereby reducing effort and the risk of transcription errors. The requirements here seem well understood but a broader analysis is desirable to anticipate other opportunities for computer use to enhance the business. For example, if customer records are maintained then a loyalty scheme might be introduced to offer discounts to regular customers. Step1. SSM: Express Problem Situation In the first step, a rich picture, depicting a shared understanding of the problem under investigation, is developed. A picture for Pizza Promise is presented in Figure 3. This has been simplified for illustration purposes. It shows all the essential elements of the pizza restaurant business, including an indication that pizzas can be ordered over the counter at the restaurant as well as by telephone, and that orders can be collected directly as well as delivered. In a full rich picture for this situation, there would also be an indication of i all significant external dependencies, such as the suppliers of raw materials; ii other areas of difficulty, such as slow deliveries when the restaurant is busy; and iii other possible innovations, such as a lunchtime delivery service for local businesses. Figure 3: Rich Picture for Pizza Promise Step 2. SSM: Create Root Definitions From the discussion so far, it is possible to identify several relevant viewpoints of this problem situation. For simplicity, just one will be considered here, namely the central goal of providing a reliable, competitive and convenient food service. The six elements of the SSM CATWOE analysis are shown in Table 3. A root definition can also be presented as a single statement, of the form: A Pizza Promise owned system to provide a reliable, competitive and convenient food service to the general public in its surrounding area, using restaurant staff to prepare and deliver ordered pizzas, taking account of the demand for pizza and the external factors affecting its accurate delivery. Table 3: Sample Root Definition Components Meaning Customers The general public in the surrounding area Actors Restaurant staff Transformation Prepare and deliver ordered pizzas Weltanschauung Provide a reliable, competitive and convenient food service Owner Pizza Promise Environment The demand for pizza; the external factors affecting its accurate delivery Home Delivery Home Customers Slow phone Order Pizza Promise Direct Collection Counter Orders Preparation Computer Use? Difficult Delivery Proceedings of the 13th Annual IEEE International Symposium and Workshop on Engineering of Computer Based Systems ECBS’06 0-7695-2546-606 20.00 © 2006 IEEE A10: monitor that the restaurant is providing a reliable, competitive convenient food service, taking control action as necessary A2: handle orders A9: set staffing levels A7: be aware of external factors affecting service A8: define expectations for service A6: be aware of demand A5: prepare and deliver ordered pizzas TCA A4: be aware of competition A1: publicise service A3 determine charges Figure 4: Sample Conceptual Model Step 3. SSM: Derive Conceptual Models Figure 4 shows a conceptual model derived from the root definition described in Table 3. The model includes the transformation taken directly from the root definition A5. This is essentially the central activity of the model. Another important activity is A10, which monitors that the defined Weltanschauung viewpoint is achieved, taking control action if necessary TCA. This can affect any other activity in the model. Activities are also added to handle the environmental constraints listed in the root definition A4, A7 and to cover consequential or implied activities A1, A3, A6, A8, A9. Step 4. Identify Possible Computing Systems Possible computing systems can be identified by working systematically through each activity in a conceptual model and noting opportunities for computing support. Each activity may suggest a new system or use a system already noted. Table 4 shows a list of possible systems for Pizza Promise, including a web site for the restaurant. Table 4: Suggested Systems for Pizza Promise Activity Possible systems A1. Publicise service Restaurant web site P1: Address System P6: Customer System A2. Handle orders Restaurant web site P1: Address System P2: Product Availability System P3: Scheduling System P4: Order System P5: Sales System P6: Customer System A3.Determine charges P5: Sales System A4. Be aware of competition A5. Prepare and deliver ordered pizzas P2: Product Availability System P3: Scheduling System P4: Order System P5: Sales System P6: Customer System P7: Stock Control System A6. Be aware of demand P5: Sales System A7. Be aware of external factors affecting service A8: Define expectations for service P8: Business Monitoring System A9: Set staffing levels P3: Scheduling System A10: Monitor effectiveness of service P4: Order System P5: Sales System P7: Stock Control System P8: Business Monitoring System P9: Customer Feedback System As a clarification of the suitability and adequacy of these systems it is useful to set them out in a diagram that shows their inter-dependency. Figure 5, for example, suggests the likely relationships among the systems identified in Table 4. The functional details of these systems are not decided until the seventh step in the development process, which deals with the implementation of XP iterations. Proceedings of the 13th Annual IEEE International Symposium and Workshop on Engineering of Computer Based Systems ECBS’06 0-7695-2546-606 20.00 © 2006 IEEE Restaurant Web Site Customer System Product Availability System Order System Customer Feedback System Address System Scheduling System Business Monitoring System Sales System Stock Control System Figure 5: Computing System Dependency Model Steps 5-7. XP: Release Plan, User Stories Iterations The initial motivation for the project was the restaurant owner’s request for an address lookup system. From the SSM analysis this has emerged as one element of a possible suite of inter-connected systems. The owner at this stage can still settle for that feature alone but will be taking the decision with knowledge of the many more forms of support that could be provided. Through discussion with the owner, a Release Plan can be produced suggesting an order of implementation and the level of sophistication involved in each case. For example, a basic web site might be implemented immediately, giving information on the services available, covering opening hours, range of pizzas, and contact information. This can subsequently be expanded to include online ordering when an order system and customer system are being created. The advantage of having the options laid out in this way is fairly obvious and, importantly, has been achieved with relatively little effort because of the high level of analysis being performed. Much more effort is needed in subsequently determining the detail of the user stories and the definition of individual iterations.

6. Conclusion