Title :
Software evolution research at the Centre for Software Maintenance
Author_Institution :
Centre for Software Maintenance, Durham Univ., UK
Abstract :
The paper outlines the research in software evolution being carried out at the Centre for Software Maintenance. The research is in two main directions: examining how the structure of software changes and evolves over time (Release project); and complementing that view by researching novel software architectures for evolution (Flexx project). Legacy systems have, embedded within them, a large investment made by the systems developers and/or owners. This investment ranges from low level code items or objects through to higher level business objects. Two important ideas are briefly discussed: reverse engineering and business rules. The structure imposed by designers and developers of software systems are, in general, not suitable for continued change and evolution. Part of the reason for this is that during development it is difficult, or even impossible, to predict how the system is going to evolve. The fact that the software must continually change over time, or become increasingly less useful, was emphasised by M.M. Lehman (1980). He also pointed out that the structure of evolving software will degrade unless remedial action is taken. This has also been confirmed and shown visually by E.L. Burd and M. Munro (1996). An important aspect of this loss of structure is that business knowledge encapsulated within the system becomes fragmented, and any changes made as a result of new business initiatives become difficult to implement and hence may mean a loss of business opportunities. Reverse engineering has been proposed as a solution, but it is just one aspect of a total solution
Keywords :
software maintenance; Flexx project; Release project; business initiatives; business knowledge; business opportunities; business rules; higher level business objects; legacy systems; low level code items; novel software architectures; remedial action; reverse engineering; software change; software evolution research; software systems; systems developers;
Conference_Titel :
Managing Requirements Change: A Business Process Re-Engineering Perspective (Digest No. 1998/312), IEE Colloquium on
Conference_Location :
London
DOI :
10.1049/ic:19980555