Complex and long-lived software need to be upgraded at runtime. Replacing a software component with a newer version is the basic evolution operation that has to be supported. It i...
This paper discusses results achieved in measuring complexity, effectiveness and efficiency, in a series of related software course projects, spanning a period of seven years. We ...
Software inspections are established means of ensuring quality in software engineering. The traditional paper-based inspections are considered too laborious for widespread usage, ...
Extreme Programming (XP) is an agile software development methodology composed of several practices that purportedly yield high quality and high customer satisfaction. However, th...
Software engineering is no longer the preserve of individuals but is essentially a team-based activity involving a wide variety of stakeholders and thus making the need for commun...