第一章需求工程导论 (2)
物流工程练习题(附答案)
第一章物流工程导论
1供应链中的核心企业一定是生产制造企业(√/×)
2 Physical Distribution和Logistics是对物流的不同叫法,实质相同(√/×)
3物流系统是以实现物资的时间效益和空间效益为目的,保障社会再生产顺利进行的有机整体(√/×)
4(多选)物流工程侧重从工程技术角度来研究A物流系统的设计、实现B物流系统的运营、控制C物流系统、、活动的计划、组织D物流活动的指挥、协调
5物流的功能仅包括运输、储存、装卸搬运、包装、流通加工、配送、信息处理这七大功能(√/×)
6以下选项中不属于物流工程研究内容的是()A物流搬运系统设计B仓储技术C物流设施选址D物流需求分析及预测
7物流工程技术即机械工程技术(√/×)
8物流最重要的两大效用是A时间效用、规模效用B空间效用、时间效用C空间效用、经济效用D经济效用、规模效用
9以下选项中存在背反效应的是A运输、储存B装卸、配送C装卸、储存D配送、运输
10以下选项中属于物理工程研究内容的是()A物理设施规划与设计B库存管理C物理成本管理D供应商选择
11物理工程的研究对象是()A物理系统B物理企业C物流网络D物流设施
12物流设施选址包括单一设备选址和多设施选址(√/×)
13(多选)物流工程是具有较强交叉性的学科,它与()领域密切相关A交通运输工程B 机械工程C建筑与土木工程D管理学E经济学
14物流系统是由()等要素构成的A资金、设施设备、人员B物资、资金、人员C物资、土地、人员D物资、设施设备、人员
第二章设施选址
1(多选)负荷距离法中距离的计算有()几种方式A实际距离B几何距离C直线距离D直角距离
第一讲需求工程导论
d, 31.1%
, 16.2%
150 100 100 100 100
预期值 实际值
Challen ged, 52.7%
50 0 费用 时间
61
功能
1.2 90年代的软件生产状况调查 —— Standish Group 1995
大公司开发项目的平均成本是232.2万美元, 中等公司是133.1万美元,小型公司是43.4 万美元 大约31%的项目在完成之前被取消,52.7 %的项目成本是原来预算的189% 大公司9%按预算交付,小公司16%按预算 交付
50's
60's
1.1软件的发展 —— 软件危机
1968年北大西洋公约组织的计算机科学家在联邦德国召 开的国际学术会议上第一次提出了“软件危 机”(software crisis)这个名词。 软件危机指的是在计算机软件的开发和维护过程中所遇到 的一系列严重问题
开发成本超出预算,实际进度比预定计划一再拖延。 用户对“已完成”系统不满意的现象经常发生。 软件产品的质量往往靠不住。Bug一大堆,Patch一个接一个。 软件的可维护程度非常之低。 软件通常没有适当的文档资料。 软件的成本不断提高。 软件开发生产率的提高赶不上硬件的发展和人们需求的增长
课程介绍
课程安排 课程的目的和背景 教学大纲和主要内容 参考书目
最新软件工程导论(第1章)概要教学讲义ppt课件
可行性研究的结果是使用部门负责人做出是否继续进行这项工程的 决定的重要依据,一般说来,只有投资可能取得较大效益的那些 工程项目才值得继续进行下去。可行性研究以后的那些阶段将需 要投入更多的人力物力。及时终止不值得投资的工程项目,可以 避免更大的浪费。
面向对象的方法 =对象(属性与服务的封装) +分类 +继承 +通过消息的通讯
面向对象方法把数据和行为看成同等重要,是一种以数据为主线,把数 据和对数据的操作紧密地结合起来的方法。其具有如下4个要点:
① 把对象(Object)作为融合了数据及在数据上的操作行为的统一的 软件构件。用对象分解取代传统方法的功能分解。
代价ຫໍສະໝຸດ Baidu
高
中
低
早期 中期 后期 软件开发时期
引入同一修改的代价随时间变化的趋势
1.1.3 解决软件危机的途径
1. 组织管理:软件开发不是某种个体劳动的神秘技巧,
软件开发应该是一种组织良好、管理严密、各类人 员协同配合、共同完成的工程项目。
2. 方法:应该推广使用在实践中总结出来的开发软件
面向工程教育认证的软件工程专业课程体系构建
面向工程教育认证的软件工程专业课程体系构建
一、课程设置
需确定软件工程专业的核心课程和选修课程。核心课程包括软件开发基础、软件工程
导论、需求工程、软件设计与体系结构、软件测试与质量保证、软件项目管理等。选修课
程可以根据学生的兴趣和发展方向设置,如人机交互、移动应用开发、云计算等。
二、课程内容
课程内容需要考虑符合软件工程的最新发展动态,并应该理论与实践相结合。以下是
一些常见的课程内容:
1. 软件开发基础:包括程序设计语言、数据结构、算法等基本知识,培养学生的编
程能力和问题解决能力。
2. 软件工程导论:介绍软件工程的基本概念、原则和方法,以及软件工程师的职责
和素质要求。
3. 需求工程:培养学生获取、分析和管理软件需求的能力,包括需求提取、需求规
格化、需求验证等。
4. 软件设计与体系结构:介绍软件设计原则和方法,包括面向对象设计、软件架构
设计等。
5. 软件测试与质量保证:讲解软件测试的基本原理和方法,以及质量保证的过程和
工具,培养学生的软件测试能力。
6. 软件项目管理:介绍软件项目管理的基本知识和方法,包括项目计划、项目执行、项目监控等,培养学生的项目管理能力。
三、实践环节
在课程体系中应包含一定的实践环节,使学生能够将所学的理论知识应用到实际项目
开发中。实践环节可以包括以下内容:
1. 实验课程:为学生提供一些实验项目,使他们能够动手实践所学的知识。
2. 实习项目:安排学生到企业或实验室进行实习,参与实际的软件开发项目,锻炼
他们的实践能力。
3. 毕业设计:让学生完成一项独立的软件项目,从需求分析、设计、编码、测试到
工程导论知识点总结
工程导论知识点总结
一、导论概述
工程导论是工程学科的入门课程,其内容涵盖了工程学的基本概念、原理和方法,对于初
学者来说是非常重要的一门课程。工程导论主要包括工程学的基本概念、工程专业的发展
历程、工程伦理与社会责任、工程设计与创新等内容。通过学习工程导论,可以让学生全
面了解工程学科的基本知识,为以后的专业学习和研究奠定坚实的基础。
二、工程学的基本概念
1.工程的定义
工程是指利用科学原理和技术方法对自然界和社会的资源进行开发、利用和管理的活动。
在工程学范畴内,我们对工程定义为一系列任务的完成或者一系列产品的开发,包括从设
计到实现的全过程。在这个过程中,需要充分了解和考虑自然和社会的条件,并准确地预
测和评估可行性和使用性。
2.工程学的基本原理
工程学是通过利用科学原理和技术方法将自然资源转换为人类所需要的产品或者服务。工
程学的基本原理是科学原理和技术方法的结合,通过对自然界的规律和物质的特性的认识,运用相应的技术手段解决人类生活和生产中的问题。
3.工程学的基本分类
工程学根据其应用领域和研究对象的不同,可以分为多个学科,例如机械工程、电子工程、土木工程等。各个工程学科之间有一定的交叉和联系,共同构成了工程学科的综合体系。
三、工程专业的发展历程
1.工程专业的起源
工程专业的起源可以追溯到古代的工匠和建筑师。古代的工匠们利用简单的工具和技术,
建造了许多宏伟的建筑和工程。古代的工程技术在当时就有相当高水平,其中包括水利工程、城市建设和交通运输等领域。
2.工程专业的发展
随着科学技术的发展和工业化的进程,工程专业得到了迅速的发展。在19世纪工业革命
《生态工程》课程教学大纲
《生态工程》课程教学大纲
Ecological Engineering
一、课程基本信息
(一)知识目标:了解生态工程的意义与前景,生态工程设计的基本原理与方法,种植业、林业、养殖业、农林牧复合系统、荒地恢复、湿地修复等生态工程的常用措施与技术。
(二)能力目标:把学到的各种原理、方法、技术运用到环境保护和生态文明建设中去,能尝试创建高产、无污的农林产业体系。
(三)素质目标:把生态学原理潜移默化到环境保护领域,形成“尊重自然,模仿自然”的理念。“天然生态系统有良好自稳、自净、高产能力,最佳的生态工程必须适当模仿当地天然生态系统”。
— 1 —
三、基本要求
生态工程是环境科学专业的选修课。教学内容包括:生态工程设计的基本原理,生态工程设计的方法,种植业生态工程,林业生态工程,养殖业生态工程,农林牧复合生态工程,荒芜土地恢复与重建的生态工程,湿地生态工程。生态工程学的任务不仅是对农业、牧业、林业、荒地和湿地等生态系统出现的问题进行生态治理和修复,更重要的是摒弃“头疼医头,脚疼医脚”的策略,综合研究各行业或各部门之间的关系、自然与环境的关系、近期与远期的系。生态工程是一种系统、复杂的综合工程,本质上是“仿自然生态系统工程学”。
四、教学内容与学时分配
第一章生态工程导论2学时
第一节生态工程研究的目的、背景1学时
第二节生态工程的应用前景1学时
第二章生态工程的原理2学时
第一节共生原理0.5学时
第二节正负反馈原理0.5学时
第三节局部控制与全局调节原理0.5学时
第四节物质与能量多层利用与循环原理0.5学时
第三章生态工程设计的方法6学时
软件工程(第10版)读书笔记——软件工程导论
软件⼯程(第10版)读书笔记——软件⼯程导论
第⼀章 概述
1.软件⼯程产⽣的背景: ⾯对不断增长的系统复杂性,导致软件项⽬⾯临不可靠,费⽤超预期,延迟交付等问题,需要采⽤有效的软件⼯程⽅法来应对。
2.好的软件的基本特性:可接受性,可依赖性和信息安全性,效率,可维护性。
3.软件过程:实现软件产品开发的活动序列。包括:软件规格说明,软件开发,软件确认,软件演化。
4.软件⼯程职业道德(ACM/IEEE-CS软件⼯程职业道德和⾏为准则)
第⼆章 软件过程
1.背景:没有放之四海皆准的软件过程,但需要不断改进组织中落后的软件过程技术。要充分利⽤⼯业界软件⼯程的最佳实践,或者引⼊UML建模和测试驱动等开发技术来改进⾃⼰的过程。
2.通⽤的软件过程模型:
- 瀑布模型(要求早期的承诺并且在实施变更时要进⾏系统返⼯,仅适⽤嵌⼊式系统,关键性系统,⼤型软件系统):
a.需求分析及定义;
b.系统及软件设计
c.实现和单元测试
d.集成和系统测试
e.运⾏和维护
- 增量式开发(每⼀增量版本包括⽤户需求的⼀部分功能)
优点:a.降低需求变更成本;
b.及时得到客户的反馈意见;
c.客户在较早期可以获得可以交付和部署的未包括所有功能版本。
存在问题:
a.过程不可见,因为系统快速迭代,要产⽣反映每个版本的⽂档不合算。
b.增量式开发容易使系统结构退化,敏捷⽅法建议定期对软件进⾏重构。
- 集成与配置(⾯向复⽤的软件⼯程)
优点:减低软件开发量,降低成本和风险
缺点:不完全满⾜客户的真实需求;对可复⽤构件的新版本不可控制,失去对系统演化的控制。
需求工程
一、论文要求
(1)对所选系统进行严密的需求获取以及需求分析。
(2)给出所选系统的各层次需求,包括业务需求,用户需求,功能需求以及非功能需求。(3)论文中给出所要实现系统的需求规格说明书。
(4)需求规格说明书要详尽,必须包括以下内容:引言,总体描述,功能需求,接口需求以及其它非功能性需求等,符合需求规格说明书各项细则。
(5)附录中给出所选系统需求规格说明书中各图表, 或者图表的获取过程. 例如数据字典的具体描述或者是UML建模中图的获取过程.
二、概况
图书馆作为知识的收藏者、存储者、承载者、中转者和传播者,是保存人类文化、供人阅读研究的重要场所,在社会中起着重要的作用。现在的图书馆可分为两类:一是传统的书本类的以纸质作为载体的图书馆,另一类则是在线数字图书馆。由于传统的图书馆在管理大量图书上的低效、工作量大、易出错以及图书馆占地面积大等原因,已经越来越不适合当今世界信息的爆炸性增长的趋势。而随着科技的发展,人们越来越推崇无纸化阅读,这样既可以减轻重量,又绿色环保,催生了数字图书馆,而数字图书馆由于其占地面积小,资源丰富,管理方便等优点,越来越受到人们的重视。
三、需求获取
1.确定需求开发计划:
确定需求开发计划的基本任务是确定需求开发实施步骤,给出收集需求活动的具体安排和进度。
需求开发计划
此过程仅包括需求开发工作,此计划应具有灵活性,以便在调查对象不在的时间能灵活的做出调整,尽量做到在规定时间内完成整个需求工作。
2.确定项目的目标和范围:
此阶段的基本任务是根据项目目标把项目相关人员定位到一个共同的和明确的方向上,并决定软件系统的范围。
需求工程复习要点
9
第 5章
5.2.2
确定项目的前景与范围
发现业务需求的过程
模糊的问题描述 P3:生产的废品过多 分析: 产生问题的原因 清晰的问题描述:P4:销售订单不准确,导致产生太多废品 发现: 业务需求 业务需求描述: BR1:提供销售订单的准确性,减少因 此而产生的废品。 需求的可行性、可验证性: BR2:提供销售订单的准确性,在系统使 用后3个月内,减少50%因此而产生的废品。
1
第 1章
需求工程导论
1.2 需求工程 1. 定义:需求工程是所有 需求处理活动的总和,它 收集信息、分析问题、整 合观点、记录需求并验证 其正确性,最终反映软件 被应用后与其环境互动形 成的期望效应。 2. 基本活动
需求工程导论 1.1 软件生产中的需求问题 软件项目分为以下三种类型: ① 成功项目 ② 问题项目 ③ 失败项目 。 需求因素:用户参与、高层 管理支持、清晰的需求说明、 切合实际的期望、清晰的目 标和前景、需求变化、额外 的无用功能等对项目的成败 具有至关重要的影响。
5
第 2章
需求基础
需求的分类:① 功能需求 ② 性能需求 ③ 质量属性 ④ 对外接口 ⑤ 约束 功能需求的三个层次 ①业务需求 :是系统建立的战略出发点,表现为高层次的目标,它 描述了组织为什么 要开发系统。 ②用户需求 : 是执行实际工作的用户对系统所能完成的具体任务 的期望,描述了系统能够帮助用户做些什么。 ③系统(级)需求 :是用户对系统行为的期望。 性能需求: 是一个系统或者其组成部分在限定的约束下,完成其指 定功能的程度。①速度 ②容量 ③吞吐量 ④负载 ⑤实时性 质量属性需求:功能性,可靠性,可用性,效率,可维护性,可移 植性 对外接口的需求:① 接口的用途。② 接口的输入输出③ 数据格式 ④ 命令格式⑤ 异常处理要求⑥ 用户界面 约束:① 系统开发及运行环境② 问题域内的相关标准③ 商业规则
软件工程导论第一章
软件工程的研究范围涵盖了软件开发的各个阶段,包括需求分析、设计、编码、 测试和维护等,同时也涉及到软件项目管理、软件质量保证和软件测试等方面。
软件工程的重要性
提高软件质量
通过采用先进的软件工程方法和工具,可以显著提高软件的质量,减 少软件中的缺陷和错误,提高软件的稳定性和可靠性。
降低开发成本
原型设计
通过快速构建原型来验证软件需求和设计方案,及时发现和解决 问题。
软件设计文档的编写与评审
设计说明书
详细描述软件系统的设计方案,包括系统结构、模块功能、接口定义等。
数据结构图
用图形方式表示软件系统中的数据结构和数据流程。
软件设计文档的编写与评审
• 系统流程图:用图形方式表示软件系统的处理流程和各组 成部分之间的关系。
逆向工程的步骤和工具
逆向工程的步骤包括代码分析、 设计恢复、文档生成等。常用的 逆向工程工具包括反汇编器、调 试器、代码分析工具等。
THANKS FOR WATCHING
感谢您的观看
针对软件的最小可测试单元进行测试,确保每个单元的功能正 确无误。
将多个单元组合在一起进行测试,验证它们之间的接口和功能 是否正常。
对整个软件系统进行全面的测试,包括功能测试、性能测试、 安全测试等,确保软件满足需求和设计要求。
记录和管理测试过程中发现的缺陷,跟踪缺陷的修复进度和结 果,确保软件质量得到持续改进。
第1章.需求工程导论
大约31%的项目在完成之前被取消,52.7%的 项目成本是原来预算的189%
大公司9%按预算交付,小公司16%按预算交 付
1.2 90年代的软件生产状况调查
—— 影响因素[Standish Group 1995]
LASDS(伦敦救护车服务派遣系统), 1992,社会服务领 域糟糕的需求分析
ATC(空中交通控制系统), 0.18B£,1998-2001,缺乏健 壮的需求规格说明
主要内容
1. 软件的需求问题 2. 需求问题的原因分析
1. 应用软件的模拟特性 2. 需求问题的技术原因分析
3. 需求工程 4. 需求工程师
问题项目的影响要素 缺少用户输入 不完整的需求说明 需求变化 缺乏高层管理支持 技术能力不足 缺乏资源 不切实际的期望 目标不清晰 不现实的时间要求 新技术的影响 其他
影响指数 12.8% 12.3% 11.8% 7.5% 7.0% 6.4% 5.9% 5.3% 4.3% 3.7% 23.0%
1.2 90年代的软件生产状况调查 —— 影响因素[Standish Group 1995]
2.1 应用软件的模拟特性 ——软件的三种类型
软件类别
纯工具型软件
专业用户
普通用户
应用型软件
软件工程学习报告
3. 软件过程模型 (4) 模型特点和使用场合对比:特性、适 用场合
名称 瀑布模型 优点 过程可见、易于监控项目 的过程。 缺点 适用场合 需求的责任和义务必 只有对需求了解的很 须在早期明确,对用 好,而且系统开发过 程中不太可能发生中 户变更相应困难。 大改变的时候。 商务、电子商务和个 (管理角度) 过程不可见。 人系统。 伴随信者增量的添加, 系统在退化。 需求妥协,致使不满 足用户需求;系统进 化控制失效,因为可 复用组件的版本可能 不受机构控制。 适用于已存在大量可 复用的组件,系统开 发过程着重于集成这 些组件到新系统中, 而非重头开发。
5. 敏捷软件开发方法
敏捷方法:是一种专注于快速开发的增量式开 发,频繁的发布软件。小且轻量级。他们是用 户直接的参与到到开发过程中。 基本特点:
描述、设计和实现过程是交织在一起的。(没有需 求、设计文档) 系统通过一系列版本开发出来。(增量式) 系统用户界面开发更为方便和灵活。
使用范围在下面几个类型的系统开发中,敏 捷方法非常成功的(轻量级)
2. 需求分析
需求工程过程的4个高层活动:
需求描述:方法很多自然语言、结构化描述
通常用自然语言,完整、准确、具体地描述系统的数据要
求、功能需求、性能需求、可靠性和可用性要求、出错 处理需求、接口需求、约束、逆向需求以及将来可能提 出的要求。 自然语言描述标准:
软件工程导论(第5版)课后习题答案
重庆工学院计算机科学与工程学院 李梁(liliang@cqit.edu.cn)
9
作业及解答(第3章)
从问题陈述可知,本系统数据源点是“病人”和“护士”
,他们分别提供生理信号和要求病情报告的信息。进一步 分析问题陈述,从系统应该“定时记录病人情况以形成患 者日志”这项要求可以想到,还应该有一个提供日期和时 间信息的“时钟”作为数据源点。 从问题陈述容易看出,本系统的数据终点是接收警告信息 和病情报告的护士。 系统对病人生理信号的处理功能主要是“接收信号”、“ 分析信号”和“产生警告信息”。 此外,系统还应该具有“定时取样生理信号”、“更新日 志”和“产生病情报告”的功能。 为了分析病人生理信号是否超出了医生规定的安全范围, 应该存储“患者安全范围”信息。此外,定时记录病人生 理信号所形成的“患者日志”,显然也是一个数据存储。
73,577,679条指令。 在1995年一名程序员每天可开发出30条指令,每月可开 发出600条指令,为了开发出可装满整个存储器的程序, 需要的工作量为 73577679 122 629(人月) , 600
13:07:42 重庆工学院计算机科学与工程学院 李梁(liliang@cqit.edu.cn)
E2 业务员
13:07:42
F8储蓄利率
D2存款利率
19
重庆工学院计算机科学与工程学院 李梁(liliang@cqit.edu.cn)
第一章需求工程导论 (2)
第一章需求工程导论
1。软件开发中碰到的需求问题的现象是什么?
答:(1)用户参与度不够.(2)高层管理支持力度不够.(3)没有清晰的需求说明.(4)没有清晰的目标和前景。(5)期望不切合实际.(6)需求变化影响.(7)增加了无用的额外功能。
2。在需求处理当中要注意哪些非技术性因素,为什么?
答:(1)需求处理的任务:需求处理的任务主要是发现问题并解决问题.现实是问题的发生地,软件系统是人们应对问题的手段。但是单纯的软件系统是不能解决问题的。它只有和现实之间形成一种有效的互动才能解决问题。
(2)需求处理的手段:建模与分析技术是进行需求处理的主要手段,这些技术本身都是概念性的,不依赖于某些特殊的应用环境条件.可以被广泛的应用于各种应用场景.
(3)需求处理的过程: 试图单纯的通过技术的应用建立一个一致完整的需求模型是不太可能的.因为在现实中,因涉众的不同立场而产生的利益冲突的场景非常常见。这些冲突是根本无法通过技术手段所能解决的。
3.解释需求分析与需求工程之间的联系
答:“需求工程"就是利用工程化的手段进行需求处理,以保证需求处理的正确进行,而“需求分析"是需求处理中的核心活动,他用一些形式化或半形式化的语言进行知识的分析,但是建立需求工程还离不开需求分析。
4。解释软件工程与系统工程之间的联系,这种联系对需求工程的工作有何影响?
答:(1)系统工程通常是指计算机引入某一现实系统,并用他来改变现实系统的运作方式,达到一个理想效果的过程。而且系统工程中除了含有处理系统的软件工程之外,还包括硬件工程和人力工程。因此,在系统工程中,虽然应该重点关注软件工程部分的内容,但并不能完全以软件为中心来看待和处理整个系统。
大一软件工程导论知识点
大一软件工程导论知识点
软件工程导论是大一软件工程专业的一门基础课程,旨在为学
生介绍软件工程领域的基本知识和概念。本文将介绍一些大一软
件工程导论常见的知识点,帮助读者对该课程有一个初步的了解。
1. 软件工程的概念和定义
软件工程是一门研究将系统化的、规范化的、可度量的方法
应用于软件的开发、运行和维护的学科。它涉及软件开发的各个
阶段,包括需求分析、设计、编码、测试等。
2. 软件生命周期
软件生命周期是指软件从概念形成到废弃的整个过程。它包
括需求分析、设计、编码、测试、部署和维护等阶段。了解软件
生命周期的不同阶段对于开发高质量的软件非常重要。
3. 软件开发模型
软件开发模型是指用于组织和管理软件开发的一种方式。常
见的软件开发模型有瀑布模型、迭代模型、敏捷开发等。不同的
模型适用于不同的项目需求和团队特点。
4. 需求工程
需求工程是软件开发过程中最重要的一环,它涉及对用户需求的收集、分析、规范和验证等工作。学习需求工程的方法和技巧对于准确理解用户需求,避免开发过程中的误解和问题至关重要。
5. 软件设计原则
软件设计原则是指在进行软件设计时应遵循的一些基本原则和规范。常见的软件设计原则包括单一职责原则、开闭原则、接口隔离原则等。遵循这些原则有助于提高软件的可维护性和可扩展性。
6. 软件测试
软件测试是保证软件质量的重要环节,它包括单元测试、集成测试、系统测试等不同级别的测试。学习软件测试的方法和技巧可以帮助开发人员发现和修复软件中的缺陷。
7. 软件项目管理
软件项目管理是指对软件开发项目进行规划、组织、协调和控制的一系列活动。了解软件项目管理的基本概念和方法可以帮助开发团队更好地管理项目进度和资源。
《工程导论》教学大纲
《工程导论》教学大纲
一、课程教学目的
工程导论是本专业的一门学科平台课,按照“育人为本、崇尚应用”、“一切为了学生”的教育教学理念和“夯实基础、强化实践、注重创新、突出特色”的人才培养思路,遵循“行业指导、校企合作、分类实施、形式多样”的原则,以社会需求为导向,以工程技术为主线,以实际工程为背景,着力提高学生的创新意识、工程伦理、工程与环境健康和工程经济分析等能力,使学生具备创造性的技能及大量的软技能,如需求分析、交流沟通、团队合作、终身学习、危机处理、工程伦理等非技术能力。
当今强调发展工程教育,旨在使学生在教育和学习过程中投身到创新型的社会实践活动中,更多地将注意力聚集在工程实践综合能力的培养上,以满足国家工程发展中对人才的需求。
课程目标对学生的能力要求如下:
课程目标1.紧跟信息技术的发展趋势,使学生能够对电子信息类专业的学科体系、研究领域、应用领域和研究方法有一个全面的、专业化的认识,建立起一些基础而重要的概念。理解不同社会文化对工程实践活动的影响。
课程目标2. 了解环境挑战、反思及环境伦理建构、环境方面的工程章程和法律、应对环境挑战等内容,能够分析和评价工程对环境、社会可持续发展的影响。
课程目标3. 运用经济学的基本理论和工程经济分析与评价的方法,对能够完成工程项目预定目标的各种可行技术方案进行技术经济论证、比较、计算和评价,从中选择技术上可行、经济上合理、生产上适用的方案,从而为实现正确的投资决策提供科学依据。
二、课程教学基本要求
1.课程重点:
本课程的重点是掌握工程学概论、工程项目解决方案、工程伦理、工程与环境、产品设计与开发、知识产权、工程管理与工程经济分析等内容。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第一章需求工程导论
1.软件开发中碰到的需求问题的现象是什么?
答:(1)用户参与度不够。(2)高层管理支持力度不够。(3)没有清晰的需求说明。(4)没有清晰的目标和前景。(5)期望不切合实际。(6)需求变化影响。(7)增加了无用的额外功能。
2.在需求处理当中要注意哪些非技术性因素,为什么?
答:(1)需求处理的任务:需求处理的任务主要是发现问题并解决问题。现实是问题的发生地,软件系统是人们应对问题的手段。但是单纯的软件系统是不能解决问题的。它只有和现实之间形成一种有效的互动才能解决问题。
(2)需求处理的手段:建模与分析技术是进行需求处理的主要手段,这些技术本身都是概念性的,不依赖于某些特殊的应用环境条件。可以被广泛的应用于各种应用场景。
(3)需求处理的过程:试图单纯的通过技术的应用建立一个一致完整的需求模型是不太可能的。因为在现实中,因涉众的不同立场而产生的利益冲突的场景非常常见。这些冲突是根本无法通过技术手段所能解决的。
3.解释需求分析与需求工程之间的联系
答:“需求工程”就是利用工程化的手段进行需求处理,以保证需求处理的正确进行,而“需求分析”是需求处理中的核心活动,他用一些形式化或半形式化的语言进行知识的分析,但是建立需求工程还离不开需求分析。
4.解释软件工程与系统工程之间的联系,这种联系对需求工程的工作有何影响?
答:(1)系统工程通常是指计算机引入某一现实系统,并用他来改变现实系统的运作方式,达到一个理想效果的过程。而且系统工程中除了含有处理系统的软件工程之外,还包括硬件工程和人力工程。因此,在系统工程中,虽然应该重点关注软件工程部分的内容,但并不能完全以软件为中心来看待和处理整个系统。
(2)影响:系统需求开发的主要目的是获得整个系统的期望目标,包含功能特性和非功能特性。因此需要判定系统的涉众,采集他们的目标与要求研究系统的环境确定系统的要求,并进行一些整体性的分析。
5.需求工程包括哪些活动?软件开发活动当中为什么要重视需求工程?
答:需求工程包括(1)需求开发(2)需求管理。需求开发要包括(需求获取、需求分析、需求规格说明、需求验证)
重视需求工程的原因:(1)需求问题是当前软件开发面临的主要问题(2)需求分析是软件开发中的理论约束,他控制着整个软件开发的工程走向。它是非技术人员和技术人员的工程纽带。
6.需求工程师需要具备哪些知识或技能?
答:(1)交流技能(2)观察技能(3)抽象分析与问题解决技能(4)写作技能(5)关系协调和团队工作技能。
第二章需求基础
1.IEEE是怎样定义需求的?
答:(1)用户为了解决问题或达到某些目标所需要的条件或能力;(2)系统或系统部件为了满足合同、标准、规范或其他正式文档所规定的要求而需具备的条件或能力;(3)对(1)或(2)中的一个条件或一种能力的一种文档化表述。
2.解释下列名词:问题域、解系统和共享现象,并结合他们的含义说明软件系统是如何与现实世界形成互动的?
答:问题域:问题的发生地,问题的发生范围及解决问题必须涉及的事件或事物。
解系统:软件系统通过影响问题域帮助人们解决问题被称之为解系统。
共享现象:解系统可以对问题域进行模拟的现象称为共享现象。
(2)共享现象是解系统所模拟的问题域的部分,该部分在两个系统中同时存在。除了共享现象外,问题域还有一些没有被解系统模拟的知识,因为在现实世界非常复杂,不可能也没必要在解系统中完全重现。除了包含共享现象的知识模型之外,解系统也有一些并非来自于现实模拟的特征,例如数据库管理系统的选择、模型的规范化、索引的建立等,这些因素并不对应与问题域知识,确是解系统必不可少的部分。
3.解释下列名词:需求、规格说明、问题域特性和约束,并结合他们的含义说明需求工程的主要任务是什么?
答:需求:用户为了解决问题或达到某些目标所需要的条件或能力;系统或系统部件为了满足合同、标准、规范或其他正式文档所规定的要求而需具备的条件或能力。
规格说明:因为解决方案以对外交互的方式定义了软件的
系统功能,所以解决方案被称为软件系统的需求规格说明。
问题域特性和约束:问题域的背景信息又被称为问题域特性而约束是不受解系统影响,却会给解系统带来极大影响的问题域特性。
需求工程的主要任务是解决问题、改善现实、满足用户期望的条件与能力。
4.需求有哪些常见的类别?功能需求和非功能需求有什么差异?
答;(1)业务需求(2)用户需求(3)系统级需求
差异:功能需求是用户对软件系统的显示要求,用户在软件系统创建之前就可以向开发者表达这种要求。非功能需求属于隐式要求,用户在系统创建之前无法清晰的告诉开发者他们希望该系统具备什么样的功能性特征。
5.描述业务需求、用户需求和系统级需求的区别与联系?
答:区别:业务需求是针对整个业务的期望,用户需求是针对具体任务的期望,系统级需求是针对用户与系统的一次交互的期望。
联系:他们都是问题解决的期望,只不过是不同抽象层次罢了。
6.优秀的需求特性有哪些?请为每一个特性都举出一个不符合的事例
(1)完备性 eg:在收银员输入商品时,系统显示商品信息。而不是商品价格。
(2)正确性 eg:用户的问题是A,但用户认为提供了方法B,则问题A自然可以得到解决,为此用户向需求工程师反映的便是B,而不是真实的A。
(3)可行性 eg :用户并不了解软件系统构建的相关技术知识,所以用户可能会提出一些已有软件技术无法实现的期望。
(4)必要性 eg:用户在交流中总是害怕信息有所遗漏,并因此产生不利后果,因此用户总是倾向于表达各种各样的需要,但是多种需要并没有必要。
(5)无歧义性 eg:用户可能在可能需求或者重大需求上采用,大概可行,差不多等词汇造成歧义。
(6)可验证性 eg:如果需求不可验证,无法判断完成的系统是否满足了该需求。
第三章
1.需求工程过程的工作基础(即输入)有哪些?他的工作成果(即输出)有哪些?
答:输入:系统的业务需求,系统的用户需求,用户的期望。
输出:项目前景和范围文档,用户需求文档,需求规格说明文档。
2.描述需求工程的各个活动,说明他们各自的工作基础、工作目标和工作成果。
(1)需求获取:(收集背景资料,获取问题与目标),(定义项目前景与范围),(记录获取结果)
(2)需求分析:(定义需求集合)(细化需求),(软件需求建模)
(3)需求规格说明:(获取的需求被编写文档)(系统涉众之间的交流信息),(编写文档)
(4)需求验证:(编写需求规格说明书)(执行验证)(问题修正)
(5)需求管理:(建立维护需求基线集)(保证需求作用持续稳定