预览加载中,请您耐心等待几秒...
1/9
2/9
3/9
4/9
5/9
6/9
7/9
8/9
9/9

在线预览结束,喜欢就下载吧,查找使用更方便

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

软件工程读书笔记 【篇一:软件工程读书笔记】 1.软件危机 在计算机软件的开发和维护过程中所遇到的一系列严重问题。 2.软件危机的表现 –软件成本日益增长 –开发进度难以控制 –软件质量差 –软件维护困难 –软件开发速度跟不上计算机发展速度 3.软件危机的原因 –技术原因 ?软件规模越来越大 ?软件复杂度越来越高 –管理原因 ?软件开发缺乏正确的理论指导,过分依靠个人技巧和创造性 ?对用户需求没有完整准确的认识,就匆忙着手编写程序 4.软件工程 1)将系统化、规范化、可量化的工程原则和方法,应用于软件的开 发、运行和维护。 2)对1)中方法的理论研究。 5.生命周期 软件生命周期由软件定义、软件开发和运行维护三个时期组成,每 个时期又可进一步划分成若干个阶段,每个阶段有各自的任务。 ? ? ? ? ? ?问题定义可行性分析需求分析概要设计详细设计编码和单元测 试 ?综合测试 ?维护 6.软件过程 生命周期模型规定了把生命周期划分成哪些阶段及各个阶段的执行 顺序,因此,也称为过程模型。 7.瀑布模型: ?阶段间具有顺序性和依赖性 ? ?推迟实现的观点质量保证的观点,文档驱动 优点:文档驱动的规范坏,每个阶段的仔细验证。 缺点:通过文档与客户沟通,最终产品可能不能真正满足客户需求。 8.快速原型模型: ?快速建立起可以运行的程序,其功能往往是最终产品功能的子集。 特点:通过原型系统获取客户要求,一旦需求确定,原型将被抛弃。 9.增量模型: ?把软件产品作为一系列增量构件来设计、编码、集成和测试。 优点:能在最早的时间把最新的功能提交给客户;减少客户对全新 软件的冲击。 缺点:开发困难,设计阶段必需有一个好的体系结构 10.螺旋模型: ?在每个阶段之前都增加了风险分析过程的快速原型模型。 优点:对可选方案和约束条件的强调有利于已有软件的重用;减少 了过多测试或测试不足带来的风险;维护只是一个周期;风险驱动。 11.瀑布模型: 面向对象 迭代无缝 可行性分析 1.可行性分析任务 ?技术可行性 ?经济可行性 ?操作可行性 ?法律可行性 2.可行性分析过程 ? ? ? ? ? ? ? 3.复查系统规模和目标研究目前正在使用的系统导出新系统的高层 逻辑模型进一步定义问题导出和评价供选择的解法推荐行动方针 草拟开发计划?书写文档提交审查系统流程图 –概括描绘物理系统的传统工具 –用图形符号,以黑盒子形式描述组成系统的每个部件 –程序、文档、数据库、人工过程 3.数据流图(dfd) 描绘信息流和数据从输入移动到输出的过程中所经受的变换。 一图 二图 三图 4.数据字典 ?关于数据的信息的集合,即对dfd图中包含的元素的定义的集合。 ?数据字典的用途是供人查阅不了解的条目的解释。 提供分析设计过程中关于数据的 描述。 需求分析 5.er模型 er图中包含实体(即数据对象)、关系和属性三种基本成分。 6.状态转换图 通过描绘系统的状态及引起系统状态转换的事件,来表示系统的行 为。 7.ipo图: 总体设计 8.耦合和内聚:松散耦合高内聚 耦合衡量不同模块彼此间互相依赖(连接)紧密程度; 内聚衡量一个模块内部各个元素彼此结合的紧密程度。 9.层次图(h图) 在层次图中一个矩形框代表一个模块,框间的连线表示调用关系(位 于上方的矩形框所代表的模块调用位于下方的矩形框所代表的模块 ) 【篇二:软件工程课程学习读书笔记】 软件工程课程学习读书笔记 学院:软件工程学院专业:软件工程姓名:xxx 0前言 应自己以后发展需要,自己报考xxx大学软件工程学院的软件工程 硕士专业,希望接触并深入学习软件工程方面的知识。以下是我本 次课程对专业知识学习的笔记,其中部分是自己课后通过其他方式 学习的读书笔记。 1软件工程的介绍 1.1软件工程的介绍软件工程是指导计算机软件开发和维护的一门 工程学科。采用工程的概念、原理、技术和方法来开发与维护软件, 把经过时间考验而证明正确的管理技术和当前能够得到的最好的技 术方法结合起来,以经济地开发出高质量的软件并有效地维护它, 这就是软件工程。 早起在1968年,人们就提出了个早期的定义“软件工程就是为了经 济地获得可靠的且能在实际机器上有效地运行的软件,而建立和使 用完善的工程原理。”,后期1993年ieee组织又对其加以完善“软 件工程是:①把系统的、规范的、可度量的途径应用于软件开发、 运行和维护过程,也就是把工程应用于软件;②研究①中提到的途 径。 1.2软件发展软件的发展经历了以下几个阶段: 早期:1950-60:面向批处理、有限的分布、自定义软件第二时期: 1960-70:多用户、实时、数据库、软件产品 第三时期:1970-80:分布式系统、嵌入“智能”、低成本硬件、消费 者