林锐《软件工程思想》笔记[转]

Posted on 2006-07-27 15:12 无为 阅读(308) 评论(0)  编辑  收藏 所属分类: 顿悟

质量第一,生产率第二。
        高质量对所有用户都有价值,而生产率只对开发方有意义。

软件工程的三个基本策略
        复用:提高质量与生产率;
        分而治之:把一个复杂的问题分解为若干个简单的问题,然后解决;
        优化——折衷

所有的错误都是严重的,不存在微不足道的错误。

管理者不能老惦记着自己是一个官,而应时刻意识到自己是责任的主要承担者。

程序员的秉性
        诚实、简单(实用主义)、爱憎分明、工作单调但不乏味

好的程序经理应具备的条件:
        技术水平是程序员队伍中的最高级别;
        能做最多且最难的工作;
        有人格魅力;(以身作则,公正待人)
        (ps:个人认为沟通的能力才是最重要的)

程序员升为经理后一定要编程;软件公司的经理是既要精通技术,又要懂得管理,但很多技术人员是在工作中领悟如何管理的。

项目计划:
        知己知彼:项目可用的资源有人、可复用的软构件、软硬件环境。
        进度安排:项目计划应是动态的,随着客户需求等变化而变化。
        进度表要经过开发小组讨论并通过,这样才能实施;
        进度表中必需确立若干里程碑;
        进度表中对时间的安排必需有一定的缓冲时间;(这点是以后需要注意的)

质量管理——提倡“零缺陷质量管理”;两大核心为:
        高目标:只有确立高目标,才有可能达到较高的质量水平。
        可执行的规范:好的规范必需是企业有能力执行的;无规范则导致无序和混沌;太严密的规范则容易扼杀程序员生机勃勃的创造力。

软件的质量因素——简化为以下几种:
        正确性与精确性(首要考虑的,可扩充到容错性与可靠性)
        性能与效率
        易用性
        可理解性与简洁性
        可复用性与可扩充性

质量检查:质量检查应该在每个实践环节都要执行,对应于进度表,在每个里程碑到达时执行质量检查比较合理。检查的内容包括:作出评审及作出建议。

可行性分析的要素:
        经济:成本收益分析;短期长期收益分析。
        技术:能否在指定的时间内完成;能否达到预期的质量标准;能否达到预期的生产效率。
        社会环境:产品所处的市场分析;产品及市场受政策影响。

人(团队)
需求分析的困难在于:客户说不清;需求本身经常变动;分析人员或客户理解有误。
需求分析的核心问题:
        应该了解什么:由主到次,由宏观到微观。
        通过什么方式:与客户交流;向行家请教;分析同行业优秀及失败的软件;


只有注册用户登录后才能发表评论。


网站导航:
 

posts - 10, comments - 0, trackbacks - 0, articles - 3

Copyright © 无为