软件工程导论之需求分析
张海藩《软件工程导论》(第6版)(课后习题 第3章 需求分析)【圣才出品】

第3章需求分析1.为什么要进行需求分析?通常对软件系统有哪些需求?答:(1)需求分析的原因为了开发真正满足用户需求的软件产品,需求分析是软件开发工作获得成功的前提条件,不能满足用户需求的程序只会令用户失望,给开发者带来烦恼。
(2)对软件系统的需求功能需求、性能需求、可靠性和可用性需求、出错处理、借口需求、约束、逆向需求、将来可能提出的要求。
2.怎样与用户有效地沟通以获取用户的真实需求?答:访谈是最早开始使用的获取用户需求的技术,也是目前广泛使用的需求分析技术,访谈有两种形式,分别是正式的和非正式的访谈。
正式访谈时,系统分析员将提出一些事先准备好的具体问题。
在非正式访谈中,分析员将提出一些用户可以自由回答的开放性问题,以鼓励被访问人员说出自己的想法。
其中情景分析技术往往非常有效。
3.银行计算机储蓄系统的工作过程大致如下:储户填写的存款单或取款单由业务员输入系统,如果是存款则系统记录存款人姓名、住址(或电话号码)、身份证号码、存款类型、存款日期、到期日期、利率及密码(可选)等信息,并印出存单给储户;如果是取款而且存款时留有密码,则系统首先核对储户密码,若密码正确或存款时未留密码,则系统计算利息并印出利息清单给储户。
用数据流图描绘系统中的数据对象,并用实体联系图描绘系统中的数据对象。
答:(1)数据流图,如图3-9所示。
图3-9银行计算机储蓄系统数据流图(2)E-R模型如图3-10所示。
本题中共有两类实体,分别是“储户”和“储蓄所”,在它们之间存在“存取款”关系。
因为一位储户可以在多家储蓄所存取款,一家储蓄所拥有多位储户,所以“存取款”是多对多(M:N)关系。
储户的属性主要有姓名、住址、电话号码和身份证号码,储蓄所的属性主要是名称、地址和电话号码,而数额、类型、到期日期、利率和密码则是关系类型存取款的属性。
图3-10银行计算机储蓄系E-R图4.分析习题2第3题所述的机票预订系统。
试用实体一联系图描绘本系统中的数据对象并用数据流图描绘本系统的功能。
软件工程导论_第三章

• 后勤部涉及到的实体及实体之间的联系如下:
• 学生:属性有学号、姓名、性别、年龄、专业和入学时间 • 宿舍:楼号、房间、档次 • 学生与宿舍的联系是一个学生只能住在一个宿舍,一个 宿舍能住多个学生,学生住宿要交租金。
教务处涉及到的实体及实体之间的联系如下:
• 学生:属性有学号、姓名、性别、年龄、专业和入学时 间 • 教师:属性有教师号、姓名、性别、职称、专业 • 课程:属性有课程号、课程名、学时数、专业 • 各实体关系描述如下:一个学生可以选多门课,一门课 可以由多个学生选修;一个教师可以教多门课,一门课也 可以由多个老师教;学生选修某门课有一个成绩;教师教 某门课有一个质量评价
结构化分析模型的组成
加 数 工 据 数据流图 说 对 E-R图 数据字典 (DFD) 明 象 (DD) 说 明 状态转换图
(STD图)
控制说明
需求描述:规格说明
• 规格说明文档或规约(specifications)
– 明确地描述产品的功能,即明确说明产品做什 么,并且列出产品要满足的任何约束。包括产 品的输入和要求的输出
4. 修正系统开发计划
根据以上三点修正以前制定的开发计划
需求分析的步骤
• • • • 需求获取:问题识别 需求提炼:分析建模(导出软件逻辑模型) 需求描述:编写<需求规格说明书> 需求验证:需求分析评审
涉及的问题1
• 如何识别、获取需求? • 你能够采取何种手段与用户进行交流沟通?
3.2需求获取
解:描述仓库和商品之间的E-R图可如下图所示
仓库号 地点 面积
仓库
1
数量
存放
n
商品
商-3】两个实体集之间的多对多的联系的绘制方法。
软件工程需求分析课件

43
例题:
办公室复印机的工作过程大致如下: 未接到复印命令时处于闲臵状态,一旦接到复 印命令则进入复印状态,完成一个复印命令规定的 工作后又回到闲臵状态,等待下一个复印命令; 如果执行复印命令时发现缺纸,则进入缺纸状 态,发出警告,等待装纸,装满纸后进入闲臵状态, 准备接受复印命令;如果复印时发生卡纸故障,则 进入卡纸状态,发出警告等待维修人员排除故障, 故障排除后回到闲臵状态。
系统对事件的响应,既可以是做一个(或一系 列)动作,也可以是仅仅改变系统本身的状态 ,还可以是既改变状态又做动作。
40
初态: 终态: 中间状态:
状态名 状态变量
活动表
事件:
事件名(参数表)[条件]/动作表达式
状态转换:
41
状态图中使用的主要符号
42
状态图可以表示系统循环运行过程,也可 以表示系统单程生命期。
时就应该再次订货。
27
再次阅读可知:
事务有类型,需要根据不同情况处理;---处理事务
对各类事务要更改库存信息;对出库事务当 库存量少于临界值时,要产生订货信息。
订货信息不同于订货报表,报表要有严格的 格式。------产生报表
28
库存清单(信息)
订货 订货报表 CRT终端 事务 2 1 采购员 (仓库管 处理事务 信息 产生报表 (部) 理员) 订 货 信 息 订货信息 订 货 信 息
11
系统流程图(4)
12
系统流程图(5)
13
数据流图(1)
一.数据流图的作用
软件工程导论简答题

软件⼯程导论简答题三、简答题1.什么是需求分析?需求分析阶段的基本任务是什么?答:需求分析是当前软件⼯程中的关键问题,需求分析阶段的任务是:在可⾏性分析的基础上,进⼀步了解、确定⽤户需求。
准确地回答“系统必须做什么?”的问题。
获得需求规格说明书。
还涉及到软件系统的⽬标、软件系统提供的服务、软件系统的约束和软件系统运⾏的环境。
它还涉及到这些因素和系统的精确规格说明,以及系统进化之间的关系。
需求分析的基本任务包括:(1)抽取需求分析现⾏系统存在需要解决的问题。
获取⾜够多的问题领域的知识,需求抽取的⽅法⼀般有问卷法、⾯谈法、数据采集法、⽤例法、情景实例法以及基于⽬标的⽅法等;还有知识⼯程⽅法,例如,场记分析法、卡⽚分类法、分类表格技术和基于模型的知识获取等。
(2)模拟和分析需求需求分析和模拟⼜包含三个层次的⼯作。
⾸先是需求建模。
需求模型的表现形式有⾃然语⾔、半形式化(如图、表、结构化英语等)和形式化表⽰等三种。
需求概念模型的要求包括实现的独⽴性:不模拟数据的表⽰和内部组织等;需求模拟技术⼜分为企业模拟、功能需求模拟和⾮功能需求模拟等。
(3)传递需求传递需求的主要任务是书写软件需求规格说明。
(4)认可需求就是对需求规格说明达成⼀致,其主要任务是冲突求解,包括定义冲突和冲突求解两⽅⾯。
常⽤的冲突求解⽅法有:协商、竞争、仲裁、强制、教育等,其中有些只能⽤⼈的因素去控制。
(5)进化需求客户的需要总是不断(连续)地增长,但是⼀般的软件开发⼜总是落后于客户需求的增长,如何管理需求的进化(变化)就成为软件进化的⾸要问题。
对于传统的变化管理过程来说,其基本成分包括软件配置、软件基线和变化审查⼩组。
当前的发展是软件家族法,即产品线⽅法。
多视点⽅法也是管理需求变化的⼀种新⽅法,它可以⽤于管理不⼀致性,并进⾏关于变化的推理。
2.等价分类法的基本思想是什么?答:根据程序的输⼊特性,将程序的定义域划分为有限个等价区段——“等价类”,从等价类中选择出的⽤例具有“代表性”,即测试某个等价类的代表值就等价于对这⼀类其他值的测试。
软件工程导论-第3章_需求分析_(第五版)(张海藩编著)_a_百度文库

(2) 完整性:需求必须是完整的,规格说明书应该包括用户需要的
每一个功能或性能。
(3) 现实性:指定的需求应该是用现有的硬件技术和软件技术基本
上可以实现的。对硬件技术的进步可以做些预测,对软件技术的进步 则很难做出预测,只能从现有技术水平出发判断需求的现实性。
(4) 有效性:必须证明需求是正确有效的,确实能解决用户面对的
成功来之不易
31%
(取消)
16.2%
(成功地完成)
53.8%
(受到挑战) Source: Standish Group
2
软件项目失败的原因
软件项目失败的最重要的五个主要原因:
需求不完整 缺少客户的参与 缺少资源 期望值过高 缺少高层的支持
0% 5% 10% 15%
3
需求错误的成本
4
软件需求的重要性: •软件需求分析是决定软件成功开发的一个关键因素
3.1.4 修正系统开发计划
根据在分析过程中获得的对系统的更深入更具体 的了解,可以比较准确地估计系统的成本和进度,修 正以前制定的开发计划。
补充:与用户沟通获取需求的方法
3.2 与用户沟通获取需求的方法
需求获取的困难:
-用户通常并不真正知道自己希望计算机系统做什么 用户通常使用业务语言表达需求,开发人员缺乏相关 的领域知识和经验,难以准确理解这些需求 -不同的用户提出不同的需求,可能存在矛盾和冲突 管理者可能出于增加影响力的原因而提出特别的需求 -由于经济和业务环境的动态性,需求经常发生变更
图3.7 IPO图的一个例子图
模块编号:c.5.5.8
图3.7 IPO图的一个例子图
图3.8 改进的IPO图的形式
本书建 议使用 一种改 进的 IPO图 (也称 为IPO 表 ),
软件工程导论----张海藩(第五版)课后习题答案

《软件工程导论》课后习题答案第三章需求分析习题答案1.需求分析的描述工具有哪些?有数据流图、数据字典、判定表、判定树、结构化自然语言、层次方框图、Warnier 图、IPO图和需求描述语言等。
2.需求分析的基本任务是什么?准确定义未来系统的目标,确定为了满足用户的需要系统必须做什么。
3.怎样建立目标系统的逻辑模型?要经过哪些步骤?建立目标系统的逻辑模型的过程也就是数据流图的分解过程。
它的导出过程如图:10.某单位拟开发一个计算机房产管理系统,要求系统具有分房、调房、退房和查询统计等功能。
房产科将用户申请表输入系统后,系统首先检查申请表的合法性,对不合法的申请表,系统拒绝接收;对合法的申请表根据类型分别进行处理。
(1) 如果是分房申请,则根据申请者的情况(年龄、工龄、职称、职务、家庭人口等)计算其分数,当分数高于阀值分数时,按分数高低将申请单插到分房队列的适当位置。
在进行分房时,从空房文件中读出空房信息,如房号、面积、等级、单位面积房租等,把好房优先分给排在分房队列前面的符合该等级房条件的申请者;从空房文件中删掉这个房号的信息,并从分房队列中删掉该申请单,再把此房号的信息和住户信息一起写到住房文件中,输出住房分配单给住户,同时计算房租,并将算出的房租写到房租文件中。
(2) 如果是退房申请,则从住房文件和房租文件中删除有关信息,再把此房号的信息写到空房文件中。
(3) 如果是调房申请,则根据申请者的情况确定其住房等级,然后在空房文件中查找属于该等级的空房,退掉原住房,再进行与分房类似的处理。
(4) 住户可以向系统查询目前分房的阀值分数,居住某类房屋的条件,某房号的单位面积及房租等信息。
房产科可以要求系统打印住房情况的统计表,或更改某类房屋的居住条件、单位面积和房租等。
用数据流图描绘该系统的功能需求;在数据字典中给出主要的数据流、文件和加工说明。
第四章总体设计习题答案9. 比较层次方框图与结构图是的异同?(1) 层次方框图描绘数据的层次结构, 结构图描绘的是软件结构。
软件工程需求分析报告

软件工程需求分析报告一、引言。
随着信息技术的不断发展,软件在各行各业中的应用越来越广泛。
而软件工程作为一门学科,对于软件开发过程中的需求分析显得尤为重要。
需求分析是软件工程的第一步,它直接关系到软件开发的成败。
因此,本报告旨在对某软件项目的需求进行分析,以期为后续的软件设计和开发提供指导。
二、需求分析的背景。
本次需求分析的对象是一款用于在线教育的学生管理系统。
随着在线教育的兴起,学生管理系统成为了学校教务管理的重要工具。
而现有的学生管理系统在功能上存在不足,用户体验也不够友好,因此需要进行重新设计和开发。
在这种背景下,我们进行了需求分析,以期为新系统的开发提供指导。
三、需求分析的内容。
1. 功能需求分析。
学生管理系统的功能需求主要包括学生信息管理、课程管理、成绩管理、教师管理、班级管理等。
在学生信息管理方面,需要包括学生基本信息、家长联系方式、学生课程情况等;在课程管理方面,需要包括课程信息、上课时间、授课教师等;在成绩管理方面,需要包括成绩录入、成绩查询等。
同时,系统还需要支持权限管理、数据统计分析等功能。
2. 性能需求分析。
对于学生管理系统来说,性能需求是非常重要的。
系统需要具有良好的稳定性和可靠性,能够支持大量并发访问。
同时,系统的响应速度也需要较快,保证用户能够在短时间内完成操作。
此外,系统还需要具备较高的安全性,确保学生信息和教务数据不会泄露或被篡改。
3. 用户需求分析。
用户需求是需求分析的重要组成部分。
在这款学生管理系统中,主要的用户包括学生、教师、家长和教务人员。
因此,系统需要考虑到不同用户的使用习惯和需求,提供相应的用户界面和操作方式。
同时,系统还需要支持多端访问,包括PC 端、移动端等,以满足用户在不同场景下的需求。
4. 界面需求分析。
良好的用户界面是提高系统易用性的关键。
在学生管理系统中,界面需求主要包括界面布局、颜色搭配、字体大小等方面。
界面需要简洁清晰,符合用户的视觉习惯,同时需要考虑到不同设备的显示效果,确保在不同分辨率下都能够正常显示。
软件工程课程设计需求分析

淮海工学院计算机工程学院实验报告书课程名:《软件工程》题目:图着色理论在仓库管理系统中的应用——需求分析班级:网络122学号:***********名:**1、实验目的与要求(1)上网查询浏览有关软件工程环境网站,了解有关软件工程环境的定义、配置、功能和用途;(2)下载有关软件工程标准,如国际ISO9000-3、国家GB8567-1988、2006和行业标准等,重点阅读软件分析阶段的文档编写指南;(3)由指导老师指定或由学生自己选择一实验题目——软件工程项目。
(4)安装、运行、熟悉Visio绘图工具的基本功能,并熟练掌握各种分析建模工具的使用方法,如系统流程图、数据流图、E-R图等,完成选定题目需求规格说明书中功能、数据和行为模型的创建与和说明。
2、实验内容1引言1.1编写目的本软件是用来有效的管理超市仓库货物数量及种类,以方便超市工作人员可以全面的了解超市仓库库存货物数量和种类来方便高效的管理超市仓库。
该项目可行性研究报告也是对超市仓库管理系统的全面考虑,是项目分析员进行进一步工作的前提,是软件开发人员成功的开发项目的前提.此分析研究报告可以使软件开发团体尽可能早的估计研制课题的可行性,可以在定义阶段较早的认识到系统方案的缺陷,可以节省时间、财力和精力,并且避免了专业方面的困难.及早地预测项目的可行性,在可行的前提下获得最好的实施方案。
1.2背景随着科学技术的发展,社会进步,计算机迅速的发展,仓库管理的方法也日新月异,以前全是由人管理的方法现存在很多的缺点:管理效率低,劳动强度大,信息处理速度低而且准确率也不够令人满意。
为了提高仓库管理效率,减轻劳动强度提高,信息处理速度和准确性;为仓库管理员提供更方便、科学的服务项目。
为仓库管理员提供的一种更先进、科学的服务系统。
于是我们便选择了由计算机来设计一个仓库管理系统的方案。
让计算机对仓库进行自动管理,仓库管理员可以直接在计算机上实现仓库的信息管理,并能在一定程度上实现自动化。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
软件工程导论
题目:图书管理系统文档名称:需求分析班级:科技0801
项目组长:唐子龙
项目成员:
唐子龙(05082019)朱磊(05082025)
赵欣(05082023)
刘华琛(05082004)
需求分析
§2.1 引言
§2.1.1 编写目的
需求分析的目的是让读者能够基本了解本系统的开发目的,开发方法,以及目前的硬件、软件的情况和开发所需资金和设备, 概要设计和详细设计与开发工作将在此基础上进一步提出。
§2.1.2 背景
这次待开发的系统名称为:图书管理系统
本次项目的任务提出者、开发者:唐子龙、朱磊、赵欣、刘华琛。
用户:图书馆
§2.1.3 定义
图书管理系统对于现代图书馆而言,是能否发挥其教学科研作用的至关重要技术平台。
对于读者和图书管理员来说,是能否方便快速获取信息的关键。
所以,图书管理系统应该能够为用户提供充足的信息和快捷方便的操作手段。
§2.1.4 参考资料
1.李伟波.软件工程. 武汉:武汉大学出版社,2006
2.郑人杰.实用软件工程. 北京:清华大学出版社,2003
3.张海藩.软件工程导论(第5版). 北京:清华大学出版社,2008.2 §2.2 业务愿景和范围
§2.2.1 业务需求
1.背景、业务机会和客户需求
随着社会信息量的与日俱增,作为信息存储的主要媒体之一图书,数量、规模比以往任何时候都大的多,不论个人还是图书管理部门都需要使用方便而有效的方式来管理自己的书籍。
在计算机日益普及的今天,对个人而言,若采用一套行之有效的图书管理系统来管理自己的书籍,会方便许多。
对图书管理部门而言,随着图书种类的繁杂,和图书数量的增多,以前单一的手工检索已不能满足人们的要求,为了便于图书资料的管理,我们需要有效的图书管理软件。
1.业务目标和成功标准
业务目标:本系统旨在减轻图书馆工作人员工作负担,提高工作效率,而且方便用户查询、借阅。
成功标准:在使用本系统后,图书馆工作人员的工作效率大大提高,且对用户查询、借阅、预订都会有很大的便利。
§2.2.2 解决方案的前景
1.前景陈述
本图书馆管理信息系统在原有手工系统基础上,采用图书管理技术。
通过收集、整理、存储关于图书、读者的主要信息,以及原有系统的作业流程信息,为建立数据仓库做基础准备。
本系统采用最新的计算机技术,界面友好、操作方便,管理员可以针对不同需求分类、排序、查询、统计,方便读者和其他部门根据自己的需求准确、快速地查询图书信息,实现以计算机辅助形式代替传统的手工查找形式,减轻图书信息管理人员的劳动强度,提高图书馆的工作效率和水平,更好地为读者服务,从而使图书和读者管理更加合理化和科学化。
2.任务概述
○1目标:本软件旨在为学校的图书馆管理人员提供一个可以方便管理库
存图书的系统。
可以对库存图书进行录入、借还、查询、修改功
能。
减少操作时间,提高工作效率。
该软件适用于一般规模的图书馆管理操作。
○2用户特点:本系统的操作对象为图书馆管理人员。
对管理人员的计算机水平
不需要很高的要求。
3、数据描述:
○1静态数据:系统密码,书籍名称,库存总数,剩余数,借出数。
○2动态数据:使用者输入的信息,包括添加的书籍信息,查询关键字。
○3数据库描述:系统数据库采用TXT文档。
○
4数据流图:
○
5数据字典:
4、功能要求:
○
1功能划分 录入功能 数据流名:图书
别 名:图书馆库存图书
组 成:书名+库存总数+剩余数+借出数
备 注:无
浏览功能
信息查询功能
借出归还功能
插入与删除功能
信息的备份与读入功能
设置访问权限功能
○2功能描述
录入功能:输入相关数据
浏览功能:以列表方式列出所有记录信息
信息查询功能:根据书名匹配查询,并将查询结果列出
借出归还功能:根据借出与归还的书籍信息修改相应数据
插入与删除功能:插入一条新的图书信息,删除某图书的信息
信息的备份与读入功能:将输入文件进行备份和从指定文件读入数据
设置访问权限功能:只有输入正确密码才可以进行操作
否则无权操作
5、性能要求
○1数据精确度:查询时要确保查全率与查准率
○2时间特性:系统运行时间应该在用户能够接受的范围内
○3适应性:本软件属于小型软件,对不同的运行环境适应性很强,可以
能够满足使用需求。
6、运行需求
○1用户界面:在Turbo C 2.0界面运行
○2硬件接口:普通PC机
○3软件接口:运行于装有Turbo C 2.0的操作系统
○4故障处理:如果在使用过程中出现程序出错,重新运行即可恢复。