zoukankan      html  css  js  c++  java
  • 代码大全2阅读笔记1

    第3章 三思而后行:前期准备 Measure Twice, Cut Once: Upstream Prerequisites

    瞄两次,切一次 Measure Twice, Cut Once

    在构建活动开始之前,准备工作要做周全。

    3.1 前期准备的重要性 Importance of Prerequisites

    高质量的实践方法在项目的初期(计划和要求)、中期(实践)、末期(系统测试)都强调质量。

    • 前期准备适用于现代软件项目吗:准备工作的中心目的就是降低风险
    • 准备不周全的诱因:
      • 人员不具备专业技能
      • 不能抵抗“尽快开始编码”的欲望
    • 关于开始构建之前要做前期准备的绝对有力且简明的论据:
      • 诉诸逻辑 Appeal to Logic:准备工作很重要
      • 诉诸类比 Appeal to Analogy:针对将要构造的每一片段,先弄清哪些是最关键的需求和架构要素
      • 诉诸数据 Appeal to Data:发现错误的时间要尽可能接近引入该错误的时间

    3.2 辨明你所从事的软件的类型 Determine the Kind of Software You're Working On

    三种最常见的软件项目种类:

    1. 商业系统->高度迭代
    2. 使命攸关的系统
    3. 性命攸关的嵌入式系统->序列式

    迭代开发法对前期准备的影响:迭代开发在项目进行过程中一点点吸收消化返工,使总体成本较低。

    在序列式开发法和迭代式开发法之间做出选择:前者稳,后者走着瞧。

    3.3 问题定义的先决条件 Problem-Definition Prerequisite

    问题定义在需求分析之前,应该用客户的语言来写,从客户的角度来描述问题。

    “在射击之前,确信你瞄准了正确的目标”。

  • 相关阅读:
    spider
    python 2.X
    django 创建项目
    NameError: name 'pip' is not defined
    异常捕获
    @property
    node-Telnet
    ES6-模块化
    高级排序算法之双路快速排序
    高级排序算法之快速排序
  • 原文地址:https://www.cnblogs.com/Lhxxx/p/14941078.html
Copyright © 2011-2022 走看看