{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,2,28]],"date-time":"2026-02-28T04:25:10Z","timestamp":1772252710162,"version":"3.50.1"},"reference-count":51,"publisher":"MDPI AG","issue":"3","license":[{"start":{"date-parts":[[2022,3,17]],"date-time":"2022-03-17T00:00:00Z","timestamp":1647475200000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/creativecommons.org\/licenses\/by\/4.0\/"}],"content-domain":{"domain":[],"crossmark-restriction":false},"short-container-title":["Computers"],"abstract":"<jats:p>This paper directly addresses a long-standing issue that affects the development of many complex distributed software systems: how to establish quickly, cheaply, and reliably whether they can deliver their intended performance before expending significant time, effort, and money on detailed design and implementation. We describe \u0394QSD, a novel metrics-based and quality-centric paradigm that uses formalised outcome diagrams to explore the performance consequences of design decisions, as a performance blueprint of the system. The distinctive feature of outcome diagrams is that they capture the essential observational properties of the system, independent of the details of system structure and behaviour. The \u0394QSD paradigm derives bounds on performance expressed as probability distributions encompassing all possible executions of the system. The \u0394QSD paradigm is both effective and generic: it allows values from various sources to be combined in a rigorous way so that approximate results can be obtained quickly and subsequently refined. \u0394QSD has been successfully used by a small team in Predictable Network Solutions for consultancy on large-scale applications in a number of industries, including telecommunications, avionics, and space and defence, resulting in cumulative savings worth billions of US dollars. The paper outlines the \u0394QSD paradigm, describes its formal underpinnings, and illustrates its use via a topical real-world example taken from the blockchain\/cryptocurrency domain. \u0394QSD has supported the development of an industry-leading proof-of-stake blockchain implementation that reliably and consistently delivers blocks of up to 80 kB every 20 s on average across a globally distributed network of collaborating block-producing nodes operating on the public internet.<\/jats:p>","DOI":"10.3390\/computers11030045","type":"journal-article","created":{"date-parts":[[2022,3,20]],"date-time":"2022-03-20T21:26:22Z","timestamp":1647811582000},"page":"45","update-policy":"https:\/\/doi.org\/10.3390\/mdpi_crossmark_policy","source":"Crossref","is-referenced-by-count":5,"title":["Mind Your Outcomes: The \u0394QSD Paradigm for Quality-Centric Systems Development and Its Application to a Blockchain Case Study"],"prefix":"10.3390","volume":"11","author":[{"ORCID":"https:\/\/orcid.org\/0000-0002-7969-8573","authenticated-orcid":false,"given":"Seyed","family":"Haeri","sequence":"first","affiliation":[{"name":"Formal Methods Group, IOG, 4 Battery Road, 25-01 Bank of China Building, Singapore 049908, Singapore"},{"name":"Department of Informatics, University of Bergen, 5020 Bergen, Norway"}]},{"ORCID":"https:\/\/orcid.org\/0000-0003-4661-6233","authenticated-orcid":false,"given":"Peter","family":"Thompson","sequence":"additional","affiliation":[{"name":"Predictable Network Solutions Ltd. (PNSol), Stonehouse GL10 2PG, UK"}]},{"ORCID":"https:\/\/orcid.org\/0000-0001-9462-8584","authenticated-orcid":false,"given":"Neil","family":"Davies","sequence":"additional","affiliation":[{"name":"Predictable Network Solutions Ltd. (PNSol), Stonehouse GL10 2PG, UK"}]},{"ORCID":"https:\/\/orcid.org\/0000-0002-5427-2445","authenticated-orcid":false,"given":"Peter","family":"Van Roy","sequence":"additional","affiliation":[{"name":"Institute of Information and Communication Technologies, Electronics, and Applied Mathematics, Universit\u00e9 catholique de Louvain, B-1348 Louvain-la-Neuve, Belgium"}]},{"ORCID":"https:\/\/orcid.org\/0000-0002-4326-4562","authenticated-orcid":false,"given":"Kevin","family":"Hammond","sequence":"additional","affiliation":[{"name":"Formal Methods Group, IOG, 4 Battery Road, 25-01 Bank of China Building, Singapore 049908, Singapore"}]},{"ORCID":"https:\/\/orcid.org\/0000-0001-9036-8252","authenticated-orcid":false,"given":"James","family":"Chapman","sequence":"additional","affiliation":[{"name":"Formal Methods Group, IOG, 4 Battery Road, 25-01 Bank of China Building, Singapore 049908, Singapore"}]}],"member":"1968","published-online":{"date-parts":[[2022,3,17]]},"reference":[{"key":"ref_1","unstructured":"Narcisse, E. (2012). What Went Wrong with OnLive?, Kotaku.com, G\/O Media."},{"key":"ref_2","unstructured":"Wolverton, T. (2012). Exclusive: OnLive Assets Were Sold Off for Just $4.8 Million, The Mercury News."},{"key":"ref_3","unstructured":"Hollister, S. (2012). OnLive Lost: How the Paradise of Streaming Games Was Undone by One Man\u2019s Ego, The Verge, Vox Media."},{"key":"ref_4","unstructured":"Pressman, R., and Maxim, D.B.R. (2014). Software Engineering: A Practitioner\u2019s Approach, McGraw-Hill."},{"key":"ref_5","unstructured":"Krasner, H. (2020). The Cost of Poor Software Quality in the US: A 2020 Report, CISQ Consortium for Information & Software Quality. Technical Report."},{"key":"ref_6","unstructured":"Davies, N. (1993). Developing Systems with Awareness of Performance. Proceedings of Workshop on Process Algebra and Performance Modelling, Department of Computer Science, University of Edinburgh. CSR-26-93."},{"key":"ref_7","doi-asserted-by":"crossref","first-page":"40","DOI":"10.1145\/141874.141884","article-title":"Foundations for the study of software architecture","volume":"17","author":"Perry","year":"1992","journal-title":"ACM Sigsoft Softw. Eng. Notes"},{"key":"ref_8","doi-asserted-by":"crossref","first-page":"60","DOI":"10.1109\/TSE.1977.233838","article-title":"A requirements engineering methodology for real-time processing requirements","volume":"1","author":"Alford","year":"1977","journal-title":"IEEE Trans. Softw. Eng."},{"key":"ref_9","doi-asserted-by":"crossref","unstructured":"Byrski, A., and Hughes, J. (2020). Flexible Formality Practical Experience with Agile Formal Methods. Trends in Functional Programming, Springer International Publishing.","DOI":"10.1007\/978-3-030-57761-2"},{"key":"ref_10","unstructured":"Solutions, P.N. (2015). Assessment of Traffic Management Detection Methods and Tools, Ofcom. Technical Report MC-316."},{"key":"ref_11","doi-asserted-by":"crossref","unstructured":"Thompson, P., and Davies, N. (2020). Towards a RINA-Based Architecture for Performance Management of Large-Scale Distributed Systems. Computers, 9.","DOI":"10.3390\/computers9020053"},{"key":"ref_12","doi-asserted-by":"crossref","unstructured":"Drescher, D. (2017). Blockchain Basics: A Non-Technical Introduction in 25 Steps, Apress.","DOI":"10.1007\/978-1-4842-2604-9"},{"key":"ref_13","unstructured":"Nielsen, J.B., and Rijmen, V. (2018). Ouroboros Praos: An Adaptively-Secure, Semi-synchronous Proof-of-Stake Blockchain. Advances in Cryptology\u2014EUROCRYPT 2018, Springer International Publishing."},{"key":"ref_14","unstructured":"Coutts, D., Davies, N., Szamotulski, M., and Thompson, P. (2020). Introduction to the Design of the Data Diffusion and Networking for Cardano Shelley, IOHK. Technical Report."},{"key":"ref_15","unstructured":"Watts, D.J. (2003). Small Worlds: The Dynamics of Networks between Order and Randomness, Princeton University Press."},{"key":"ref_16","doi-asserted-by":"crossref","unstructured":"Leon Gaixas, S., Perello, J., Careglio, D., Gras, E., Tarzan, M., Davies, N., and Thompson, P. (2016, January 12\u201315). Assuring QoS Guarantees for Heterogeneous Services in RINA Networks with \u0394Q. Proceedings of the IEEE International Conference on Cloud Computing Technology and Science (CloudCom), Luxembourg City, Luxembourg.","DOI":"10.1109\/CloudCom.2016.0101"},{"key":"ref_17","unstructured":"Trivedi, K.S. (2002). Probability and Statistics with Reliability, Queuing, and Computer Science Applications, Wiley. [2nd ed.]."},{"key":"ref_18","unstructured":"Voulgaris, S. Private Communication."},{"key":"ref_19","unstructured":"McKay, B.D. (1984). Enumeration and Design, Academic Press."},{"key":"ref_20","doi-asserted-by":"crossref","first-page":"313","DOI":"10.1145\/322186.322195","article-title":"Mean-value analysis of closed multichain queuing networks","volume":"27","author":"Reiser","year":"1980","journal-title":"J. ACM"},{"key":"ref_21","doi-asserted-by":"crossref","first-page":"131","DOI":"10.1287\/mnsc.10.1.131","article-title":"Jobshop-like queueing systems","volume":"10","author":"Jackson","year":"1963","journal-title":"Manag. Sci."},{"key":"ref_22","doi-asserted-by":"crossref","first-page":"913","DOI":"10.1109\/TC.1982.1676110","article-title":"Performance analysis using stochastic petri nets","volume":"31","author":"Molloy","year":"1982","journal-title":"IEEE Trans. Comput."},{"key":"ref_23","first-page":"401","article-title":"A Temporal Calculus for Communicating Systems","volume":"Volume 458","author":"Moller","year":"1989","journal-title":"Proceedings of the CONCUR \u201990 Theories of Concurrency: Unification and Extension"},{"key":"ref_24","first-page":"367","article-title":"Equivalences, Congruences and Complete Axiomatizations of Probabilistic Processes","volume":"Volume 458","author":"Jou","year":"1989","journal-title":"Proceedings of the CONCUR \u201990 Theories of Concurrency: Unification and Extension"},{"key":"ref_25","doi-asserted-by":"crossref","unstructured":"Hillston, J. (1996). A Compositional Approach to Performance Modelling, Cambridge University Press.","DOI":"10.1017\/CBO9780511569951"},{"key":"ref_26","unstructured":"Bradley, J.T., Dingle, N.J., Gilmore, S.T., and Knottenbelt, W.J. (2003, January 12\u201315). Derivation of passage-time densities in PEPA models using IPC: The Imperial PEPA Compiler. Proceedings of the 11th IEEE\/ACM International Symposium on Modeling, Analysis and Simulation of Computer Telecommunications Systems, Orlando, FL, USA."},{"key":"ref_27","doi-asserted-by":"crossref","first-page":"867","DOI":"10.2307\/1427344","article-title":"Burke\u2019s Theorem on Passage Times in Gordon-Newell Networks","volume":"16","author":"Daduna","year":"1984","journal-title":"Adv. Appl. Probab."},{"key":"ref_28","doi-asserted-by":"crossref","first-page":"195","DOI":"10.1080\/15326349508807338","article-title":"First passage times and their algorithms for markov processes","volume":"11","author":"Hsu","year":"1995","journal-title":"Commun. Stat. Stoch. Model."},{"key":"ref_29","unstructured":"Bradley, J., and Davies, N. (1998). Performance Modelling and Synchronisation, University of Bristol. Working Paper: CSTR-98-009, Superseded by CSTR-99-002."},{"key":"ref_30","doi-asserted-by":"crossref","first-page":"4737","DOI":"10.1080\/03610926.2019.1606917","article-title":"On the functional central limit theorem for first passage time of nonlinear semi-Markov reward processes","volume":"49","author":"Chatrabgoun","year":"2020","journal-title":"Commun. Stat.-Theory Methods"},{"key":"ref_31","doi-asserted-by":"crossref","first-page":"36","DOI":"10.1145\/1347375.1347389","article-title":"The Worst-Case Execution-Time Problem\u2014Overview of Methods and Survey of Tools","volume":"7","author":"Wilhelm","year":"2008","journal-title":"ACM Trans. Embed. Comput. Syst."},{"key":"ref_32","doi-asserted-by":"crossref","unstructured":"Decker, C., and Wattenhofer, R. (, January 9\u201311). Information propagation in the Bitcoin network. Proceedings of the IEEE P2P 2013 Proceedings, Trento, Italy.","DOI":"10.1109\/P2P.2013.6688704"},{"key":"ref_33","doi-asserted-by":"crossref","unstructured":"Clark, J., Meiklejohn, S., Ryan, P.Y., Wallach, D., Brenner, M., and Rohloff, K. (2016). On Scaling Decentralized Blockchains, Springer. Financial Cryptography and Data Security.","DOI":"10.1007\/978-3-662-53357-4"},{"key":"ref_34","doi-asserted-by":"crossref","unstructured":"Shahsavari, Y., Zhang, K., and Talhi, C. (2020). A Theoretical Model for Block Propagation Analysis in Bitcoin Network. IEEE Trans. Eng. Manag., 1\u201318.","DOI":"10.1109\/Blockchain.2019.00038"},{"key":"ref_35","first-page":"107","article-title":"Survey on Blockchain Networking: Context, State-of-the-Art, Challenges","volume":"54","author":"Dotan","year":"2021","journal-title":"ACM Comput. Surv."},{"key":"ref_36","unstructured":"Gibbons, J. (2010, January 22\u201326). Generic and Indexed Programming. Proceedings of the International Spring School, SSGIP 2010, Oxford, UK."},{"key":"ref_37","doi-asserted-by":"crossref","first-page":"40","DOI":"10.1109\/2.161279","article-title":"Applying \u201cDesign by Contract\u201d","volume":"25","author":"Meyer","year":"1992","journal-title":"Computer"},{"key":"ref_38","unstructured":"Weigand, H., Dignum, V., Meyer, J.J.C., and Dignum, F. (2002, January 16\u201317). Specification by Refinement and Agreement: Designing Agent Interaction Using Landmarks and Contracts. Proceedings of the Third International Workshop, ESAW 2002, Madrid, Spain."},{"key":"ref_39","doi-asserted-by":"crossref","unstructured":"Apel, S., Batory, D.B., K\u00e4stner, C., and Saake, G. (2013). Feature-Oriented Software Product Lines\u2014Concepts and Implementation, Springer.","DOI":"10.1007\/978-3-642-37521-7"},{"key":"ref_40","first-page":"169","article-title":"Component-Based Software Development\u2014A New Paradigm in Software Engineering?","volume":"18","author":"Pree","year":"1997","journal-title":"Softw. Concepts Tools"},{"key":"ref_41","unstructured":"Baumeister, H. (1999, January 15\u201318). Relating Abstract Datatypes and Z-Schemata. Proceedings of the 14th International Workshop, WADT\u201999, Ch\u00e2teau de Bonas, France."},{"key":"ref_42","doi-asserted-by":"crossref","first-page":"445","DOI":"10.1016\/S0304-3975(96)00163-6","article-title":"The Definition of Extended ML: A Gentle Introduction","volume":"173","author":"Kahrs","year":"1997","journal-title":"Theor. Comput. Sci."},{"key":"ref_43","doi-asserted-by":"crossref","unstructured":"Haveraaen, M. (2007, January 21). Institutions, Property-Aware Programming and Testing. Proceedings of the LCSD\u201907: Proceedings of the 2007 Symposium on Library-Centric Software Design, Montreal, BC, Canada.","DOI":"10.1145\/1512762.1512765"},{"key":"ref_44","doi-asserted-by":"crossref","first-page":"153","DOI":"10.1016\/S0304-3975(01)00368-1","article-title":"Casl: The Common Algebraic Specification Language","volume":"286","author":"Astesiano","year":"2002","journal-title":"Theor. Comput. Sci."},{"key":"ref_45","doi-asserted-by":"crossref","unstructured":"Sim\u00f5es, H.R., Vasconcelos, P.B., Florido, M., Jost, S., and Hammond, K. (2012, January 9\u201315). Automatic amortised analysis of dynamic memory allocation for lazy functional programs. Proceedings of the ACM SIGPLAN International Conference on Functional Programming, ICFP\u201912, Copenhagen, Denmark.","DOI":"10.1145\/2364527.2364575"},{"key":"ref_46","doi-asserted-by":"crossref","first-page":"87","DOI":"10.1007\/s10817-016-9398-9","article-title":"Type-Based Cost Analysis for Lazy Functional Languages","volume":"59","author":"Jost","year":"2017","journal-title":"J. Autom. Reason."},{"key":"ref_47","doi-asserted-by":"crossref","first-page":"1","DOI":"10.1145\/3434308","article-title":"A unifying type-theory for higher-order (amortized) cost analysis","volume":"5","author":"Rajani","year":"2021","journal-title":"Proc. ACM Program. Lang."},{"key":"ref_48","unstructured":"Adams, D. (1979). The Hitchhiker\u2019s Guide to the Galaxy, Harmony Books."},{"key":"ref_49","unstructured":"Reilly, E.D., Ralston, A., and Hemmendinger, D. (2000). Encyclopedia of Computer Science, Nature Pub. Group."},{"key":"ref_50","unstructured":"Van Roy, P., Davies, N., Thompson, P., and Haeri, S.H. (2022, January 20\u201322). The \u0394QSD Systems Development Paradigm, a Tutorial. Proceedings of the HiPEAC Conference (High-Performance Embedded Architecture and Compilation), Budapest, Hungary."},{"key":"ref_51","unstructured":"Thompson, P., and Hernadaz, R. (2020). Quality Attenuation Measurement Architecture and Requirements, Broadband Forum. Technical Report TR-452.1."}],"container-title":["Computers"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/www.mdpi.com\/2073-431X\/11\/3\/45\/pdf","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,10,10]],"date-time":"2025-10-10T22:38:19Z","timestamp":1760135899000},"score":1,"resource":{"primary":{"URL":"https:\/\/www.mdpi.com\/2073-431X\/11\/3\/45"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2022,3,17]]},"references-count":51,"journal-issue":{"issue":"3","published-online":{"date-parts":[[2022,3]]}},"alternative-id":["computers11030045"],"URL":"https:\/\/doi.org\/10.3390\/computers11030045","relation":{"has-preprint":[{"id-type":"doi","id":"10.20944\/preprints202112.0132.v1","asserted-by":"object"},{"id-type":"doi","id":"10.20944\/preprints202112.0132.v2","asserted-by":"object"},{"id-type":"doi","id":"10.20944\/preprints202112.0132.v3","asserted-by":"object"}]},"ISSN":["2073-431X"],"issn-type":[{"value":"2073-431X","type":"electronic"}],"subject":[],"published":{"date-parts":[[2022,3,17]]}}}