Summary: | 碩士 === 逢甲大學 === 資訊工程所 === 92 === Most software systems of business that have been running for a long time were almost designed with traditional structural programming. All the components inside these old software systems are tightly-coupled. And the functions and the data are inseparable as well. Therefore, the cost of maintaining such a traditional software system is much higher than developing a new one. From the viewpoint of software reengineering, understanding the original requirements of the old system and figuring out its specification are very important in software maintenance and development. A well-designed software architecture makes software maintenance much more easier and provides more flexibility as well.
In this paper, we take “Taichung Harbor Bureau—New Harbor Management System“ as a case to achieve software reengineering. This system is an application that manages the ships’ coming in and going out in the harbor. The workload of Taichung Harbor Bureau is heavier and heavier these years in addition to many new services. The Harbor management system based on DOS can’t afford anymore services. Besides, with these distributed and independent systems, resources can’t be integrated to provide more services. In order to provide more internet services, they need a whole new system with expansibility, extendibility and maintainability.
During the reengineering, the major challenges we had are the constant changes of architecture, data model, programming language, component interface and operation requirement. Here we apply Design Patterns methodology in this case. By using Design Patterns, we can quickly design every module and function. It also shows the flexibility when we develop the system. In this paper we state the experiences of migrating from DOS-based clipper program to object-based PowerBuilder program. Today many people are still running old DOS-based Clipper program under Novell network. We hope our research can help the people who try to migrate or re-engineer this kind of legacy systems.
|