软件构造期末复习03 Specification

一、Pre-condition和Post-condition
  • 前置条件:对客户端的约束,在使用方法时必须满足的条件
  • 后置条件:对开发者的约束,方法结束时必须满足的条件
  • 契约:如果前置条件满足了,后置条件必须满足
二、Specification撰写
  • @param : 表明参数的前置条件
  • @throws : 表明异常
  • @effects : 表明函数运行结果,包括函数可能会对参数造成的影响
  • @returns : 表明后置条件
三、确定性与陈述性
  • 确定性(deterministic) : 仅有一个合法输出?
  • 陈述性(declarative): 没有描述计算过程?
四、Specification的强度
概念
  • S2的规约强于S1 $ <=>$ S2前置条件更弱,后置条件更强
比较强度的方法
  • 验证S2的前置条件更弱
  • 验证S2在S1的前置条件下,S2的后置条件更强
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值