软工视频总结(一)

来源:互联网 发布:java template模板 编辑:程序博客网 时间:2024/06/05 15:55

1、软件是计算机系统中与硬件相互依存的另一部分,它是包括程序,数据及其他相关文档的完整集合

         程序是按事先设计的功能和性能要求执行的指令序列

         数据是使程序能正常操纵信息的数据结构

         文档是与程序开发,维护和使用有关的图文材料

2、软件的特点:

           

3、软件的分类:

             

 

4、发展阶段:

   程序设计阶段(50-60年代)

   程序系统阶段(60-70年代)

   软件工程阶段(70年代以后)

5、可行性研究:经济可行性,技术可行性,操作可行性,法律可行性,时间可行性

6、用于写加工逻辑说明的工具:结构化英语,判定表,判定树

7、软件原型:

         类型:探索型,实验型,进化型

         使用策略:废弃策略,追加策略

8、软件开发模型基于原型生存期(分析,设计,编码,测试,运行维护)

9、常用动态分析方法:状态迁移图,时序图,Petri网

10、数据域的三种属性:数据流,数据内容,数据结构

11、结构化分析方法:使用数据流图和数据字典描述

           数据字典的内容:数据流,数据项,数据结构,数据储存,处理逻辑,外部实体

12、软件设计任务:

              总体设计(概要设计):系统结构设计

              详细设计(过程设计):数据设计,过程设计

13、软件设计过程:

                 制定规范

                 软件系统结构的总体设计

                 处理方式设计

                 数据结构设计

                 可靠性设计

                 编写概要设计阶段的文档

                 概要设计评审

14、软件设计基础:自顶向下,逐步细化;软件结构;程序结构;结构图;模块化

15、独立性指标:耦合(相反),内聚(对应)

                            (耦合越低,模块独立性越强;内聚越高,模块独立性越强)(高内聚低耦合)

                              (1) 耦合:非直接耦合,数据耦合,标记耦合,控制耦合,外部耦合,公共耦合,内部耦合

                                   结论:尽量使用数据耦合,少用控制耦合,限制公共耦合,完全不用内部耦合

                              (2)内聚:功能内聚,信息内聚,通信内聚,过程内聚,时间内聚,逻辑内聚,巧合内聚


16、结构化设计方法

           系统结构图中的模块:传入模块,传出模块,变换模块,协调模块

           变换型,事务型

          变换分析过程:

                         重画数据流图

                         区分有效输入、有效输出和中心变换部分

                         进行一级分解,设计上层模块

                         进行二级分解,设计输入、输出和中心变换部分的中、下层模块

          事务分析过程:

                        识别事务源

                        规定适当的事务型结构

                        识别各种事务和他们定义的操作

                        注意利用公用模块

                        对每一事务,或对联系密切的一组事务,建立一个事务处理模块

                        对事务处理模块规定它们全部的下层操作模块

                        对操作模块规定它们的全部细节模块

17、软件模块结构的改进:

                     (1)模块功能的完善化

                     (2)消除重复功能,改善软件结构

                     (3)模块的作用范围应在控制范围之内

                     (4)尽可能减少高扇出结构,随着深度增大扇入

                     (5)避免或减少使用病态联接

                     (6)模块的大小要适中

                     (7)设计功能可预测的模块,但要避免过分受限制的模块

                     (8)软件包应满足设计约束和可移植性

18、程序流程图的基本控制结构:

       

原创粉丝点击