思维导图
各人员在软件开发的作用
- 用户:提出需求、验收、使用、要求修改
- 项目负责人:分析需求、分配任务、验收模块、联调、交付使用、验收修改成果、分析修改需求
- 程序员:编写软件、模块调试、交付检验
- 硬件:试运行、运行
结构化程序设计的方法
- 模块划分应当符合的基本要求
(1)模块功能在逻辑上尽可能单一化、明确化、最好做到一一对应
(2)模块之间的联系及相互影响尽可能小,必需联系加以明确说明
(3)模块的规模应当足够小,以便使模块调试易于进行 - 原则
(1)限制甚至不用GOTO语句,绝对禁止超越模块边界的GOTO语句
(2)子程序尽可能做到一个入口一个出口
(3)程序风格应尽量明确、清晰,包括适当增加注释、书写格式体现层次结构、变量名称的选用尽量具有逻辑意义等
(4)程序与文档尽量同时完成,不拖延时间
软件工程方法
- 需求分析
- 分析与设计阶段——逻辑设计
- 编程阶段
- 测试阶段
- 使用及维护阶段
面向对象的程序设计方法
- 客观世界的任何事物都是对象,每个对象都有一些静态属性和相关操作
- 对象之间有抽象与具象、群体与个体、整体与部分等几种关系
- 子类可以继承父类
- 对象之间可以互送消息
举个栗子,藏獒、斑点狗(子类)都属于犬类(父类),它们都具有犬类动物所共有的一些特征,一只叫“小花”的斑点狗(对象)从外貌上看体积较小,带斑点(静态属性),从行为上看,可以狗叫,摇尾巴等(“相关操作”/方法)
方法是驻留在对象里的过程
即插即用的程序设计方法
- 一部分人生产软件组件、一部分人构造整个软件的结构
举个不恰当的例子:可拆卸电池
面向开源软件的程序设计方法
- 利用开源软件进行程序设计