【系统架构设计】开发管理

2024-09-02 19:28

本文主要是介绍【系统架构设计】开发管理,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

【系统架构设计】开发管理

  • 前言
  • 项目的范围、时间与成本
    • 项目范围管理
    • 项目时间管理
    • 项目成本管理
  • 配置管理和文档管理
    • 配置管理
    • 文档管理
  • 软件需求管理
  • 人力资源管理
  • 软件的运行与评价
  • 软件过程改进

前言

影响软件研发项目全局的因素是管理水平,而技术只影响局部,这就有必要从项目管理的角度去管理软件的开发。而项目管理是指在项目活动中运用专门的知识、技能、工具和方法,使项目能够实现或超过项目干系人的需要和期望,可以分为范围管理、时间管理、费用管理、质量管理、人力资源管理、沟通管理、风险管理、采购管理、整体管理 9 个知识领域。
对于软件的开发管理来讲,软件范围管理、软件进度管理、软件成本管理、软件配置管理(属于整体管理)、软件质量管理、软件风险管理、开发人员管理(属于人力资源管理) 7 个方面的管理尤为重要。

ps: 7方面少了沟通管理、采购管理

项目的范围、时间与成本

项目管理首先要考虑三个约束条件:项目范围、时间进度、成本预算

项目范围管理

  • 主要包括项目启动、范围计划编制、范围定义、范围核实、范围变更控制 5 个部分的内容。

  • 范围核实与质量控制是不同的,范围核实是有关工作结果的“接收”,而质量控制是有关工作结果的正确性

项目时间管理

  • 主要包括活动定义、活动排序、活动历时估算、进度计划编制、进度控制 5 个部分内容。

项目成本管理

  • 主要包括资源计划编制、成本估算、成本预算、成本控制 4 个主要部分内容。

  • 软件项目的成本不仅包括开发成本,也包括开发之前立项阶段及软件在运行中的费用。此外,操作者的培训费用和项目所使用的各种硬件设施费用也都是整个项目成本的一部分

配置管理和文档管理

配置管理

基于开发环境日益复杂,代码共享日益困难,需跨越的平台增多;软件的重用性需要提高;软件的维护越来越困难等现状,软件配置管理(Software Configuration Management,SCM)应运而生。配置管理三个核心部分:版本管理、问题跟踪、建立管理,其中版本管理是基础

ps: 如平时用的Qsync。

文档管理

软件文档从用途上还可以分为内部文档和外部文档,其中,内部文档包括:

  • 项目开发计划
  • 需求分析
  • 架构设计说明
  • 详细设计说明
  • 构件索引
  • 构件成分说明
  • 构件接口及调用说明
  • 类属性及方法说明
  • 测试报告
  • 测试统计报告
  • 质量监督报告
  • 源代码
  • 文档分类版本索引
  • 软件安装打包文件

外部文档主要包括:

  • 软件安装手册
  • 软件操作手册
  • 在线帮助
  • 系统性能指标报告
  • 系统操作索引

一般而言,好的软件文档要求具备如下特征:

  • 针对性
  • 精确性
  • 清晰性
  • 完整性
  • 灵活性

软件需求管理

进行需求变更控制的主要依据是项目计划、变更请求、反映项目执行状况的绩效报告

人力资源管理

一般包括组织规划、人员招募和团队建设三个主要过程。其中,组织的具体形式可以有三种方案:垂直方案、水平方案、混合方案以垂直方案组织的团队由多面手组成,每个成员都充当多重角色;以水平方案组织的团队由专家组成,每个成员充当一到两个角色;以混合方案组织的团队既包括多面手,又包括专家。

  • 垂直团队组织,也就是功能模块分配给了个人或小组,然后由他们从头至尾地实现该功能模块;
  • 水平团队组织,也就是团队同时处理多个功能模块,每个成员都从事功能模块中有关其自身的方面。

软件项目团队的成长规律:形成阶段、震荡阶段、正规阶段、表现阶段

软件的运行与评价

通常关注以下几点:

  • 软件的稳定性和可靠性评价
  • 软件是否满足了用户的需求
  • 软件实施给用户带来的好处

软件过程改进

目前使用最多的软件过程改进模型包括CMM(Capability Maturity Model for Software),即软件能力成熟度模型,该模型一共有5级,每一个低的级别实现均是高的级别实现的基础:初始级、可重复级、定义级、管理级、优化级

  • 初始级:未加定义的随意过程;
  • 可重复级:仅定义了管理的基本过程,而没有定义执行的步骤标准
  • 定义级:要求制定企业范围的工程化标准
  • 管理级:量化的管理
  • 优化级:达到一个持续改善的境界,所谓持续改善是指可根据过程执行的反馈信息来改善下一步的执行过程

这篇关于【系统架构设计】开发管理的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1130849

相关文章

JAVA系统中Spring Boot应用程序的配置文件application.yml使用详解

《JAVA系统中SpringBoot应用程序的配置文件application.yml使用详解》:本文主要介绍JAVA系统中SpringBoot应用程序的配置文件application.yml的... 目录文件路径文件内容解释1. Server 配置2. Spring 配置3. Logging 配置4. Ma

2.1/5.1和7.1声道系统有什么区别? 音频声道的专业知识科普

《2.1/5.1和7.1声道系统有什么区别?音频声道的专业知识科普》当设置环绕声系统时,会遇到2.1、5.1、7.1、7.1.2、9.1等数字,当一遍又一遍地看到它们时,可能想知道它们是什... 想要把智能电视自带的音响升级成专业级的家庭影院系统吗?那么你将面临一个重要的选择——使用 2.1、5.1 还是

基于Python开发电脑定时关机工具

《基于Python开发电脑定时关机工具》这篇文章主要为大家详细介绍了如何基于Python开发一个电脑定时关机工具,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录1. 简介2. 运行效果3. 相关源码1. 简介这个程序就像一个“忠实的管家”,帮你按时关掉电脑,而且全程不需要你多做

高效管理你的Linux系统: Debian操作系统常用命令指南

《高效管理你的Linux系统:Debian操作系统常用命令指南》在Debian操作系统中,了解和掌握常用命令对于提高工作效率和系统管理至关重要,本文将详细介绍Debian的常用命令,帮助读者更好地使... Debian是一个流行的linux发行版,它以其稳定性、强大的软件包管理和丰富的社区资源而闻名。在使用

Java中的Opencv简介与开发环境部署方法

《Java中的Opencv简介与开发环境部署方法》OpenCV是一个开源的计算机视觉和图像处理库,提供了丰富的图像处理算法和工具,它支持多种图像处理和计算机视觉算法,可以用于物体识别与跟踪、图像分割与... 目录1.Opencv简介Opencv的应用2.Java使用OpenCV进行图像操作opencv安装j

Ubuntu系统怎么安装Warp? 新一代AI 终端神器安装使用方法

《Ubuntu系统怎么安装Warp?新一代AI终端神器安装使用方法》Warp是一款使用Rust开发的现代化AI终端工具,该怎么再Ubuntu系统中安装使用呢?下面我们就来看看详细教程... Warp Terminal 是一款使用 Rust 开发的现代化「AI 终端」工具。最初它只支持 MACOS,但在 20

windows系统下shutdown重启关机命令超详细教程

《windows系统下shutdown重启关机命令超详细教程》shutdown命令是一个强大的工具,允许你通过命令行快速完成关机、重启或注销操作,本文将为你详细解析shutdown命令的使用方法,并提... 目录一、shutdown 命令简介二、shutdown 命令的基本用法三、远程关机与重启四、实际应用

Debian如何查看系统版本? 7种轻松查看Debian版本信息的实用方法

《Debian如何查看系统版本?7种轻松查看Debian版本信息的实用方法》Debian是一个广泛使用的Linux发行版,用户有时需要查看其版本信息以进行系统管理、故障排除或兼容性检查,在Debia... 作为最受欢迎的 linux 发行版之一,Debian 的版本信息在日常使用和系统维护中起着至关重要的作

基于Qt开发一个简单的OFD阅读器

《基于Qt开发一个简单的OFD阅读器》这篇文章主要为大家详细介绍了如何使用Qt框架开发一个功能强大且性能优异的OFD阅读器,文中的示例代码讲解详细,有需要的小伙伴可以参考一下... 目录摘要引言一、OFD文件格式解析二、文档结构解析三、页面渲染四、用户交互五、性能优化六、示例代码七、未来发展方向八、结论摘要

什么是cron? Linux系统下Cron定时任务使用指南

《什么是cron?Linux系统下Cron定时任务使用指南》在日常的Linux系统管理和维护中,定时执行任务是非常常见的需求,你可能需要每天执行备份任务、清理系统日志或运行特定的脚本,而不想每天... 在管理 linux 服务器的过程中,总有一些任务需要我们定期或重复执行。就比如备份任务,通常会选在服务器资