软件工程要点:概念、方法与质量控制

0 下载量 158 浏览量 更新于2024-08-03 收藏 67KB DOC 举报
软件工程是一门综合性的学科,主要关注计算机软件的高效开发、管理和维护。在复习过程中,以下知识点是关键: 1. 软件与软件工程基础: - 软件定义:它是计算机系统中不可或缺的部分,包括程序、数据以及相关的文档,程序仅是其中的一部分。 - 结构化编程与面向对象编程:在早期,结构化编程强调函数和子程序,而现代软件开发更倾向于使用类作为基本构建块,如面向对象编程。 - 软件特性:软件具有形态特性(如软件架构)、智能特性(如人工智能)、开发特性(如敏捷开发)、质量特性(如功能性、可维护性),以及环境、维护、废弃和应用等方面的特性。 2. 软件分类: - 系统软件:如操作系统、编译器等,为其他软件提供基础支持。 - 应用软件:直接服务于用户的特定功能,如办公软件、游戏等。 - 支撑软件:帮助软件开发的工具,如版本控制系统、测试工具。 - 可复用软件:旨在解决普遍问题的模块,可以被多个项目重复利用。 3. 软件工程定义: - 定义了软件开发的一套工程化方法论,结合管理技术和先进技术,以经济高效的方式创建高质量软件并保持其有效性。 - 软件质量评价:以功能性、可靠性、易用性、效率、可维护性和可移植性等六方面衡量软件的优劣。 4. 软件生命周期: - 包括软件定义(需求分析)、软件开发(如概要设计、详细设计、编码、测试)和运行维护三个阶段。 - 开发过程中的文档如项目计划、测试计划、设计说明书和用户手册是关键输出。 5. 需求分析: - 任务是理解和确定系统的具体需求,形成分析模型,撰写软件需求规格说明,编写测试计划和初步用户手册,并接受管理机构审查。 6. 软件工程方法与工具: - 面向对象方法的核心是模拟人类思维,通过类、继承、消息通信等方式组织代码。 - 形式化方法强调数学化表示,将需求转化为精确的数学形式。 - UML(统一建模语言)是可视化工具,支持对象导向设计,与编程语言独立,易于理解和使用。 软件工程涵盖了软件的定义、分类、开发过程、生命周期管理、需求分析和先进的工程方法论,这些知识点对于理解和准备软件工程师考试或实际工作都至关重要。复习时,不仅需要理解理论概念,还要掌握相关的工具和技术应用。