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

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

相关文章

一文详解Python如何开发游戏

《一文详解Python如何开发游戏》Python是一种非常流行的编程语言,也可以用来开发游戏模组,:本文主要介绍Python如何开发游戏的相关资料,文中通过代码介绍的非常详细,需要的朋友可以参考下... 目录一、python简介二、Python 开发 2D 游戏的优劣势优势缺点三、Python 开发 3D

Linux创建服务使用systemctl管理详解

《Linux创建服务使用systemctl管理详解》文章指导在Linux中创建systemd服务,设置文件权限为所有者读写、其他只读,重新加载配置,启动服务并检查状态,确保服务正常运行,关键步骤包括权... 目录创建服务 /usr/lib/systemd/system/设置服务文件权限:所有者读写js,其他

基于Python开发Windows自动更新控制工具

《基于Python开发Windows自动更新控制工具》在当今数字化时代,操作系统更新已成为计算机维护的重要组成部分,本文介绍一款基于Python和PyQt5的Windows自动更新控制工具,有需要的可... 目录设计原理与技术实现系统架构概述数学建模工具界面完整代码实现技术深度分析多层级控制理论服务层控制注

linux系统中java的cacerts的优先级详解

《linux系统中java的cacerts的优先级详解》文章讲解了Java信任库(cacerts)的优先级与管理方式,指出JDK自带的cacerts默认优先级更高,系统级cacerts需手动同步或显式... 目录Java 默认使用哪个?如何检查当前使用的信任库?简要了解Java的信任库总结了解 Java 信

在Node.js中使用.env文件管理环境变量的全过程

《在Node.js中使用.env文件管理环境变量的全过程》Node.js应用程序通常依赖于环境变量来管理敏感信息或配置设置,.env文件已经成为一种流行的本地管理这些变量的方法,本文将探讨.env文件... 目录引言为什么使php用 .env 文件 ?如何在 Node.js 中使用 .env 文件最佳实践引

Java中的分布式系统开发基于 Zookeeper 与 Dubbo 的应用案例解析

《Java中的分布式系统开发基于Zookeeper与Dubbo的应用案例解析》本文将通过实际案例,带你走进基于Zookeeper与Dubbo的分布式系统开发,本文通过实例代码给大家介绍的非常详... 目录Java 中的分布式系统开发基于 Zookeeper 与 Dubbo 的应用案例一、分布式系统中的挑战二

Oracle数据库在windows系统上重启步骤

《Oracle数据库在windows系统上重启步骤》有时候在服务中重启了oracle之后,数据库并不能正常访问,下面:本文主要介绍Oracle数据库在windows系统上重启的相关资料,文中通过代... oracle数据库在Windows上重启的方法我这里是使用oracle自带的sqlplus工具实现的方

python库pydantic数据验证和设置管理库的用途

《python库pydantic数据验证和设置管理库的用途》pydantic是一个用于数据验证和设置管理的Python库,它主要利用Python类型注解来定义数据模型的结构和验证规则,本文给大家介绍p... 目录主要特点和用途:Field数值验证参数总结pydantic 是一个让你能够 confidentl

基于Go语言开发一个 IP 归属地查询接口工具

《基于Go语言开发一个IP归属地查询接口工具》在日常开发中,IP地址归属地查询是一个常见需求,本文将带大家使用Go语言快速开发一个IP归属地查询接口服务,有需要的小伙伴可以了解下... 目录功能目标技术栈项目结构核心代码(main.go)使用方法扩展功能总结在日常开发中,IP 地址归属地查询是一个常见需求:

基于 Cursor 开发 Spring Boot 项目详细攻略

《基于Cursor开发SpringBoot项目详细攻略》Cursor是集成GPT4、Claude3.5等LLM的VSCode类AI编程工具,支持SpringBoot项目开发全流程,涵盖环境配... 目录cursor是什么?基于 Cursor 开发 Spring Boot 项目完整指南1. 环境准备2. 创建