系统操作规约(System Operation Contract)

领域建模补充

问题:

  1.  联系有方向性
  2.  属性有类型
  3.  领域模型尽量避免出现界面相关的东西


习题

问题

考察点

系统操作规约

示例

A)

Operation: MakeSale()

Cross References: UC:Purchase

Preconditions: User has logged in

Postconditions:

An ProductList w was created.

Attributes of w were initialized.

契约CO2

checkEnemyHealth

操作

 checkEnemyHealth(enemyId)

交叉引用

前置条件

·角色c  (Character)和敌人e (Enemy) 已创建

·characterAttack()dealDamage(enemyId)操作已完成

·游戏处于“活动”状态

后置条件

返回敌人e(Enemy)的血量,精度为float

模板 

CO1:

Operation:                

Cross References:          

Preconditions:             

Postconditions:             

原则性问题:

  1.  没有SSD的每一个系统操作编写SSC
  2.  SOC名字对应系统操作的名字
  3.  部分Postcondition 和实际情况有较大差别。

 解析

每个契约均为前面SSD图用户向系统发出的动作

例如

Contract CO1: Login(WorkerId, psw)

Contract CO2: AddItem()

Contract CO3: EnterItemDetails:(Name, PartitionNum, ShelfNum, LayerNum)

Contract CO4: ConfirmAddition()

 Operation:    与Contract CO1相同 

Cross References:   所填内容为SSD图所画的用例名

Preconditions:    前置条件         

Postconditions:    后置条件 

我的答案

  • System Operation Contract

CO1: enterBook(BookID)

Operation:                enterBook(BookID)

Cross References:          UC: Borrow Books

Preconditions:             ongoing book borrowing service

Postconditions:            • The book whose BookID equals the parameter named                                         BookID was associated with b.

CO2: borrowBook(BookID)

Operation:                 borrowBook(BookID)

Cross References:           UC: Borrow Books

Preconditions:              ongoing book borrowing service

Postconditions:             • For all Book instances which were associated with b,

                                        BorrowStatus became “borrowed.”

                                       • b.dueDate was initialized.

可参考第二组的图书管理系统做法,该小组做法更严谨

  • 11
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值