需求分析与设计课后答案样本

合集下载

信息系统分析与设计第3版课后答案第7章:需求分析

信息系统分析与设计第3版课后答案第7章:需求分析

习题答案一、简答题1.需求分析的任务是什么?答:需求分析的任务是正确获取用户需求,并对需求进行深入分析,以确定合理的信息系统需求。

具体包括需求获取,需求分析,需求描述,需求验证和需求管理等工作。

2.需求分析中的目标分析与领域分析中的目标分析有什么区别?两者之间存在什么联系?答:领域分析中的目标是企业系统的目标,需求分析中的目标是信息系统的目标,企业系统的目标是信息系统目标的依据。

3.什么叫需求结构?需求结构用什么来表示?答:信息系统需求结构是根据信息系统目标、职能域和需求的相关性,从总体上把信息系统需求划分成为多个部分,每一个部分称为一个需求单元,由这些需求单元构成的信息系统的需求框架。

需求结构用UML中的包图来表示。

4.什么叫用例说明?它有什么作用?答:用例说明是对功能用例图中的用例做出的说明。

在用例说明中,需要给出描述用例的编号、名称、使用者和用例的功能和交互过程给出说明。

5.信息系统性能都包括那些因素?答:信息系统性能是信息系统功能实现的方式、效率和保障,它包括信息系统的效率、处理方式、可靠性、安全性、适应性等内容。

6.为什么要对需求变更实施管理?答:由于信息系统的环境会发生变化、用户会发生变化、分析人员和用户对信息系统的认识也会逐步深入,因此在需求开发完成后需求出现一定程度的变更是合理的。

为了避免因需求变更引起开发过程的混乱和开发成本的提高,需要对需求变更实施有效管理。

二、填空题1.需求分析包括目标分析、需求结构分析、(功能分析)、(性能分析)和(需求建模)等内容。

2.需求调查的方法除了采用一般调查方法之外,还需要采用( 启发法)、( 观摩法)和(原型法)等辅助方法。

3.一般从(技术)、(工程)和(社会)等方面,对信息系统性能进行分析。

三、选择题1.下面哪项工作不属于需求分析的工作?(A)A:数据库分析 B:功能分析C:性能分析 D:风险分析2.下面说法不正确的是( D )A:需求调查也被称为需求获取B:信息系统核心功能属于总体需求的范围C:需求调查还需要调查用户的投资能力、开发时间等非技术性需求D:需求调查可以采用启发法、观摩法和原型法等一般调查方法3.下面说法正确的是(C)A:信息系统目标等同与企业系统目标B:信息系统目标包括企业系统目标C:信息系统目标是企业系统目标的构成部分D:信息系统目标与企业系统目标没有关系答:1:A; 2:D; 3:C四、思考题1.试以一台电视机为例,谈功能与性能的区别。

uml系统建模与分析设计课后答案

uml系统建模与分析设计课后答案

第一章系统建模与分析技术的演变一选择题1 封装是指把对象的(A)结合在一起,组成一个独立的对象。

A 属性和操作B 信息流C 信息和事件D 数据的集合2 封装是一种(C)技术,目的是使对象的生产者和使用者分离,使对象的定义和实现分开。

A 工程化B 系统维护C 信息隐蔽D 生产对象3 面向对象方法中的(D)机制使子类可以自动地拥有(复制)父类全部属性和操作A 约束B 对象映射C 信息隐蔽D 继承4使得在多个类中能够定义同一个操作或属性名,并在每一个类中有不同的实现的一种方法是(A)A 继承B 多态性C 约束D 接口二填空题5.软件按照其工作方式可分为(分时软件)、(交互式软件)、(批处理软件)和(实时处理软件)。

6.软件生存周期由(软件定义)、(软件开发)和(软件使用、维护和更新)三部分组成。

7.软件开发模型有(瀑布模型)、(渐增模型)、(演化模型)、(螺旋模型)和(智能模型)等5种主要模型。

8.面向对象技术采用以类为中心的(封装)、(继承)、(多态)等不仅支持软件复用,而且使软件维护共作可靠有效,可实现系统的柔性制造。

9. UML的优点是(唯一性)、(连续性)、(维护性)、(复用性)和(逐步完善)。

三解释题10.软件:程序以及开发、使用、维护程序所需要的所有文档,即:软件=程序+文档11.类:是一组具有相同属性和相同操作的对象的集合,是对象的抽象,它抽象地描述了属于该类的全部对象的属性和操作。

12.封装:是面向对象方法的一个重要原则和基本原则,其目的是有效地实现信息隐蔽和局部化。

13.继承性:是指子类可以自动拥有其父类的猼属性了操作。

14.消息:是面向对象系统中,实现对象类之间的通信和任务传递。

15.动态绑定:是指在执行期间判断所引用对象的实际类型,根据其实际的类型调用其相应的方法。

16.多态性:是消息发送者不必知道接受消息的对象所属的类。

第二章统一建模语言UML一、选择题1. UML的软件以(B)为中心,以系统体系结构为主线,采用循环迭代渐增的方式进行开发A 用例B 对象C 类D 程序2.UML的(B)模型图是由类图、对象图、包图、构件图和配置图组成。

(完整版)需求分析与设计课后答案

(完整版)需求分析与设计课后答案

第一章1.需求分析与系统设计之间的界限是什么?何时从分析阶段进入设计阶段?需求分析关注系统“做什么”,系统设计关注“如何做”。

当分析阶段完成后才能进入到设计阶段2.需求处理要注意哪些非技术因素?为什么?要注意的非技术因素:组织机构文化、社会背景、商业目标、利益协商等。

因为利用建模与分析技术构建的解决方案一定要和具体的应用环境相关,不存在不依赖具体应用环境的解决方案,因此,在利用建模分析技术进行要求处理是不能忽视具体应用环境的相关因素3.需求分析与需求工程之间的关系那就是需求工程含义更广,包括需求获取、需求分析、需求定义第二章1.解释名词:问题域,解系统和共享现象,并结合他们的含义说明软件系统如何与现实世界形成互动的问题域:现实的状况与人们期望的状况产生差异就产生问题。

解系统:软件系统通过影响问题域,能够帮助人们解决问题称为解系统通过共存现象仅仅是问题域和姐系统的一个部分。

而不是他们的全部。

软件系统仅仅是现实世界的一种抽象。

所以问题除了共享现象之外。

还有很多在进行模型抽象时忽略的其他现实因素。

2.解释下列名词,需求,规格说明,问题域特性和约束,并结合他们的含义说明需求工程的主要任务是什么?需求是用户对问题域中的实体状态或事件的期望描述规格说明:规格说明是解系统为满足用户需求而提供的解决方案,规定了解系统的行为特征。

问题域的特性:在和解系统相互影响的同时,问题域是自治的,它有自己的运行规律,而且这些规律不会因解系统的引入而发生改变,这种自治的规律性称为问题域特性,当这些特性非常明确时称之为约束。

需求工程的主要任务:1.需求工程必须说明软件系统将应用的环境及目标,说明用来达成这些目标的软件功能,还要说明在设计和实现这些功能时上下文环境对软件完成任务所用的方式、方法所施加的限制和约束。

2需求工程必须将目标、功能和约束反映到软件系统中,映射为可行的软件行为,并对软件行为进行准确的规格说明。

3需求工程还要妥善处理目标、功能和约束随着时间的演化情况。

5-7习题答案(word文档良心出品)

5-7习题答案(word文档良心出品)

第五章软件需求分析过程1.需求分析过程主要有哪几个步骤?需求分析过程主要有沟通、导出需求、分析与精化、可行性研究、协商与沟通、规格说明、需求验证、变更管理等步骤。

2.软件需求有哪几类,他们有什么不同?软件系统需求常常分为功能需求、非功能需求和领域需求。

功能需求描述系统预期提供的功能或服务,包括对系统应提供的服务,如何对输入做出反应以及系统在特定条件下的行为的描述。

非功能需求是指那些不直接与系统具体功能相关的一类需求,主要与系统的总体特征相关,是一些限制性要求,是对实际使用环境所做的要求。

领域需求是系统的应用领域需求,对已存在的功能预期的约束或者是需要实现的一个特定的计算。

3.用户需求和系统需求各有什么特点?用户需求是从用户角度来描述系统功能和非功能需求,以便让不具备专业技术方面知识的用户能看懂。

用户需求是描述系统的外部行为,用自然语言、图表和直观的图形来叙述。

系统需求是比用户需求更详细的需求描述,是系统实现的基本依据,因此,是一个完全的、一致的系统描述,是软件工程人员系统设计的起点。

系统需求描述可能包括许多不同的模型,如对象模型和数据流模型。

4.请分析POS机系统种共利益者之间的功能有那些冲突的地方?比如:收银员和顾客希望系统能够及时显示商品价格,这就要求本地存储价目表,导致大存储量而需要高成本设备;但公司希望低成本的pos机,从服务器上下载商品价目表而减少机器负担。

5.请对出卷系统的功能进行划分,确定哪些是必须的、必要的和重要的。

必须的功能:自动出卷、手动出卷必要的功能:试题管理重要的功能:自动出卷、手动出卷7.请对出卷系统的功能需求进行分析,是否存在重复或遗漏的需求。

自动出卷、手动出卷共同的需求出卷要求,且出卷要求也比较复杂,需要单独的功能完成,并且可以存储以便下次使用。

因此可以增加“设置出卷要求”功能。

8.请补充案例研究的非功能需求。

如图书馆的非功能需求:(1)借一本书过程要求不超过5秒(2)图书馆藏书在200,000,000册以上9.请扩展短信系统成为一个短信客服中心,给出该系统的需求。

软件需求分析1-12章作业及部分答案

软件需求分析1-12章作业及部分答案

《软件需求分析》作业第一章需求工程概述1.将下列描述与其相符的术语匹配。

1)问题所存在的现实世界中的那个部分。

2)关注问题域与解系统之间交互的需求工程任务。

3)客户希望在问题域内产生的效果。

4)条理化技术在开发复杂的有用人工制品中的应用。

5)关注解系统内部运作实现的任务。

6)对问题域及需求作调查研究和描述,设计将满足那些需求的解系统的特性并用文档说明。

7)关于解系统所要求的应用范围的知识。

8)在问题域内用以产生想要的效果的系统。

9)关注问题域和存在于其中的问题的需求工程任务。

10)用来处理有关问题域的信息查询的解系统。

●()分析--------------------------------9)●()设计--------------------------------5)●()工程--------------------------------4)●()需求--------------------------------3)●()信息系统--------------------------10)●()需求工程---------------------------2)●()规格说明---------------------------6)●()问题域知识------------------------7)●()问题域(或应用领域)---------1)●()解系统(或应用,机器)------8)以下有许多描述,每一条陈述或者是对问题域的描述,或者指定了一条需求,请按照表1-1确定其类别。

1)当用户选择“修改赛艇详细资料”选项时,系统将提示它们输入赛艇的名字。

(一般需求)2)系统必须用三个主要模块来实现,即检测、记录和统计模块,每个模块各自实现一个主要功能。

(设计约束)3)当电梯在传感器额定位置的垂直方向(之上或之下)20cm范围内,传感器发出一个hi 信号,否则发出一个lo信号。

(问题域描述)4)对于每一艘赛艇,其实际用时定义为比赛开始时间与完成时间之差(以s为单位)。

需求分析与设计课后答案

需求分析与设计课后答案

第一章1.需求分析与系统设计之间的界限是什么何时从分析阶段进入设计阶段需求分析关注系统“做什么”,系统设计关注“如何做”。

当分析阶段完成后才能进入到设计阶段2.需求处理要注意哪些非技术因素为什么要注意的非技术因素:组织机构文化、社会背景、商业目标、利益协商等。

因为利用建模与分析技术构建的解决方案一定要和具体的应用环境相关,不存在不依赖具体应用环境的解决方案,因此,在利用建模分析技术进行要求处理是不能忽视具体应用环境的相关因素3.需求分析与需求工程之间的关系那就是需求工程含义更广,包括需求获取、需求分析、需求定义第二章1.解释名词:问题域,解系统和共享现象,并结合他们的含义说明软件系统如何与现实世界形成互动的问题域:现实的状况与人们期望的状况产生差异就产生问题。

解系统:软件系统通过影响问题域,能够帮助人们解决问题称为解系统通过共存现象仅仅是问题域和姐系统的一个部分。

而不是他们的全部。

软件系统仅仅是现实世界的一种抽象。

所以问题除了共享现象之外。

还有很多在进行模型抽象时忽略的其他现实因素。

2.解释下列名词,需求,规格说明,问题域特性和约束,并结合他们的含义说明需求工程的主要任务是什么需求是用户对问题域中的实体状态或事件的期望描述规格说明:规格说明是解系统为满足用户需求而提供的解决方案,规定了解系统的行为特征。

问题域的特性:在和解系统相互影响的同时,问题域是自治的,它有自己的运行规律,而且这些规律不会因解系统的引入而发生改变,这种自治的规律性称为问题域特性,当这些特性非常明确时称之为约束。

需求工程的主要任务:1.需求工程必须说明软件系统将应用的环境及目标,说明用来达成这些目标的软件功能,还要说明在设计和实现这些功能时上下文环境对软件完成任务所用的方式、方法所施加的限制和约束。

2需求工程必须将目标、功能和约束反映到软件系统中,映射为可行的软件行为,并对软件行为进行准确的规格说明。

3需求工程还要妥善处理目标、功能和约束随着时间的演化情况。

软件工程课后习题答案

软件工程课后习题答案

软件工程课后习题答案一、项目规划和管理1. 项目规划和管理的重要性在软件工程中,项目规划和管理是确保项目成功的关键因素。

它涉及到确定项目的目标、范围和需求,制定项目计划和时间表,分配资源,通过有效的沟通和协作来管理团队,以满足项目的要求和客户的期望。

良好的项目规划和管理可以提高项目的成功率,避免项目变更和延迟,保证项目在预算和时间范围内完成。

2. 项目规划的步骤和内容项目规划是项目管理的第一步,它包括以下步骤和内容:(1)确定项目目标和范围:明确项目的目标和范围,包括项目的可交付成果、所需功能和业务需求。

(2)需求分析和定义:详细收集和分析项目的需求,明确项目的功能和非功能性要求。

(3)制定项目计划:制定项目的时间表和里程碑,安排项目的活动和任务,确定资源需求和预算。

(4)风险评估和管理:评估项目的风险和不确定性,制定相应的风险管理策略。

(5)团队组建和管理:确定项目的团队成员,指定责任和职责,建立有效的沟通和协作机制。

(6)制定项目管理计划和报告:制定项目管理的具体计划和报告,包括项目的进度、成本和质量控制。

3. 项目管理的工具和技术项目管理涉及到各种工具和技术的应用,以支持项目规划和管理。

其中一些常用的工具和技术包括:(1)甘特图:可视化展示项目的时间表和活动,帮助团队成员了解任务的分配和完成情况。

(2)里程碑图:标记项目关键节点和重要事件的图表,用于跟踪项目进展和提醒项目重要里程碑的达成。

(3)网络图:图示项目活动之间的依赖关系和先后顺序,帮助确定活动的优先级和关键路径。

(4)资源分配和调度:根据项目需求和资源可用性,合理分配和调度团队成员和其他资源。

(5)决策分析:采用定性和定量的方法,评估项目决策的风险和效益,以支持决策过程。

(6)变更管理:制定变更管理程序和流程,确保变更的合理性和对项目的影响进行评估和控制。

二、软件需求分析与设计1. 软件需求分析的目的和方法软件需求分析是在指导下进行的,对于定义用户需求、开发软件系统和确保软件质量都非常重要。

uml系统建模与分析设计课后答案

uml系统建模与分析设计课后答案
14.用例模型中的用例之间的关联有(使用)关联、(扩展)关联、(包含)关联和(继承)关联。
三、解释名词
15.需求规格说明书:是作为需求分析的一部分而制定的可交付文件,它对所开发软件的功能,性能,用户界面以及运行环境等做出详细说明,制定出完整的信息描述,恰当的检验标准以及其他需求有关的数据。
16.用例模型:是表达系统外部事物与系统之间交互的可视化工具。
11.在UML软件开发过程的需求分析阶段,建立用例模型的步骤分为(确定系统的范围和边界)、(确定系统的执行者和用例)、(对用例进行描述)和(定义用例之间的关系和审核用例模型)。
12.在用例图中以实线方框表示系统的范围和边界,在系统边界内描述的是(用例),在边界外描述的(执行者)。
13.用例模型中的执行者可以是(“人”执行者)也可以是(“外部”执行者)。
8.进程是一个(动作流),能够与其他进程并发执行。
9.线程是(内部)的一个动作流,能够与其他线程并发执行。
10.(主动对象)是一个拥有进程或线程的对象,能初始化控制活动,可以独立并发运行。
11.(被动对象)是一个必须由其他对象发来的消息进行出发才执行动作的对象。
12.交互图描述系统中对象见的交互行为。每一个交互都有(发送者)和(接收者),它们可以是整个系统,一个子系统,一个用例,一个对象类或一个操作。
18.同步消息:两个通信应用服务之间必须要进行同步,两个服务之间必须都是正常运行的。发送程序和接收程序都必须一直处于运行状态,并且随时做好相互通信的准备。
19.异步消息:两个通信应用之间可以不用同时在线等待,任何一方只需各自处理自己的业务,比如发送方发送消息以后不用登录接收方的响应,可以接着处理其他的任务。也就是说发送方和接收方都是相互独立存在的,发送方只管方,接收方只能接收,无须去等待对方的响应。

软件需求分析(带答案).doc

软件需求分析(带答案).doc

3、Explain the following terms in English. (Each 4 marks, total 20 marks)1) Management information system P5Ans: An information system that provides for management-oriented (以…为方向的)reporting based on transaction (交易;务)processing and operations of the organization.2) CMM P35Ans: A standardized framework for assessing the maturity (成景卜度)level of an organization's information system development and management processes and products. It consists of five levels of maturity.3) System model P48Ans: A picture of a system that represents reality or a desired reality. System models facilitate (帮助)improved communication between system users, system analysts, system designers, and system builders.4) Critical path P97Ans: The sequence (序列)of dependent tasks that determines the earliest completion date for a project.5) Agile method P123Ans: The integration (整合;结合)of various approaches of systems analysis and design for application as deemed (被视为)appropriate (适当的)to the problem being solved and the system being developed.4、Answer the questions briefly. ( Each 4 marks, total 20 marks)1) What is the common system development process ? P35Ans: First, using a consistent (连续的)process for system development creates efficiencies (效率)that allow management to shift resources between projects.Second, a consistent methodology produces consistent documentation that reduces lifetime costs to maintain the system.Finally, the government has mandated (授权的)that any organization seeking to develop software for the government must adhere (坚持)to certain quality management requirements. A consistent process promotes quality.2) On decision analysis phase, what kinds of feasibilities (可行性)that candidate solutions evaluated (评价)in terms of need to be considered ?Ans: Technical feasibility- Is the solution technically practical? Does our staff have the technical expertise (专业矢口识)to design and build the solution?Operational feasibility- Will the solution fulfill the users' requirements? To what degree? How will the solution change the users' work environment ? How do users feel about such a solution?Economic feasibility- Is the solution cost-effective?Schedule feasibility- Can the solution be designed and implemented (实现)within an acceptable time period?3) What the difference between functional requirements and nonfunctional requirements?Ans: Functional requirements: These are statements of services the system should provide, how the system should react to particular inputs and how the system should behave in particular situations. In some case, the functional requirements may also explicitly (明确土也)state what the system should not do. Functional requirements set out services the system should provide. Describe functionality or system services. Depend on the type of software, expected users and the type of system where the software is used. Functional user requirements may be high-level statements of what the system should do but functional system requirements should describe the system services in detail.Non-functional requirements: These are constraints (n.约束;限制)on the services or functions offered by the system. They include timing constraints, constraints on the developments process and standards. Non-functional requirements often apply to the system as a whole. They do not usually just apply to individual system features or services. Non-functional requirements constrain the system being developed or the development process. These define system properties (性能)and constraints e.g. reliability, response time and storage requirements. Constraints are T/O device capability, system representations, etc. Non-functional requirements may be more critical than functional requirements. If these are not met, the system is useless.4)What are the four types of actors ? Please try to give the examples of each one. P186Ans: Primary business actor. For example, in the business event of an employee receiving a paycheck (薪)(something of measurable value)from the payroll system each Friday, the employee does not initiate (发起)the event but is the primary recipient of the something of the value.Primary system actor. For example, a person reserving a rental car via a Web site.External server actor. For example, a credit bureau (办事处)authorizing (授权)the charging by a credit card.External receiver actor. For example, a warehouse (仓库)receiving a packing order to prepare a shipment (装运)after a customer has placed an order.5) What the process of requirements of use-case model ? P190Ans: Step I:Identify business actors.Step 2:Identify business requirements use cases.Step 3:Construct use-case model diagram.Step 4:Document business requirements use-case narratives (叙述)•(只简略回答)。

软件工程教程课后参考答案

软件工程教程课后参考答案

软件工程教程课后参考答案软件工程是一个涉及软件开发生命周期的综合性学科,它包含了软件需求、设计、开发、测试和维护等多个环节。

本文将为大家提供软件工程教程的课后参考答案,帮助读者更好地理解和掌握软件工程的相关知识。

一、软件需求分析在软件开发过程中,需求分析是非常关键的一步。

它的目的是明确用户的需求,为后续的软件设计和开发提供依据。

需求分析主要包括以下几个步骤:1.1 需求搜集:通过与用户沟通、调研等方式收集用户需求,可以采用面谈、问卷调查等方法。

1.2 需求分析:对搜集到的需求进行整理和分析,明确用户的具体需求和优先级。

1.3 需求规格说明:将需求以文档形式进行规格化,包括用例图、用例描述、功能需求等。

1.4 验证需求:通过与用户的确认、需求评审等方式,确保需求的正确性和完整性。

二、软件设计软件设计是指根据需求分析的结果,对软件进行整体架构、模块划分等设计工作。

下面是软件设计的一般过程:2.1 系统架构设计:确定系统的整体结构,包括模块划分、模块之间的关系等。

2.2 模块设计:对系统中的每个模块进行详细设计,包括定义模块接口、数据结构等。

2.3 数据库设计:设计系统所需的数据库结构,包括数据表的设计、关系建立等。

2.4 用户界面设计:设计软件的用户界面,包括界面布局、交互方式等。

2.5 验证设计:对设计进行评审和验证,确保设计的合理性和可行性。

三、软件开发软件开发是指根据需求和设计的结果,进行编码、调试和测试等开发工作。

下面是软件开发的一般过程:3.1 编码实现:根据设计文档进行编码工作,将设计的结果转化为可执行的程序。

3.2 单元测试:对每个模块进行独立测试,确保模块的功能和接口正确。

3.3 组件测试:将多个模块组装在一起进行测试,确保各个模块之间的协同工作正常。

3.4 系统测试:对整个软件系统进行测试,包括功能测试、性能测试等。

3.5 调试和修复:在测试过程中发现问题,进行调试和修复,确保软件的稳定性和可靠性。

软件需求分析案例答案

软件需求分析案例答案

案例one:教学管理系统(用例驱动的交互式需求获取)以一个教学管理系统JXGL的分析与设计作为示例,说明用例驱动技术在软件项目开发中的应用。

高等学校的教学管理内容十分丰富,工作繁多。

作为一个示例,规定开发教学管理系统JxGL只处理每学期的课程选修注册和学生的成绩管理。

教学管理系统JXGL的用户是学校的学生、教师和教学管理员。

学生使用JXG系统查询新学期将开设的课程和授课教师的情况,选择自己要学习的课程,并进行登记注册。

学生还可以使用JXGL系统查询自己的课程成绩。

教师使用JXGL系统查询新学期将开设的课程、参加听课的学生情况,以及学生的考试成绩。

教学管理员使用JXGL系统进行教学管理,包括新学期的课程选课注册管理和学生成绩管理。

1.需求描述:对教学管理系统JXGL要求提供两个方面的服务:(1)选课管理,负责新学期的课程选课注册工作;(2)成绩管理,负责学生成绩管理。

在选课管理方面应填写的用户需求描述如下。

(1)录入与生成新学期课程表教学管理员在新学期开始前录入新学期课程,打印将开设的课程目录表,供师生参考选择。

若某课程的实际选课学生少于10人,则停开该课程,把该课程从课程目录表中删除;若某课程的选课学生多于30人,则停止选课。

(2)学生选课注册新学期开始前一周为选课注册时间,在此期间学生可以选课注册,并且允许改变或取消注册申请。

每个学生选课不超过4门课程。

每门课程最多允许30名学生选课注册。

学生可以在图书馆、各系资料室、学生宿舍等处的计算机上联网进行选课注册。

在选课注册结束后,教学管理员打印学生选课注册名单和开课通知书,送交有关部门和授课教师。

(3)查询可以查询课程信息、学生选课信息和学生、教师信息。

学生、教师、教学管理员可以查询课程表,获得课程信息。

查询的关键词以是:课程名,授课教师名,学分。

教师、教学管理员可以查询学生选课情况。

查询的关键词可以是:学生名、程名,授课教师名,学分。

学生只允许查询自己的选课信息,不允许查询别人选课信息。

需求分析考试重点答案

需求分析考试重点答案

第一章3.需求分析与需求工程之间的关系那就是需求工程含义更广,包括需求获取、需求分析、需求定义5.需求工程包含的活动?为什么重视需求工程?需求工程包含需求开发和需求管理,而需求开发又包括需求获取、需求分析、需求规格说明、需求验证。

因为计算机应用于现实世界的广泛性,所以软件工程师的工作也具有行业上的广泛性,但是软件工程师不可能了解所有的领域,所以常常需要将工作中的很大一部分用来定义问题,然后再为其设计解决方案,定义问题就是需求工程的任务,开发软件系统最困难的部分就是准确说明开发什么,最为困难的概念性工作便是编写详细技术需求,这包括所有面向用户,面向机器和其他软件系统的接口,同时这也是一旦有错,最终将给系统带来极大损害的部分,并且以后要对他进行修改也极为困难。

第二章3.解释下列名词,需求,规格说明,问题域特性和约束,并结合他们的含义说明需求工程的主要任务是什么?需求是用户对问题域中的实体状态或事件的期望描述规格说明:规格说明是解系统为满足用户需求而提供的解决方案,规定了解系统的行为特征。

问题域的特性:在和解系统相互影响的同时,问题域是自治的,它有自己的运行规律,而且这些规律不会因解系统的引入而发生改变,这种自治的规律性称为问题域特性,当这些特性非常明确时称之为约束。

需求工程的主要任务:1.需求工程必须说明软件系统将应用的环境及目标,说明用来达成这些目标的软件功能,还要说明在设计和实现这些功能时上下文环境对软件完成任务所用的方式、方法所施加的限制和约束。

2需求工程必须将目标、功能和约束反映到软件系统中,映射为可行的软件行为,并对软件行为进行准确的规格说明。

3需求工程还要妥善处理目标、功能和约束随着时间的演化情况。

1、进行需求开发,确定用户的期望效果R2、研究问题背景,描述问题域特性E3、构建解系统,描述解系统行为S,使得E,S->R。

5.业务需求、用户需求、系统需求之间的区别与联系?业务需求:描述了组织为什么要开发系统,通常来自项目的投资人,购买产品的顾客,实际用户的管理者,市场营销部门等。

需求分析习题及答案

需求分析习题及答案

第三章需求分析一.填空题1. 需求分析的步骤_____________ , _____________ , _____________ , ____________ 。

2. 需求分析阶段需编写的文档有_________________ , ____________ , ______________ 。

3. 系统规格说明,数据要求,______________ ,____________ ,这四份文档资料是在书写文档阶段必需完成的。

4. 在书写文档阶段,数据要求主要包括通过需求分析建立起来的__________________ ,以及描绘数据结构的层次方框图。

5. 对于计算机程序处理的数据,其数据域应包括___________________ , _____________ ,和数据结构。

6. 数据内容即是_______________ 。

7. 把一个功能分解成几个子功能,并确定_________________________ ,就属于横向分解。

8. 软件需求的逻辑视图给出___________________________ ,而不是实现的细节。

9. 功能一般用_____________________ ,来表示。

10. 结构化分析方法是______________________ ,进行需求分析的方法.11.描述结构化分析方法的工具有,判定表,判定赵寸。

12. SA方法中自顶向下的分析策略主要是和。

13. 数据流图的基本组成部分有_________________ ,_________________ ,________________ ,______________ 。

14. 数据流图的特性________________ , ______________ , ________________ ,___________ 。

15. 数据流图和数据字典共同构成了系统的_________________ 模型,是需求规格说明书的主要组成部分。

需求习题集及解答

需求习题集及解答

需求习题集及解答【例1】软件需求分析阶段的工作,可以分为以下4个方面:对问题的识别、分析与综合、编写需求分析文档以及( )。

供选择的答案:A. 总结B. 阶段性报告C. 需求分析评审D. 以上答案都不正确答案: C.分析:作为需求分析阶段工作的复查手段,在需求分析的最后一步,应该对功能的正确性、完整性和清晰性,以及其它需求给予评价。

一般,评审的结果都包括了一些修改意见,待修改完成后再经评审通过,才可进入设计阶段。

【例2】各种需求方法都有它们共同适用的( )。

供选择的答案:A.说明方法B.描述方式 C. 准则D.基本原则答案: D.分析:虽然各种分析方法都有独特的描述方法,但所有的分析方法还是有它们共同适用的基本原则。

这些基本原则包括:▪需要能够表达和理解问题的信息域和功能域;▪要能以层次化的方式对问题进行分解和不断细化;▪要分别给出系统的逻辑视图和物理视图。

【例3】在结构化分析方法中,用以表达系统内数据的运动情况的工具有( )。

供选择的答案:A. 数据流图B. 数据词典C. 结构化英语D. 判定表与判定树答案: A.分析:数据流图从数据传递和加工的角度,以图形的方式刻画数据流从输入到输出的移动变换过程,所以,它不是描述数据的静态结构,而是描述数据流的传递和变换。

数据词典主要用于定义数据和控制对象的细节,结构化英语、判定表和判定树主要用于描述加工规格说明,都不是表达数据在系统内运动情况的工具。

【例4】在结构化分析方法中用状态―迁移图表达系统或对象的行为。

在状态―迁移图中,由一个状态和一个事件所决定的下一状态可能会有( )个。

供选择的答案:A. 1B. 2C. 多个D. 不确定答案: C.分析:在状态―迁移图中,由一个状态和一个事件所确定的下一状态可能会有多个。

实际会迁移到哪一个状态,是由更详细的内部状态和更详细的事件信息来决定的,此时在状态―迁移图中可能需要使用加进判断框和处理框的记法。

状态―迁移图的优点:第一,状态之间的关系能够直观地捕捉到,这样用眼睛就能看到是否所有可能的状态迁移都已纳入图中,是否存在不必要的状态等。

需求工程课后重点答案

需求工程课后重点答案

需求工程课后重点答案在需求工程课程中,我们学习了许多与软件需求相关的内容,包括需求的定义、分类、获取、分析、规格等方面。

这里汇总了一些课后重点答案,帮助大家更好地掌握课程内容。

需求的定义1. 什么是需求?需求是用户和系统之间的桥梁,其本质是对用户需求描述的标准化表示。

需求对于软件系统的开发、测试、部署和维护都至关重要。

2. 需求的分类有哪些?需求可以分为以下几类:•功能性需求:系统需要完成的任务和功能。

•非功能性需求:系统需要满足的性能、安全、可用性等方面的要求。

•业务需求:与特定业务领域相关的需求。

•约束性需求:来自系统外部的限制条件。

需求的获取1. 需求获取的方法有哪些?•面试、访问和问卷调查等人际交流方式;•观察、现场调研、用户追踪等观察获取方式;•归纳分析、数据挖掘、机器学习等数据分析方法;•技术原型、模拟、实验等实践方式。

2. 为什么需求获取是关键的一步?需求获取是软件开发过程中最关键、最困难的一步,如果获取不足或不准确,将会导致系统无法满足用户需求,甚至出现安全漏洞等隐患。

需求的分析1. 什么是需求分析?需求分析是识别、梳理和综合用户需求,并将之转化为软件能够实现的具体要求的过程。

2. 需求分析的目的是什么?需求分析的目的是保证系统需求的准确性和完整性,从而确保软件能够满足用户和利益相关者的需求。

需求的规格1. 为什么需要对需求进行规格化?规格化可以将不准确或不一致的需求变成可以明确验证的具体描述,同时,规格化可以让需求的修改和追踪更加容易。

2. 需求规格的形式有哪些?需求规格的形式有以下几种:•自然语言描述;•面向对象的UML图形描述;•简要说明书或用户手册;•数据流图、时序图等其他模型。

需求的验证1. 需求验证的目的是什么?需求验证的目的是检查和确认需求是否正确、完整和一致,以及系统是否满足了用户需求。

2. 需求验证的方法有哪些?•代码审查;•模拟和测试;•用户使用评估;•评审或验收会议。

最新系统分析与设计课后答案E-R图

最新系统分析与设计课后答案E-R图

【例5】今有一个医院住院部,设有多个科,每个科有若干医生和病房,病人住在病房中由某个医生负责治疗。

医生总是属于某个科的,但不能跨科;病房也是属于某个科的,不混合使用;病人住在某一科的病房中,一个病房可住多个病人,一个病人由固定医生负责治疗,一个医生可以负责多个病人。

根据上述语义,画出E-R模型。

答案:【例6】学校有若干系,每个系有若干班级和教研室,每个教研室有若干教员,其中有的教授和副教授可以带若干研究生,每个班有多名学生,每个学生选修多门课程,每门课程由若干学生选修。

画出学校的E-R图。

【例7】某商业数据管理系统,业务规定如下:⑴顾客有姓名、单位、电话号码⑵商品有商品编码、商品名称、单价这些实体之间的联系:⑴每一名顾客可能买多种商品,且每一种商品又可能有多名顾客购买⑵顾客每一次购买商品还涉及日期、数量、金额根据上述描述,解答下列各题:①试画出E-R图;②要求在E-R图中标注联系的类型;③指出每一个实体的主码(主关键字);④将E-R图转换成关系模型。

答案:转化的关系模型为:顾客(姓名,单位,电话号码),主键为姓名;商品(商品编码,商品名称,单价),主键为商品编码;购买(姓名,商品编码,日期,数量,金额),主键为(姓名,商品编码,日期),外键:姓名,参照顾客;外键:商品编码,参照商品。

【例7】设某工厂的物资管理系统包含如下的实体:仓库:仓库号、仓库面积、电话号码零件:零件号、名称、规格、单价、描述供应商:供应商号、名称、地址、电话号码、帐号职工:职工号、姓名、年龄、职称实体之间的联系如下:一个仓库可以存放多种零件,一个零件可以存放多个仓库中。

用库存量来描述某种零件在某个仓库中的数量。

一个仓库有多个职工当仓库保管员,一个职工只能在一个仓库中工作。

职工之间具有领导和被领导的关系,即仓库主任领导若干保管员。

一个供应商可以供应多种零件,反之,一种零件也可以由不同的供应商供应。

(1)根据以上描述,构造E-R模型。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

第一章
1.需求分析与系统设计之间的界限是什么? 何时从分析阶段进入设计阶段? 需求分析关注系统”做什么”, 系统设计关注”如何做”。

当分析阶段完成后才能进入到设计阶段
2.需求处理要注意哪些非技术因素? 为什么?
要注意的非技术因素: 组织机构文化、社会背景、商业目标、利益协商等。

因为利用建模与分析技术构建的解决方案一定要和具体的应用环境相关, 不存在不依赖具体应用环境的解决方案,
因此, 在利用建模分析技术进行要求处理是不能忽视具体应用环
境的相关因素
3.需求分析与需求工程之间的关系
那就是需求工程含义更广, 包括需求获取、需求分析、需求定义
第二章
1.解释名词:问题域, 解系统和共享现象, 并结合她们的含义
说明软件系统如何与现实世界形成互动的
问题域: 现实的状况与人们期望的状况产生差异就产生问题。

解系统:软件系统经过影响问题域, 能够帮助人们解决问题称
为解系统经过共存现象仅仅是问题域和姐系统的一个部分。

而不是她们的全部。

软件系统仅仅是现实世界的一种抽象。

因此问题除了共享现象
之外。

还有很多在进行模型抽象时忽略的其它现实因素。

2.解释下列名词, 需求, 规格说明, 问题域特性和约束, 并结
合她们的含义说明需求工程的主要任务是什么?
需求是用户对问题域中的实体状态或事件的期望描述
规格说明:规格说明是解系统为满足用户需求而提供的解决方案, 规定了解系统的行为特征。

问题域的特性: 在和解系统相互影响的同时, 问题域是自治的, 它有自己的运行规律, 而且这些规律不会因解系统的引入而发生
改变, 这种自治的规律性称为问题域特性, 当这些特性非常明确
时称之为约束。

需求工程的主要任务: 1.需求工程必须说明软件系统将应用的环境及目标, 说明用来达成这些目标的软件功能, 还要说明在设计和实现这些功能时上下文环境对软件完成任务所用的方式、方法所施加的限制和约束。

2需求工程必须将目标、功能和约束反映到软件系统中, 映射为可行的软件行为, 并对软件行为进行准确的规格说明。

3需求工程还要妥善处理目标、功能和约束随着时间的演化情况。

4.需求有哪些常见的类别? 功能需求和非功能需求有什么差异?
严格意义上的软件需求的分类:
功能需求( Functional Requirement) : 和系统主要工作相关的需求, 即在不考虑物理约束的情况下, 用户希望系统所能够执行的
活动, 这些活动能够帮助用户完成任务。

功能需求主要表现为系统和环境之间的行为交互。

( Performance Requirement) : 系统整体或系统组成
, 例如CPU使用率、内存使用率等。

( Quality Attribute) : 系统完成工作的质量, 即系
, 例如可靠性程度、
对外接口( External Interface) : 系统和环境中其它系统之间需要建立的接口, 包括硬件接口、软件接口、数据库接口等等。

约束 : 进行系统构造时需要遵守的约束, 例如编程语言、硬件设施等。

广泛意义上的需求分类:
系统级需求( System) : 针对系统工程的需求, 包括与硬件相关的需求被称之为硬件需求( Hardware) 、与软件相关的需求被称之为软件需求( Software) 、与人力资源相关的需求以及软件、硬件、人力之间协同的需求被称之为其它需求。

功能需求和非功能需求的差异: 除功能需求之外的其它四种类别需求又被统称为非功能需求。

在非功能需求当中, 质量属性对系统成败的影响极大, 因此在某些情况下, 非功能需求又被用来特指质量属性。

而且一般一个软件系统的绝大部分需求都是功能需求, 在比例上功能需求有可能占所有需求的90%以上。

5.描述业务需求、用户需求和系统( 级) 需求的区别与联系。

业务需求: 业务需求是抽象层次最高的需求, 是系统建立的战略出发点, 表现为高层次的目标, 它描述了组织为什么要开发系统。

用户需求: 执行实际工作的用户对系统所能
完成的具体任务的期望, 描述了系统能够助
用户做些什么。

系统需求: 用户对系统行为的期望, 一系列
的系统行为联系在一起能够帮助用户完成任
务, 满足业务需求; 系统需求能够直接映射
为系统行为, 定义了系统中需要实现的功能,
描述了开发人员需要实现什么。

业务需求、用户需求和系统( 级) 需求的区别与联系如右图所示: 用户需求---->系统需求的过程:
首先需要分析问题领域及其特性, 从中发现问题域和计算机系统的共享知识, 建立系统的知识模型; 然后将用户需求部署到系统模型当中, 即定义系列的系统行为, 让它们联合起来实现用户需求, 每一个系统行为即为一个系统需求。

该过程就是需求工程当中最为重要的需求分析活动, 又称建模与分析活动。

6.优秀的需求哪些特性? 试为每一个特性都举出一个不符合的示例。

优秀的需求特性:
1)完备性: 不需要做更多的扩展就能够充分的说明用户所需要的
系统功能。

每一个需求的描述都应该包含开发人员设计和实现这项功能需要的所有信息。

R6( 不完整) : 系统应该允许被扩展
R7( 完整、较R8精确) :系统的调度算法应该允许被扩展2)正确性: 真实的反映用户的意图; 必须请需求的提出者予以确
认。

3) 可行性: 在检查的过程中, 由开发人员进行检查可能需要进行一定的分析和研究, 而不是单纯的凭借经验和直觉。

对于难以判断的需求, 必要的时候要经过开发原型来加以验证。

示例: 保证系统核心功能能够7×24小时连续运行。

4) 必要性: 满足用户的业务需求所必须的。

5) 无歧义: 每一项需求都应该有而且只能有一种解释。

定义一个能够共同理解的词汇表( Glossary)
6) 可验证: 经过分析、检查、模拟或者测试等方法能够判断需求是否被满足。

示例: 实现各部门的公文流转无纸化、文档一体化、业务管理的规范化、自动化和网络化; 统一办公流程、规范公文格式, 加强信息交流和共享, 提高工作效率; 不可验证的需求往往是因为描述模糊或者过于抽象, 因此在进行需求的描述时要让需求具体化、小心形容词和副词的使用、避免程度词的使用。

第三章
1.需求工程过程的工作基础(即输入)存在哪些? 她的工作成果(即输出)有哪些?
答: 需求过程的工作基础是获取用户面临的业务问题, 用户期望系统表现出来的各种行为, 即需求获取工作成果:产生一个能够在用户环境下解决用户业务问题的系统方案, 并将其文档化为明确的规格说明。

2.描述需求工程的各个活动, 说明她们各自的工作基础, 工作目标和工作成果
1.需求获取:
工作基础: 1.收集背景资料2.定义项当前景和范围3.选择信息的来源
4.选择获取方法, 执行获取
5.记录获取结果
工作目标:获取用户需求, 了解用户在完成任务的时候遇到的问题与期望工作成果:业务需求, 项目的前景和范围, 用户需求以及问题域的特征
2.需求分析:
工作基础: 1背景分析 2.确定系统边界3.需求建模
4.需求细化
5.确定优先权
6.需求协商
工作目标:1.经过建模整合各种信息, 是人们更好地理解问题
2.定义一个需求集合, 能够为问题界定一个游戏的解决方案
工作成果: 产生一个需求的基线集, 它指定了系统或当前版本的系统开发需完成的任务
3.需求规格说明:
工作基础1.定制文档模板 2.编写文档
工作目标:为了系统涉众之间交流需求信息
工作成果:需求规格文档说明
4.需求验证
工作基础1.执行验证 2问题修改工作目标: 为了尽量不给设计实现测试后续开发活动带来不必要的影响。

需求规格说明文档定义必须正确准确地反映用户的意图
工作成果:验证之后, 问题得以修正
需求管理:
工作基础: 1.建立和维护需求基线集2.建立需求跟踪信息 3进行变更控制工作目标:保证需求作用的持续稳定和有效发挥工作成果:需求管理会进变更控制和实现合理的变更请求拒绝
不合理的变更请求, 控制变更的成本和影响范围
4.需求工程师需求具备的技能专业技能, 分析技能, 交流技能, 观察技能, 建模技能, 写作技能, 创新技能, 协调技能第五章
1.为什么要定义项目的前景和范围?
答、业务需求、高层解决方案和系统特性都应该被记录下来, 定义为项目的前景与范围文档, 前景描述了产品的作用和最终的
功能, 它将所有的涉众都统一到一个方向上范围指出了当前项目
是要解决产品长远规划的那一部分, 它为项目规定了需求的界限。

相关文档
最新文档