软件工程习题及解答内容摘要:
得到 Jones 记录。 现在事务记录关键字与旧的主文件记录关键字相同,正如从事务文件中看到的那样,先修改旧的主文件记录( Jones记录),然后把它删除,以便读取下一个事务记录( Smith)和下一个旧的主文件记录 (也是 Smith)。 遗憾的是,事务类型是 1(插入),但是在旧的主文件中已经有 Smith记录了,因此,在输入数据中有错误,将 Smith记录写入异常报告中。 更确切地说,将 Smith事务记录写入异常报告,而把Smith旧的主文件记录写入新的主文件。 总结上述例子中揭示出的处理过程,得到表。 表 处理规则 根据表 ,可以对图 “处理”框求精,得图 二步求精结果。 为减少连线(特别是为了减少交叉线),在这张流程图中用标有相同字母(例如,字母 A) 的圆代表应该连在一起的点。 图中连到“输入”和“输出”方框的虚线表示把如何处理输入和输出的设计决定推迟到较晚的求精步骤中再做出,该图其余部分是实现“处理”的流程图,或者说是对处理事务的算法的初步求精结果。 正如刚才讲过的,已把对输入和输出问题的考虑推迟了,此外,还没有规定文件结束的条件,也没有规定遇到出错条件时应该怎么处理。 逐步求精方法的优点就在于可以把这类问题推迟到后面的求精步骤中去解决。 图 第二步求精 下一步设计步骤是求精图 中的“输入”和“输出”两个处理框,得到图 ,在这个设计 步骤中仍然没有处理到文件结束的条件,也没有写入工作结束的信息,这些设计工作可以在后面的求精步骤中完成。 使用逐步求精方法设计软件时,每完成一个求精步骤都必须对这个求精步骤得出的设计结果仔细审查,没有发现错误才能进行下一个求精步骤的设计工作,如果发现了错误则应该及时纠正。 审查图 ,该设计包含一个严重错误。 考虑图。 假设当前的事务是 2Jones,也就是修改 Jones记录,也就是修改 Jones记录,并且当前的旧的主文件记录是 Jones。 在图 ,因为事务记录 的关键字与旧的主文件记录的关键字相同,沿最左边的路径到底“测试事务类型”判定框。 因为当前的事务类型是“修改”,所以修改旧的主文件记录并把修改后的记录写入新的主文件。 然后读取下一个事务记录,该记录是 3Jones,也就是删除 Jones 记录,但是,已经把修改后的 Jones记录写入新的主文件记录了。 在用逐步求精方法设计软件的过程中对每个求精步骤得出的设计结果都进行严格审查的好处是,一旦发现错误,不必从头开始重做一遍,只需回到前一步的设计结果,从那里开始重新设计即可。 在本设计中,第二步求精的结果(见图 )是正 确的,可以把它作为第三步求精的基础。 图 第三步求精(有严重错误) 正如刚才讲过的,图 ,当事务类型为 2(修改)时没有考虑下一个事务的影响,就把修改后的主文件记录写入新的主文件中。 为了改正上述错误,我们采用“前瞻一步”的策略,也就是说,只有在分析了一个事务类型的下一个事务记录之后,才能处理该事务记录。 更具体地说,当一个事务记录的类型为“修改”时,修改缓冲区中的旧主文件记录,然后读取下一个事务记录,如果刚读出的事务记录的关键字与缓冲区中的旧文件记录的关键字不相同,则把缓冲 区中已经修改过的旧主文件记录写入新的主文件;如果新读出的事务记录的关键字与主文件记录关键字相同,则依据新的事务记录的类型来处理缓冲区中的旧主文件记录。 由于事务文件是预先排好序的,当新读出的事务记录与主文件记录有相同的关键字时,也就是新读出的事务记录与前一个事务记录是针对同一个订户的事务的,新读出的事务记录的类型只可能是“修改”或“删除”(已知前一个事务记录的类型是“修改”)。 采用“前瞻一步”的设计策略,得出图。 图 改正错误后的第三步求精 为简单起见,当针对同一个订户有多个事务时,仅考虑了在修改事务之后又有修改事务或删除事务的情况。 实际上,如果对事务文件先进行预处理,使得针对每位订户最多只有一个事务,则更新顺序主文件的算法可大大简化。 下面列出对事务文件可能做的一些预处理:如果针对同一个订户有多个修改事务,则仅保留最后一个修改事务(本问题中的主文件记录仅有订户姓名和地址两项信息,多次修改地址则以最后一次修改为准);若插入一位新订户记录后,又有零或多个修改事务,最后是一个删除事务,则略去这一系列事务;若对一个订户记录既有修改事务又有删除事务,则略 去修改事务,仅保留删除事务;若针对一位订户既有插入事务又有修改事务,则用修改事务的内容(地址信息)更正插入事务的内容(地址信息),然后删去这个修改事务。 在第 4次求精的过程中,应该考虑迄今为止被忽略的诸如打开和关闭文件这样的细节问题。 采用逐步求精方法设计软件时,这样的细节问题是在基本算法被完全设计出来之后,最后处理的。 显然,不打开和关闭文件,程序是不可能正常运行的,也就是说,这些问题是必须处理的,但是,重要的是,处理这类细节问题应该在设计的最后阶段进行。 在设计的早期阶段,设计者集中精力关注的 7 个左右问题是不 应该包括打开和关闭文件这样的细节问题的。 打开和关闭文件与特定软件的设计无关,它们只是作为任何设计的一部分的实现细节。 然而,在后面的求精步骤中,打开和关闭文件变得重要起来,必须加以处理。 从前述设计过程可知,可以把逐步求精方法看作是建立在某个阶段内需要解决的各种问题的优先级的一种技术。 逐步求精方法能够确保每个问题都得到解决,并且是在合适的时间解决,在任何时刻都不需要同时考虑 7个以上的问题。 :从图 ,这个程序的功能是计算若干个指定地点的每日平均温度。 变量 sum保存某地一天之内在指 定的时间取样点的温度之和。 程序运行时首先初始化变量 sum并打开文件,然后读取地点、时间和温度等原始数据,创建用于保存这些数据的温度记录,接下来计算特定地点的日平均温度,存储温度记录。 重复调用“读取地点、时间和温度”、“创建新的温度记录”、“计算特定地点的日平均温度”和“存储温度记录”等模块,直至计算出并保存好所有指定地点的日平均温度。 最后,打印平均温度并关闭文件。 从上述叙述可知,“计算多个地点的日平均温度”、“读取地点、时间和温度”、“创建新的温度记录”、“计算特定地点的日平均温度”和“存储温度记录”等 5个模块,每个都完成一个单一的功能,模块内所有元素都为完成同一个功能服务,彼此结合的十分紧密,因此,这 5个模块的内聚类型都是功能内聚。 初看起来,由于初始化变量 sum和打开文件这两个操作都是在程序运行的初始阶段完成的,“初始化变量 sum和打开文件” 这个模块的内聚类型似乎是时间内聚。 但是,初始化变量 sum是本程序特有的操作,而打开文件是硬件要求的操作,是任何使用文件的程序都包含的一个操作,并非本程序特有的操作。 当可以分配两个或更多个不同级别的内聚类型给一个模块时,规则是分配最低级别的内聚类型给该模块。 因此,“ 初始化变量 sum和打开文件”这个模块的内聚类型都是偶然内聚。 同理,“关闭文件并打印平均温度” 这个模块的内聚类型也是偶然内聚。 :综合分析图。 例如,当模块 p调用模块 q时(接口 1),它传递一个参数 飞机类型。 当模块 q把控制返还给模块 p时,它传回一个状态标志。 某些模块之间的耦合类型是明显的,例。软件工程习题及解答
相关推荐
(详见平面图),以加快土方开挖的进度,降低开挖成本,提高效率,具体分层情况详见附图土方开挖平面及开挖时的工况图。 第一层土方开挖(挖深 ,标高 ~ ) 第一层开挖方量约为 23000m179。 ,其中华峰中心为 10000m179。 ,按华峰与迪凯划分两个施工区域进行开挖计划 5天完成。 土方开挖分别选用 3台 PC200 型反铲挖土机进行施工,自南向北依次进行。 挖至设计标高后
们有最初的迷茫、紧张、陌生到现在的习惯、大方自然,工作、生活看似 14 单调,但是,不论从刚开始的听课,到后来的讲课,参加班级管理,我们都受益匪浅:不在懒床,不再拖拉,多了责任,多了经验,也收获了幸福。 从脚步迈入二中这所学校大门开始,我就知道自己已经不仅仅是一个大学生了,我现在是一个老师,我要以老师的身份来完成这半年的实习生涯。 另外在这里 ,学校的领导和老师都给了我很多帮助。
风换气(通风量不少于 25L/S)等措施,以防止急性中毒事故的发生。 人工挖孔作业一旦发生人员中毒、窒息等事故,必须在现场按应急措施规范要求实施抢救,根据情况及时送医院进一步抢救治疗。 施工现场的一切电源、电路的安装和拆除必须由持证电工操作。 用电设备必须严格接地或接零保护且安装漏电保护器,各桩孔用电必须分闸,严禁一闸多用。 孔上电缆必须架空 以上,严禁拖地、埋压土中,孔内电缆
( 2)我公司组建的项目经理部是一支从事大型土石方工程施工多年、经验丰富、能吃苦耐劳的施工队伍。 ( 3)精选施工用材,拒绝使用不合格或性能不稳定的材料。 ( 4)科学设计,规范施工工艺,严格遵守施工工艺进行施工。 ( 5)建立严格的技术交底制度,项目部负责编制技术交底送交公司审核补充后进行施工。 现场施工员负责向操作工人讲解,督促实施,对每一个分部分项工程或单一工程类别都必须具有 详实
x 为一维或二维的信号向量或矩阵● in1 为指定处理方式 in为● in2 为指定处理方式 in wv 为使用小波分解 in wp 为使用小波包分解 ● thr 为函数选择的阈值 ● 输出参数 sorh 为函数选择的阈值使用方式 sorh s 为软阈值 sorh h 为硬阈值 ● 输出参数 keepapp 决定了是否对近似分量进行阈值处理可选为 1 或 0 ● 输出参数 crit 为使用小波
敷设: 工艺要求: 1)敷设电线、电缆应合理安排,防止交叉,敷设时应防止电线、电缆之间及电线电缆与其他硬物之间的磨擦,固定时松紧度要适宜; 2)多蕊电缆的弯曲半径不应小于其外径的 6 倍,同轴电缆的弯曲半径不应小于其外径的 10 倍; 3)线缆槽架敷设时的截面利用率≤ 60%,穿管敷设时≤ 40%; 4)电线、电缆沿支架或在线槽内敷设时应在下列各处固定: 当电线、电缆倾斜坡度超过 45