The Pernambuco School on Software Engineering (PSSE) 2007 was the second in a series of events devoted to the study of advanced computer science and to the promotion of international scienti?c collaboration. The main theme in 2007 was testing. Testing is nowadays a key activity for assuring software quality. The summer school and its proceedings were intended to give a detailed tutorial introduction to the scienti?c basis of this activity and its state of the art. Theseproceedingsrecordthecontributionsfromtheinvitedlecturers.Eachof...
The Pernambuco School on Software Engineering (PSSE) 2007 was the second in a series of events devoted to the study of advanced computer science and t...
Refactoring is a well known software development technique that can bring several bene ts to aspect- oriented applications by allowing developers to introduce aspects to an existing object-oriented program as well as changing the aspect-oriented program itself. Aspect-oriented developers have been identifying common transformations, but they sometimes lack support for assuring that the transformations preserve behavior and are indeed refactorings. This book focuses on that problem and introduces AspectJ programming laws that can be used to derive or create behavior preserving transformations...
Refactoring is a well known software development technique that can bring several bene ts to aspect- oriented applications by allowing developers to i...
Developers frequently introduce errors into software systems when they fail to recognise module dependencies.
Using forty-three software families and Software Product Lines (SPLs), where the majority are commonly used in industrial practice, the authors reports on the feature modularization problem and provides a study of how often it may occur in practice. To solve the problem they present the concept of emergent feature modularization which aims to establish contracts between features to prevent developers from breaking other features when performing a maintenance task.
Developers frequently introduce errors into software systems when they fail to recognise module dependencies.