软件工程基础:王立福教授解析关联类与开发过程

需积分: 32 23 下载量 130 浏览量 更新于2024-08-20 收藏 3.86MB PPT 举报
"关联类-北大王立福教授 软件工程2012研修班课件" 本文将详细解析软件工程中的关联类概念,结合北京大学软件工程国家工程研究中心王立福教授的课程内容,探讨软件开发的本质、过程以及相关的方法学。关联类是一种特殊的模型元素,它融合了关联关系和类的特性,常用于描述实体间的关系和附加属性。 关联类通常在面向对象设计中出现,如例子所示:company、person、Job、salary、employer 和 employee 等是实体类,而关联类如 Job 可以同时代表员工与公司的关联,并具有附加属性如 salary 和 boss,这表明Job类不仅描述了公司与员工的关系,还包含了这些关系的附加信息,如工资和管理关系。 软件工程的基础包括理解软件开发的本质,即通过计算机科学理论、技术和工程管理原则,按照预算和时间表创建满足用户需求的软件产品。软件生存周期过程包括需求分析、设计、实现、集成、部署和维护等阶段,每个阶段都有其特定的任务和目标。 在软件开发过程中,选择合适的方法学至关重要,如结构化方法、面向对象方法、面向数据结构方法和维也纳开发方法等,它们提供了实现开发过程的不同路径。软件工程还需要支持和管理技术,以确保工程活动的有序进行和产品质量。 软件开发的本质在于将问题域的概念和处理逻辑映射到不同的抽象层,包括需求、设计、实现和部署四个阶段,每个阶段都有相应的模型来表示,如概念模型、设计模型、实现模型和部署模型。问题域与计算逻辑之间的“距离”需要通过各种技术来弥合,如操作系统、语言处理系统、中间件、应用框架和领域软件生产线等。 软件工程的目标是保证功能性、可用性和经济性,这需要通过工程原则、技术活动、需求管理、设计选择、实现策略、集成和部署以及持续维护来实现。有效的工程管理是确保软件项目成功的关键,它包括对开发过程的指导和支持,以及对工程活动的监督和控制,以确保软件产品的质量和性能。