当前位置: 首页 > 科技观察

从程序员到项目经理(29):如何写文档

时间:2023-03-20 00:21:23 科技观察

在软件项目中,文档不仅是一项重要的成就,也是项目管理的有力工具。通过文档,可以稳定、清晰地传达信息,实现项目内部的有效沟通。因此,编写文档是项目经理的必备技能。但是,很多项目经理都害怕写文档,似乎这是一件很麻烦、很难的工作。其实,会不会写文档只是一个外在的表现。通过一个人写文档的情况,可以看出他对工作的理解,发现潜在的问题和风险。一个合格的项目经理不仅不会害怕写文档,还会觉得这是一件简单自然的事情,就像一个人吃喝一样,为什么这么难?一、文档编写中的常见问题每个项目都需要编写大量的文档,比如项目实施计划、系统需求说明书、系统概要设计与设计、系统详细设计、测试计划……在很多软件项目中,大部分的书面文件仅供检查或验收。如果你认真对待这些文件,你会发现它们存在着各种各样的问题。如果没有这样的文件,应该记录什么?我认为有两层意思:一是根据合同和招标文件必须提交的文件;另一个是项目本身真正需要的文件。如果只是前者少了,我一般不会责怪项目经理,因为可以事后补上。但如果是第二种情况,那就不仅仅是文档本身的问题了。试想,如果项目实施了一半,没有项目计划,显然不可能谈事实,只谈计划,体现了项目经理对整个项目管理的随意性和盲目性;如果没有设计文档,大部分的编码工作就完成了,那么代码的质量就得打上大大的问号了。如果没有项目需要的文件,要么是项目经理的疏忽,要么就是没有能力写出来,这本身也是一个非常危险的信号。如果项目经理连必要的文件都可以忽略,这意味着他的工作完全没有系统,他怎么能信任他来管理项目呢?如果写不出来,说明项目经理没有想好怎么做,这也是一件很危险的事情。忘事,内容不全打开文档看,总有些想看的东西找不到,或者轻描淡写了关键内容,会让人觉得有点气愤。项目计划没有工作分解,设计文件没有系统的逻辑结构,项目周报没有当前进度,试运行报告没有系统运行的统计数据……这样的状态说明项目经理缺乏经验,对项目没有整体的了解,更抓不住工作的重点。照搬模板真的很无奈,只有表格,内容是空的。乍一看,文档格式规范,内容完整,好像没什么问题,但总觉得少了点什么,看完什么都不记得了,好像没看过一样'不要读它。简单来说,就是没有实质内容,缺乏对问题的具体分析。相同的内容可以用于具有不同名称的其他项目。这样一来,项目经理可能就不服气了:我的文档有几百页,怎么就没有内容呢?好了,我们来清理一下,去除模板自带的内容,去除合同和招标文件中复制的内容,去除从网上复制的内容,去除不相关的内容,再去除不重要的内容,再看它还剩多少页?剩下的才是真正有价值的。如果这部分的内容很少,你的文档越长,就越像懒女人的裹脚布,很烦人。看着这样的文件,让人感觉就像吃了苍蝇一样难受。有人将这种文档称为“模板僵尸”,这既准确又可恶。这种文件只是一种形式,没有灵魂和精神,就像一具只有骨架没有血肉的行尸走肉。编写或接受这种文档的项目经理也很糟糕。他有经验,但没有想法;他知道过程,但不知道改变;他能抓住形式,但不能抓住内在;它几乎是空白的。他们写的文档就像僵尸,项目就像被僵尸附体。他们只能沿着固定的路径向前跳跃。就算他们面前是万丈深渊,他也会直接纵身一跃,因为他根本看不到。到达!2、如何写出一份好的文档我见过很多工作十几年,管理项目五年以上的同事。他们写项目文件的时候还是皱着眉头苦不堪言。写文档真的那么难吗?如何才能写出合格的项目文件?核心点是写你的想法。俗话说:“文字是心声”,写作也是一种“文字”,也反映了作者内心的想法。在写项目文档的时候,最重要的是写出自己的真实想法,展现自己的想法。如果说编写文档有一个技巧,那么这就是最重要的技巧。从哲学的角度来看,这是知行合一的重要组成部分;从文档写作本身来看,只有这样才能写得又好又快。所以如果有人说他不会写文档,我们首先想到的不是技术问题,而是他真的想过吗?它体现了知行合一“知行合一”,即“想”和“做”要一致。知行合一最简单的方法就是想到就去做,从想到直接做。在软件行业个人英雄主义的时代,程序员有好的想法,然后实现,就有可能成就传奇,比如UCDOS、WPS、RichWin、江民杀毒等都是那个时代的产物。直接从想到做,这对于一个人完成的简单任务是可以的,但是对于多人合作完成的复杂任务就不适合了,因为团队作战还有一个关键环节——沟通。交际有口头和书面两种方式,即说和写。想、说、写、做的统一,在项目中充分体现了知行合一。说你所想,写你所想,否则就是言不由衷,口是心非;然后做你说的,做你写的,这就是你所说的,也是你承诺的。想、写、做的统一表明,想什么就写什么,是知行合一的重要体现。只有写出自己的想法,才能写得又好又快。为什么有的人写文档很慢很痛苦?最根本的原因,就是他没有想法,或者是想通了,肚子里什么都没有,就抽不出来。比如你不熟悉Java技术,让你写一个Java系统的设计文档,你自然无从下手。就算有莫言一样的文采和想象力,也没有办法完成。写下你的想法其实就是把你的想法写在纸上,就像从杯子里倒水一样。有想法当然可以写得又快又好。如果没有思路,不要假装不懂,在网上到处复制一些看似相关的内容来填写,因为这样会误导别人。虽然它掩盖了你的无知,但也掩盖了项目隐藏的问题和风险。所以,对于没有想清楚的地方,最好的处理方式就是直接写上“我没想清楚”三个大字,想清楚了再补上。记住:说谎的人是最难的,因为他总是要琢磨怎么编故事,怎么为自己辩解。说真话的人最简单,写文档就是写自己的真话。不要拘泥于形式有人说:“我有一个想法,但我写不出来”。这多半是因为写手卡在文档的形式上,不知道怎么写。遇到这种情况,有一个简单的方法:先说出自己的想法,用手机录下声音,然后对照录音整理文档。也就是说,我们要像说话一样去写文档。说话是自然的事,写文件也是自然的事。如果你不能说清楚,那么众神可能也不能——除非有人知道如何读心。一个文件最重要的是内容和思想,让读者看懂你的思路,而不是思想多么精巧,语言多么优美。如果你总是想着先写什么,再写什么,用什么词,你怎么能这么快呢?不拘形式的另一个意思是不要有太多形式化的内容。有时一个30页的文件,项目背景、建设目标、参考资料等就占了15页,而且每篇都一样。这些东西也不是完全没有用,但是太多了会影响对文档重点的把握,所以可以尽量删减或者简化。另外,不要腾出太多空间。项目文档是用来指导项目实施的,把问题写清楚就够了,写多了也没用。有些人写文档的时候,喜欢问写多少页。事实上,这根本不应该成为问题。如果你把你想说的都解释清楚,你在乎多少页?文档结构应该是合乎逻辑的。第三章提到PMBok项目管理理论遵循结构化思维,即自上而下、逐层分解。这个规则也可以用来指导文档的编写。项目文件的结构也要“结构化”,自上而下、逐层分解,形成金字塔形结构。还记得在学校老师教我们写作文吗?应该按照“总分”或“总分”的结构来写,这实际上是结构化方法的一种体现。结构化方法之所以具有普适性,是因为它符合人们认识事物的规律。想象一下,我们想学习一本书。一般我们会先看书名和作者,再看目录、序言或引言,形成对全书的整体印象。这是“总”过程。然后我们会逐章阅读,一步步消化全书的内容。这是一个“分裂”的过程。部分读者在阅读后,可能还会对全书内容进行总结、复习,进一步加深理解。这是另一个“总”过程。通过这样一个“总分、总分”的过程,我们对事物形成了深刻的认识。所以,一本书按照金字塔结构来组织文档,其实是为了迎合读者,降低他们的理解难度,让他们在更短的时间内对整篇文档的精髓有一个完整、准确的理解。作者写得轻松,读者读得愉快,真是皆大欢喜。结构化方法不仅适用于文档的整体结构,也适用于局部结构,如文档的某一节。只要事物具有一定的复杂性,我们就可以用这种方法来解释得更透彻。采用结构化的方法来记录有测试思维严谨性的额外好处。结构化方法的一个重要任务就是分解事物,而分解的过程其实就是一个深入思考的过程,比如分解的标准是什么,上层结构是否完全包含下层结构,等等,从而发现遗漏的问题,并加以完善。注意布局文档布局是很多人容易忽视的问题。内容高质量的文档,如果排版整齐、赏心悦目,会起到锦上添花的作用,否则会损害文档作者的形象。就好像一个人内心的美固然重要,但如果衣着邋遢,相貌丑陋,就不太可能受到别人的欢迎。排版并不难。只需要少量的工作就可以为文档获得一定的加分。这就是排版的价值。其实排版还是一种对读者尊重的表现。作者多一点努力,就能让读者有更好的阅读心情,更快的阅读速度,真是设身处地为人着想的美德。原文链接: