软件工程导论 ---------------- 信计 13-1 韩慧珊第一章 软件工程学概述1、软件危机软件危机:是指在计算机软件的开发和维护过程中所碰到的一系列严重问题。软件危机包含下述两个方面的问题:1.如何开发软件,以满足对软件日益增长的需求。 2.如何维护数量不断膨胀的已有软件。2、软件工程及软件工程的特性1.软件工程关注于大型程序的构造。2.软件工程的中心课题是控制复杂性。3.软件常常变化。4.开发软件的效率非常重要。5.和谐地合作是开发软件的关键。6.软件必须有效地支持它的用户。7.在软件工程领域中通常由具有一种文化背景的人替具有另一种文化背景的人发明产品。 3、软件工程的基本原理1.用分阶段的生命周期计划严格管理。2.坚持进行阶段评审。3.实行严格的产品控制 4.采纳现代程序设计技术。5.结构应能清楚的审查。6.开发小组的人员应当少而精。7.认可不断改善软件工程实践的必要性。 4、软件工程方法学 包含 3 个要素:方法、工具和过程。使用最广泛的分别是传统方法学和面对对象方法学。5、软件生存周期3 个时期:软件定义、软件开发和运营维护。软件定义:问题定义、可行性讨论和需求分析。开发时期:总体设计,具体设计,编码和单元测试,综合测试。前两个阶段称为系统设计,后 两个称为系统实现。维护时期的重要任务是使软件持久的满足用户的需求。6、瀑布模型模型严格根据软件生存周期各个阶段来进行开发,上一阶段的输出即是下一阶段的输入,并强调每一阶段的严格性。它规定了各阶段的任务和应提交的成果及文档,每一阶段的任务完毕后,都必须对其阶段性产品(重要是文档)进行评审,通过后才能开始下一阶段的工作。因此,它是一种以文档作为驱动的模型。 瀑布模型特点:1.阶段间具有顺序性和依赖性。 2.推迟实现的观点。3.质量保证的观点。(以下看一下) 快速原型:是快速建立起来的可以在计算机上运营的程序,它所能完毕的功能往往是最终产品能完毕功能的一个子集。 增量模型:它分批地逐步向用户提交产品,整个软件产品被分解成许多个增量构件,开发人员一个构件一个构件地向用户提交产品。 螺旋模型:基本思想是使用原型及其他方法来尽量减少风险。理解这种模型的一个简朴方法,是把它看作在每个阶段之前都增长了风险分析过程的快速原型模型。(使用于内部开发的大规模软件项目) 喷泉模型:是典型的面对对象的软件过程模型之一。第二章 可行性讨论1、可行性讨论的任务 重要任务; 可行性讨论的 3 个...