Steel threads: Software engineering constructs for defining, designing and developing software system architecture

Shayma Alkobaisi, Wan D. Bae, Sada Narayanappa, Narayan Debnath

Research output: Contribution to journalArticlepeer-review

Abstract

A steel thread is a software engineering construct that identifies the most important execution paths, including software and hardware elements, through a computer system, while meeting business objectives and demonstrating executable architecture. Steel threads are often used in the context of defining software system architecture. Although there have been references to steel threads in software engineering literature, it is hard to find clear definitions and usage of steel threads in the software industry or among the research community. This paper provides an overview of steel threads in software architecture design and development as well as presenting the contexts of steel threads. In addition, we show how to identify important scenarios and execution paths to construct steel threads and discuss the contexts under which steel threads are applicable in the software development life cycle. We also discuss the roles of steel threads in system development as well as their usability and applicability. Finally, a case study of the use of steel threads in a software system is presented.

Original languageEnglish
Pages (from-to)63-77
Number of pages15
JournalJournal of Computational Methods in Sciences and Engineering
Volume12
Issue numberSUPPL. 1
DOIs
Publication statusPublished - 2012

Keywords

  • Steel threads
  • agile development
  • model-driven software development
  • scenarios
  • software architecture
  • use cases

ASJC Scopus subject areas

  • General Engineering
  • Computer Science Applications
  • Computational Mathematics

Fingerprint

Dive into the research topics of 'Steel threads: Software engineering constructs for defining, designing and developing software system architecture'. Together they form a unique fingerprint.

Cite this