One of the important activities in re-engineering process is detecting design flaws. Such design flaws prevent an efficient maintenance, and further development of a system. Th...
—Large scale systems (LSS) contain multiple subsystems that interact across multiple nodes in sometimes unforeseen and complicated ways. As a result, pinpointing the subsystems t...
—Much of modern software development consists of building on older changes. Older periods provide the structure (e.g., functions and data types) on which changes in future period...
Trace links between requirements and code are essential for many software development and maintenance activities. Despite significant advances in traceability research, creating li...
Program specifications are important for many tasks during software design, development, and maintenance. Among these, temporal specifications are particularly useful. They expres...