摘要: 架构设计 本单元三次作业提供的UmlElement大多是自下而上的节点,我的架构是根据传入的元素建立自上而下的树形结构,并保存根节点,以便于查询。如第一次作业保存所有的类和接口节点,并将类和接口节点连接到属性/方法等。第二次作业在general类中增加三个内部属性,分别解析类图、顺序图和状态转移图, 阅读全文
posted @ 2020-06-14 19:36 言-午 阅读(129) 评论(1) 推荐(1) 编辑
摘要: JML理论基础,应用工具链情况 理论基础 JML是用于对Java程序进行规格化设计的一种表示语言。从理论角度,JML要求方法和数据类型在特定的时刻满足特定的谓词逻辑,因此JML语言没有二义性。JML主要由方法规格和类型规格组成。 方法规格 前置条件 调用者保证满足前置条件 后置条件 方法实现者保证后 阅读全文
posted @ 2020-05-23 12:53 言-午 阅读(131) 评论(0) 推荐(0) 编辑
摘要: 设计策略分析 三次作业都采用生产者消费者的设计模式,电梯调度用了look算法。在第一次作业中,主要有电梯和请求模拟器两个线程。我在第一次作业的设计中加入了调度器,主要负责电梯和请求队列的交互,即在何时的时机从请求队列中取得请求放入调度器的内部队列中,并给电梯发送指令,故电梯运行的逻辑大部分放在调度器 阅读全文
posted @ 2020-04-15 11:41 言-午 阅读(211) 评论(0) 推荐(0) 编辑
摘要: 基于度量的程序结构 指标解析 由于第一次使用MetricsReloaded等分析工具,故首先列举一些评价指标 project层次 v(G)avg平均圈复杂度 v(G)tot总圈复杂度 CF整个project的耦合程度 class层次 OCavg代表类的方法的平均循环复杂度 WMC代表类的方法的总循环 阅读全文
posted @ 2020-03-21 11:34 言-午 阅读(460) 评论(0) 推荐(0) 编辑