首页 > 其他分享 >软件需求工程

软件需求工程

时间:2023-08-15 23:36:30浏览次数:27  
标签:需求 工程 对象 模型 建模 用例 软件 描述

第一部分 绪论

第1章 需求工程导论

 

第2章 需求基础

 

第3章 需求工程过程

 

 

部分 需求获取

第4章 需求获取概述

第5章 确定项目的前景和范围

第6章 涉众分析与硬数据采样

第7章 需求获取方法之面谈

第8章 需求获取方法之原型

第9章 需求获取方法之 观察与文档审查

第10章 需求的组织---需求获取中的模型驱动方法

 

部分 需求分析

 

第11章 需求分析概述

第12章 过程建模

第13章 数据建模

第14章 面向对象建模

 

部分 需求的文档化和验证

第15章 需求规格说明

第16章 需求验证

 

部分 需求的文档化和验证

 

第17章 需求管理

第18章 需求工程的过程管理

第19章 需求工程中的项目管理

 

*好需求的特征:无歧义、完整、一致、可检验、确定、可跟踪的,正确的,可行的和必要的。

1.好的需求应具有的特性:

解:起义因素、完整性因素、一致性因素、可检验性因素、确实性因素、可跟踪性因素、正确性因素、可行性因素、必要性因素

 

RUP6个核心过程工作流 :业务建模,需求,分析和设计,实现,测试,部署

*3个核心支持工作流 :配置和变更管理,项目管理,环境

 

 

24、需求工程定义?

需求工程是所有需求处理活动总和,它收集信息、分析问题、整理观点、记录需求并验证其正确性,最终反映软件被应用后与其环境互动形成的期望效应.

 

1、需求工程包括哪些活动,并简要说明其内容?软件开发中为什么要重视需求工程?

答:  1、需求工程活动包括:需求开发和需求管理;

     2、1)、需求开发包括:需求获取、需求分析、需求规格说明和需求验证4个部分;

        2)、需求管理:主要工作就是跟踪后继阶段中需求实现与需求变更情况,确定需求得到了正确的理解并被正确的实现到软件产品中。

 

 

 

6、描述需求工程的各个活动,并说明各个活动的任务?

答:   需求工程活动包括:需求开发和需求管理;

       需求开发包括:需求获取、需求分析、需求规格说明和需求验证4个部分;需求获取:目的从项目张罗规划开始建立最初的原始需求。它从相关人员、资料和环境中得到系统开发所需要的相关信息;需求分析:需求获取的这些信息还不是开发者能够立即加以实现的解决方案。还需要对需求获取得到的信息,进行需求分析;目的保证需求的完整性和一致性;

需求规格说明:定义用户需求,准确描述需求及其解决方案,目的将完整、一致的需求与能够满足需求的软件行为以文档的方式明确地固定下来;

需求验证:目的保证需求及其文档的正确性,即需求真实地反映了用户的真实意图;以及通过检查和修正保证需求及其文档的完整性和一致性;

       需求管理:主要工作就是跟踪后继阶段中需求实现与需求变更情况,确定需求得到了正确的理解并被正确的实现到软件产品中。

 

 

 

11、需求工程中需要获取的内容主要有哪3种?获取信息的主要来源有哪些?常见的需求获取方法有哪些(最少写4种)?

答:需要获取的内容主要有:1、需求   2、问题域描述    3、环境与约束

获取信息的主要来源有:1、涉众 2、硬数据  3、相关产品  4、重要文档 5、相关技术标准和法规

获取信息的方法 :1、传统方法   2、集体获取方法  3、原型  4、模型驱动方法 5、认知方法  6、基于上下文的方法

 

 

5、数据建模:

答:描述数据的定义、结构和关系的特性。

9、需求工程:

答:是所有需求处理活动的总和,它收集信息、分析问题、整合观念、记录需求并验证其正确性,最终反映软件被应用后与其环境互动形式的期望效应。

 

 

10、硬数据 :

答:登记表格、单据、报表等定量文档、备忘录、日志等定性文档。

 

 

34、什么是硬数据?分为哪两类,分别说明?

答:  硬数据:人们在实际工作中产生的各种各样的表格和文档资料;

      常见硬数据分为定量硬数据和定性硬数据两种类型;

      定量硬数据:指经过仔细设计、具有严格规范要求的格式化文档;

      定性硬数据:使用自然语言进行描述的文本资料。

 

 

1. SRS即软件规格说明,它完整地描述了软件系统的预期特性,一般以标准的文档形式出现,或是包含需求信息的数据库或电子表格,或是存储在商业需求管理工具中的信息。

 

8、什么是UML,它可以用于什么类型的建模?分别使用了哪些技术?

答:UML称为统一建模语言

    UML就是一种主要的面向对象建模技术

    包含技术有:

1)对象模型Object Model (Domain Model)

2)用例模型Use Case Model

3)行为模型Behavior Model

4)状态机模型

5)对象约束语言OCL

 

 

19、什么是面向对象建模?UML面向对象建模中用到哪些技术?并对每一个技术详细解释?

答:面向对象建模:是一种用于辨识系统环境中的对象及这些对象之间关系的技术;

UML面向对象建模中用到哪些技术:1)对象模型2)用例模型    3)行为模型  4)状态机模型  5)对象约束语言OCL

对每一个技术详细解释:1)对象模型: 以对象和类的概念为基础,描述了系统中的对象和这些对象之间的关系;  2)用例模型:就是以用例为基本单位建立的一个系统功能展示模型,它是系统所有用例的集合,以统一、图形化方式展示系统的功能和行为特性;

3)行为模型: 是实现用例模型到对象模型的桥梁,以更加详细的方式说明了用例所描述的系统行为;

4)状态机模型: 以状态机理论为基础建立的对系统行为的描述手段;  

5)对象约束语言:OCL语言是一种基于类型的描述语言,有着严格的类型定义,可以保证它进行形式化描述的能力,描述系统的各个方面;

 

 

18、详细解释面向对象建模中用到的3种模型:什么叫用例模型?什么叫行为模型?什么叫对象模型?以及这3个模型之间的关系?

答:用例模型:就是以用例为基本单位建立的一个系统功能展示模型,它是系统所有用例的集合,以统一、图形化方式展示系统的功能和行为特性;

    行为模型:是实现用例模型到对象模型的桥梁,以更加详细的方式说明了用例所描述的系统行为;

对象模型:以对象和类的概念为基础,描述了系统中的对象和这些对象之间的关系;

三者关系:对象模型无法直接被用来记录和描述从用户那里得到的信息。因此,面向对象建模方法提出了用例模型,用来处理开发人员直接从用户那里得到的信息,行为模型就是实现用例模型到对象模型的桥梁

 

25、什么是过程建模?过程建模中用到哪些技术?并对每一个技术详细解释?过程建模与数据建模

之间的区别与联系?

答:1、过程建模:就是分析需求获取活动获得的信息,根据数据在系统中的流动,发现系统的功能和其与外界的交互,建立能够实现系统功能的过程分解结构,形成系统的过程模型,并用图行的方式将过程模型描述出来。

   2、过程建模中用到哪些技术:

1)上下文图:用来说明系统的上下文环境,确定系统边界;

    2)数据流图:用来建立过程的分解结构;

    3)微规格说明:用来描述数据流图过程分解结构中最底层过程的处理逻辑;

   4)数据字典:用来说明系统中涉及的数据的结构;

3、过程建模:更多是侧重数据产生和使用的时间、地点和方式,而没有描述数据的定义、结构和关系等特性;数据建模弥补了过程建模在数据说明方面的不足,描述数据的定义、结构和关系等特性的模型;

 

标签:需求,工程,对象,模型,建模,用例,软件,描述
From: https://www.cnblogs.com/wangprince2017/p/17632713.html

相关文章

  • 解决VS2022工程中多个含main()函数源码文件同时编译问题
    做编程练习时,我常常将源码文件放在一个工程中管理,写出的每个源码文件中都包含一个main()函数。于是出现这样的问题:于是生成失败。这是因为,在VS2022中,一个工程里只能有一个入口函数main()。这样的要求对于一个完整的工程来说其实也比较合理,但是对我来说很不方便。于是,通过以......
  • 学习go语言编程之工程管理
    Go命令行工具安装了Go语言的安装包后,就直接自带Go命令行工具。#查看当前安装的Golang版本goversion#查看go命令行工具的帮助信息gohelpGo命令行工具可以完成如下工作:代码格式化代码质量分析和修复单元测试与性能测试工程构建代码文档的提取和展示依赖包管理执......
  • 【专题】2022智能财税用户需求场景调研报告PDF合集分享(附原数据表)
    原文链接:http://tecdat.cn/?p=31442数字化是复杂系统中的一个重要驱动因素,它得到了技术进步的支持。阅读原文,获取专题报告合集全文,解锁文末13份财税数字化行业相关报告。随着以大数据、物联网、云计算、人工智能等为代表的数字技术的不断成长和成熟,企业必须应对的内外部环境发生......
  • 软件app开发和小程序开发如何选择?
    随着移动互联网的快速发展,企业和个人面临着一个重要的决策:是选择开发传统的移动应用程序(APP),还是选择开发小程序?这两种选择都有各自的优势和适用场景,本文将为您详细探讨软件app开发和小程序开发,帮助您做出明智的选择。软件app开发:移动应用程序(APP)一直是企业和个人向用户提供丰富功能......
  • 软件测试|深入学习 Docker Logs
    简介Docker是一种流行的容器化技术,它能够帮助用户将应用程序及其依赖项打包成一个可移植的容器。Dockerlogs是Docker提供的用于管理容器日志的命令,本文将深入学习Dockerlogs的使用和管理,帮助用户更好地监测和解决容器问题。DockerLogs命令dockerlogs命令是Docker的日......
  • 软件测试|Docker exec命令详细使用指南
    简介Dockerexec命令是Docker提供的一个强大工具,用于在正在运行的容器中执行命令。本文将详细介绍Dockerexec命令的用法和示例,帮助大家更好地理解和使用这个命令。Docker是一种流行的容器化平台,允许我们在容器中运行应用程序。有时候,在容器内执行命令可以帮助我们调试、排查问题或......
  • 软件测试|Docker Kill/Pause/Unpause命令详细使用指南
    简介Docker是一种流行的容器化平台,提供了各种命令和功能来管理和操作容器。本文将详细介绍Docker中的三个重要命令:kill、pause和unpause。我们将深入了解它们的作用、用法和示例,帮助您更好地理解和使用这些命令。什么是DockerKill/Pause/Unpause命令?Docker提供了几个与容器生命周......
  • 云原生 AI 工程化实践之 FasterTransformer 加速 LLM 推理
    作者:颜廷帅(瀚廷)01背景OpenAI在3月15日发布了备受瞩目的GPT4,它在司法考试和程序编程领域的惊人表现让大家对大语言模型的热情达到了顶点。人们纷纷议论我们是否已经跨入通用人工智能的时代。与此同时,基于大语言模型的应用也如雨后春笋般出现,为我们带来了协同办公、客服对......
  • Python小项目:利用tkinter搭建粗糙集简约算法软件
    文章目录1前言2粗糙集简约算法简述2.1基本概念2.2算法原理2.3应用领域3实验详解3.1实验数据3.2实验说明及过程截图3.3实验结果4代码详解5结语完整项目下载:下载链接1前言在本次旅程中,我们将探索一个令人兴奋的主题——“Python小项目:利用tkinter搭建粗糙集简约算法软件......
  • 企业chatgp软件源码搭建上线
      企业chatgp软件源码搭建上线  企业级chatgp软件主要涉及的有会员,代理,分销,在线生成文章等功能。企业需要上线这些功能的好处就是用户开通会员,会员也可以分销该系统。该系统软件也支持内部的各种文本消息回复,批量生成文章,文章模板,添加网站,关键词挖掘,问答回复,等功能。本文......