浙大软件工程基础离线作业
- 格式:doc
- 大小:79.50 KB
- 文档页数:41
浙⼤远程操作系统原理离线作业及答案操作系统原理离线作业⼀、单选题1.进程P0和P1的共享变量定义及其初值为boolean flag[2];int turn=0;flag[0]=FALSE;flag[1]=FALSE;若进程P0和P1访问临界资源的类C代码实现如下:void P0() //P0进程{ while(TURE){flag[0]=TRUE; turn = 1;while (flag[1] && turn == 1) ;临界区;flag[0] = FALSE;}}void P1() //P1进程{ while(TURE){flag[1]=TRUE; turn = 0;while (flag[0] && turn == 0) ;临界区;flag[1] = FALSE;}}则并发执⾏进程P0和P1时产⽣的情况是:DA.不能保证进程互斥进⼊临界区、会出现“饥饿”现象B.不能保证进程互斥进⼊临界区、不会出现“饥饿”现象C.能保证进程互斥进⼊临界区、会出现“饥饿”现象 D.能保证进程互斥进⼊临界区、不会出现“饥饿”现象2.有两个进程P1和P2描述如下:shared data:int counter = 6;P1 :Computing;counter=counter+1;P2 :counter=counter-2;两个进程并发执⾏,运⾏完成后,counter的值不可能为 C 。
A. 4B. 5C. 6D. 73.某计算机采⽤⼆级页表的分页存储管理⽅式,按字节编址,页⼤⼩为210字节,页表项⼤⼩为2字节,逻辑地址结构为:页⽬录号页号页内偏移量逻辑地址空间⼤⼩为216页,则表⽰整个逻辑地址空间的页⽬录表中包含表项的个数⾄少是BA.64 B.128 C.256 D.5124.在动态分区系统中,有如下空闲块:空闲块块⼤⼩(KB)块的基址1 80 602 75 1503 55 2504 90 350此时,某进程P请求50KB内存,系统从第1个空闲块开始查找,结果把第4个空闲块分配给了P进程,请问是⽤哪⼀种分区分配算法实现这⼀⽅案? CA.⾸次适应B. 最佳适应C. 最差适应D. 下次适应5.在⼀页式存储管理系统中,页表内容如下所⽰。
2015浙⼤通信与计算机⽹络离线作业第1章概述⼀.填空题:1.计算机⽹络是计算机技术与__通信技术___相结合的产物。
2.从资源共享的⾓度来定义计算机⽹络,计算机⽹络指的是利⽤____通信线路____将不同地理位置的多个独⽴的___⾃治计算机系统_______连接起来以实现资源共享的系统。
3.在TCP/IP的应⽤层协议⼀般使⽤的是客户服务器⽅式其中,客户是服务请求⽅,服务器是服务提供⽅。
4.在TCP/IP协议模型的运输层中,不⾯向连接的协议是_ UDP_。
5.在TCP/IP模型中,互联⽹层的上⼀层是运输层___。
6.通信线路的__带宽__是指通信线路上允许通过的信号频带围(或通频带) ,单位是HZ。
但在计算机⽹络中,它⼜⽤来表⽰⽹络通信线路所能传送数据的能⼒。
7.数据通信中的信道传输速率单位⽤b/s表⽰,b/s的含义是_每秒⽐特。
8.⽬前,“带宽”常⽤作描述信道传送数据能⼒的物理量,其单位是 b/s(bit/s),⽐之⼤的单位有:__KB/s_____、__Mb/s_____、_Gb/s______等。
9.将计算机⽹络划分为局域⽹LAN、城域⽹MAN、⼴域⽹WAN是按__⽹络的作⽤围________划分的。
10.各节点都与中⼼节点连接,呈辐射状排列在中⼼节点周围,这种拓扑结构称为__星型拓扑结构________。
11.假设某⽤户通过电线部门的ADSL技术以2M(即2Mb/s)带宽接⼊Internet,在正常情况下其下载速度⼤约是_244kb/s_________。
12.发送数据时,数据块从结点进⼊到传输媒体所需要的时间称为____发送延时______;⽹络中电磁信号在信道中传播⼀定的距离⽽花费的时间称为__传播延时________。
13.在发送报⽂之前,先将较长的报⽂划分成为⼀个个更⼩的等长数据段,在每⼀个数据段前⾯,加上⼀些由必要的控制信息组成的⾸部(header)后,就构成了⼀个__分组_____。
浙江大学远程教育学院《操作系统原理》课程作业姓名:学号:年级:学习中心:—————————————————————————————一、单选题7进程P0和P1的共享变量定义及其初值为boolean flag[2];int turn=0;flag[0]=FALSE;flag[1]=FALSE;若进程P0和P1访问临界资源的类C代码实现如下:void P0() //P0进程{ while(TURE){flag[0]=TRUE; turn = 1;while (flag[1] && turn == 1) ;临界区;flag[0] = FALSE;}}void P1() //P1进程{ while(TURE){flag[1]=TRUE; turn = 0;while (flag[0] && turn == 0) ;临界区;flag[1] = FALSE;}}则并发执行进程P0和P1时产生的情况是:A.不能保证进程互斥进入临界区、会出现“饥饿”现象B.不能保证进程互斥进入临界区、不会出现“饥饿”现象C.能保证进程互斥进入临界区、会出现“饥饿”现象D.能保证进程互斥进入临界区、不会出现“饥饿”现象【答案】D2.有两个进程P1和P2描述如下:shared data:int counter = 6;P1 :Computing;counter=counter+1;P2 :Printing;counter=counter-2;两个进程并发执行,运行完成后,counter的值不可能为。
A. 4B. 5C. 6D. 7【答案】C3.某计算机采用二级页表的分页存储管理方式,按字节编址,页大小为210字节,页表项大小为2字节,逻辑地址结构为:页目录号页号页内偏移量逻辑地址空间大小为216页,则表示整个逻辑地址空间的页目录表中包含表项的个数至少是A.64 B.128 C.256 D.512【答案】B4.在动态分区系统中,有如下空闲块:空闲块块大小(KB)块的基址1 80 602 75 1503 55 2504 90 350此时,某进程P请求50KB内存,系统从第1个空闲块开始查找,结果把第4个空闲块分配给了P进程,请问是用哪一种分区分配算法实现这一方案?A.首次适应B. 最佳适应C. 最差适应D. 下次适应【答案】C5.在一页式存储管理系统中,页表内容如下所示。
2022年浙江大学软件工程专业《计算机网络》科目期末试卷A(有答案)一、选择题1、使用后退N帧协议,根据图所示的滑动窗口状态(发送窗口大小为2,接收窗口大小为1),指出通信双方处于何种状态()。
A.发送方发送完0号帧,接收方准备接收0号帧B.发送方发送完1号帧,接收方接收完0号帧C.发送方发送完0号帧,接收方准备接收1号帧D.发送方发送完1号帧,接收方接收完1号帧2、因特网采用的核心技术是()。
A.TCP/IPB.局域网技术C.远程通信技术D.光纤技术3、下列()设备可以隔离ARP广播帧。
A.路由器B.网桥C.以太网交换机D.集线器4、主机地址172.16.2.160属于下面哪个子网?()A.172.16.2.64/26B.172.16.2.96/26C.172.16.2.128/26D.172.16.2.192/265、在数据链路层中,网络互连表现为()A.在电缆段之问复制比特流B.在网段之间转发数据帧C.在网络之间转发报文D.连接不同体系结构的网络6、下列关于CSMA/CD协议的叙述中,错误的是()A.边发送数据帧,边检测是否发生冲突B.适用于无线网络,以实现无线链路共享C.需要根据网络跨距和数据传输速率限定最小帧长D.当信号传播延迟趋近0时,信道利用率趋近100%7、在TCP/IP网络中,为各种公共服务保留的端口号范围是()。
A.1~255B.0~1023C.1~1024D.1~655358、()是TCPIP模型传输层中的无连接协议。
A.TCPB.IPC.UDPD.ICMP9、有一个TCP连接,当其拥塞窗口为32个分组大小时超时。
假设网络的RTT是固定的5s,不考虑比特开销,即分组不丢失,则系统在超时后处于慢启动阶段的时间有()。
A.10sB.20sC.30sD.40s10、下面关于SMTP,()是错误的。
A.客户端不需要登录即可向服务器发送邮件B.是一个基于ASCII码的协议C.协议除了可以传送ASCII码数据,还可以传送二进制数据D.协议需要客户端先与服务器建立TCP连接11、不使用面向连接传输服务的应用层协议是()。
大工秋《软件工程》离线作业答案第一题:软件工程的定义和目标软件工程是一门研究和应用如何以系统化、规范化、可度量的方法开发和维护软件的学科。
它涉及软件生命周期的所有阶段,包括软件需求分析、设计、编码、测试、部署和维护。
软件工程目标主要有以下几点:1.提高软件质量:通过应用系统化的方法和技术,保证软件的正确性、可靠性、可用性和安全性。
2.提高软件开发效率:通过规范化的过程和工具,提高软件开发团队的协作效率,减少开发周期。
3.控制软件开发成本:通过有效的项目管理和资源分配,控制软件开发成本,提高投资回报率。
4.降低软件维护成本:通过设计可维护的软件系统,降低软件维护的难度和成本。
第二题:软件过程模型的分类及特点软件过程模型是指按照某种方式组织和管理软件开发活动的一种方法。
常见的软件过程模型有以下几种:1.瀑布模型(Waterfall Model):线性顺序的软件开发过程模型,按照需求分析、设计、编码、测试和部署的顺序依次完成。
特点是阶段划分明确,适用于需求变更较少的项目。
2.增量模型(Incremental Model):将软件系统划分为多个小的增量,每个增量在瀑布模型的基础上进行迭代开发。
特点是可以快速交付部分可用的软件产品,适用于需求变更频繁的项目。
3.原型模型(Prototype Model):通过快速构建原型,让用户参与并提供反馈,然后根据反馈进行迭代开发。
特点是可以及早获得用户需求,适用于需求不明确的项目。
4.敏捷模型(Agile Model):强调快速响应需求变化和高度自我组织的软件开发方法。
采用迭代、增量的方式开发,注重团队协作和用户参与。
特点是适用于需求变化频繁且复杂的项目。
第三题:软件需求分析的过程和方法软件需求分析是指明确和理解用户对软件系统的需求,为软件的设计和开发提供基础。
软件需求分析的过程包括以下几个阶段:1.需求获取:通过与用户、项目经理等进行交流和访谈,收集软件需求的初步信息,了解用户的期望以及软件所需的功能和性能。
22春“计算机网络技术”专业《软件工程》离线作业-满分答案1. 测试目标决定了测试力案的设计。
如果为了表明程序是正确的而进行测试,就会设计一些不易暴露错误的测试方案。
( )A.错误B.正确参考答案:B2. 数据流图是需求分析的功能模型。
( )A.正确B.错误参考答案:A3. C++和Eiffel是强类型语言,即语法规定每个变量或属性必须准确属于某个特定的类。
( ) T.对F.错参考答案:T4. 在软件的运行和使用期间,和硬件一样存在机械磨损、老化问题。
( )A.错误B.正确参考答案:A5. 低内聚有如下几类:( )A.偶然内聚B.逻辑内聚C.功能内聚D.时间内聚参考答案:ABD6. 数据字典是用来定义( )中的各个成份的具体含义。
A.流程图B.功能结构图C.系统结构图D.数据流图参考答案:D7. 进行需求分析有的多种描述工具,包括( )。
A.数据流图B.判定表C.PAD图D.数据字典参考答案:ABD8. 通信内聚、逻辑内聚、顺序内聚和时间内聚的内聚性从高到低顺序是( )。
A.通信、逻辑、顺序、时间B.通信、时间、顺序、逻辑C.顺序、通信、时间、逻辑D.顺序、通信、逻辑、时间参考答案:C9. 将开发项目与一个或多个已完成的类似项目进行比较,找出与某个相类似项目的若干不同之处,并估算每个不同之处对成本的影响,得出开发项目的总成本。
这种成本估算方法称为差别估算法。
( )A.错误B.正确参考答案:B10. 系统响应时间指从用户完成某个控制动作,到软件给出预期的响应之间的这段时间。
( ) T.对F.错参考答案:T11. COCOMO是甘特模型的英文缩写。
( )T.对F.错参考答案:F12. 程序流程图本质上不是逐步求精的好工具,它诱使程序员过早地考虑程序的控制流程,而不去考虑程序的全局结构。
( )A.错误B.正确参考答案:B13. 类是对具有相同属性和行为的一个或多个对象的描述,通常在这种描述中也包括对怎样创建该类的新对象的说明。
1.第1题在软件可行性研究中,可以从不同的角度对软件进行研究,其中是从软件的成本/效益分析的是()。
A.经济可性性B.技术可行性C.操作可行性D.法律可行性您的答案:A题目分数:2.5此题得分:2.52.第2题为了提高模块的独立性,模块内部最好是()。
A.逻辑内聚B.时间内聚C.功能内聚D.通信内聚您的答案:C题目分数:2.5此题得分:2.53.第3题Jackson方法是一种面向()的方法。
A.对象B.数据结构C.数据流D.控制流您的答案:B题目分数:2.5此题得分:2.54.第4题需求分析阶段研究的对象是软件项目的()。
A.用户需求B.合理要求C.模糊要求D.工程要求您的答案:A题目分数:2.5此题得分:2.55.第5题面向数据结构的设计方法(Jackson方法)是进行()的形式化的方法。
A.系统设计B.详细设计C.软件设计D.编码您的答案:B题目分数:2.5此题得分:2.56.第6题程序控制的三种基本结构中,()结构可提供多条路径选择。
A.反序B.顺序C.循环D.分支您的答案:D题目分数:2.5此题得分:2.57.第7题下列属于黑盒测试的是()。
A.基本路径测试B.条件测试C.循环测试D.等价划分您的答案:D题目分数:2.5此题得分:2.58.第8题软件设计一般分为总体设计和详细设计,它们之间的关系是()。
A.全局和局部B.抽象和具体C.总体和层次D.功能和结构您的答案:A题目分数:2.5此题得分:2.59.第9题好的软件结构应该是()。
A.高耦合,高内聚B.低耦合,高内聚C.高耦合,低内聚D.低耦合,低内聚您的答案:B题目分数:2.5此题得分:2.510.第15题面向对象软件技术的许多强有力的功能和突出的优点,都来源于把类组织成一个层次结构的系统,一个类的上层可以有父类,下层可以有子类,这种层次结构系统的一个重要性质是(),一个类获得其父类的全部描述(数据和操作)。
A.传递性B.继承性C.复用性D.并行性您的答案:B题目分数:2.5此题得分:2.511.第16题软件项目管理是()一切活动的管理。
离线必做浙大远程浙江大学远程教育学院《药代动力学》课程作业姓名:年级:学号:学习中心:―――――――――――――――――――――――――――――一、填空题1.药动学是借助于化学动力学原理及数学模型定量研究药物体内过程的浓度变化规律的一门科学。
2.实践中,我们通过作lgC-t曲线来确定隔室模型的划分。
3.消除速率常数表示单位时间内从体内消除药物的分数,用字母K 表示。
4.一级速率过程: t1/2= 0.693/K ,而零级速率过程: t1/2= C0/2K0 5.生物利用度是剂型中药物被吸收进入血液大循环的速度与程度 6.生物利用度的测定方法有:血药浓度法、尿药累积排泄量法和药理效应法。
7.肝微粒体药物代谢酶中主要的酶系是P450 ,与 NADPH(辅酶Ⅱ)形成一个氧化还原系统。
重要的肝药酶诱导剂是苯巴比妥,当与双香豆素使用时,可使后者的抗凝血作用减弱。
8.促进苯巴比妥排泄的方法是碱化体液,促进水杨酸钠排泄的方法是碱化体液。
9.体内药物按恒比衰减,每个半衰期给药一次时,经 5 个半衰期血浆药物浓度达到稳态浓度。
某药半衰期为80分钟,如按此方式消除,血药浓度由78mg降到9.75mg 需要 4 小时。
10.苯巴比妥与双香豆素合用及保泰松与双香豆素合用时双香豆素抗凝作用的变化分别是减弱和增强,其作用改变的机理分别是巴比妥诱导肝药酶、加速双香豆素的代谢和保泰松与双香豆素竞争与血浆蛋白结合,使游离的双香豆素增加11.在一级动力学中,一次给药后经过 5 个t1/2后体内药物已基本消除。
12.血浆半衰期(t1/2)是指血浆药物浓度下降一半所需的时间,连续多次给药时,必须经过 5 个t1/2才能达到稳态血药浓度。
13.药物跨膜转运的主要方式是简单扩散,其转运快慢主要取决于膜两侧浓度差、药物分子量、脂溶性和解离度和极,弱酸性药物在酸性环境下易跨膜转运。
14.药物的体内过程包括吸收、分布、代谢、排泄。
15.被动转运有两种形式,即滤过、简单扩散。
软件工程综合训练离线作业选择题(20分):1.下列哪一项不是项目组分配角色项(D)A、项目组长B、开发人员C、测试人员D、管理人员2.选中连续单元格可以先选择该区域的第一个单元格,然后按下(B)键之后选A、ALTB、SHIFTC、CTRLD、BACKSPACE3.模板文件的后缀名是(A)A、*.mptB、*.proC、*.dotD、*.xls4.在Project 2003 中输入新任务的时候,所有的任务起始日期默认都是项目的开始日期,工期为(B)天A、0B、1C、2D、35.要更改项目的工作时间,请点击(C)菜单下的“更改工作时间”选项A、文件B、编辑C、工具D、选项6.在Project 2003 中工期后面的(A)表示为估计工期A、?B、*C、%D、&7.下列哪一项不属于保密级别(B)A、普通B、加密C、保密D、机密8.下列不属于概要设计状态的是(D)A、未编写B、编写C、评审通过D、装订9.对用例不需要在(C)处打对钩,其中打对钩用例的UUCW会自动计算得出A、简单B、普通C、一般D、复杂10.程序模块要采用缩进风格编写,缩进的空格数为(D)个。
A、1B、2C、3D、4填空题(80分):1.提供的实训模板里,“评审参加人数”、“准备总人时”、“实到人数”、“评审总人时”、“确认签字人数”处的数据,都可以根据填写内容自动计算得到,不需要填写。
对2.目进度管理知识领域主要包括任务排序、任务工期估计、进度计划制定和进度计划控制四大过程,它的目的是保证按时完成项目、合理完成项目、发挥最佳工作效率。
对3.新产品研发类:是指需要研发的产品或其应用领域对企业来说是全新的,研发管理过程应当更加严格。
对4.软件外包类:按软件开发阶段分阶段的部分工作外包完成。
对5.系统分析人员角色职责:(1)调查、分析并定义需求,填写相应的需求文档,尽最大努力使需求文档能够正确无误地反映用户的真实意愿;(2)根据需求文档设计软件系统的体系结构、用户界面、数据库、模块等;(3)在设计完后,参与系统的测试。
《软件工程基础》作业第一章概述1.什么是软件危机,它有哪些典型表现?答:软件危机是指在计算机软件的开发和维护过程中所遇到的一系列严重问题。
概括地说,软件危机包含下述两方问题:如何开发软件,以满足对软件日益增长的需求;如何维护数量不断膨胀的已有软件。
软件危机典型表现:对软件开发成本和进度的做计常常很不准确。
用户对已完成的软件系统不满意的现象经常用发生。
软件产品的质量往往靠不住。
软件常常是不可维护的。
软件通常没有适当的文档资料软件成本在计算机系统总成本中所占的比例逐年上涨。
软件开发生产率提高的速度,远远跟不上计算机应用迅速普及深入的趋势。
产生软件危机的原因:一方面与软件本身的特点有关,另一方面也和软件开发与维护的方法不正确有关。
软件不同于硬件,它是计算机系统中逻辑部件而不是物理部件。
管理和控制软件开发过程相当困难。
软件是击规模庞大,而且程式复杂性将随着程式规模的增加而呈指数上升。
目前相当多的软件专业人员对软开发和维护还有不省糊涂观念,在实践过程中或多或省地采用了错误的方法和技术,这是使软件问题发展成软件危机的主机原因。
2.简述产生软件危机的原因和解决的思路。
答:软件危机产生的原因一方面与软件本身的特点有关,另一方面,是与已有软件开发、维护的方法不正确有密切关系。
解决软件危机,既要有技术措施(方法和工具),又要有必要的组织管理措施。
即采用工程化的原则和方法组织软件开发是摆脱软件危机的一个主要出路。
3.什么是软件工程?它有哪些本质特性?答:软件工程是指导计算机软件开发和维护的一门工程学科。
采用工程的概念、原理、技术和方法来开发和维护软件,把经过时间考验而证明正确的管理技术和当前能够瞧得到的最好的技术方法结合起来,以经济地开发出高质量的软件并有效地维护它。
软件工程本质特性:1、软件工程关注注于大型程序的构造;2、软件工程的中心课题是控制复杂性;3、软件经常变化;4、开发软件的效率非常重要;5、和谐地合作是开发软件的关键;6、软件必须有效地支持它的用户;7、在软件工程领域中是由具有一种文化背景的人替具有另一种文化背景的人创造产品。
浙江大学远程教育学院《软件工程基础》课程作业姓名:王海清学号:714073012001年级:14秋学习中心:厦门所谓“软件危机”就是,在计算机软件的开发和维护过程中所遇到的一系列严重的问题,概括起来归纳为:如何开发软件,以满足日益增长、日趋复杂的需要;如何维护数量不断膨胀的已有软件。
软件危机的典型表现主要有:a. 开发成本和进度不能准确估计b. 开发出来的软件不能满足用户的要求c. 软件的可维护性差d. 软件质量不可靠e. 软件成本在系统中的比重逐年上升f. 软件开发生产率的提高速度不够2.简述产生软件危机的原因和解决的思路。
软件危机产生的原因一方面与软件本身的特点有关,另一方面,是与已有软件开发、维护的方法不正确有密切关系。
解决软件危机,既要有技术措施(方法和工具),又要有必要的组织管理措施。
即采用工程化的原则和方法组织软件开发是摆脱软件危机的一个主要出路。
3.什么是软件工程?它有哪些本质特性?软件工程是一门研究如何用系统化、规范化、数量化等工程原则和方法进行软件开发和维护的学科。
其实质就是用工程的概念、原理、技术和方法,结合有效的管理方法和先进的开发技术,开发与维护软件,以解决软件危机。
4.软件工程是如何用来消除软件危机的?软件工程是从技术和管理两个方面来研究如何更好地开发和维护计算机软件,从源头上消除软件危机。
6.简述软件的定义。
软件=程序 + 数据 + 文档7.软件工程的目的是什么?为高质量的软件开发提供一个科学的体系框架。
8.什么是软件工程方法学?软件工程是一种什么样的技术?包括哪三大要素?分为哪三个分支?软件工程方法学就是指在软件生命周期全过程中使用的一整套管理和开发技术方法的集合。
目前,使用最广泛的软件工程方法学分别是传统方法学和面向对象方法学。
软件工程作为一种层次化的技术,有方法、工具和过程三大要素,并由于其涉及学科内容的极为广泛,而分为三个分支:软件开发技术、软件项目管理技术、软件质量管理技术。
9.简述软件工程的基本原理。
软件工程有7条基本原理:1.严格按照软件生命周期计划进行管理2.坚持进行阶段评审3.实行严格的产品控制4.采用先进的程序设计技术5.结果应能清楚的审查6.开发小组成员应少而精7.承认不断改进软件工程实践的必要性10.软件工程的基本开发原则有哪些?软件工程的基本开发原则有:1.模块化2.抽象和信息隐蔽3.模块的高内聚和低耦合4.确定性5.一致性6.完备性11.构成软件工程的基本元素有哪些?除了前面给出的软件工程三大要素,还应该包括控制和质量保证。
这里的控制,即规模控制、成本控制、复杂性控制等。
12.什么是软件过程?它与软件工程方法学有何关系?软件过程是指为了获得高质量软件产品,在软件工具支持下,由软件人员完成的一系列软件工程活动。
软件过程规定了开发软件所需完成的各项任务步骤。
过程步骤的设定与软件生命周期、生命周期模型、软件开发工具,以及参与开发的人员等诸方面因素有关。
13.什么是软件生命周期?什么是软件生命周期模型?软件如同自然界任何事物一样,都有其孕育、诞生、成长、成熟、衰亡的生存过程。
软件的这一过程,称为软件生命周期。
软件生命周期模型也称软件开发过程模型,是为了解决产业环境中的实际问题,而提出的开发策略。
是反映整个软件生命期中,系统开发、运行、维护等实施活动的一种结构框架。
14.简述软件生命周期方法学的途径,以及划分阶段步骤的目的和实质。
软件生命周期方法学是软件工程的传统途径,划分阶段步骤的目的和实质是:控制开发工作的复杂性,通过有限步骤,把抽象逻辑概念,转化为具体物力实现。
15.试比较瀑布模型、快速原型模型、增量模型和螺旋模型的优缺点,说明它们各自的适用范围。
1.瀑布模型。
瀑布模型广为人知和历史悠久,其优势是规范及文档驱动的方法。
但问题是,往往不能够真正满足用户的需求。
适用于传统软件工程领域的结构化开发。
2.原型模型。
是为了克服瀑布模型的缺点而提出来的。
通过快速构建一个在机器上可运行的原型系统,让用户试用原型,并收集反馈意见的办法,来获取用户真实的需求。
3.螺旋模型。
螺旋模型适用于大型软件项目,比起之前的其它模型而言,有其一定的优越性,但这些优越性并不是绝对的。
主要体现在对开发人员的风险评估经验和专门知识的要求较高。
如果项目风险较大,而开发人员的水平较低,不能准确的识别和分析风险,则势必造成重大损失。
4.增量模型。
具有在软件开发早期阶段使投资获得明显回报和交易维护的优点,但是要求软件具有开放的结构。
第二章可行性研究1.在软件开发的早期阶段,为什么要进行可行性研究?其目的和任务各是什么?可行性研究的目的是用最小的代价,在尽可能短的时间内确定问题是否可解决,以及是否值得解决。
可行性研究的任务不是解决问题,而是确定是否可解/值得解。
2.应该从哪些方面研究目标系统的可行性?主要从以下几个方面进行可行性研究:1. 技术可行性。
以现有技术,能否在预定时间内完成该系统开发。
2. 经济可行性。
通过成本-效益分析,估算系统的整体经济效益是否满足要求。
3. 操作可行性。
分析系统的运行方式、操作规程是否适应用户应用需要。
4. 社会可行性。
分析系统在法律、社会、市场等方面的认可度。
3.可行性研究有哪些工作步骤?(1) 复查定义,确定系统规模和目标。
(2) 研究老系统(3) 导出高层逻辑模型(conceptual design)(4) 重新定义(5) 导出多种解法(6) 推荐行动方针(7) 开发计划(粗略)(8) 审查、存档4.简述系统流程图在可行性研究中的作用。
系统流程图是概括的描述物理系统的传统工具。
系统流程图反映的是信息在系统各部分间流动的情况。
系统流程图可以帮助了解和分析系统,以概括的方式表达对系统的认识,并可以描述未来物理系统的概貌。
5.简述数据流图在可行性研究中的作用和用途。
数据流图在可行性分析中可以帮助分析和描绘数据在软件中流动和被处理的逻辑过程,用图形的方式描述系统的逻辑功能,是系统分析员和用户之间理想的通信工具。
6.简单描述数据字典的内容和定义数据的方法。
数据字典主要由下列4种元素定义组成:1.数据流2.数据流分量3.数据存储4.处理除了数据定义外,数据字典还应包含一些关于数据的其它信息。
定义数据的方法通常采用自顶向下分解的方式。
并由顺序、选择、重复三种基本数据元素类型组成数据。
7.说明软件计划的内容和目标。
软件计划的内容=项目任务范围 + 环境资源 + 工作量 + 进度软件计划的目标是为了提供一个框架,以便于管理者对资源、成本和进度等进行合理的估算。
8.什么是软件范围?定义软件范围需要哪些信息?软件范围就是在技术和管理层面上都是无二义性和可理解的项目范围,是软件开发各阶段的工作依据。
定义软件范围需要以下信息:a. 与用户、总体目标及利益相关的问题。
b. 有利于系统分析员理解的问题。
c. 集中于交流效果的问题。
9.简述软件开发环境资源的三个层次。
软件开发环境资源由三个层次构成:开发环境、软件构件以及最重要的资源——人。
10.软件环境资源的特征有哪些?它们对制定软件计划都有哪些意义?每一类资源都有四个特征:资源描述、可用性说明和资源提供的时间、资源使用的延续时间。
可以为制定软件计划估算软件开发所需的资源。
11.软件计划中,安排软件开发进度主要可以用哪些工具?都有哪些优缺点?编制进度计划的常用工具主要有甘特图和网络计划法。
甘特图的优点是简单,能动态地反映开发进展;缺点是难以反映多个任务间的逻辑关系。
网络计划法则恰好弥补了甘特图的缺点,最适合反映多个工作之间的逻辑关系。
12.主要的成本估计技术有哪些?其依据的主要是什么?主要有,代码行技术。
是一种基于规模的分解估算:D=?f(vi)以及基于问题的分解估算:EV=(Sopt+4Sm+Spess)/6还有功能点技术。
这种技术以功能点(FP)为单位,度量软件的规模。
由于项目本身的复杂性,因此,成本估计技术主要采用“分而治之”的分解技术对软件项目进行估算。
13.为什么说成本估计是不可能精准的?那是由于太多的变化因素——人员、技术、环境、策略、复杂性等等,使得成本估算永远不可能精确。
14.进行成本/效益分析的方法主要有哪些?常用成本/效益分析的方法主要有:(1) 货币的时间价值(2) 投资回收期(3) 纯收入(4) 投资回收率16.如何对制定完成的软件计划进行复审?为什么要复审?软件计划的复审通常涉及有关软件工作范围和软硬件资源问题等。
复审应该邀请用户参加,用户可提出建议,并与开发人员最终商定内容。
复审内容分为技术和管理两个方面:技术方面需要考虑的问题有:系统的任务是否合理;系统的给你复杂性是否与开发成本、进度以及风险一致;系统规格说明书是否足够充分;系统性能要求是否恰当管理方面需要考虑的问题有:计划中描述的工作范围是否符合用户需求?计划中对资源的描述是否有效、合理?计划中系统的开发成本与进度要求是否合理?计划中人员的安排是否合理?系统开发存在哪些风险?复审可以尽早发现错误,复审是软件质量保证的重要措施。
第三章需求分析1.为什么要进行需求分析?通常对软件系统有哪些需求?需求问题是软件工程项目失败的主要原因。
一个高质量的软件,很大程度上取决于对要解决的问题的认识,以及如何准确的表达用户的需求。
需求分析就是要解决这个问题。
通常,对一个软件系统的需求可以有功能需求、性能需求、可靠性和可用性需求、出错处理需求、接口需求等多个方面。
2.怎样与用户有效地沟通,以获得用户的真实需求?访谈、情景分析,以及面向数据流的自顶向下求精等方法,编制简易的系统规格说明文档,创建原型等,是获取真实需求的有效方法。
3.需求分析的任务是什么?确定对待开发系统的综合要求。
4.通常系统的需求可以分为哪几个层次?一般可以分成5个层次:(1) 功能需求:系统必须做什么?(2) 业务需求:反映客户组织机构对系统高层次的目标要求。
(3) 运行需求:运行环境、软硬件配置等。
(4) 属性需求:包括用户关心的属性,如效率、灵活性、完整性、可靠性等;开发者关心的属性,如可维护性、可复用性、可移植性等。
(5) 未来可能的扩充需求:如HDIS各组的合并,3维虚拟现实的效果等等。
5.进行需求分析的步骤有哪些?1.确定系统的综合要求2.分析系统的数据要求3.导出逻辑模型4.修正系统开发计划6.简述建立原型模型对软件需求分析的作用。
可以快速构建旨在演示目标系统主要功能的可运行程序,帮助用户确定及提供更为精准的需求,以利用户和开发者能够在目标系统应该“做什么”这一问题上尽快达成一致。
7.解释实体-联系图及其用途。
实体-联系图是按照用户的观点对数据建立的模型。
描述从用户角度看到的数据,反映用户的现实环境,并且与在软件系统中的实现方法无关。