<一> 需求分析(requirement analysis)
需求分析是当前软件工程中的关键问题。需求分析阶段的任务是:在可行性分析的基础上,进一步了解、确定用户需求,准确地回答“系统必须做什么”的问题。获得需求规格说明书。还涉及到软件系统的目标、软件系统提供的服务、软件系统的约束和软件系统运行的环境。它还涉及到这些因素和系统的精确规格说明,以及系统进化之间的关系。
需求分析的基本任务包括:
-
抽取需求: 分析现行系统存在需要解决的问题。获取足够多的问题领域的知识,需求抽取的方法一般有问卷法、面谈法、数据采集法、用例法、情景实例法以及基于目标的方法等;还有知识工程方法,例如,场记分析法、卡片分类法、分类表格技术和基于模型的知识获取等。
-
模拟和分析需求:需求分析和模拟又包含三个层次的工作。首先是需求建模。需求模型的表现形式有自然语言、半形式化(如图、表、结构化英语等)和形式化表示等三种。需求概念模型的要求包括实现的独立性;不模拟数据的表示和内部组织等;需求模拟技术又分为企业模拟、功能需求模拟和非功能需求模拟等。
-
传递需求:传递需求的主要任务是书写软件需求规格说明。
-
认可需求:就是对需求规格说明达成一致,其主要任务是冲突求解,包括定义冲突和冲突求解两方面。常用的冲突求解方法有:协商、竞争、仲裁、强制、教育等,其中有些只能用人的因素去控制。
-
进化需求:客户的需要总是不断(连续)地增长,但是一般的软件开发又总是落后于客户需求的增长,如何管理需求的进化(变化)就成为软件进化的首要问题。对于传统的变化管理过程来说,其基本成分包括软件配置、软件基线和变化审查小组。当前的发展是软件家族法,即产品线方法。多视点方法也是管理需求变化的一种新方法,它可以用于管理不一致性,并进行关于变化的推理。
<二> 概要设计
概要设计是在需求分析的基础上通过抽象和分解将系统分解成模块,确定系统功能是实现。
概要设计基本任务:
-
建立软件系统结构:划分模块、定义模块功能、模块间的调用关系、定义模块的接口、评价模块的质量
-
数据结构和数据库的设计:数据结构设计、概念设计、逻辑设计、物理设计
-
编写概要设计文档:概要设计说明书、用户手册、数据库设计说明书、修订测试计划
<三> 详细设计
1 引言 1.1 编写目的 编写这份详细设计说明书的目的(指出预期的读者)。 1.2 背景 待开发软件系统的相关。 1.3 名称解释 列出本文档中用到的有必要解释的术语。此术语可能在其他文档中用到。 1.4 参考资料
列出编写本报告时参考的文件(如经核准的计划任务书或合同、上级机关的批文等)、资料、技术标准,以及他们的作者、标题、编号、发布日期和出版单位。
2 程序系统结构 3 类设计 3.1 命名空间(命名空间下可再加子命名空间,以此类推,相应序号加层) 3.1.1 类名称 3.1.1.1 类功能说明: 3.1.1.2 父类 3.1.1.3 成员变量 3.1.1.4 成员函数列表 3.1.1.5 成员函数设计 3.1.1.5.1 函数名: 3.1.1.5.1.1 功能描述 3.1.1.5.1.2 输入 3.1.1.5.1.3 返回值 3.1.1.5.1.4 流程图 3.1.1.5.1.5 算法说明 3.1.1.5.2 函数名 … 3.1.2 类名称 …. 3.2 命名空间
|
分享到:
相关推荐
“性恶”与为善的动机——荀...之欲为善者,为性恶也”析义_东方朔.caj
- **中国元语言理论**则关注如何将人类自然语言转化为可计算的形式,包括认知元语言和析义元语言等概念,这些元语言帮助解析和表达语言的深层含义。 - **个体语言生长论**提出了语言能力的发展过程,类似于生物体的...
基于java的贝儿米幼儿教育管理系统答辩PPT.pptx
本压缩包资源说明,你现在往下拉可以看到压缩包内容目录 我是批量上传的基于SpringBoot+Vue的项目,所以描述都一样;有源码有数据库脚本,系统都是测试过可运行的,看文件名即可区分项目~ |Java|SpringBoot|Vue|前后端分离| 开发语言:Java 框架:SpringBoot,Vue JDK版本:JDK1.8 数据库:MySQL 5.7+(推荐5.7,8.0也可以) 数据库工具:Navicat 开发软件: idea/eclipse(推荐idea) Maven包:Maven3.3.9+ 系统环境:Windows/Mac
基于java的消防物资存储系统答辩PPT.pptx
项目经过测试均可完美运行! 环境说明: 开发语言:java jdk:jdk1.8 数据库:mysql 5.7+ 数据库工具:Navicat11+ 管理工具:maven 开发工具:idea/eclipse
项目经过测试均可完美运行! 环境说明: 开发语言:java jdk:jdk1.8 数据库:mysql 5.7+ 数据库工具:Navicat11+ 管理工具:maven 开发工具:idea/eclipse
TA_lib库(whl轮子),直接pip install安装即可,下载即用,非常方便,各个python版本对应的都有。 使用方法: 1、下载下来解压; 2、确保有python环境,命令行进入终端,cd到whl存放的目录,直接输入pip install TA_lib-xxxx.whl就可以安装,等待安装成功,即可使用! 优点:无需C++环境编译,下载即用,方便
使用软件自带的basic脚本编辑制作的脚本 低版本软件无法输出Excel报告,可以通过脚本方式实现这一功能
基于java的就业信息管理系统答辩PPT.pptx
25法理学背诵逻辑.apk.1g
基于java的大学生校园兼职系统答辩PPT.pptx
做到代码,和分析的源数据
本压缩包资源说明,你现在往下拉可以看到压缩包内容目录 我是批量上传的基于SpringBoot+Vue的项目,所以描述都一样;有源码有数据库脚本,系统都是测试过可运行的,看文件名即可区分项目~ |Java|SpringBoot|Vue|前后端分离| 开发语言:Java 框架:SpringBoot,Vue JDK版本:JDK1.8 数据库:MySQL 5.7+(推荐5.7,8.0也可以) 数据库工具:Navicat 开发软件: idea/eclipse(推荐idea) Maven包:Maven3.3.9+ 系统环境:Windows/Mac
项目经过测试均可完美运行! 环境说明: 开发语言:java jdk:jdk1.8 数据库:mysql 5.7+ 数据库工具:Navicat11+ 管理工具:maven 开发工具:idea/eclipse
适用于ensp已经入门人群的学习,有一定难度
基于java的数码论坛系统设计与实现答辩PPT.pptx
tornado-6.4.1-cp38-abi3-macosx_10_9_universal2.whl
基于java的医院信管系统答辩PPT.pptx
项目经过测试均可完美运行! 环境说明: 开发语言:java jdk:jdk1.8 数据库:mysql 5.7+ 数据库工具:Navicat11+ 管理工具:maven 开发工具:idea/eclipse