An approach to modelling and describing software evolution processes

Tong Li · DMU Open Research Archive (De Montfort University) · 2007

The importance and popularity of software evolution increase as more and more successful software systems become legacy systems.On the one hand, software evolution has become an important characteristic in the software life cycle.On the other hand, software processes play an important role in increasing efficiency and quality of software evolution.Therefore, the software evolution process, the inter-discipline of software process and software evolution, becomes a key area in software engineering.A well-managed software evolution process can effectively support a successful software evolution; however, a poor software evolution process will lead to the failure of the corresponding software evolution.This thesis aims to model and describe formal software processes that effectively support software evolution.For this purpose, progress has been made in five main aspects: Firstly, five important properties of software evolution processes are analysed.It is indicated that iteration, concurrency, interleaving of continuous and discontinuous change, feedback-driven systems and multi-level frameworks play important roles in software evolution processes.Secondly, a Petri Net is extended with object-oriented technology and Hoare Logic.Based on the extended Petri Net and according to the preceding properties, a formal evolution process meta-model (EPMM for short) is proposed.EPMM can define software evolution process models (EPMs for short) with a four-level framework and can embody some important properties, such as iteration, concurrency, interleaving of continuous and discontinuous change and feedback-driven systems.Thirdly, based on EPMM, an object-based evolution process description language EPDL is designed.It is more detailed and easier to implement in computers than EPMM.

Read the paper · More papers on PaperTik