Eiffel: the language
Object-oriented software construction (2nd ed.)
Object-oriented software construction (2nd ed.)
The case for collaborative programming
Communications of the ACM
Refactoring: improving the design of existing code
Refactoring: improving the design of existing code
Extreme programming explained: embrace change
Extreme programming explained: embrace change
The costs and benefits of pair programming
Extreme programming examined
Case study: extreme programming in a university environment
ICSE '01 Proceedings of the 23rd International Conference on Software Engineering
Pair Programming Illuminated
A Practical Guide to Feature-Driven Development
A Practical Guide to Feature-Driven Development
Software Construction by Stepwise Feature Introduction
ZB '02 Proceedings of the 2nd International Conference of B and Z Users on Formal Specification and Development in Z and B
Practical analysis for refactoring
Practical analysis for refactoring
Extreme Programming: First Results from a Controlled Case Study
EUROMICRO '03 Proceedings of the 29th Conference on EUROMICRO
Evaluating the XP Customer Model and Design by Contract
EUROMICRO '04 Proceedings of the 30th EUROMICRO Conference
Analyses of an Agile Methodology Implementation
EUROMICRO '04 Proceedings of the 30th EUROMICRO Conference
XP'03 Proceedings of the 4th international conference on Extreme programming and agile processes in software engineering
Testing and verifying invariant based programs in the SOCOS environment
TAP'07 Proceedings of the 1st international conference on Tests and proofs
Using stepwise feature introduction in practice: an experience report
RISE'05 Proceedings of the Second international conference on Rapid Integration of Software Engineering Techniques
Software process improvement with agile practices in a large telecom company
PROFES'06 Proceedings of the 7th international conference on Product-Focused Software Process Improvement
Hi-index | 0.00 |
In this article, we describe an approach to empirical software engineering based on a combined software factory and software laboratory. The software factory develops software required by an external customer while the software laboratory monitors and improves the processes and methods used in the factory. We have used this approach during a period of four years to define and evaluate a software process that combines practices from Extreme Programming with architectural design and documentation practices in order to find a balance between agility, maintainability and reliability.