面向对象软件工程是一种现代的软件开发方法,它强调将现实世界的问题映射为软件系统中的对象,从而提高软件的可重用性、可维护性和可扩展性。在本章中,我们将探讨传统软件工程的困境以及如何通过面向对象的方法和相应的软件工具来解决这些问题。 传统软件工程面临的困境主要体现在三个方面: 1. 分析阶段:开发者往往缺乏对业务的深入理解,导致用户需求的理解不准确。早期脱离用户可能导致功能模型和信息模型之间的关联松散,这对面向对象编程来说是个挑战。 2. 设计阶段:软件开发技术的发展滞后于软件系统的复杂性。大型软件系统的设计和管理变得越来越困难。 3. 测试和运行阶段:不规范的文档导致测试成本高昂,软件难以适应新的环境和需求。此外,软件管理不足,文档更新不及时,使得问题定位和修复变得更加困难。 为了解决这些困境,出现了各种面向对象的软件工具。例如,Panorama是一款强大的面向对象的质量管理工具,它包括以下特点: - 业务系统规划工具:通过模型化企业的策略性信息需求,生成“元模型”,帮助业务信息跨部门流动,减少系统级重新测试的成本。 - 面向对象测试(OOT):提供多层次的系统理解,从顶层到子系统级,允许动态导航以理解系统的详细结构。这有助于快速查看测试结果,定位问题,降低系统级软件重新测试的时间和成本。 - 探索全局和静态变量的行为:帮助找出潜在问题,减少数据修改所需的再工程努力。 此外,软件开发工具通常分为以下几类: - 业务系统规划工具:用于构建企业信息系统模型,使业务信息在整个企业中得到应用。 - 项目管理工具:协助项目经理进行工作量、成本和时间估计,定义功能分解结构,制定项目计划,跟踪需求,收集度量数据以评估效率和质量。 - 支持工具:包括文档编辑工具、软件工程工具、质量管理工具、数据库管理工具和软件配置管理工具等,以支持整个软件开发过程。 - 分析和设计工具:用于创建待开发系统的模型,评估模型质量,通过一致性检查和有效性检查确保分析和设计的完整性。这些工具可以支持多种开发方法,并包含基于规则体系的分析和设计机制。 - 编程工具:涵盖大多数编程语言的开发环境,支持代码编写、调试和优化,以提高开发效率。 面对传统软件工程的困境,通过引入面向对象的思维方式和相应的软件工具,我们可以更有效地管理和开发软件项目,提高软件质量,并确保其能够灵活适应变化的需求。
剩余37页未读,继续阅读
- 粉丝: 2733
- 资源: 8万+
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助