打印

借此地人气,探讨一下:项目管理

[复制链接]
8959|67
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
原野之狼|  楼主 | 2008-3-26 20:29 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
来自 2楼
dld2| | 2008-3-27 09:35 | 只看该作者

小型软件项目管理(申请裤子)

四到十人的小型软件团队(其实还有硬件团队,但这里只谈软件)

基本角色:项目经理、系统工程师、开发工程师、测试工程师
这些角色,都是逻辑概念。如果人少,可以身兼几职。

下面谈谈过去在项目管理上的正规化发展道路。
首先确定:
    方案要文档化,要有独立的测试环节。

方案文档化,就是由系统工程师把选择方案的理由、不同方案的对比、系统框架、设计思路描述清楚。
以此为依据,谈论确定正式方案。参加谈论时,除了本团队成员,最好能邀请到有相关技术背景的其它高手。
方案文档化之后,一定要把子系统、模块之间的接口文档化。
个人认为接口文档比方案文档还重要。接口定义了各模块之间的相互关系,如果不明确,联调的时候就要出麻烦。
随着项目的进展,方案和接口都会发生变化。这时候要修改维护文档,并让相关人员都能看到。
实际上,方案文档往往和最终的源代码不一致。因为大家都喜欢偷懒。最终只能以源代码为准。
但是我觉得接口文档最好能够准确及时更新。

独立的测试:
独立是指:测试人员是法官,要公正,甚至要能够顶住项目经理的压力。
测试法官的执法依据,应该是项目开始时定义的产品特性。
很遗憾,我们在半土八路阶段往往没有一个成文的产品特性。这个东西要到后面的需求分析环节去说。
那么,测试人员只能根据把自己作为用户和客户的角色体验,来判断产品是否可用。
有意思的是,我们的测试人员经常会直接和用户打交道(就是去用户那里安装调试设备)。我不知道这是不是有意的。
简单地说,测试环节要确定以下问题:
    是否实现了功能
    是否满足性能
    是否好用(使用方便、符合用户习惯)
    稳定性怎么样
测试法官要把发现出的问题一条条列出来,然后说,你们这是什么烂东西,退货。
然后去修改,再测试。
通常,第一次测试会很快被退回来。因为这时候产品往往基本不能用。
原因往往是因为团队已经到了一个极限(参考长跑体验),而进度压力又很大。

其实,老兵油子往往对进度这个东西没啥感觉。
开发有其自身规律。怀胎要十月,早产儿身体弱。
真正的完成时间往往是领导期望的1.5倍到两倍。有经验的领导也清楚这一点。
强制加班也是没用的,只能使团队身心俱疲,更快地达到极限。
中途增加人手也是没用的,除非真的缺人,而增加的这个人又正好合适。
对项目经理来说,要给团队一个适度但不是很大的压力。必要时,要能顶住你的领导。
好的团队是真的有文化的。

测试时的版本管理:
    测试工程师只测试那个项目经理签字画押的版本。不能在测试过程中临时修改。
    因为不能确定这个临时修改对已经测试通过的内容是否有影响。

继续正规化建设:
对开发工程师来说:单元测试。
对系统工程师来说:需求分析。
也许To be continue。

使用特权

评论回复
来自 3楼
dld2| | 2008-3-27 11:03 | 只看该作者

继续正规化建设

继续正规化建设:
对开发工程师来说:单元测试。
对系统工程师来说:需求分析。

在这之前,对开发工程师来说,还有一个编程规范。
编程规范是单兵训练。一方面让新人学会如何正规地做事。另一方面风格一致容易看懂。
网上可以下载到一些大公司的C语言或汇编语言的编程规范。内容很详尽,包含基本设计规则。

单元测试:
单元测试就是开发工程师对自己承担的模块和子系统,在联调前进行自身检查。
包括以下项目:
    实现功能。
    输入和输出符合接口文档。
    稳定性。
单元测试是为了提早发现解决问题,使联调阶段和测试阶段能够顺利进行。
越到后面,问题越难以发现定位和解决。
联调往往是个泥潭。陷进行的原因往往是各种问题交织在一起。
单元测试的一般方法,是模拟输入,然后通过调试手段来跟踪处理结果和输出。
比如你的子系统通过串口与其它设备通信。
那么在联调之前,你可以通过串口调试工具和测试代码,来模拟这种通信。
观察处理结果和输出,可以通过仿真器察看内存,或输出到串口。
我们会发现,正规的代码中,往往会有#ifdef DEBUG这样的东西。
说起来容易,做起来很难。这是跟自己的惰性做斗争。
当然,如果做好了,你会发现联调时别人在绞尽脑汁,而你在晃来晃去。

需求分析:
需求分析是系统设计和方案制订之前的工作。
简单的说:就是根据客户和用户需求,根据市场定位,分析确定我们的产品应该做成什么样子。
客户和用户是两个概念。客户是买你产品的人;用户是真正使用你产品的人。他们对产品的要求往往有所不同。
在正规公司,往往有专门人员去了解、搜集需求,做市场调查等等。但这已经属于经营范畴,不是设计部门的事情。
同样,产品定位也属于经营范畴。高端还是低端,时尚还是经典,价格、功能、亮点。
在这个阶段,技术部门往往要开展对现有产品的解剖工作,了解同类或相关产品的技术方案和功能,分析其优缺点。探讨目标产品的技术可行性。
需求分析首先是得到用户需求。这部分是市场或经营团队的工作。
根据用户需求,可以产生硬件需求、软件需求和结构需求。

软件系统工程师,在需求分析阶段的工作,就是以用户需求、市场定位、技术可行性为输入,确定软件产品应该达到的功能、性能、可靠性等等。
要定义用户的正规操作流程,以及在此流程下,软件所实现的功能。
要定义在用户异常操作时的容错性。以及其它外部输入异常时的容错性。
要详细分析每个功能的显示和操作细节。如有必要,最好建立界面原型(就是最终产品的界面模型),并得到用户的反馈和认可。
确定软件产品的性能指标。比如通道容量、响应时间、数据存储量等等。
吸收测试工程师的意见,使功能性能是可测试的。
应吸收制造部门的意见,看看是否要增加辅助生产调试的特性。

软件需求说明(或者说软件产品特性)是以下阶段的输入和依据:
    软件系统方案
    系统测试方案

使用特权

评论回复
地板
IceAge| | 2008-3-26 20:58 | 只看该作者

这个问题应该在 csdn 上问

mcu 估计还是单打独斗,作坊式开发的多数

使用特权

评论回复
5
dld2| | 2008-3-26 21:02 | 只看该作者

标记

使用特权

评论回复
6
原野之狼|  楼主 | 2008-3-26 22:09 | 只看该作者

难道搞MCU的都不组队开发么?

使用特权

评论回复
7
IceAge| | 2008-3-26 22:57 | 只看该作者

mcu 还需要组队开发么 ?

最多加一个人负责电路。

使用特权

评论回复
8
原野之狼|  楼主 | 2008-3-26 23:06 | 只看该作者

编程本身一个人搞定,但是整个项目还是得组队吧...

要不然一个人全干了都~~~

使用特权

评论回复
9
涛行九天| | 2008-3-26 23:27 | 只看该作者

项目管理


作为一个项目经理,最重要的就是组建团队,人不在多,但在精,在好用。
其次就是方案确定,所谓磨刀不误砍柴工,这个其实是难度最大的工作。
第三就是制定计划,不是随便写写,是要实际可行,能考虑到各工种的配合和冗余。
第四就是过程实现,这里面注意的就是进度控制。
第五就是联合调试,这是在模块调试、模块测试基础之上进行,否则就乱了。
第六就是功能测试,通过大量的测试找出bug。
第七就是实验认证,或许需要方案修改,如果早期方案不好就会发现问题了。

先简单写写,如果大家感兴趣,有空了写多点。

使用特权

评论回复
10
原野之狼|  楼主 | 2008-3-26 23:41 | 只看该作者

回复:涛行九天

字字珠玑啊~~~

希望能讲一下实现这些思想的手段以及方法等等...

谢谢!

使用特权

评论回复
11
涛行九天| | 2008-3-27 00:50 | 只看该作者

要写可能要写一大篇才能说清楚

使用特权

评论回复
12
涛行九天| | 2008-3-27 01:13 | 只看该作者

如果感兴趣的人多,我们可以考虑

搞一个项目管理交流会

使用特权

评论回复
13
HWM| | 2008-3-27 08:23 | 只看该作者

项目管理,不管大小都是需要的。

大有大的管法,小有小的管法。

从一个人的项目(单一MCU或单层次)的自我管理到多人组团项目(多MCU或多层次)的团队管理,贯穿在一个产品的整个生命期内。

如果再加上市场,财务(资金),人力等等通盘考虑,管理面就更大了。说实在的企业管理(特别是技术型企业)无非也就这些。

使用特权

评论回复
14
yewuyi| | 2008-3-27 08:35 | 只看该作者

我~~

分几个部分:软件/硬件/结构/测试/文档/标准审查/焊接和工艺检查


软件自己写,我出原理图,有人布线,但由我审查定稿

使用特权

评论回复
15
涛行九天| | 2008-3-27 09:34 | 只看该作者

HWM老兄说得很对

项目经理做好了,很容易就过渡到企业管理了。
项目经理不能单纯站在技术人员的角度看问题,而是要站在公司的角度考虑问题。

使用特权

评论回复
16
keer_zu| | 2008-3-27 09:50 | 只看该作者

我们就是吃尽了管理混乱之苦

 涛行九天 发表于 2008-3-27 01:13 侃单片机 ←返回版面    

10楼: 如果感兴趣的人多,我们可以考虑 

搞一个项目管理交流会 










支持!
 

使用特权

评论回复
17
原野之狼|  楼主 | 2008-3-27 10:31 | 只看该作者

此贴估计能火~~~

管理混乱,让我们吃尽了苦头。。。
低效率的折腾,让我们身心俱疲!
这是大部分电子工程师的心头之痛啊!

单干没有出路,一定要有团队。

谢谢楼上几位大虾的发言~~~

使用特权

评论回复
18
dld2| | 2008-3-27 11:05 | 只看该作者

以上全部今早原创

使用特权

评论回复
19
涛行九天| | 2008-3-27 11:21 | 只看该作者

dld2写得不错

支持一下!

使用特权

评论回复
20
原野之狼|  楼主 | 2008-3-27 11:30 | 只看该作者

建议发条裤子给dld2~~~

写得不错!

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

187

主题

8545

帖子

280

粉丝