1.论述测试与正确性论证的效果差异,比较其优缺点

  测试:通过大量测试样例覆盖测试代码,来检测代码功能的实现是否正确是否完善。正确性论证:通过对代码规格和逻辑的严密分析,推论和证明,来验证代码实现的正确性。因此,测试能够通过测试结果,直观的判断出程序是否错误。但是又因为难以构造覆盖完整的测试集,所以不能保证程序在设计方面没有问题。而正确性论证能够通过严谨的分析论证,保证程序的正确性和覆盖率。但因为它是形式论证和自然语言层次逻辑的结合,自然语言层次逻辑推理的正确性又难以确保和验证。所以如果它不够直观,出现错误也难以察觉。

2.调研OCL语言,并比较其与课程所介绍的JSF规格之间的相似和不同之处

  OCL(object constraint language)是对象约束语言,用来进行对象的约束定义,是形式化的无二异语言。OCL主要用于在建模时作为图形符号的补充,含有约束,前置条件,后置条件等。OCL还用于对UML图中的任何元素写表达式。OCL是约束和查询语言,有一个形式化的数学语义,允许用户定义自己的OCL符号集。

  相同点:都是形式化的约束语言,在程序中进行无二义的逻辑约束。都有同样的前置条件,后置条件和不变式

  不同点:约束的时间不同:OCL主要是在写程序前理论建模的时候,对每个类进行约束,JSF则主要在代码功能实现前,对每个类进行约束。表达的不同:JSF主要使用逻辑表达式,自然语言使用的少。OCL的表达式和数据都有基本类型。

3.根据第十四次作业的单电梯系统,针对调度器、电梯、请求队列和 请求,至少整理出 一幅UML类图、一幅顺序图和一幅状态图,并使用 图(graph)来表示出模型

  第十四次作业没有提交,所以不做整理。

4.整理总结一个学期所学所练

4.1阐述四个单元模块知识点之间的关系

  第一单元:java入门到面向对象设计。作业从多项式计算到傻瓜电梯,巩固了面向对象设计的思维。

  第二单元:从面向对象设计到多线程的转变。作业通过对电梯功能的扩展,实现多线程。以及对线程的安全问题和如何合理的利用线程的同步和互斥的研究。

  第三单元:规格化设计。学会如何增强自身代码的可读性和如何从方法的层面去实现程序的正确性。

  第四单元:引入自动化测试。通过实现基于输入实现软件生成的自动化覆盖测试,学会论证程序地正确性。

4.2梳理自己所设计实现的程序,分析自己在设计、测试和质量上的进步

  有进步,同时有待提高的方面也很多。

4.3阐述自己对工程化开发的理解

  工程化开发是一个复杂的大型的工作,是需要多人一起配合完成的。因此代码的可读性和规格很重要。以及对每一部分程序的正确性和完善性的测试也很重要。

4.4对课程的任何期望或建议

oo第四次总结的更多相关文章

  1. OO第四次博客作业!

    oo第四次博客作业 一.测试与正确性论证比较 测试只是单方面片面的证明对于当前的输入程序是正确的,测试只能证明程序有错误,不能说明程序是对的. 正确性论证是程序达到预期目的的一般性陈述,是通过规范化的 ...

  2. OO第四次课程总结分析

    OO第四次课程总结分析 测试与正确性论证的效果差异及优缺点 测试,即使用测试样例来验证我们的程序是否能完成相应功能的过程.测试数据的产生基于前置条件和后置条件,通过执行测试数据检查方法输出是否满足需求 ...

  3. 【OO学习】OO第四单元作业总结及OO课程总结

    [OO学习]OO第四单元作业总结及OO课程总结 第四单元作业架构设计 第十三次作业 第十四次作业 总结 这两次作业架构思路上是一样的. 通过将需要使用的UmlElement,封装成Element的子类 ...

  4. OO第四单元(UML)单元总结

    OO第四单元(UML)单元总结 这是OO课程的第四个单元,也是最后一个单元.这个单元只有两次作业,相比前三个单元少一次作业.而且从内容上讲这个单元的作业目的以了解UML为主,所以相对前三个单元比较简单 ...

  5. OO第四单元总结及课程总结

    OO第四单元总结及课程总结 一.前言 紧张刺激的OO“昆仑课程”接近尾声,经过一个学期的学习,我的收获和感触颇多,借此博客作业的机会,对自己OO这门课程做一个总结.本博客主要有以下五个方面,一是第UM ...

  6. OO第四单元博客作业

    OO第四单元博客作业 BUAA_1706_HugeGun 目录 第四单元作业架构设计 四个单元架构设计及OO方法理解 四个单元测试理解与实践演进 课程收获 一点建议 第四单元作业架构设计 ### 第十 ...

  7. OO第四单元总结及学期总结

    目录 OO第四单元总结及学期总结 第四单元三次作业架构设计 第十三次作业 第十四次作业 第十五次作业 四个单元中架构设计及OO方法理解的演进 第一单元 第二单元 第三单元 第四单元 四个单元中测试理解 ...

  8. OO第四单元——基于UML的UML解析器总结&OO课程总结

    OO第四单元--基于UML的UML解析器总结&OO课程总结 前言:一学期愉快(痛苦)的OO课程学习结束了,OO几个单元作业都各有特色,实验也各有特色,仔细回味起来,不再是单纯的敲代码(但自己还 ...

  9. OO第四单元总结暨期末总结

    OO第四单元总结暨期末总结 目录 OO第四单元总结暨期末总结 第四单元三次作业架构与迭代 整体感受 HW1 HW2 HW3 四个单元架构设计与方法演进 Unit1 Unit2 Unit3 Unit4 ...

  10. oo第四单元作业总结暨课程总结

    oo第四单元作业总结暨课程总结 一.本单元作业架构设计 本单元需要构建一个UML解析器,通过对输入的UML类图/顺序图/状态图的相关信息进行解析以供查询,其中课程组已提供输入整体架构及输入解析部分,仅 ...

随机推荐

  1. 🍓JavaScript 对象原型链继承的弊端 🍓

  2. pythonのdjango Session体验

    Session Django中默认支持Session,其内部提供了5种类型的Session供开发者使用: 数据库(默认)缓存文件缓存+数据库加密cookie1.数据库Session Django默认支 ...

  3. TortoiseGit与GIt生成ssh秘钥添加到github账号的简单方法!简单使用

    今天升级了自己电脑上的git与TortoiseGit,全部换成了最新版,后来不知道怎么的git的秘钥还能使用,可以直接拉取或者提交ssh地址克隆的代码,可是小乌龟客户端就悲剧了 公司的项目有key.p ...

  4. Dilated Convolution

    各种各样的卷积方式, 详细见 各种卷积的 gif 图 Convolution animations  Padding, strides Transposed convolution animatio ...

  5. 手把手教你写vue插件并发布(一)

    vue的插件开发 这篇文章较长,需要一定的阅读时间.这里有一份改善版本的插件笔记,在一个项目下完成开发.测试.发布的全过程.https://www.cnblogs.com/adouwt/p/96555 ...

  6. MariaDB:SSL配置

    参考文章:https://blog.csdn.net/johnhill_/article/details/72831932 ,谢谢! 1.安装openssl 下载地址:http://slproweb. ...

  7. 一分30秒 kali 开机显示 a start job is running for dev-disk 处理

    在给kali虚拟机扩容后,使用fdisk  /dev/sda  更改新建分区后,重启系统出现一分30秒等待. 解决方案:    (root 权限) 第一步:sudo blkid (查看当前系统的真实的 ...

  8. [原创]基于Zynq AXI-Bram Standalone & Linux 例程

    基于Zynq AXI-Bram Standalone & Linux 例程 待添加完善中

  9. python---哈希算法实现

    # coding = utf-8 class Array: def __init__(self, size=32, init=None): self._size = size self._items ...

  10. OpenSSL 提取 pfx 数字证书公钥与私钥

    由于之前生产环境已经使用了 Identityserver4 用来做授权与认证的服务,而新项目采用 Spring Cloud 微服务体系,一方面 Spring Cloud 官方暂时只支持 OAuth2. ...