zoukankan      html  css  js  c++  java
  • 软件项目管理的*人月神话(中)

    第6章贯彻执行
    6.1 即使是大型的设计团队,设计结果也必须由一个或两个人来完成,以确保这些决定是一致的。
    6.2 必须明确定义体系结构中与先前定义不同的地方,重新定义的详细程度应该与原先的说明一致。
    6.3 出于精确性的考虑,我们需要形式化的设计定义,同样,我们需要记叙性定义来加深理解。
    6.4 必须采用形式化定义和记叙性定义中的一种作为标准,另一种作为辅助措施;它们都可以作为表达的标准。
    6.5 设计实现,包括模拟仿真,可以充当一种形式化定义的方法;这种方法有一些严重的缺点。
    6.6 直接整合是一种强制推行软件的结构性标准的方法。[硬件上也是如此——考虑内建在ROM中的Mac WIMP接口。]
    6.7 “如果起初至少有两种以上的实现,那么(体系结构)定义会更加整洁,会更加规范。”
    6.8 允许体系结构师对实现人员的询问做出电话应答解释是非常重要的,并且必须进行日志记录和整理发布。[电子邮件是一种可选的介质。]
    6.9 “项目经理最好的朋友就是他每天要面对的敌人——独立的产品测试机构/小组。”


    第7章为什么巴比伦塔会失败?
    7.1 巴比伦塔项目的失败是因为缺乏交流,以及交流的结果——组织。
    交流
    7.2 “因为左手不知道右手在做什么,从而进度灾难、功能的不合理和系统缺陷纷纷出现。”由于对其他人的各种假设,团队成员之间的理解开始出现偏差。
    7.3 团队应该以尽可能多的方式进行相互之间的交流:非正式、常规项目会议,会上进行简要的技术陈述、共享的正式项目工作手册。[以及电子邮件。]
    项目工作手册
    7.4 项目工作手册“不是独立的一篇文档,它是对项目必须产生的一系列文档进行组织的一种结构。”
    7.5 “项目所有的文档都必须是该(工作手册)结构的一部分。”
    7.6 需要尽早和仔细地设计工作手册结构。
    7.7 事先制订了良好结构的工作手册“可以将后来书写的文字放置在合适的章节中”,并且可以提高产品手册的质量。
    7.8 “每一个团队成员应该了解所有的材料(工作手册)。”[我想说的是,每个团队成员应该能够看到所有材料,网页即可满足要求。]
    7.9 实时更新是至关重要的。
    7.10 工作手册的使用者应该将注意力集中在上次阅读后的变更,以及关于这些变更重要性的评述。

    7.11 OS/360项目工作手册开始采用的是纸介质,后来换成了微缩胶片。
    7.12 今天[即使在1975年],共享的电子手册是能更好达到所有这些目标、更加低廉、更加简单的机制。
    7.13 仍然需要用变更条和修订日期[或具备同等功能的方法]来标记文字;仍然需要后进先出(LIFO)的电子化变更小结。
    7.14 Parnas强烈地认为使每个人看到每件事的目标是完全错误的;各个部分应该被封装,从而没有人需要或者允许看到其他部分的内部结构,只需要了解接口。
    7.15 Parnas的建议的确是灾难的处方。[Parnas让我认可了该观点,使我彻底地改变了想法。]
    组织架构
    7.16 团队组织的目标是为了减少必要的交流和协作量。
    7.17 为了减少交流,组织结构包括了人力划分(division of labor)和限定职责范围(specialization of function)。
    7.18 传统的树状组织结构反映了权力的结构原理——不允许双重领导。
    7.19 组织中的交流是网状,而不是树状结构,因而所有的特殊组织机制(往往体现成组织结构图中的虚线部分)都是为了进行调整,以克服树状组织结构中交流缺乏的困难。
    7.20 每个子项目具有两个领导角色——产品负责人、技术主管或结构师。这两个角色的职能有着很大的区别,需要不同的技能。
    7.21 两种角色中的任意组合可以是非常有效的:

  • 相关阅读:
    7、猜年龄
    6、continue语句
    5、break语句
    4、while循环练习
    poj 2378
    poj 2342
    poj 2287
    poj 2228
    poj 1191
    srm 578 dv2 1000pt
  • 原文地址:https://www.cnblogs.com/hainange/p/6153108.html
Copyright © 2011-2022 走看看