软件工程自学:探索开发本质与方法

需积分: 42 14 下载量 146 浏览量 更新于2024-08-16 收藏 3.53MB PPT 举报
"该资源为软件工程自学考试的全程学习版,主要涵盖了软件工程的基础、软件过程、软件需求、开发方法学以及CMM等相关知识。其中特别提到了一些图形表示工具,如对象图、构件图、包图、部署图、组合结构图、USE CASE图、活动图、通讯图、交互概观图和定序图,这些都是软件设计中的重要元素。此外,还强调了软件开发的本质,包括问题域、概念映射和抽象过程,以及结构化方法、面向对象方法等开发手段。" 在深入探讨软件工程的知识点时,我们首先关注软件开发的本质。软件开发不仅仅是编写代码,它涉及将现实世界的问题域转换为计算逻辑,通过抽象和模型化将问题转化为解决方案。这一过程包括数据抽象和过程抽象,分别对应需求分析阶段的模型化概念和处理逻辑。 数据抽象是指将问题空间的概念转化为解空间的模型化概念,如在面向对象方法中,将张山这个人物对象化。过程抽象则关注处理逻辑,比如将计算学生成绩的规则转化为可执行的计算逻辑,这通常使用结构化方法实现。 在软件过程中,涵盖了从需求获取到系统测试等一系列活动,这些活动需要有序组织,并且可以通过不同的软件开发方法学来指导,如结构化方法、面向对象方法、面向数据结构方法和维也纳开发方法等。每种方法学都有其独特的思路和实现途径,为软件开发提供理论支持。 CMM,即软件能力成熟度模型,是确保软件开发过程质量的一种框架,它定义了一系列逐步成熟的开发实践,旨在提高软件产品的质量和开发效率。 软件需求和系统/产品需求规约是软件开发的起点,它们不仅是项目启动的依据,也是后续测试和验证的标准。同时,软件工程还包括了多种图形表示工具,如UML(统一建模语言)中的对象图、构件图等,用于清晰地表达系统的结构和行为,帮助开发者和利益相关者理解系统设计。 软件工程是一门综合性的学科,涉及到从需求分析、设计、编码到测试和维护的全过程。掌握好软件工程的基本知识结构,对于自学考试或者实际的软件开发工作都至关重要。