Software engineering and performance

Rob Pooley
2000 Proceedings of the conference on The future of Software engineering - ICSE '00  
Software engineering has traditionally focussed on functional requirements and how to build software that has few bugs and can be easily maintained. Most design approaches include non-functional requirements among the elements of the analysis of a system, but little attention has usually been paid to how these requirements can be dealt with through the development life-cycle. Performance analysis, mostly through queueing models and simulations, has usually been used only in designing hardware
more » ... vices, such as switches, or in capacity planning in the deployment of systems, again concentrating on the hardware and its ability to cope with a given workload. Work on the inclusion of performance engineering throughout the life-cycle has made relatively little impact. With the advent of more structured software design approaches, such as component based development, software architectures and object broker distributed systems, the ability to design software for performance has begun to emerge as a major challenge. This paper reviews some approaches to performance prediction and suggests how this area might develop in the next decade or so.
doi:10.1145/336512.336553 dblp:conf/icse/Pooley00 fatcat:32dul4jsmbcsbotsbihnx4hdey