Goal Modeling:KAOS

来源:互联网 发布:minecraftpe凡家物语js 编辑:程序博客网 时间:2024/06/05 23:41

Goal: is an objective the system under consideration should achieve;

KAOS: knowledge acquisition in automated specification is a kind of goal-oriented requirements engineering method, which focuses on goal analysis and elaboration. Using goal refinement can arrive at specific requirements.

In this article I will show how to use KAOS to modelling with a simple system – 3DImage Browse System


1. Problem statement

In recent years, with the 3D related technologycontinues to develop, people have a great demand for 3D images of objects inE-commerce, education, medical and other aspects. 3DImage browse system is ableto use the hardware device through simple operations to obtain the relevantimage data which were used in software for 3D image generation, allowing usersto generate the 3DImage of object in a quick and easy way and browse the objectfrom any angle in real-time .


2. Goal model

2.1 Generic goal pattern

In 3DImage Browse System,there are two main goals, one is ’System satisfying functional needs’ which means ‘browse requests need satisfied’ in this system, the other is ‘System satisfying non-functional needs’ which means ’browse requests satisfied in an efficient, usable, cheap way’ in this system. Figure 1 shows the first goal diagram.
这里写图片描述

2.2 Browse requests satisfied

Browse the 3Dimage generated by the system is the service expected by passengers. In 3DImage Browse System, we expect users not to change their mind until the system let them browse the 3DImage. Otherwise the goal ’browse requests satisfied’ could not be achieved. So we apply generic pattern to our 3DImage browse system. see in Figure 2:
这里写图片描述

The ‘Browseservice called’ and ‘Users browse the 3DImages of specific object’ sub-goalsare divided from the ’browse requests satisfied’ goal. The ‘call request notcanceled’ expectation means that the upper goal can’t be satisfied if the userchanges his mind and don’t want to browse the 3DImages of objects any more.

2.2.1 Browse service called

As for ‘Browse service called’ goal, system developers take the responsibility of ‘GUI Interface Provided’. software takes the responsibility of ’Users informed of their operations’ status’ and ‘GUI operated detected’ requirements. User play the agent role of the ‘GUI operated’ expectation. See in Figure 3:
这里写图片描述

2.2.2 GUI Interface Provided

Which kind of interface do we need for the 3DImage Browse System? The interface must enable a user to operate hardware device to take photos of specific object which will be used to generate 3DImages and browse the 3DImages rendering by photos from any angles. There are two possible solution show as follows:
-Two interfaceboth on hardware and software part.

  • Two interfaceboth on hardware and software part.
  • One interface on hardware device thatcontrol the camera to take photos, the other interface on software part controlthe generation and browse of 3DImage.

Only one interface that control both the hardware and software part, include taking photos, generating and browsing 3DImages.
In first solution, there are two interface both on hardware and software. It means user scan only use one interface to take photos repeatedly or use the other interface to generate or browse 3DImages from token photos which was more efficient and usable than the second solution. See in Figure 4:
这里写图片描述

2.2.3 GUI operated

Based on the GUI interface designed above, we refine the goal ‘GUI operated’. See in Figure 5:
这里写图片描述

2.2.4 Users browse the 3DImage of specific object

Applying the milestone tactic introduces subgoals to refine the goal “Users browse the 3DImage of specific object”. First, hardware device like camera need to take photos.Then user open the display window. After the software part use new or old photos to generate 3DImage of specific object, user can select different angle to browse and the system will show 3DImage from the angle that user selected.See in Figure 6:
这里写图片描述

2.3 Usable system

The “usable system” goal means the system is easy-to-use for users, mainly in two aspects,one is easy to collect data, the other is easy to browse. Easy to collect data means the photos are easy to take and the angles are easy to set. Easy to browse means it’s easy to change viewpoint and scale. See in Figure 7:
这里写图片描述

2.4 Efficient system

The “Efficientsystem” goal means the system take photos, generate and browse 3DImageefficiently. Taking photos efficiently means the operation takes short time andthe angle of the camera can be changed flexible, See in Figure 8:
这里写图片描述


3. Responsibility Model

There are threeagents that responsible for the requirements and expectations in the system.The responsibility models for each agent are shown as follows:
the systemdeveloper is responsible for the interface designed for user to operate thehardware devices and software part. See in Figure 9:
这里写图片描述

the agent“software” is responsible for some detail requirements which will make the system efficient and usable to users. See in Figure 10:
这里写图片描述
the agent“hardware” is responsible for some detail requirements which directly related to hardware devices. See in Figure 11:
这里写图片描述


4. Object Model

Browsing throughthe goal models, some main object models are identified as follows:
the 3DImage Browse System has two components, one is hardware devices, the other is executable program (also known as the software part). See in Figure 12:
这里写图片描述
the “executable produce” is consist of three part, one compression produce, one preprocessor produce and one rendering produce. See in figure 13:
这里写图片描述
the “hardwaredevice” can have more than one camera and more than one rotating arm. See infigure 14:
这里写图片描述


5. Operation Model

The followingoperation models describe all the behaviors that hardware and software need todo to fulfill the requirements.
Objects that inthe system are shown as follows

As for “hardware”part, operation models see in figure 16 and figure 18:
这里写图片描述

这里写图片描述

As for “software”part, operation models see in figure 17 and figure 19:
这里写图片描述
这里写图片描述


6. Obstacle

In order to produce a reliable and robust system, the obstacle that will obstruct the system mainly in two aspects, one is result unpredictable which can’t always guarantee a precise result, see in figure 20:
这里写图片描述
the other is the time not short enough to give the users a good experience which mainly because the large number of photos. See in figure 21:
这里写图片描述


0 0
原创粉丝点击