Quality attribute conflicts - Experiences from a large telecommunication application

Document type: Conference Papers
Peer reviewed: Yes
Author(s): Daniel Häggander, Lars Lundberg, J Matton
Title: Quality attribute conflicts - Experiences from a large telecommunication application
Conference name: 7th IEEE International Conference on Engineering of Complex Computer Systems
Year: 2001
Pagination: 96-105
ISBN: 0-7695-1160-0
Publisher: IEEE COMPUTER SOC
City: SKOVDE, SWEDEN
ISI number: 000169737800011
Organization: Blekinge Institute of Technology
Department: Department of Software Engineering and Computer Science (Institutionen för programvaruteknik och datavetenskap)
Dept. of Software Engineering and Computer Science S-372 25 Ronneby
+46 455 38 50 00
http://www.bth.se/eng/ipd/
Language: English
Abstract: Modern telecommunication applications must provide high availability and performance. They must also be maintainable in order to reduce the maintenance cost and rime-to-marker for new versions. Previous studies have shown that the ambition to build maintainable systems may result in ver?: poor performance. Here we evaluate an application called SDP pre-paid and show that the ambition to build systems with high performance and availability can lead to a complex software design with poor maintainability. We show that more than 85% of the SDP code is due to performance and availability optimizations. By implementing a SDP prototype with an alternative architecture we show that the code size can be reduced with an order of magnitude by removing the performance and availability optimizations from the source code and instead using modern fault tolerant hardware and third party software. The performance and availability of the prototype is as least as good as the old SDI! The hardware and third parry software cost is only 20-30% higher for the prototype. We also define three guidelines that help us to focus the additional hardware investments to the parts where it is really needed.
Subject: Computer Science\Distributed Computing
Software Engineering\General
Computer Science\Computersystems
Edit