[项目管理-1]:软硬件项目管理 - 总体概述、框架、实践活动、常见工具、软件研发过程、软件开发周期模型

作者主页(文火冰糖的硅基工坊):文火冰糖(王文兵)的博客_文火冰糖的硅基工坊_CSDN博客

本文网址:https://blog.csdn.net/HiWangWenBing/article/details/126427623


目录

前言:

第1章 项目集成与整体管理

1.1 项目管理是企业经营的一部分

1.1.1 项目是组织战略的一部分

1.1.2 项目是组织的一种经营活动

1.1.3 大规模、复杂性项目的特点:

1.1.4 项目管理是矩阵管理的一个维度

1.1.5 项目实施是组织内的生产活动

1.1.6 DevOps移动通信软件研发过程

1.1.7 云原生软件研发过程

1.1.9 PID闭环控制

1.2 项目管理知识体系

1.2.1 管理框架示意图

1.2.2 项目管理架构

1.2.3 五大过程组

1.2.4 10大知识领域

 1.2.5 常见模板表格

1.2.6 项目管理模块关系图

1.2.7 变更管理

1.3  常见软件开发周期模型

1.3.1 瀑布模型

1.3.2 V模型

1.3.3 快速原型模型

1.3.4 增量模型

1.3.5 螺旋模型(敏捷模型)

1.3.6 喷泉模型

1.3.7 并行迭代开发


前言:

项目是公司赖以生存的物质基础的创造手段,项目用于研发产品,对项目的有效管理能够极大的提升项目的生产的效率、及时解决项目实施中遇到的问题。项目管理是一门专门的学科,本文不把打算从理论上探讨项目管理的理论,本系列从实际操作的层面阐述项目管理日常的内容、方法和工具。

第1章 项目集成与整体管理

1.1 项目管理是企业经营的一部分

1.1.1 项目是组织战略的一部分

所有的项目,首先都是为了实时组织战略、战术的一种手段和方法。项目必须为组织的战略服务。

组织的目标是:

(1)解决社会、客户问题

(2)为社会、客户创造价值

(3)从而为组织创造利润。

因此,一个项目也必须问答如下的问题:

(1)第一:解决了社会、客户什么样的问题?

(2)第二:为社会、客户创造了什么样的价值?

(3)最后:为组织创造多少利润?

1.1.2 项目是组织的一种经营活动

在任何一家公司,项目管理不是孤立的存在的,它是组织众多经营活动中的一个活动,它需要与其他活动互动,最终确保相关管理的正常实施。

既然是组织类的活动,就意味着

(1)项目与依附于组织内的各种资源

(2)项目与依附于组织内的各种部门

(3)项目与依附于组织内的各种流程

1.1.3 大规模、复杂性项目的特点:

(1)产品的复杂性:

  • 硬件功能模块规模大,硬件功能模块之间的交互复杂
  • 软件功能模块规模大,软硬件功能模块之间的交互复杂
  • 软硬件的交互复杂
  • 产品开发中使用到的工具复杂
  • 产品开发中需要的知识技能复杂

(2)版本的复杂性

  • 同时有多个软件版本同时开发
  • 软件版本发布多样

(3)组织的复杂性

  • 多个不同技能的团队
  • 团队的地理位置分布很广
  • 团队的工作时间分布很广

(4)人员的复杂性

  • 人的国界多样
  • 人的文化多样
  • 人的性格多样
  • 参与项目的规模庞大,少则上千人,多则上万人

(5)流程的复杂性

  • 软件开发的流程复杂
  • 软件管理流程复杂

(6)外部环境的复杂性

  • 组织内的跨省、跨国界
  • 组织内的跨时区

1.1.4 项目管理是矩阵管理的一个维度

在上图中:

(1)横轴:是部门(开发、测试、财务、生产、人事等),每个业务部门管理一些公共的资源

  • 人:人员(开发、测试、市场、销售、行政)
  • 机:机器
  • 物:物料
  • 法:方法、流程
  • 财:钱财
  • 环:环境

(2)纵轴:是项目,项目A, B, C等等,

  • 项目有自己的直接负责人项目经理
  • 项目有自己的各种资源(其他生产资源)
  • 项目有自己的生命周期(生产周期)
  • 项目有自己的实施过程(生产过程)
  • 项目有自己的实施流程(生产流程)

《项目管理》理论和方法,主要是针对这部分的。

现代项目管理由原先的纯粹的人和事的管理转向借助自动化工具、人工智能等辅助技术实现人机协同的项目管理!

(3)配合

项目管理人员需要资源管理部门(部门经理)密切配合。

1.1.5 项目实施是组织内的生产活动

项目实施的本质是:利用一切可用的资源进行进行的一种有组织、有计划生产活动

如下是一种常见的实践步骤:

(1)明确各种生产活动中各项工作能够有机地协调和配合集成管理):集成、总体

(2)明确利益受影响的干系人以及他们的期望与职责干系人管理) :  为谁的期望做?

(3)明确要做的事、各项生产活动、以及它们的依赖关系(范围管理):做什么?

(4)明确各项生产活动所需的时间资源的要求时间管理):什么时间做?

(5)明确各项生产活动所需要的人力资源的要求人力资源管理):什么人来做?

(6)  明确各项生产活动中不同角色的人如何进行有效的沟通、交流沟通管理):如何沟通?

(7)明确各项生产活动所需要的原材料资源的要求采购管理):需要什么物?

(8)  明确各项生产活动所需要的资金资源的要求成本管理):需要花多少钱?

(9)明确各种生产活动中可能会出现的对项目有重大影响的风险风险管理):有什么风险?

(10)如何确保生产过程以及生产出来的产品是可靠的、符合最终客户的质量要求:怎么保证质量

上述是一个项目实施的完整过程和完整的内容,通过上述10大过程并行实施,可以确保项目完全、可靠的完成最终的目标。

1.1.6 DevOps移动通信软件研发过程

[云原生专题-64]:核心概念 - 云原生技术助力5G RAN步入”云”霄 - 对云原生的理解_文火冰糖的硅基工坊的博客-CSDN博客

 备注:

Devops软件的项目管理,都是围绕上述的软件开发过程进行的。

1.1.7 云原生软件研发过程

[云原生专题-2]:总体-实战案例架构与实战学习路径_文火冰糖的硅基工坊的博客-CSDN博客

备注:

云原生软件的项目管理,都是围绕上述的软件开发过程进行的。

1.1.8 闭环的项目架构(PDCA + PID闭环控制算法)

  • 计划
  • 执行
  • 监控
  • 反馈

1.1.9 PID闭环控制

1.2 项目管理知识体系

1.2.1 管理框架示意图

1.2.2 项目管理架构

1.2.3 五大过程组

  • 项目启动
  • 项目规划
  • 项目执行
  • 项目监控

  • 项目收尾

1.2.4 10大知识领域

 1.2.5 常见模板表格

1.2.6 项目管理模块关系图

1.2.7 变更管理

变更管理(Change Management)是指项目组织为适应项目运行过程中与项目相关的各种因素的变化,保证项目目标的实现而对项目计划进行相应的部分变更或全部变更,并按变更后的要求组织项目实施的过程。变更管理即Management of change(MOC):有变更的需求就要有变更的控制和管理。

变更管理是项目管理中的最重要过程之一,主要任务是分析变更的必要性。

变更发生在项目的不同阶段,不同层次。

变更在项目执行中是非常常见的现象,变更中最重要的几个注意点包括:

(1)变更必须通知到相关的干系人,并得到相关人的一致同意才能实施,项目经理或项目组成员不能自行决定。

(2)变更必须按照流程来执行,确保相关的人和事都能够得到合理的处理。

(3)变更要尽可能早发生,避免到了项目验收阶段再进行变更 ,越靠后的变更,重新纠偏的成本越高。

1.3  常见软件开发周期模型

1.3.1 瀑布模型

原始的瀑布模型:

是将软件生存周期中的各个活动规定为依线性顺序连接的若干阶段的模型,包括需求分析、设计、编码、测试、运行和维护。

它规定了由前至后、相互衔接的固定次序,如同瀑布流水逐级下落。

在这里插入图片描述

  • 阶段间具有顺序性和依赖性

具体指的是必须等前一阶段的工作完成才能开始后一阶段的工作,
前一阶段的输出文档就是后一阶段的输入文档,因此只有前一阶段的输出文档正确,后一阶段的工作才能获得正确的结果

  • 推迟实现的观点

瀑布模型的编码之前设置了系统分析和系统设计的各个阶段,分析与设计阶段的基本任务规定,这两个阶段主要考虑目标系统的路基模型,不涉及软件的物理实现,清楚地区分逻辑设计与物理设计,尽可能推迟程序的物理实现

  • 质量保证的观点

每个阶段必须完成规定的文档;每个阶段结束前都要对所完成的文档进行评审
 

实际中的瀑布模型带有反馈

在实际的软件项目中存在着许多不稳定因素,例如,开发中的工作疏漏或通信误解;在项目实施中途,用户可能会提出一些新的要求;开发者也可能在设计中遇到某些未曾预料的实际困难,希望在需求中有所权衡等。为了解决这些问题,考虑到许多实际项目中阶段之间有通信的需要使瀑布模型带有信息反馈环,能够逐级地将后续阶段的意见返回,并在问题解决之后,再逐级地将修正结果下传。

在这里插入图片描述

1.3.2 V模型

1.3.3 快速原型模型

快速原型模型是不带反馈环的,软件产品的开发基本上是线性顺序进行的,快速原型地本质是快速,原型的用户是获知用户的真正需求。

在这里插入图片描述

1.3.4 增量模型

增量模型也称渐增模型。使用增量模型开发软件时,把软件产品作为一系列的增量构件来设计、编码、集成和测试。每个构件由多个相互作用的模块构成,并且能够完成特定的功能。
增量模型与瀑布模型,快速原型模型想反,它分批地逐步向用户提交产品,整个软件产品被分解为许多个增量构件。

在这里插入图片描述

1.3.5 螺旋模型(敏捷模型)

螺旋模型很像我们高中时候学习的四象限它分为制定计划,风险分析,实施工程和客户评估阶段,整个螺旋模型由风险驱动,强调可选方案和约束条件从而支持软件的重用,有助于将软件质量作为特殊目标融入产品开发之中。
螺旋模型在每个阶段之前及经常发生的循环之前,都必须要进行风险评估。

在实践中,螺旋法技术和流程变得更为简单。

迭代方法体系更倾向于按照开发/设计人员的方式工作,而不是项目经理的方式。

在这里插入图片描述

  • 设计上灵活, 可以在项目的各个阶段进行变更
  • 以小的分段来构建大型系统,使成本计算变得简单容易。
  • 客户始终参与每个阶段的开发,保证了项目不偏离正确方向以及项目的可控性。
  • 随着项目推进,客户始终掌握项目的最新信息 , 从而他或她能够和管理层有效地交互。
  • 客户认可这种公司内部的开发方式带来的良好的沟通和高质量的产品。

1.3.6 喷泉模型

喷泉模型主要适用于利用面向对象技术的软件开发项目,可弥补瀑布模型不支持软件重用和多项开发活动集成的不足,可使开发过程具有迭代性和无间隙性。

在这里插入图片描述

  • 开发过程中的各个阶段相互重叠,反映了软件过程并行性的特点
  • 以分析为基础,资源消耗呈塔形,在分析阶段消耗资源最多
  • 强调增量开发,依据分析一点、设计一点的原则,并不要求一个阶段的彻底完成,整个过程一个迭代的逐步提炼的过程
  • 是对象驱动的过程,对象是活动作用的主体,也是项目管理的基本内容
  • 实现中由于活动不同,可分为系统实现和对象实现,这既反映了全系统的开发过程,也反映了对象族的开发和重用过程

1.3.7 并行迭代开发

  • 4
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
硬件介绍: sstm32wb55_nucleo是一款基于STM32WB55微控制器的开发板。STM32WB55微控制器是意法半导体公司推出的一款高性能、低功耗、多通信协议芯片。该开发板具有一个封装在LQFP64封装中的微控制器和一系列外设,包括晶振、电源管理、外部存储器、按钮和LED指示灯等。开发板还提供了多个外部接口,如USB、UART、SPI和I2C等,方便用户与其他外部设备进行通信和连接。 软件介绍: sstm32wb55_nucleo开发板支持多种软件开发工具框架,包括STM32Cube软件开发套件、Keil MDK开发环境和IAR Embedded Workbench开发工具。开发者可以根据自己的喜好和需求选择合适的软件工具进行开发。 STM32Cube软件开发套件是意法半导体公司提供的一套软件包,包含了许多驱动库、中间件和例程,为开发者提供了丰富的开发资源和工具支持。Keil MDK和IAR Embedded Workbench是两种常用的嵌入式开发环境,提供了强大的代码编辑、编译、调试和仿真功能,能够帮助开发者高效地开发、测试和调试应用程序。 sstm32wb55_nucleo的软硬件结合起来,为开发者提供了快速、高效的开发平台。开发者可以通过软件编写代码,利用硬件上的丰富外设进行各种功能的实现和测试。开发板还提供了丰富的示例和文档,帮助开发者入门和快速上手。同时,开发板还支持蓝牙和Wi-Fi等通信协议,为用户提供了更广阔的应用领域和可能性。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

文火冰糖的硅基工坊

你的鼓励是我前进的动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值