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:
- Goal Modeling:KAOS
- SPOJ KAOS
- goal
- SPOJ KAOS [Trie]【字符串】
- Trie SOPJ KAOS
- SPOJ 25179 KAOS
- 修复Kaos的中文显示
- 用KAOS进行目标建模
- 软件需求工程--KAOS建模
- Maven Goal !
- Goal & Responsibility
- Smart Goal
- About goal
- SMART Goal
- maven goal
- My Goal
- Goal: Economics
- Goal: Sociology
- 第一周+周三学习笔记
- java之旅之JDBC
- innodb/myisam区别
- Java集合类的使用
- PAT 乙级 锤子剪刀布 (20)
- Goal Modeling:KAOS
- 链表定义
- linux下输出文件夹下所有文件夹名称并重定向
- 用自己写的接口文档生成工具生成入参出参文档
- Git常用命令总结
- android开发技巧收集
- python学习之(7)正则表达式篇
- 关于linux下安装eclipse后可能出现空格键变短的情况
- 深度学习资料