【转】做好PM的几个关键事项

优秀PM必备技能
在项目过程中,通过观察,感觉做好PM这个角色需要做好以下几点:

[b]对项目关键点的细节要足够了解 [/b]
虽然PM可以不参与具体的编码工作,但并不等于不需要了解具体的实现细节,特别是一些影响项目成败的关键点。有些PM离技术越来越远,远到一些功能是怎么实现的、用的是什么技术、有哪些地方需要特别注意都不清楚,这会非常影响他的决策力和判断力,特别是在处理突发事件时会手足无措。在现阶段,特别是项目规模不大的情况下,感觉PM兼任架构师比较好。

[b]对项目各个阶段的时间点要足够清晰 [/b]PM头脑得时刻有一个清晰的项目roadmap,并对每个时间点做好准备,比如在项目立项前,预估好工作量和资源分配,与其他团队协调好时间点和容错方案;在需求评审前得组织项目骨干了解需求并做好架构设计,与PD深入探讨,避免业务上走不通;在设计评审前,得评估出所有风险点和合作方,并完成设计文档,与合作方充分探讨合作细节,并达成一致;在提交测试前,关注各个任务的进度,特别是有风险的,并为测试准备好环境;在开发联调前,与各个参与方的接口人联系好,并准备好环境;在发布前,做好发布计划,预估出发布风险点。总之,需要对各个关键时间点有清晰的认识,提前做好准备,控制好风险。

[b]处理好与其他团队的关系 [/b]
一个项目的成功不是只靠自己这个团队就能做到的,需要所有团队的通力合作,因此,非常有必要学会与其他团队处理好关系,而与其他团队沟通的接口人主要就是PM,PM对于团队之间的合作是否顺畅起着决定性的作用。首先需要弄清楚什么是原则性问题,什么是可以退让的,在有分歧的时候,要立即判断出是否可以出做让步。再则,一定得把问题想在前面,提前沟通,只要大家都是为了把项目做好,并在出现分歧前,就把这些可能的分歧点讨论清楚了,就没什么很难处理的关系。最后,学会与任何类型的人打交道,林子大了什么鸟都有,沟通不是为了争个输赢,而是达成一致,这方面的技巧就多了,需要学习和积累。

[b]调动组员的积极性,尽量把事情让他人去做好 [/b]
在以前待过的一个项目里,PM非常敬业,很多事情都是自己去做,结果出现一个很不好的现象,每天晚上,他的项目成员都走光了的时候,就留下他一个孤独的身影,奋力拼搏,结果每次发布的时候问题多多,惊险不断。这说明一个问题,你不是一个人在战队,并且你不应该冲在第一线,PM的成就感不应该是你自己把事情给搞定了,而是在你的策动下,你的组员把事情搞定了,只有这样项目团队才有战斗力,并且其他成员都希望在项目过程中体现价值,你需要学会锻炼和培养其他组员,发挥他们的最大潜力,这也是为什么在发挥同样出色的情况下,纳什比科比更容易获得MVP的原因了。

[b]处理好风险点[/b]
PM可以把不影响项目成败的点扔给你信任的人,但对于那些会导致失败的风险点必须给予足够的重视。我以前带过一个小项目,其他什么都完成很好,事情做得很漂亮,bug也没测出几个,但没有review其中几个比较容易出错的SQL,但QA告诉我没bug的时候我也没去多看两眼,结果它隐含了一个比较深层次的bug,在线上暴露了出来,造成了不小的损失和不良影响。其实,后来总结的时候,发现这个SQL存在明显的疏漏,如果当时认真地review,并审视测试case,是应该能发现问题的。PM必须对各个风险点心里有本帐,项目可以做得不漂亮,但如果在风险点上有任何疏忽,那就是失败。

[b]安排好任务,并清晰了解任务的进度 [/b]
PM需要对自己团队的组员深入的了解,了解他们的能力和兴趣点,把任务交给最合适的人,并保持与他们的深入沟通,了解他们面临的困难,你虽不是直接去完成任务的人,但一定是帮助别人完成任务的人。任务墙是个不错的方式,能让自己和他人清晰看到各个任务的完成情况,便与跟进

[b]保持清晰的思路,储备应对各种突发事件的措施 [/b]
项目里最需要保持思路清晰的人是PM,别人可以乱,但PM一定不能乱,特别是在有突发事情发生时。因此,PM有必要有意识地锻炼自己抗压能力,比如多做项目发布、设计评审和数据订正的工作,并且要有意识地储备一些应急方案,比如代码回滚,紧急发布等等。另外,要清晰地弄清楚团队之间和系统之间的依赖关系,往往这种依赖性是引发事件的根源。

[b]保持平和的心态,多站在他人立场考虑问题 [/b]
项目会进行地风风火火,项目成员之间也会争论得很激烈,往往这种时候,保持一个平和的心态很重要。不平和的心态往往会导致不平和情绪,不平和的情绪就会导致更加混乱的局面。保持平和心态的办法很多,很重要的一条是多站在他人立场考虑问题,一旦为他人体谅后,激烈的情绪会消退不少,并且在这种沟通态度的促发下,分歧方也会不由自主地为你考虑,非常有利于解决问题,达成一致。

[b]加强项目自动化方面的能力 [/b]
项目各个细节如果全都靠人肉去完成,会极大增加控制风险,而减少风险的最大利器就是用成熟的自动化方案去完成一些工作,特别是项目构建、持续集成和发布等工作。PM应该在怎样让日常工作流程化和工具化方面多动一点脑筋,而这方面敏捷开发提供很多很好的思路和方案。

[b]共识和决议要通过邮件发给相关人 [/b]
在项目过程中会产生很多变故,需求和设计文档里定义不了所以问题,为解决变故而形成的临时决议一定要通过邮件发给相关人,不光是知会,更重要的是为决议提供证据,这些临时的决议往往会引发问题,当问题产生追溯责任时需要用到这些证据

[b]注意倾听组员的意见,给他们留出足够的发挥空间 [/b]
特别是在大公司带项目,组员都算是开发的精英,都不是甘于做个机械的coder,因此学会倾听他们的想法,深入了解他们想得到的,尽量满足他们成长需求,就算是由于项目客观原因,没法采纳他们的建议,也得和他们把道理说清楚,不合适用强势方式来决断,毕竟技术人员的需求和管理不同一般

[b]不以个人意愿为基准,凡是以大局为重 [/b]
PM也是人,在平时工作过程中,难免会带有个人情绪,但PM应该清醒地认识到自己身后还有一个团队,大家的情绪和状态与自己息息相关,所以说话做事一定要三思而行,考虑清楚对别人的影响,切勿乱放炮,失去同仁的信任
其他还有很多重要的点,有待在实践中陆续总结
在项目中集成和初始化 **LVGL-PM** 的过程包括几个关键步骤,确保与 LVGL 库正确对接,并为页面管理器的运行提供必要的上下文环境。 ### 集成 LVGL-PM 到项目中 首先,需要将 **LVGL-PM** 的源代码引入项目。通常可以通过 Git 仓库克隆的方式获取源码,并将其集成到项目目录中: ```bash git clone https://github.com/LanFly/lvgl-pm.git ``` 将源码引入后,需确保项目编译系统(如 CMake、Makefile 或 IDE 配置)能够识别并编译 LVGL-PM 的源文件。这一步通常包括添加源文件路径、头文件路径以及链接必要的依赖库(如 LVGL 库本身)[^1]。 ### 初始化 LVGL-PM 在代码中初始化 LVGL-PM 前,必须确保 LVGL 已经完成初始化,包括显示驱动、输入设备(如触摸屏)等。LVGL-PM 依赖于 LVGL 的运行环境,因此它应在 LVGL 初始化完成之后进行初始化。 初始化 LVGL-PM 的典型方式如下: ```c #include "lvgl.h" #include "lvgl_pm.h" void app_main(void) { lv_init(); // 初始化显示驱动和输入设备 // ... // 初始化页面管理器 pm_init(); } ``` 通过调用 `pm_init()` 函数,页面管理器会完成内部结构的初始化,包括页面栈、事件处理机制等,为后续页面的创建与切换做好准备[^1]。 ### 页面注册与生命周期回调 每个页面在使用前需要注册到页面管理器中,并定义其生命周期回调函数,如 `on_create`、`on_show`、`on_hide` 和 `on_destroy`。这些回调函数用于管理页面的创建、显示、隐藏和销毁过程,确保资源的正确分配与释放。 例如,注册一个页面的代码如下: ```c pm_page_desc_t page_home = { .id = PAGE_HOME, .on_create = page_home_on_create, .on_show = page_home_on_show, .on_hide = page_home_on_hide, .on_destroy = page_home_on_destroy, }; // 注册页面 pm_register_page(&page_home); ``` 在 `on_create` 回调中,通常会创建页面的根对象和相关 UI 元素: ```c static void page_home_on_create(pm_page_t *page) { page->root = lv_obj_create(NULL, NULL); // 初始化页面内容 // ... } ``` ### 页面切换与管理 页面切换通过调用 `pm_goto_page()` 函数实现,传入目标页面的 ID 即可: ```c pm_goto_page(PAGE_HOME); ``` 该函数会触发目标页面的创建(若尚未创建)和显示流程,同时隐藏当前页面(若非栈顶页面)。 对于缓存页面,页面管理器会保留其状态;对于非缓存页面,则会在每次切换时重新创建和销毁,因此需确保 `on_destroy` 回调中释放所有资源,防止内存泄漏。 --- ###
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值