软件再工程:历史、挑战与重用的重要性

需积分: 15 5 下载量 60 浏览量 更新于2024-07-31 收藏 247KB DOC 举报
软件再工程是一种针对现有软件系统进行深入分析和重构的过程,旨在提高系统的可重用性、可维护性和效率。它的起源可以追溯到1988年,随着“千年虫”问题的暴露,全球范围内开始了大规模的软件修复工作,这也推动了软件再工程的关注和实践。软件再工程的核心目标是通过重用和改进既存系统中的非可重用组件,减少重复劳动,降低开发成本,同时确保系统的兼容性和稳定性。 在软件工程理论的发展中,重用被视为一个重要的里程碑,标志着软件工程进入了再工程时代。最初的再工程活动,如“Y2K”改造,主要是由于技术危机驱动的应急响应,但它们揭示了软件系统的长期维护和升级需求。随着硬件的快速发展,软件生产率的增长速度相比之下显得缓慢,导致新开发与维护任务的比例发生了显著变化,维护活动占据了主导地位。 据统计,发达国家的软件维护开发在90年代末期已经占据了软件开发总量的80%以上,这表明软件系统的持久性和历史积淀的重要性。尽管只有20%的软件受到了“千年虫”影响,但这些遗留系统在关键领域的应用依然广泛,如金融、军事等。此外,硬件和操作系统的快速迭代迫使软件必须具备更高的环境适应性,这也促使了软件再工程的需求。 因此,软件再工程不仅仅是关于代码的简单重写,它涉及系统架构的优化、技术债务的管理、模块化设计的提升,以及确保软件在不断变化的技术环境中保持竞争力。通过再工程,企业能够提高软件的复用价值,降低开发成本,同时提高软件的质量和生命周期内的整体价值。在未来,随着技术进步和业务需求的演变,软件再工程将继续扮演着关键角色,助力软件行业的持续创新和发展。