软件过程:构建、维护软件产品时所执行的一系列活动、动作和任务的集合
活动:组成软件过程的主要宏观步骤,如需求分析、设计、编码、发布等
动作:对活动进步细分得到的步骤,如设计活动可分为总体设计、模块设计等动作
任务:具体的工作步骤,如编写一个具体的软甲模块
核心软件活动:所有合理软件过程共同的、必要的
沟通需求:与客户头痛协作,了解其真实需要,决定软件特性和功能,制定目标
策划:创建软件项目“地图”,以指导团队的项目旅程。
通常包括,需要执行的具体任务、每个任务需要的资源分配、每个任务的具体产品、工作计划等
建模(设计):通过构造软件模型的方法来研究理解具体问题,向其他人展示具体方案
编码与测试:实现
运行和部署:将软件交付用户使用,通常会先试用并得到反馈意见
维护:修复用户使用过程中发现的软件缺陷,或者根据用户使用意见进行改进
过程活动:
软件描述:要确定软件系统要实现的功能,及系统开发和运行过程中要遵循的一些约束,
包括可行性研究、需求导出与分析、需求描述、需求有效性验证
产出为可行性分析 告、需求文档
需求分析工作分为需求开发和需求管理
需求开发的目标是与客户和其他涉众达成一致,使得开发人员更清楚地了解系统需求,定义系统边界,
为软件实施计划提供基础,为估算开发成本和时间提供基础,定义系统用户的需求和目标
需求分析前做好获取信息的规划,需求分析中跟踪徐阿偶实现情况、监督需求变化,后反复需求验证
需求获取、需求分析、需求规格说明、需求验证、需求跟踪管理、需求变更管理
软件设计:把需求工程得到的系统描述转为可执行的系统
目标:构造解决方案 过程:需求描述转为能对其质量进行评价的软件表示
关键:对软件体系结构、数据结构、过程细节、接口性质四种程序属性的确定
设计输入:需求描述、数据描述和其他信息
设计活动包括:体系结构设计、抽象描述、接口设计、组件设计、数据结构设计、算法设计等
设计输出:系统体系结构描述、数据库描述、接口描述、组件描述等
高级设计:传统工程中概要设计或者体系结构设计,产出为高层设计说明书
包括定义相关标准、确定系统开发运行软硬件环境、确定系统体系结构、模块或者组件划分、数据库设计
讨论的问题涉面广、影响深、或者对系统关键指标影响大的纵深性问题
详细设计:主要任务选定数据结构、算法设计,完成模块或者对象的设计
形成每一程序组件的控制结构、数据结构、界面关系、关键算法、假设等的完成,产生详细设计说明书
主要活动包括模块进一步细化和设计、数据迁移程序的开发、通用程序框架的设计和开发、实用工具的开发、单元测试计划的开发
软件实现:设计构造可执行的解题逻辑,实现构造机器代码。实现与设计紧密联系,很多时候交替进行
软件测试:对内部实现进行逻辑测试,对外部进行功能测试。分为单元测试、集成测试、系统测试、验收测试
单元测试:程序员 集成测试:开发团队 系统测试:独立的测试团队
软件维护:软件更新、校正性维护、适应性维护、完善性维护
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!