dc.description.abstract | Regarding software project management, defining software requirement specifica-tion(SRS) is the most important step, that’s what programmers’ implementation de-pending on during the development practice. But what if the requirement was modified after implementation completed, and what’s the cost of corresponding strategy? It takes different man-month cost if refactoring/restructuring under current architecture or re-designing the entire software architecture.
M-FTVM is a virtual machine fault-tolerance mechanism based on KVM pro-posed by NCU PDC-Lab. However, when surveying the fault tolerance related works, we found the commercial virtualization software VMware can re-active the fault toler-ance mechanism with less penalty after VM failover. On the other hand, M-FTVM had branched into Primary and Backup from the initial design because different requirement. Which means, under current designed architecture, M-FTVM cannot re-active fault-tolerance mechanism directly after failover. if we would like to re-active fault-tolerance mechanism, it has to re-create VM, then the service on the VM must in-terrupt. To solve this new requirement for M-FTVM, merging Primary and Backup program would be necessary. In spite of Primary/Backup is based on the same open-source project and different functionality, but there are still partial-overlapped functions in each other, these cases might cause unknown conflict during mergence. Therefore, this paper proposed a systematically merging methodology based on known restructuring techniques to preserve the behavior and correctness. By applying this method, we merged M-FTVM successfully, added the function of re-active fault-tolerance mechanism directly after failover. | en_US |