软件过程管理第二章(软件开发活动)
软件过程:构建、维护软件产品时所执行的一系列活动、动作和任务的集合
活动:组成软件过程的主要宏观步骤,如需求分析、设计、编码、发布等
动作:对活动进步细分得到的步骤,如设计活动可分为总体设计、模块设计等动作
任务:具体的工作步骤,如编写一个具体的软甲模块
核心软件活动:所有合理软件过程共同的、必要的
沟通需求:与客户头痛协作,了解其真实需要,决定软件特性和功能,制定目标
策划:创建软件项目“地图”,以指导团队的项目旅程。
通常包括,需要执行的具体任务、每个任务需要的资源分配、每个任务的具体产品、工作计划等
建模(设计):通过构造软件模型的方法来研究理解具体问题,向其他人展示具体方案
编码与测试:实现
运行和部署:将软件交付用户使用,通常会先试用并得到反馈意见
维护:修复用户使用过程中发现的软件缺陷,或者根据用户使用意见进行改进
过程活动:
软件描述:要确定软件系统要实现的功能,及系统开发和运行过程中要遵循的一些约束,
包括可行性研究、需求导出与分析、需求描述、需求有效性验证
产出为可行性分析报告、需求文档
需求分析工作分为需求开发和需求管理
需求开发的目标是与客户和其他涉众达成一致,使得开发人员更清楚地了解系统需求,定义系统边界,
为软件实施计划提供基础,为估算开发成本和时间提供基础,定义系统用户的需求和目标
需求分析前做好获取信息的规划,需求分析中跟踪徐阿偶实现情况、监督需求变化,后反复需求验证
需求获取、需求分析、需求规格说明、需求验证、需求跟踪管理、需求变更管理
软件设计:把需求工程得到的系统描述转为可执行的系统
目标:构造解决方案 过程:需求描述转为能对其质量进行评价的软件表示
关键:对软件体系结构、数据结构、过程细节、接口性质四种程序属性的确定
设计输入:需求描述、数据描述和其他信息
设计活动包括:体系结构设计、抽象描述、接口设计、组件设计、数据结构设计、算法设计等
设计输出:系统体系结构描述、数据库描述、接口描述、组件描述等
高级设计:传统工程中概要设计或者体系结构设计,产出为高层设计说明书
包括定义相关标准、确定系统开发运行软硬件环境、确定系统体系结构、模块或者组件划分、数据库设计
讨论的问题涉面广、影响深、或者对系统关键指标影响大的纵深性问题
详细设计:主要任务选定数据结构、算法设计,完成模块或者对象的设计
形成每一程序组件的控制结构、数据结构、界面关系、关键算法、假设等的完成,产生详细设计说明书
主要活动包括模块进一步细化和设计、数据迁移程序的开发、通用程序框架的设计和开发、实用工具的开发、单元测试计划的开发
软件实现:设计构造可执行的解题逻辑,实现构造机器代码。实现与设计紧密联系,很多时候交替进行
软件测试:对内部实现进行逻辑测试,对外部进行功能测试。分为单元测试、集成测试、系统测试、验收测试
单元测试:程序员 集成测试:开发团队 系统测试:独立的测试团队
软件维护:软件更新、校正性维护、适应性维护、完善性维护
软件过程管理第二章(软件开发活动)相关推荐
- 《软件测试》第二章 软件开发的过程
<软件测试>第二章 软件开发的过程 2.1 产品的组成部分 2.1.1 软件产品需要多少投入 2.1.2 软件产品由哪些部分组成 2.2 软件项目成员 2.3 软件开发生命周期模式 2.3 ...
- 【XJTUSE软件项目管理复习笔记】 第二章 软件项目整体管理
仅供学习参考,禁止商用与转载 文章目录 软件项目管理复习笔记 第二章 软件项目整体管理 什么是项目整体管理 战略计划和项目选择 项目选择 项目的财务分析 净现值分析(重点) 投资收益率(ROI)分析法 ...
- 软件构造 第一章第二节 软件开发的质量属性
软件构造 第一章第二节 软件开发的质量属性 1.软件系统质量指标 External quality factors affect users 外部质量因素影响用户 Internal quality ...
- 第二章 STC51开发环境搭建
第二章 搭建开发环境 一.简介 本文介绍搭建开发环境 二.实验平台 单片机型号:STC12C5A60S2 编译软件:KEIL 硬件平台:达芬奇51开发版 三.版权声明 博主:文武先生 声明:喝水不忘 ...
- 第二章 - 软件开发过程
软件生命周期与开发过程 软件开发过程(software development process)又叫做软件开发生命周期(software development life cycle, SDLC),是 ...
- 《STM32单片机开发应用教程(HAL库版)---基于国信长天嵌入式竞赛实训平台(CT117E-M4)》第二章 软件安装与使用
写在前面-- 作为<STM32单片机开发应用教程(HAL库版)-基于国信长天嵌入式竞赛实训平台(CT117E-M4)>系列之第二章,本章节将介绍开发软件STM32CubeMX和KEIL5的 ...
- FPGA基础知识----第二章 FPGA 开发流程
第二章 FPGA 开发流程 FPGA 的设计流程就是利用 EDA 开发软件和编程工具对 FPGA 芯片进行开发的过程.原理图和HDL(Hardware description language,硬件描 ...
- 软件测试之第十一章 软件开发与测试模型
第十一章 软件开发与测试模型 一. 软件开发模型 1 为什么学习软件开发模型 了解开发能够更好的有针对性的做好测试. 2 什么是软件开发模型 软件开发生命周期模型是软件产品从最初构思到退役的过程. 3 ...
- 第二章 FPGA开发流程
文章目录 第二章 FPGA开发流程 第1节 功能定义/器件选型 第2节 设计输入 第3节 功能仿真 第4节 综合优化 第5节 综合后仿真 第6节 布局布线 第7节 时序仿真 第8节 板级仿真与验证 第 ...
最新文章
- Go 1.16 的这个新变化需要适应下:go get 和 go install 的变化
- Exchage 2007 Client Application Functions(2) -- 如何收取邮件
- matlab有限差分一维导热,一维导热方程-有限差分法-matlab实现11.docx
- java项目合同制没做完扣钱吗_程序员接私活,怎样防止做完不给钱?
- CentOS 下安装xdebug
- 作者:胡卫生,博士,上海交通大学教授、博士生导师。
- This function has none of DETERMINISTIC, NO SQL, or READS SQL DATA in its 错误解决办法
- 计算机配置cpo,使用域组策略及脚本统一配置防火墙-20210421070355.docx-原创力文档...
- java根据周数获取日期_java获取日期的周数和所属年份
- .net导出为powerpoint的一些参考代码
- matlab基于dct的图像压缩编码解码_基于深度学习的视频压缩方法简介
- eth0: ERROR while getting interface flags: No such device
- Moscow Pre-Finals Workshop 2020 - Legilimens+Coffee Chicken Contest (XX Open Cup, Grand Prix of Nanj
- 数据库课程设计银行管理系统(SQL Server)
- c语言作业做出金山打字功能,C语言制作简易金山打字通功能的代码
- 记录一次实战破解无线wifi——Aircrack-ng
- 2020暑期数学建模(数据分析)学习笔记
- python为啥爬取数据会有重复_利用Python来爬取“吃鸡”数据,为什么别人能吃鸡?...
- web服务器项目常见面试题目(C++)
- 第11章 The Extended Kalman Filter