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

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

相关文章

gradle第三方Jar包依赖统一管理方式

《gradle第三方Jar包依赖统一管理方式》:本文主要介绍gradle第三方Jar包依赖统一管理方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录背景实现1.顶层模块build.gradle添加依赖管理插件2.顶层模块build.gradle添加所有管理依赖包

基于Python打造一个智能单词管理神器

《基于Python打造一个智能单词管理神器》这篇文章主要为大家详细介绍了如何使用Python打造一个智能单词管理神器,从查询到导出的一站式解决,感兴趣的小伙伴可以跟随小编一起学习一下... 目录1. 项目概述:为什么需要这个工具2. 环境搭建与快速入门2.1 环境要求2.2 首次运行配置3. 核心功能使用指

Go语言开发实现查询IP信息的MCP服务器

《Go语言开发实现查询IP信息的MCP服务器》随着MCP的快速普及和广泛应用,MCP服务器也层出不穷,本文将详细介绍如何在Go语言中使用go-mcp库来开发一个查询IP信息的MCP... 目录前言mcp-ip-geo 服务器目录结构说明查询 IP 信息功能实现工具实现工具管理查询单个 IP 信息工具的实现服

HTML5中的Microdata与历史记录管理详解

《HTML5中的Microdata与历史记录管理详解》Microdata作为HTML5新增的一个特性,它允许开发者在HTML文档中添加更多的语义信息,以便于搜索引擎和浏览器更好地理解页面内容,本文将探... 目录html5中的Mijscrodata与历史记录管理背景简介html5中的Microdata使用M

Spring 基于XML配置 bean管理 Bean-IOC的方法

《Spring基于XML配置bean管理Bean-IOC的方法》:本文主要介绍Spring基于XML配置bean管理Bean-IOC的方法,本文给大家介绍的非常详细,对大家的学习或工作具有一... 目录一. spring学习的核心内容二. 基于 XML 配置 bean1. 通过类型来获取 bean2. 通过

python uv包管理小结

《pythonuv包管理小结》uv是一个高性能的Python包管理工具,它不仅能够高效地处理包管理和依赖解析,还提供了对Python版本管理的支持,本文主要介绍了pythonuv包管理小结,具有一... 目录安装 uv使用 uv 管理 python 版本安装指定版本的 Python查看已安装的 Python

使用Python开发一个带EPUB转换功能的Markdown编辑器

《使用Python开发一个带EPUB转换功能的Markdown编辑器》Markdown因其简单易用和强大的格式支持,成为了写作者、开发者及内容创作者的首选格式,本文将通过Python开发一个Markd... 目录应用概览代码结构与核心组件1. 初始化与布局 (__init__)2. 工具栏 (setup_t

Spring Shell 命令行实现交互式Shell应用开发

《SpringShell命令行实现交互式Shell应用开发》本文主要介绍了SpringShell命令行实现交互式Shell应用开发,能够帮助开发者快速构建功能丰富的命令行应用程序,具有一定的参考价... 目录引言一、Spring Shell概述二、创建命令类三、命令参数处理四、命令分组与帮助系统五、自定义S

利用Python快速搭建Markdown笔记发布系统

《利用Python快速搭建Markdown笔记发布系统》这篇文章主要为大家详细介绍了使用Python生态的成熟工具,在30分钟内搭建一个支持Markdown渲染、分类标签、全文搜索的私有化知识发布系统... 目录引言:为什么要自建知识博客一、技术选型:极简主义开发栈二、系统架构设计三、核心代码实现(分步解析

基于Python和MoviePy实现照片管理和视频合成工具

《基于Python和MoviePy实现照片管理和视频合成工具》在这篇博客中,我们将详细剖析一个基于Python的图形界面应用程序,该程序使用wxPython构建用户界面,并结合MoviePy、Pill... 目录引言项目概述代码结构分析1. 导入和依赖2. 主类:PhotoManager初始化方法:__in