目标
用最少的人力成本满足构建和维护该系统的需求
衡量指标
- 版本迭代——工程师团队规模
- 版本迭代——代码总行数
- 版本迭代——代码变更行数
软件系统的价值
行为价值
按需求文档编写代码
-
可用性
- 功能性bug
- 性能
- 稳定性
紧急,但是并不总是重要,在紧急重要矩阵中占据A、C位置
架构价值
- Soft: 当需求变更时,所需的软件变更必须简单方便
- 变更实施的难度应该和变更的范畴(scope)成等比,而与变更的具体形状(shape)无关
- 不紧急,占据B、D,D的工作就是过度设计,过度设计会提升开发和维护成本
编程范式
目的:设置限制,告诉我们不可以做什么
现有范式
-
结构化编程
- 目的:对控制权的直接转移进行了限制和规范
- 内容:可以用顺序接口、分支结构、循环结构这三种结构构造出任何结构。限制goto的使用
- 意义:用代码把一些已证明的结构串联起来,就可以推导出整个程序的正确性