当前位置:文档之家› 软件工程导论实验报告1实验1熟悉常用的CASE工具

软件工程导论实验报告1实验1熟悉常用的CASE工具

软件工程导论实验报告1实验1熟悉常用的CASE工具
软件工程导论实验报告1实验1熟悉常用的CASE工具

大学实验报告

2018年3月26日

课程名称:软件工程导论实验名称:实验1熟悉常用的CASE工具

班级及学号:姓名:同组人:

签名:

指导教师:指导教师评定:

一、实验环境

Win7、VISIO软件。

二、实验目的

1)熟悉工具。

2)使用VISIO画出E-R图。

三、实验内容

3.1利用Visio绘制业务流程图。

1、制作业务流程图图元

业务流程图5种基本图元(主体、单证、业务处理、数据存储和业务流程流转方向)可直接利用Visio提供的基本图形对象绘制,也可利用多

个对象组合形成。

可选择“文件”->“形状”->“框图”->“基本形状”绘制主体(圆形)、单证(文档)和业务处理(矩形);选择“文件”->“形状”->“软

件”->“Gane-Sarson”选项,打开Gane-Sarson图形对象集绘制数据存

储;选择“文件”->“形状”->“其他Visio方案”->“连接线”选项,

选择“有向线1”,选择“无线端”绘制业务处理。

2.绘制业务流程图

双击图元添加文字,了解绘制业务流程图的方法。

3.2利用Visio绘制数据流图。

1.制作数据流图图元

数据流图4种基本图元(外部项、处理功能、数据流和数据存储)中,外部项也需要利用“直线”和“正方形”对象组合形成,其他图元类似前

面方法绘制。

2.绘制完整的数据流图。

3.3利用Visio绘制概要设计模型。

可选择“文件”->“形状”->“软件”->“窗口和对话框”绘制主体;

选择“文件”->“形状”->“软件”->“公共控件”选项绘制按钮文本框;

四、实验结果

E-R图

基本运算器实验模板

计算机科学与技术系 实验报告 专业名称计算机科学与技术 课程名称计算机组成原理 项目名称基本运算器实验 班级 学号 姓名 同组人员无 实验日期 2016.5.17

一、实验目的与要求 (一) 实验目的: (1) 了解运算器的组成结构。 (2) 掌握运算器的工作原理。 (二) 实验要求: (1)实验之前,应认真准备,写出实验步骤和具体设计内容,否则实验效率会特别低,一次实验时间根本无法完成实验内容,即使基本作对了,也很难说懂得了些什么重要教学内容。 (2)应在实验前掌握所有控制信号的作用,写出实验预习报告并带入实验室。 (3)实验过程中,应认真进行实验操作,既不要因为粗心造成短路等事故而破坏设备,又要仔细思考实验有关内容,把自己想不明白的问题通过实验理解清楚。 二、实验逻辑原理图与分析 2.1 画实验逻辑原理图 xxxxxxxxxx xxxxxxxxxx 多路开关 判零 A=xx LOG=xx SHF=xx ART=xx 进位 B=xx & &

2.2 逻辑原理图分析 1)运算器内部含有三个独立运算部件,分别为算术、逻辑和移位运算部件,要 处理的数据存于暂存器A和暂存器B,三个部件同时接受来自A 和B 的数据(有些处理器体系结构把移位运算器放于算术和逻辑运算部件之前,如ARM)。 2)各部件对操作数进行何种运算由控制信号S3…S0和CN 来决定,任何时候, 多路选择开关只选择三部件中一个部件的结果作为ALU 的输出。如果是影响进位的运算,还将置进位标志FC,在运算结果输出前,置ALU 零标志。 ALU 中所有模块集成在一片CPLD 中。 三、数据通路图及分析 1、逻辑运算

软件工程导论作业答案

学号_31009210** 姓名_朱某某班级_软件10* 作业一 1.什么是软件危机?它有哪些典型表现?为什么会出现软件危机? “软件危机”是指计算机软件的“开发”和“维护”过程中所遇到的一系列“严重问题”。这些问题不仅仅是不能正常运行的软件才具有的,实际上,几乎“所有软件”都不同程度地存在这些问题。 “软件危机”包含两方面的问题: (1)如何开发软件,以满足对软件日益增长的需求; (2)如何维护数量不断膨胀的已有软件。 它们有以下表现: (1)对软件开发成本和进度的估计常常很不准确; (2)用户对“已完成的”软件系统不满意的现象经常发生; (3)软件产品的质量往往靠不住; (4)软件常常是不可维护的; (5)软件通常没有适当的文档资料; (6)软件成本在计算机系统总成本中所占的比例逐年上升; (7)软件开发生产速率提高的速度,远远跟不上计算机应用普及深入的趋势。 出现软件危机的原因 (1)开发人员与客户认识之间的矛盾 (2)开发人员能力与开发目标之间的矛盾 (3)预估与实际工作量之间的矛盾 (4)客户认识的提高与软件维护之间的矛盾 (5)遗产系统与实施软件之间的矛盾 2.假设自己是一家软件公司的总工程师,当把图1.1给手下的软件工程师们观看,告诉他们及早发现并改正错误的重要性时,有人不同意这个观点,认为要求在错误进入软件之前就清除它们是不现实的,并举例说:“如果一个故障是编码错误造成的,那么,一个人怎么能在设计阶段清除它呢?”应该怎么反驳他? 在软件开发的不同阶段进行修改付出的代价是很不相同的,在早期引入变动,涉及的面比较少,因而代价也比较低;在开发的中期,软件配置的许多成分已经完成,引入一个变动要对所有已完成的配置成分都做相应的修改,不仅工作量大,而且逻辑上也更复杂,因此付出的代价俱增。在软件“已经完成”时再引入变动,当然付出的代价更高。一个故障时代码错误造成的,有时这种错误时不可避免的,但要修改的成本是很小的,因为这不是整体构架的错误。 3.什么是软件工程?他有哪些本质特征?怎样用软件工程消除软件危机? 软件工程是指导计算机软件开发和维护的一门工程学科。采用工程的概念、原理、技术和方法来开发与维护软件,把经过时间考验而证明正确的管理技术和当前能够得到的最好技术方法结合起来,以经济地开发出高质量的软件并有效的维护它,这就是软件工程。 本质特征: 软件工程关注于大型软件的构造 软件工程的中心课题是控制复杂性 软件经常变化 开发软件的效率非常重要 和谐地合作是开发软件的关键 软件必须有效支持它用户

软件工程导论课后习题答案95829882

《软件工程导论》课后习题答案 第一章软件工程概论 1.什么是软件危机?它们有哪些典型表现?为什么会出现软件危机? “软件危机”是指计算机软件的“开发”和“维护”过程中所遇到的一系列“严重问题”。这些问题决不仅仅是不能正常运行的软件才具有的,实际上,几乎“所有软件”都不同程度地存在这些问题。 “软件危机”包含两方面的问题: (1)如何开发软件,以满足对软件日益增长的需求; (2)如何维护数量不断膨胀的已有软件。 它们有以下表现: (1)对软件开发成本和进度的估计常常很不准确; (2)用户对“已完成的”软件系统不满意的现象经常发生; (3)软件产品的质量往往靠不住; (4)软件常常是不可维护的; (5)软件通常没有适当的文档资料; (6)软件成本在计算机系统总成本中所占的比例逐年上升; (7)软件开发生产率提高的速度,远远跟不上计算机应用普及深入的趋势。 出现软件危机的原因 (1)开发人员与客户认识之间的矛盾 (2)开发人员能力与开发目标之间的矛盾 (3)预估与实际工作量之间的矛盾 (4)客户认识的提高与软件维护之间的矛盾 (5)遗产系统与实施软件之间的矛盾 2.假设自己是一家软件公司的总工程师,当把图1.1给手下的软件工程师们观看,告诉他们及时发现并改正错误的重要性时,有人不同意这个观点,认为要求在错误进入软件之前就清楚它们是不现实的,并举例说:“如果一个故障是编码错误造成的,那么,一个人怎么能在设计阶段清除它呢?”应该怎么反驳他? 答:在软件开发的不同阶段进行修改付出的代价是很不相同的,在早期引入变动,涉及的面较少,因而代价也比较低;在开发的中期,软件配置的许多成分已经完成,引入一个变动要对所有已完成的配置成分都做相应的修改, 不仅工作量大,而且逻辑上也更复杂,因此付出的代价剧增;在软件“已经完成” 是在引入变动,当然付出的代价更高。一个故障是代码错误造成的,有时这种错误是不可避免的,但要修改的成本是很小的,因为这不是 整体构架的错误。 3.什么是软件工程?它有哪些本质特征?怎么用软件工程消除软件危机? 软件工程是知道计算机软件开发和维护的一门工程学科。采用工程的概念、原理、技术和方法来开发与维护软件,把经过时间考验而证明正确的管理技术和当前能够

计算机组成原理实验-运算器组成实验报告

计算机组成原理课程实验报告 9.3 运算器组成实验 姓名:曾国江 学号: 系别:计算机工程学院 班级:网络工程1班 指导老师: 完成时间: 评语: 得分:

9.3运算器组成实验 一、实验目的 1.熟悉双端口通用寄存器堆的读写操作。 2.熟悉简单运算器的数据传送通路。 3.验证运算器74LS181的算术逻辑功能。 4.按给定数据,完成指定的算术、逻辑运算。 二、实验电路 ALU-BUS# DBUS7 DBUS0 Cn# C 三态门(244) 三态门(244)ALU(181) ALU(181) S3S2S1S0M A7A6A5A4F7F6F5F4 F3F2F1F0B3B2B1B0 Cn+4 Cn Cn Cn+4 LDDR2T2 T2 LDDR1LDRi T3 SW-BUS# DR1(273) DR2(273) 双端口通用寄存器堆RF (ispLSI1016) RD1RD0RS1RS0WR1WR0 数据开关(SW7-SW0)数据显示灯 A3A2A1A0B7B6B5B4 图3.1 运算器实验电路 LDRi T3A B 三态门 R S -B U S # 图3.1示出了本实验所用的运算器数据通路图。参与运算的数据首先通过实验台操作板上的八个二进制数据开关SW7-SW0来设置,然后输入到双端口通用寄存器堆RF 中。

RF(U30)由一个ispLSI1016实现,功能上相当于四个8位通用寄存器,用于保存参与运算的数据,运算后的结果也要送到RF中保存。双端口寄存器堆模块的控制信号中,RS1、RS0用于选择从B端口(右端口)读出的通用寄存器,RD1、RD0用于选择从A端口(左端口)读出的通用寄存器。而WR1、WR0用于选择写入的通用寄存器。LDRi是写入控制信号,当LDRi=1时,数据总线DBUS上的数据在T3写入由WR1、WR0指定的通用寄存器。RF的A、B端口分别与操作数暂存器DR1、DR2相连;另外,RF的B端口通过一个三态门连接到数据总线DBUS上,因而RF中的数据可以直接通过B端口送到DBUS 上。 DR1和DR2各由1片74LS273构成,用于暂存参与运算的数据。DR1接ALU的A输入端口,DR2接ALU的B输入端口。ALU由两片74LS181构成,ALU的输出通过一个三态门(74LS244)发送到数据总线DBUS上。 实验台上的八个发光二极管DBUS7-DBUS0显示灯接在DBUS上,可以显示输入数据或运算结果。另有一个指示灯C显示运算器进位标志信号状态。 图中尾巴上带粗短线标记的信号都是控制信号,其中S3、S2、S1、S0、M、Cn#、LDDR1、LDDR2、ALU_BUS#、SW_BUS#、LDRi、RS1、RS0、RD1、RD0、WR1、WR0都是电位信号,在本次实验中用拨动开关K0—K15来模拟;T2、T3为时序脉冲信号,印制板上已连接到实验台的时序电路。实验中进行单拍操作,每次只产生一组T1、T2、T3、T4时序脉冲,需将实验台上的DP、DB开关进行正确设置。将DP开关置1,DB开关置0,每按一次QD 按钮,则顺序产生T1、T2、T3、T4一组单脉冲。 三、实验设备 1.TEC-5计算机组成实验系统1台 2.逻辑测试笔一支(在TEC-5实验台上) 3.双踪示波器一台(公用) 4.万用表一只(公用) 四、实验任务 1、按图3.1所示,将运算器模块与实验台操作板上的线路进行连接。由于运 算器模块内部的连线已由印制板连好,故接线任务仅仅是完成数据开关、控制信号

软件工程导论部分课后习题答案

第一章 1-1 什么是软件危机? 是指在计算机软件的开发和维护过程中所遇到的一系列严重问题。 1-3 什么是软件工程? 是指导计算机软件开发和维护的一门工程学科。 1-4 简述结构化范型和面向对象范型的要点,并分析它们的优缺点。 目前使用得最广泛的软件工程方法学(2 种): 1. 传统方法学:也称为生命周期方法学或结构化范型。优点:把软件生命周期划分成基干个阶段,每个阶段的任务相对独立,而且比较简单,便于不同人员分工协作,从而降低了整个软件开发过程的困难程度。缺点:当软件规模庞大时,或者对软件的需求是模糊的或会承受时间而变化的时候,开发出的软件往往不成功;而且维护起来仍然很困难。 2. 面向对象方法学:优点:降低了软件产品的复杂性;提高了软件的可理解性;简化了软件的开发和维护工作;促进了软件重用。 1-6 什么是软件过程?它与软件工程方法学有何关系? z 软件过程:是为了获得高质量软件所需要完成的一系列任务的框架,它规定了完成各项任务的工作步骤z 软件工程方法学:通常把在软件生命周期全过程中使用的一整套技术方法的集合称为方法学,也称范型 1-7 什么是软件生命周期模型,试比较瀑布模型,快速原型模型,增量模型,和螺旋模型的优缺点,说明每种模型的适用范围。 软件生命周期由软件定义、软件开发和运行维护3个时期组成,每个时期又进一步划分成若干个阶段。生命周期模型规定了把生命周期划分成哪些阶段及各个阶段的执行顺序,因此,也称为过程模型。 瀑布模型的优点:1.可强迫开发人员采用规范的方法;2.严格规定了每个阶段必须提交的文档;3.要求每个阶段交出的所有产品都必须经过质量保证小组的仔细验证。 瀑布模型的缺点:1.在软件开发初期,指明用户全部需求是困难的;2.需求确定后,经过一段时间才得到软件最初版本;3.完全依赖规格说明,导致不能满足用户需求。适用中小型项目。 快速原型模型的优点:1满足用户需求程度高;2用户的参与面广;3返工现象少快速原型模型的优点:不适用大型软件的开发适用于小型项目。 增量模型的优点:1短期内可以交付满足部分用户需求的功能产品;2逐步增加功能可以让用户去适应新产品;3开放式的软件可维护性比较好;4开始第一构件前,已经完成需求说明。 增量模型的缺点:1对现有产品功能造成破坏;2意义上的矛盾适用于中型软件的开发 螺旋模型的优点:1集成了瀑布模型、快速原型模型、增量模型的优点;2支持用户需求动态变化;3需求分析与软件实现紧密联系相互依赖;4原型作为刑式的可执行的需求规格说明,即利用用户和开发人员共同理解,又可作为后续开发的基础;5为用户参与决策提供方便;6提高目标软件的适应能力;7降低风险;8在大型软件开发过程中充分发挥优势。螺旋模型的缺点:1迭代次数影响开发成本,延迟提价时间;2找不到关键改进点,人才、物力、财力时间引起无谓消耗;3成于风险分析,败于风险分析。适用于内部开发的大规模软件项目。 1-8:为什么说喷泉模型叫好的体现了面向对象软件开发过程无缝和迭代的特性?

运算器部件实验报告

实验一运算器部件实验报告 班级姓名学号日期 一、实验目的 ●熟悉与深入理解4位运算器芯片Am2901的功能和内部组成,运行中要求 使用的控制信号及其各自的控制作用。 ●熟悉与深入理解用4片4位的运算器芯片构成16位的运算器部件的具体方 案,各数据位信号、各控制位信号的连接关系。 ●熟悉与深入理解用2片GAL20v8芯片解决ALU最低位的进位输入信号和 最高、最低位的移位输入信号、实现4位的标志位寄存器的方案,理解为什么这些功能不能在运算器芯片之内实现而要到芯片之外另外处理。 ●明确教学计算机的运算器部件,使用总计24位的控制信号就完全确定了它 的全部运算与处理功能,脱机运算器实验中可以通过24位的微型开关提供这些控制信号。 二、实验说明 脱机运算器实验,是指让运算器从教学计算机整机中脱离出来,此时,它的全部控制与操作均需通过24位的微型开关来完成,通过开关、按键控制教学机的运算器完成指定的运算功能,并通过指示灯观察运算结果。 三、实验要求 1、实验之前认真预习,写出预习报告,包括操作步骤,实验过程所用数据和运行结果等 2、实验过程当中,要仔细进行,防止损坏设备,分析可能遇到的各种现象,判断结果是否正确,记录运行结果 3、实验之后,认真写出实验报告,包括对遇到的各种现象的分析,实验步骤和实验结果,自己在这次实验的心得体会与收获。 四、实验所使用到的控制信号 AM2901所用的控制信号

1、将教学机设置为单步、16位、脱机状态下,即把教学机左下方的5个控制开关置为1XX00。 2、按一下RESET按键,进行初始化。 3、按照指定功能给出控制信号和数据信息,观察各信号指示灯状态。 4、按压START键,给出脉冲信号,观察各信号灯状态。 六、实验内容 1、下表中所列操作在教学机上进行运算器脱机实验。并将结果填入表中。 运算器功能所用到的控制信号

《软件工程导论》课后习题详细答案

《软件工程导论》课后习题详细答案第一章软件工程概论 1.什么是软件危机? 软件危机是指在运算机软件的开发和爱护过程中所遇到的一系列严峻咨询题。这些咨询题表现在以下几个方面:(1)用户对开发出的软件专门难中意。(2)软件产品的质量往往靠不住。(3)一样软件专门难爱护。(4)软件生产效率专门低。(5)软件开发成本越来越大。(6)软件成本与开发进度难以估量。(7)软件技术的进展远远满足不了运算机应用的普及与深入的需要。 2.什么缘故会产生软件危机? (1) 开发人员方面,对软件产品缺乏正确认识,没有真正明白得软件产品是一个完整的配置组成。造成开发中制定打算盲目、编程草率,不考虑爱护工作的必要性。(2) 软件本身方面,关于运算机系统来讲,软件是逻辑部件,软件开发过程没有统一的、公认的方法论和规范指导,造成软件爱护困难。(3) 专门是随着软件规模越来越大,复杂程度越来越高,原有软件开发方式效率不高、质量不能保证、成本过高、研制周期不易估量、爱护困难等一系列咨询题更为突出,技术的进展差不多远远不能适应社会需求。 3.如何样克服软件危机? (1) 充分吸取和借鉴人类长期以来从事各种工程项目中积存的行之有效的有效原理、概念、技术与方法,专门是吸取几十年来人类从事运算机硬件研究和开发的体会教训。在开发软件的过程中努力作到良好的组织,严格的治理,相互友好的协作。(2) 推广在实践中总结出来的开发软件的成功的技术和方法,并研究更好、更有效的技术和方法,尽快克服在运算机系统早期进展时期形成的一些错误概念和作法。(3) 按照不同的应用领域,开发更好的软件工具并使用这些工具。将软件开发各个时期使用的软件工具集合成一个整体,形成一个专门好的软件开发支环环境。总之为了解决软件危机,既要有技术措施(方法和工具),又要有必要的组织治理措施。

软件工程导论第五章课后答案

软件工程导论第五章课后 答案 -标准化文件发布号:(9456-EUATWK-MWUB-WUNN-INNUL-DDQTY-KII

第五章习题答案 1、为每种类型的模块耦合举一个具体例子。 答:耦合是对一个软件结构内不同模块之间互连程度的度量。耦合强弱取决于模块间接口的复杂程度,进入或访问某一模块的点,以及通过接口的数据,一般模块之间可能的连接方式有7种,构成耦合的7种类型,它们之间的关系为: 下面举例说明以上各种耦合: a.非直接耦合(Nondirect Coupling)在这种情况下,两个模块之间没有直接关系,它们之间的联系完全是通过主模块的控制和调用来实现的,这就是非直接耦合。例如在实数的运算中,有两个模块分别完成几个实数的求和,求乘积功能,这两个模块之间没有直接联系,只有在主模块调用中有执行的前后顺序而已,这个例子即属于非直接耦合。 b.数据耦合(Data Coupling)即一个模块访问另一个模块时,彼此之间是通过数据参数来交换输入,输出信息的,这种耦合为数据输入,输出信息的这种耦合为数据耦合。如有两个模块,其中A完成两个烽的比较,求出其中最大的并返回该值,模块B是完成了个数的比较,求出其中最大的并返回该最大值,为完成四个数的比较,模块B调用模块A即可完成,在这种调用关系中,模块A的运算结

果作为一个参烽参加B的运算,这两个模块之间即发生数据耦合。数据耦合是松散的耦合,模块间的独立性比较强。 c.标记耦合(Stamp Coupling),即一组模块通过参数传递记录信息,这就是标记耦合。事实上,这组模块共享了这个记录,它是某一数据结构的子结构,而不是简单变量。 d.控制耦合(Control Coupling)即一个模块通过开关标志,名字等控制住处明显的控制,选择另一模块的功能,这就是控制耦合,如下图所示,这一种耦合实质是在单一接口上实现选择多功能模块中的某项功能,如程序设计中用到多路选择结构即是最好的例子。e.外部耦合(External Coupling)即一组模块都访问同一全局简单变量而不是同一全局数据结构,而且不是通过参数表传递全局数据结构,而且不是通过参数表传递全局变量的信息。如C语言中都访问被说明为extern类型的外部变量的各个模块之间即发生外部耦合。外部耦合引起的问题类似于下面要介绍的公共耦合,区别在于外部耦合中不存在依赖于一个数据结构内部各项的物理安排。f.公共耦合(Common Coupling)若一组模块都访问同一个公共数据环境,则它们之间的耦合就是公共耦合。公共的数据环境可以是全局的数据结构,共享的通信区,内存的公共覆盖区等。如几个模块对同一个数据库的查询就属于这种耦合。公共耦合可以分为松散的公共耦合和紧密的公共耦合,其中松散的公共耦合是单向操作,如两个或多个模块对同一个文件的读操作;而紧密的公共耦合是双

计算机组成原理实验报告运算器组成存储器

计算机组成原理实验报告 一、实验1 Quartus H的使用 一.实验目的 掌握Quartus H的基本使用方法。 了解74 1 38(3:8)译码器、74244、74273的功能。 利用Quartus H 验证74138 (3: 8)译码器、74244、74273 的功能。 二.实验任务 熟悉Quartus H中的管理项目、输入原理图以及仿真的设计方法与流程。新建项目,利用原理编辑方式输入74138、74244、74273的功能特性,依照其功能表分别进行仿真,验证这三种期间的功能。 三.74138、74244、74273的原理图与仿真图 1.74138 的原理图与仿真图 74244的原理图与仿真图 1.

实验2运算器组成实验 一、 实验目的 1. 掌握算术逻辑运算单元(ALU 的工作原理。 2. 熟悉简单运算器的数据传送通路。 3. 验证4位运算器(74181)的组合功能。 4. 按给定数据,完成几种指定的算术和逻辑运算。 二、 实验电路 附录中的图示出了本实验所用的运算器数据通路图。 8位字长的ALU 由2 片74181构成。2片74273构成两个操作数寄存器 DR1和DR2用来保存参 与运算的数据。DR1接ALU 的A 数据输入端口,DR2接 ALU 的B 数据输入端 口,ALU 的数据输出通过三态门74244发送到数据总线BUS7-BUS 上。参与 运算的数据可通过一个三态门74244输入到数据总线上,并可送到DR1或 DR2 暂存。 图中尾巴上带粗短线标记的信号都是控制信号。除了 T4是脉冲信号外,其 4. 74273的原理图与仿真图、

他均为电位信号。nCO, nALU-BUS nSW-BU鈞为低电平有效。 三、实验任务按所示实验电路,输入原理图,建立.bdf 文件。 四. 实验原理图及仿真图 ,然后利用ALU的直通功能,检查DR1 DR2中是否保存了所置的数。 其实验原理图如下: 波形图如下: 实验 3 半导体存储器原理实验 (一)、实验目的 (1)熟悉静态随机存储器RAM和只读存储器ROM勺工作特性和使用方法; (2)熟悉半导体存储器存储和读出数据的过程; (3)了解使用半导体存储器电路时的定时要求。 (二)、实验要求 利用Quartus H器件库提供的参数化存储单元,设计一个由128X8 位的RAM和128X8位的ROM勾成的存储器系统。请设计有关逻辑电路,要求仿真通过,并设计波形文件,验证该存储器系统的存储与读出。 (三)、实验原理图与仿真图 ram内所存储的数据: rom 内所存储的数据: 仿真图如下: (四)心得体会 本次试验中,我们应该熟练掌握Quartus H软件的使用方法;熟悉静态随机存储器RAM和只读存储器RO啲工作特性和使用方法;熟悉半导体存储器存

软件工程导论第六版课后习题答案

第一章 一、什么是软件危机?它有哪些典型表现?为什么会出现软件危机? 软件危机是指在计算机软件开发、使用与维护过程中遇到的一系列严重问题和难题。它包括两方面:如何开发软件,已满足对软件日益增长的需求;如何维护数量不断增长的已有软件。 软件危机的典型表现: (1) 对软件开发成本和进度的估计常常很不准确。常常出现实际成本比估算成本高出一个数量级、实际进度比计划进度拖延几个月甚至几年的现象。而为了赶进度和节约成本所采取的一些权宜之计又往往损害了软件产品的质量。这些都降低了开发商的信誉,引起用户不满。 (2) 用户对已完成的软件不满意的现象时有发生。 (3) 软件产品的质量往往是靠不住的。(4) 软件常常是不可维护的。 (5) 软件通常没有适当的文档资料。文档资料不全或不合格,必将给软件开发和维护工作带来许多难以想象的困难和难以解决的问题。 (6) 软件成本、软件维护费在计算机系统总成本中所占比例逐年上升。 (7) 开发生产率提高的速度远跟不上计算机应用普及的需求。 软件危机出现的原因: (1) 来自软件自身的特点:是逻辑部件,缺乏可见性;规模庞大、复杂,修改、维护困难。 (2) 软件开发与维护的方法不当:忽视需求分析;认为软件开发等于程序编写;轻视软件维护。 (3) 供求矛盾将是一个永恒的主题:面对日益增长的软件需求,人们显得力不从心。 二、假设自己是一家软件公司的总工程师,当把图1.1给手下的软件工程师们观看,告诉他们及时发现并改正错误的重要性时,有人不同意这个观点,认为要求在错误进入软件之前就清楚它们是不现实的,并举例说:“如果一个故障是编码错误造成的,那么,一个人怎么能在设计阶段清除它呢?”应该怎么反驳他? 答:在软件开发的不同阶段进行修改付出的代价是很不相同的,在早期引入变动,涉及的面较少,因而代价也比较低;在开发的中期,软件配置的许多成分已经完成,引入一个变动要对所有已完成的配置成分都做相应的修改, 不仅工作量大,而且逻辑上也更复杂,因此付出的代价剧增;在软件“已经完成”是在引入变动,当然付出的代价更高。一个故障是代码错误造成的,有时这种错误是不可避免的,但要修改的成本是很小的,因为这不是 整体构架的错误。 三、什么是软件工程?它有哪些本质特征?怎样用软件工程消除软件危机? 1993年IEEE的定义:软件工程是:①把系统的、规范的、可度量的途径应用于软件开发、运行和维护过程,也就是把工程应用于软件;②研究①中提到的途径。 软件工程的本质特征: (1) 软件工程关注于大型程序(软件系统)的构造(2) 软件工程的中心课题是分解问题,控制复杂性(3) 软件是经常变化的,开发过程中必须考虑软件将来可能的变化 (4) 开发软件的效率非常重要,因此,软件工程的一个重要课题就是,寻求开发与维护软件的更好更有效的方法和工具 (5) 和谐地合作是开发软件的关键(6) 软件必须有效地支持它的用户 (7) 在软件工程领域中是由具有一种文化背景的人替具有另一种文化背景的人(完成一些工作)消除软件危机的途径: (1) 对计算机软件有一个正确的认识(软件≠程序) (2) 必须充分认识到软件开发不是某种个体劳动的神秘技巧,而应该是一种组织良好、管理严密、各类人员协同配合、共同完成的工程项目 (3) 推广使用在实践中总结出来的开发软件的成功技术和方法 (4) 开发和使用更好的软件工具 四、简述结构化范型和面向对象范型的要点,并分析他们的优缺点。 1. 传统方法学:也称为生命周期方法学或结构化范型。优点:把软件生命周期划分成基干个阶段,每个阶段的任务相对独立,而且比较简单,便于不同人员分工协作,从而降低了整个软件开发过程的困难程度。缺点:当软件规模庞大时,或者对软件的需求是模糊的或会承受时间而变化的时候,开发出的软件往往不成功;而且维护起来仍然很困难。 2. 面向对象方法学:优点:降低了软件产品的复杂性;提高了软件的可理解性;简化了软件的开发和维护工作;促进了软件重用。

计算机组成原理实验1-运算器

《计算机组成原理》 实验报告 实验一运算器实验

一、实验目的 1.掌握运算器的组成及工作原理; 2.了解4位函数发生器74LS181的组合功能,熟悉运算器执行算术操 作和逻辑操作的具体实现过程; 3.验证带进位控制的74LS181的功能。 二、实验环境 EL-JY-II型计算机组成原理实验系统一套,排线若干。 三、实验内容与实验过程及分析(写出详细的实验步骤,并分析实验结果) 实验步骤:开关控制操作方式实验 1、按图1-7接线图接线: 连线时应注意:为了使连线统一,对于横排座,应使排线插头上的箭头面向自己插在横排座上;对于竖排座,应使排线插头上的箭头面向左边插在竖排座上。 图1-1 实验一开关实验接线图 2、通过数据输入电路的拨开关开关向两个数据暂存器中置数: 1)拨动清零开关CLR,使其指示灯。再拨动CLR,使其指示灯亮。置ALU-G =1:关闭ALU的三态门;再置C-G=0:打开数据输入电路的三态门; 2)向数据暂存器LT1(U3、U4)中置数:

(1)设置数据输入电路的数据开关“D15……D0”为要输入的数值; (2)置LDR1=1:使数据暂存器LT1(U3、U4)的控制信号有效,置LDR2=0:使数据暂存器LT2(U5、U6)的控制信号无效; (3)按一下脉冲源及时序电路的【单脉冲】按钮,给暂存器LT1送时钟,上升沿有效,把数据存在LT1中。 3)向数据暂存器LT2(U5、U6)中置数: (1)设置数据输入电路的数据开关“D15……D0”为想要输入的数值; (2)置LDR1=0:数据暂存器LT1的控制信号无效;置LDR2=1:使数据暂存器LT2的控制信号有效。 (3)按一下脉冲源及时序电路的“单脉冲”按钮,给暂存器LT2送时钟,上升沿有效,把数据存在LT2中。 (4)置LDR1=0、LDR2=0,使数据暂存器LT1、LT2的控制信号无效。 4)检验两个数据暂存器LT1和LT2中的数据是否正确: (1)置C-G=1,关闭数据输入电路的三态门,然后再置ALU-G=0,打开ALU 的三态门; (2)置“S3S2S1S0M”为“F1”,数据总线显示灯显示数据暂存器LT1中的数,表示往暂存器LT1置数正确; (3)置“S3S2S1S0M”为“15”,数据总线显示灯显示数据暂存器LT2中的数,表示往暂存器LT2置数正确。 3、验证74LS181的算术和逻辑功能: 按实验步骤2往两个暂存器LT1和LT2分别存十六进制数“1234H”和“5678H”,在给定LT1=1234H、LT2=5678H的情况下,通过改变“S3S2S1S0MCn”的值来改变运算器的功能设置,通过数据总线指示灯显示来读出运算器的输出值F,填入上表中,参考表1-1的功能表,分析输出F值是否正确。分别将“AR”开关拨至“1”和“0”的状态,观察进位指示灯“CY”的变化并分析原因。 实验结果表为:

软件工程导论作业解析

软件工程导论作业 Chapter1 1.1 什么是软件危机?它有哪些典型表现?为什么会出现软件危机? 答:软件危机是指在计算机软件开发和维护过程中所遇到的一系列的严重问题。 它的典型表现:1.软件开发成本高,成本难以控制。2.研究周期长,软件开发进度难以控制,周期拖得很长。3.正确性难以保证,软件质量差,可靠性难以保证。4.软件维护困难,维护人员和维护费用不断增长。5.软件发展跟不上硬件的发展和用户的要求。 它出现的原因一方面是由于软件生产本身存在着复杂性,另一方面是与软件开发所使用的方法和技术有关。软件不同于硬件,它是计算机系统中的逻辑部件而不是物理部件。管理和控制软件开发工程相当困难,软件是规模庞大,而且程序复杂性将随着程序规模的增加而呈指数上升。目前相当多的软件专业技术人员对软件开发和维护还有不省糊涂观念,在实践过程中或多或少地采用了错误的方法和技术,这是使软件问题发展成为软件危机的主要原因。 1.2 什么是软件工程?它有哪些本质特性?怎样用软件工程消除软件危机? 答:软件工程是将系统化的,规范化的,可度量的方法应用于软件开发,运行和维护的过程,即将工程化应用于软件中。 它的本质特性:1.软件工程关注于大型程序的构造 2.软件工程的中心课题是控制复杂性 3.软件经常化 4.开发软件的效率非常重要 5.和谐地合作是开发软件的关键 6.软件必须有效地支持它的用户 7.在软件工程领域中是由一种文化背景的人替具有另一种文化背景的人创造产品。 基本原理: 1.用分阶段的生命周期计划严格管理 2.坚持进行阶段评审 3.实行严格的产品控制 4.采用现代程序设计的技术 5.结果应能清楚地审查 6.开发小组的人员应该少而精 7.承认不断改进软件工程实践的必要性。 1.3 什么是软件?它有什么特点? 答:软件是计算机系统中与硬件相互依存的另一部分,它是包括程序,数据结构及其相关文档的完整集合。 它的特点是:1.抽象而非具体 2.开发而非制造 3.退化而非磨损 4.定制而非基于构件 5.不可见 6.复杂 7.易改变 8.易复制 1.4 什么是软件过程?它与软件工程方法学有何关系? 答:软件过程是为了开发出高质量的软件产品所需完成的一系列任务的框架,它规定了完成各项任务的工作步骤。 软件过程定义了运用技术方法的顺序,应该交付的文档资料,为保证软件质量和协调软件变化必须采用的管理措施,以及标志完成了相应开发活动的里程碑。软件过程是软件工程方法学的3个重要组成部分之一。软件工程的基础是软件过程。 1.5 什么是软件生命周期模型?试比较瀑布模型、原型模型、增量模型和螺旋模型的优缺点,说明每种模型的适用范围。 答:软件生命周期模型是软件开发全部过程,活动和任务的结构框架,它能直观表达软件开发全过程,明确规定要完成的主要活动,任务和开发策略。也叫软件开发模型。 瀑布模型优点:有利于大型软件开发过程中人员的组织,管理,有利于软件开发方法和工具的研究,从而提高了大型软件项目开发的质量和效率。 缺点:1,开发过程一般不能逆转,否则代价太大 2.实际的项目开发很难严格按

【信息化-精编】软件工程导论课后习题详细答案

软件工程导论课后习题详细答案

《软件工程导论》课后习题答案 第一章软件工程概论 1.什么是软件危机? 软件危机是指在计算机软件的开发和维护过程中所遇到的一系列严重问题。这些问题表现在以下几个方面:(1)用户对开发出的软件很难满意。(2)软件产品的质量往往靠不住。(3)一般软件很难维护。(4)软件生产效率很低。(5)软件开发成本越来越大。(6)软件成本与开发进度难以估计。(7)软件技术的发展远远满足不了计算机应用的普及与深入的需要。 2.为什么会产生软件危机? (1)开发人员方面,对软件产品缺乏正确认识,没有真正理解软件产品是一个完整的配置组成。造成开发中制定计划盲目、编程草率,不考虑维护工作的必要性。(2)软件本身方面,对于计算机系统来说,软件是逻辑部件,软件开发过程没有统一的、公认的方法论和规范指导,造成软件维护困难。(3)尤其是随着软件规模越来越大,复杂程度越来越高,原有软件开发方式效率不高、质量不能保证、成本过高、研制周期不易估计、维护困难等一系列问题更为突出,技术的发展已经远远不能适应社会需求。 3.怎样克服软件危机? (1)充分吸收和借鉴人类长期以来从事各种工程项目中积累的行之有效的有效原理、概念、技术与方法,特别是吸取几十年来人类从事计算机硬件研究和开发的经验教训。在开发软件的过程中努力作到良好的组织,严格的管理,相互友好的协作。(2)推广在实践中总结出来的开发软件的成功的技术和方法,并研究更好、更有效的技术和方法,尽快克服在计算机系统早期发展阶段形成的一些错误概念和作法。(3)根据不同的应用领域,开发更好的软件工具并使用这些工具。将软件开发各个阶段使用的软件工具集合成一个整体,形成一个很好的软件开发支环环境。总之为了解决软件危机,既要有技术措施(方法和工具),又要有必要的组织管理措施。 4.构成软件项目的最终产品:应用程序、系统程序、面向用户的文档资料和面向开发者的文档资料。 5.什么是软件生存周期?软件生存周期是指从软件定义、开发、使用、维护到淘汰的全过程。 5-1。(1)在1985年对计算机存储容量的需求,估计是 如果字长为16位,则这个存储器的价格是 ● ●(2)如果一条指令的长度为一个字,则使存储器装满程序共需4474263条指令。 ●在1985年一名程序员每天可开发出10条指令,如果每月有20个工作日,则每人每月可开发出10×20条指令。 ●为了开发出4474263条指令以装满存储器,需要的工作量是: ●程序员的月平均工资是4000美元,开发出4474263条指令的成本是 ●(3)在1995年对存储容量的需求估计为: ● 7 4080e =4472.0048.01974 1985??=-P )19601995(28.04080-=e M

FPGA一位全加器设计实验报告

题目:1位全加器的设计 一.实验目的 1.熟悉QUARTUSII软件的使用; 2.熟悉实验硬件平台的使用; 3.掌握利用层次结构描述法设计电路。 二.实验原理 由于一位全加器可由两个一位半加器与一个或门构成,首先设计半加器电路,将其打包为半加器模块;然后在顶层调用半加器模块组成全加器电路;最后将全加器电路编译下载到实验箱,其中ain,bin,cin信号可采用实 验箱上SW0,SW1,SW2键作为输入,并将输 入的信号连接到红色LED管 LEDR0,LEDR1,LEDR2上便于观察,sum,cout 信号采用绿色发光二极管LEDG0,LEDG1来 显示。 三.实验步骤 1.在QUARTUSII软件下创建一工程,工程名为full_adder,芯片名为EP2C35F672C6; 2.新建Verilog语言文件,输入如下半加器Verilog语言源程序; module half_adder(a,b,s,co); input a,b; output s,co; wire s,co; assign co=a & b; assign s=a ^ b; Endmodule 3.保存半加器程序为,进行功能仿真、时序仿真,验证设计的正确性。 其初始值、功能仿真波形和时序仿真波形分别如下所示

4.选择菜单File→Create/Update→Create Symbol Files for current file,创建半加器模块; 5.新建一原理图文件,在原理图中调用半加器、或门模块和输入,输出引脚,按照图1所示连接电路。并将输入ain,bin,cin连接到FPGA的输出端,便于观察。完成后另保存full_adder。 电路图如下 6.对设计进行全编译,锁定引脚,然后分别进行功能与时序仿真,验证全加器的逻辑功能。其初始值、功能仿真波形和时序仿真波形分别如下所示

《软件工程导论》课程大作业-题目及要求

《软件工程专业导论与职业生涯规划》具体要求 一、大作业题目(注:每个小组完成一个题目) 1、计算机系统软件是什么?具体的系统软件有哪些?它们的特点、作用、地位是什么?就其中的2~3个具体的系统软件进行较为详细的阐述。 2、计算机应用软件是什么?具体的应用软件有哪些?它们的特点、作用、地位是什么?就其中的2~3个具体的应用软件进行较为详细的阐述。 3、阐述计算机软件的发展历程,对比分析各阶段的特征、理论体系、优势与不足。 4、软件危机是什么?列举2~3个具体的软件危机案例。导致软件危机爆发的原因有哪些?简单阐述现阶段软件危机的具体表现。 5、陈述“软件工程”概念提出的历史背景,包括发生的时间、地点、人物、事件等。“软件工程”的定义自提出以来,有多种说法。请尽可能罗列各种说法,并对其中的2~3个说法进行评述。软件工程的七条基本原理是哪些?分别对每条原理进行较为详细的阐述。 6、软件工程的目标是什么?十个性能是哪些?分别对每个性能进行较为详细的阐述。 7、软件工程研究的主要内容包括哪两个方面?分别对每个方面进行较为详细的阐述。 8、软件开发过程必须遵循的软件工程原则有哪些?分别对每个原则进行较为详细的阐述。 9、软件工程的过程包括哪些?分别对每个过程进行较为详细的阐述。 10、软件生命周期的概念是什么?软件生命周期的划分有哪些阶段?分别对每个阶段进行较为详细的阐述。 11、软件生命周期模型的概念是什么?有哪些比较流行的模型?对其中的瀑布模型和原型模型进行较为详细的阐述及对比分析,并各举例说明。 12、软件生命周期模型的概念是什么?有哪些比较流行的模型?对其中的演化模型和喷泉进行较为详细的阐述及对比分析,并各举例说明。 13、软件生命周期模型的概念是什么?有哪些比较流行的模型?对其中的基于知识的模型和基于构件的模型进行较为详细的阐述及对比分析,并各举例说明。 14、软件生命周期模型的概念是什么?有哪些比较流行的模型?对其中的变换模型和双赢螺旋模型进行较为详细的阐述及对比分析,并各举例说明。 15、软件工程的四要素是哪些?分别对每个要素进行较为详细的阐述。中国制定

软件工程导论课后习题解答

第一章 1-1什么是软件危机? 答:是指在计算机软件的开发和维护过程中所遇到的一系列严重问题。 1-3什么是软件工程? 答:是指导计算机软件开发和维护的一门工程学科。 1-4简述结构化范型和面向对象范型的要点,并分析它们的优缺点。 答:目前使用得最广泛的软件工程方法学有2种: 传统方法学:也称为生命周期方法学或结构化范型。 优点:把软件生命周期划分成若干个阶段,每个阶段的任务相对独立,而且比较简单,便于不同人员分工协作,从而降低了整个软件开发过程的困难程度。 缺点:当软件规模庞大时,或者对软件的需求是模糊的或会随着时间而变化的时候,开发出的软件往往不成功;而且维护起来仍然很困难。 面向对象方法学: 优点:降低了软件产品的复杂性;提高了软件的可理解性;简化了软件的开发和维护工作;促进了软件重用。 1-5、根据历史数据可以做出如下的假设: 对计算机存储容量的需求大致按下面公式描述的趋势逐年增加: M = 4080 e0.28(Y-1960) 存储器的价格按下面公式描述的趋势逐年下降: P1 = 0.3×0.72Y-1974(美分/位) 如果计算机字长为16位,则存储器价格下降的趋势为: P2 = 0.048×0.72Y-1974(美元/字) 在上列公式中Y代表年份,M是存储容量(字数),P1和P2代表价格。基于上述假设可以比较计算机硬件和软件成本的变化趋势。要求计算: (1) 在1985年对计算机存储容量的需求估计是多少?如果字长为16位,这个存储器的价格是多少? (2) 假设在1985年一名程序员每天可开发出10条指令,程序员的平均工资是每月4000美元。如果一条指令为一个字长,计算使存储器装满程序所需用

实验一 运算器实验(1)

级班学号姓名 实验报告 实验一运算器实验 一、实验目的: 1、掌握简单运算器的数据传送通路; 2、验证运算功能发生器(74LS181)的组合功能; 3、验证带进位控制的算术运算功能发生器的功能; 4、按指定数据完成几种指定的算术运算。 二、实验设备 DVCC-C5JH计算机组成原理教学实验系统一台,排线若干。 三、实验原理 1、实验中所用的运算器数据通路图如附A图1-3所示。其中运算器由两片74LS181以并/串形式构成8位字长的ALU。运算器的输出经过一个三态门(74LS245)和数据总线相连,运算器的两个数据输入端分别由二个锁存器(74LS373)锁存,锁存器的输入连至数据总线,数据开关(“INPUT DEVICE”)用来给出参与运算的数据,并经过一三态门(74LS245)和数据总线相连,数据显示灯(“BUS UNIT”)已和数据总线相连,用来显示数据总线内容。 2、控制信号说明: T4:脉冲信号;实验时,将W/R UNIT的T4接至STATE UNIT的微动开关KK2的输出端,按动微动开关,即可获得实验所需的单脉冲。 S3~S0、M:运算器的功能控制信号;可参见74181芯片的功能表P64。 Cn:进位控制信号,低电平有效。 LDDR1、LDDR2:数据寄存器DR1和DR2的数据装载控制信号,高电平有效。ALU-B:该控制信号控制是否将ALU的结果送到总线上,低电平有效。

SW-B :三态门开关信号,控制是否打开三态门,低电平有效。 四、实验内容 1、算术逻辑运算实验: 实验步骤: ①按图1-2连接路线,仔细检查无误后,接通电源; ②用二进制数码开关向DR1和DR2寄存器置数。 A )数据开关置01100101; B )设置switch unit :ALU-B=1 SW-B=0 LDDR1=1 LDDR2=0 C )按动KK2给出一个单脉冲信号,即T4=┎┒ D )数据开关置10100111; E )设置switch unit :LDDR1=0 LDDR2=1 F )按动KK2给出一个单脉冲信号。 ③检验DR1和DR2中存的数是否正确: A )设置switch unit :SW-B=1 ALU-B=0 B )设置switch unit :当S 3S 2S 1S 0M=00000,总线显示灯显示DR1中的数,而 置为S 3S 2S 1S 0M=01010,总线显示灯显示DR2中的数。 ④验证74LS181的算术运算和逻辑运算功能:[给定A=(DR1)=65 H ,B=(DR2)=A7 H] A )改变运算器的功能设置,观察运算器的输出,填入下表: DR1 DR2 S 3S 2S 1S 0 M=1(算术运算) M=0(逻辑运算) Cn=1 (无进位) Cn=0 (有进位) 65 A7 0000 01100101 01100110 10011010 65 A7 0001 11100111 11101000 00011000 65 A7 0010 01111101 01111110 10000010 65 A7 0011 11111111 00000000 00000000 65 A7 0100 10100101 10100110 11011010 65 A7 0101 00100111 00101000 01011000

相关主题
文本预览
相关文档 最新文档