Formal Analysis of Workflows in Software Development

Formal Analysis of Workflows in Software Development

Harry S. Delugach (University of Alabama in Huntsville, USA)
DOI: 10.4018/978-1-60566-264-0.ch020
OnDemand PDF Download:


Automated tools are often used to support software development workflows. Many of these tools are aimed toward a development workflow that relies implicitly on particular supported roles and activities. Developers may already understand how a tool operates; however, developers do not always understand or adhere to a development process supported (or implied) by the tools, nor adhere to prescribed processes when they are explicit. This chapter is aimed at helping both developers and their managers understand and manage workflows by describing a preliminary formal model of roles and activities in software development. Using this purely descriptive model as a starting point, the authors evaluate some existing tools with respect to their description of roles in their processes, and finally show one application where process modeling was helpful to managers. We also introduce an extended model of problem status as an example of how formal models can enrich understanding of the software development process, based on the analysis of process roles
Chapter Preview

People sometimes make errors. The problem here was not the error, it was the failure of NASA’s systems engineering, and the checks and balances in our processes to detect the error. That’s why we lost the spacecraft.

Edward Weiler,

NASA’s Associate Administrator on the loss of the $327 million Mars Climate Orbiter. Introduction



Many automated tools are available to support software development. There are two main reasons for an organization to use these tools:

  • Much of software development takes place in distributed environments, or at least where the participants have difficulty meeting regularly face-to-face. Automated (often web-based) tools allow them to collaborate in a generally cost-effective way compared to travel and shipping costs.

  • Software development workflows prescribe various activities to be tracked and artifacts to be created and maintained. Even when developers are able to collaborate in person, the number of these can become large and therefore requires organizing tools and a central repository.

As with all tools, their effectiveness is determined by how well participants understand how to use them. There is ample evidence that mere use of tools is not sufficient to support an effective workflow. Even if developers understand a tool’s basic operation, they often do not understand or adhere to any development process supported (or implied) by the tool. This chapter examines some popular web-based software engineering tools from a pragmatic role-oriented perspective. That is, we intend to focus on the roles and purposes within the context of the development process, rather than characteristics of artifacts or products.

Our ultimate goals in developing these models is the following:

  • 1.

    To better describe and analyze the processes themselves.

  • 2.

    To formally analyze and evaluate tools with respect to generally accepted process models, and

  • 3.

    To formally compare and contrast the models with each other.

  • 4.

    To provide formal definitions based on process models.

The approach in this chapter illustrates all four of these goals. First we motivate the general value of formal models in analyzing process, and then provide some background on workflow modeling with respect to the software development process. The main body of the chapter applies this approach to one particular sub-process (namely bug tracking). Each of the four goals is discussed in turn, using examples to illustrate the approach.

This work continues in the spirit of previous work in modeling development processes (Delugach, 2007) (de Moor & Delugach, 2006) and in using conceptual graphs for modeling communication (Delugach, 2006) and software development (Delugach, 1996) (Delugach, 1992). In this chapter, we use conceptual graphs—a well-known knowledge representation—as a clear and effective way of formally representing the parts of a workflow. In future work, some automated analysis may use conceptual graphs’ formal basis in logical reasoning and inference; however, this chapter does not exploit those capabilities for these illustrations.


The Value Of Formal Modeling

At this point, it is useful to evaluate the role of formal modeling in software system development. While nearly all developers acknowledge the value of formally modeling the software system itself, there is less agreement on the role of formal modeling of the process of software development. Resistance to this idea is usually caused by “horror stories” of:

  • Incorrect or incomplete models of a process, which initially give the impression of soundness but then later reveal themselves to be inappropriate

  • Models that have been imposed on a development team by either upper management without proper evaluation, or by contractual obligations that are included as “boiler plate” requirements without any evaluation as their appropriateness

  • Models that are perceived as reducing someone’s power or control, infringing on their “turf” or responsibilities to the overall project.

Key Terms in this Chapter

Workflow Model: A process model specifically aimed at representing a development process, as opposed to an algorithm or program.

Conceptual Graphs: A knowledge modeling approach based on semantic networks and first-order logic, first introduced by Sowa, whereby knowledge is represented by concepts and relations linked together in a bipartite graph.

Software Issue Tracking: Also called “bug tracking”; a process by which issues (errors, defects, faults, problems) in some software component are identified, evaluated, analyzed, authorized and implemented.

Process Model: Any description of a process (not necessarily formal), that shows a series of steps aimed at accomplishing some goal.

Requirements Change Process: A systematic series of steps by which changes to formal software requirements are identified, evaluated, approved and incorporated.

Deontic Effect: A feature of an activity assigning to it some role’s obligations, such as whether the role is required to perform the activity, permitted (but not required) to perform it, or prohibited from performing it.

Formal Model: Any model with well-formed syntax and semantics, such that it is amenable to systematic (usually automatable) processing and analysis subject to logical rules.

Software Development Process: The overall process of software development, from initial inception through analysis, design, implementation, test and deployment.

Complete Chapter List

Search this Book:
Editorial Advisory Board
Table of Contents
Ben Shneiderman
Brian Whitworth, Aldo de Moor
Brian Whitworth, Aldo de Moor
List of Reviewers
Prologue: General Socio-Technical Theory
Chapter 1
Brian Whitworth
A socio-technical system (STS) is a social system built upon a technical base. An STS adds social requirements to human-computer interaction (HCI)... Sample PDF
The Social Requirements of Technical Systems
Chapter 2
Matti Tedre
This chapter introduces the reader to some social research characteristics that are central to the social study of computer science. It introduces... Sample PDF
The Social Study of Computer Science
Chapter 3
Ann Borda, Jonathan P. Bowen
This chapter introduces the concept of a Virtual Organization (VO), using the Internet to link geographically separated participants in an efficient... Sample PDF
Virtual Collaboration and Community
Chapter 4
David Davenport
This chapter analyses the effect that social values have on the design of technical systems. Beginning with an examination of the role technology... Sample PDF
The Social Derivation of Technical Systems
Chapter 5
Ken Eason, José Abdelnour-Nocera
This chapter sets the traditional focus of socio-technical systems theory on primary work systems in a modern context where information and... Sample PDF
Socio-Technical Theory and Work Systems in the Information Age
Chapter 6
Peter Day
This chapter introduces the community engagement strategy of the Community Network Analysis (CNA) project and considers its significance to research... Sample PDF
An Engagement Strategy for Community Network Research and Design
Chapter 7
Cleidson R.B. de Souza, David F. Redmiles
This chapter reviews the socio-technical relationship between organizational and software structure. It describes the early theoretical work about... Sample PDF
On the Alignment of Organizational and Software Structure
Ronald K. Stamper
Prologue: Socio-Technical Perspectives
Chapter 8
Catherine Heeney
The chapter discusses the traditional expectations about privacy protection and argues that current models for the governance of data do not... Sample PDF
Privacy and the Identity Gap in Socio-Technical Systems
Chapter 9
Ronald Leenes
Second Life can be seen as a social microcosmos in which fairly normal people lead a social life and where social needs develop. Privacy is one of... Sample PDF
Privacy Regulation in the Metaverse
Chapter 10
David Tuffley
This chapter introduces a process reference model of leadership for integrated teams operating in virtual environments. Geographically dispersed... Sample PDF
Leadership of Integrated Teams in Virtual Environments
Chapter 11
Monique Janneck
For a technology use to be successful, the circumstance of its introduction into a use context—or recontextualization— is crucial. The users of a... Sample PDF
Recontextualising Technology in Appropriation Processes
Chapter 12
Petter Bae Brandtzæg, Jan Heim
The last few years have seen a substantial growth in online communities such as MySpace and Facebook. In order to survive and increase in size... Sample PDF
Explaining Participation in Online Communities
Chapter 13
Malcolm Shore
This chapter is about the way in which computer hackers invoke social networking paradigms to support and encourage their activities. It reviews the... Sample PDF
Cyber Security and Anti-Social Networking
Chapter 14
Wilson Huang, Shun-Yung Kevin Wang
This chapter examines the gaps that arise between reactive social control systems and proactive technology systems. The authors further link these... Sample PDF
Emerging Cybercrime Variants in the Socio-Technical Space
Chapter 15
Elayne W. Coakes, Peter Smith, Dee Alwis
This chapter presents the argument that service innovation is promoted by supporting divergent interpretations, enlarging the scope of employee and... Sample PDF
Developing Innovative Practice in Service Industries
Mark Aakhus
Prologue: Socio-Technical Analysis
Chapter 16
Hans Weigand
Often socio-technical systems are designed simply on the basis of what the user asks, and without considering explicitly whether the required... Sample PDF
Using Communication Norms in Socio-Technical Systems
Chapter 17
Jonas Sjöström, Göran Goldkuhl
This chapter introduces the theoretical framework of Socio-Instrumental Pragmatism (SIP) and illustrates how it has been used as an analytic... Sample PDF
Socio-Instrumental Pragmatism in Action
Chapter 18
Paul J. Bracewell
Analytics provides evidence for objective corporate decision-making. Lack of understanding of analytical techniques can create confusion amongst... Sample PDF
A Framework for Using Analytics to Make Decisions
Chapter 19
Mikael Lind, Peter Rittgen
Setting up co-design processes involving several stakeholders is a complex task. In this chapter the authors have looked upon experiences from... Sample PDF
The Challenges of Co-Design and the Case of e-Me
Chapter 20
Harry S. Delugach
Automated tools are often used to support software development workflows. Many of these tools are aimed toward a development workflow that relies... Sample PDF
Formal Analysis of Workflows in Software Development
Chapter 21
Dorit Nevo, Brent Furneaux
This chapter reviews the significance of expectations to information systems development with particular emphasis on the process of requirements... Sample PDF
The Role of Expectations in Information Systems Development
Chapter 22
Jeff Axup
With mobile technologies increasingly weaving themselves into the fabric of our communities, it would be beneficial to increase our understanding of... Sample PDF
Building a Path for Future Communities
Thomas Erickson
Prologue: Socio-Technical Design
Chapter 23
Thomas Herrmann
Socio-technical systems integrate technical and organizational structures and are related to various stakeholders and their perspectives. The design... Sample PDF
Systems Design with the Socio-Technical Walkthrough
Chapter 24
Anders I. Mørch
This chapter presents a translational approach to socio-technical design, as a new approach to the theorybased design of user interfaces, supported... Sample PDF
Applied Pragmatism and Interaction Design
Chapter 25
Manuel Kolp, Yves Wautelet
Information systems are deeply linked to human activities. Unfortunately, development methodologies have been traditionally inspired by programming... Sample PDF
A Social Framework for Software Architectural Design
Chapter 26
Designing for Trust  (pages 388-401)
Piotr Cofta
Designing for trust is a methodology that attempts to design our perception of trust in information systems, in the long-term expectation that such... Sample PDF
Designing for Trust
Chapter 27
Dan Dixon
Three decades ago the concept of pattern languages were introduced in the field of architecture and they have since become widely used in... Sample PDF
Pattern Languages for CMC Design
Chapter 28
Anton Nijholt, Dirk Heylen, Rutger Rienks
In this chapter the authors discuss a particular approach to the creation of socio-technical systems for the meeting domain. Besides presenting a... Sample PDF
Creating Social Technologies to Assist and Understand Social Interactions
Chapter 29
Jos Benders, Ronald Batenburg, Paul Hoeken, Roel Schouteten
This chapter sketches an Organization Design perspective called “Modern Socio-technical Design”, and subsequently discusses the implementation of... Sample PDF
A Modern Socio-Technical View on ERP-Systems
Chapter 30
Mary Allan, David Thorns
The chapter introduces the Bourdieuean habitus and field theory as a framework for an alternative way of investigating how perceptions of Media Rich... Sample PDF
Being Face to Face: A State of Mind or Technological Design?
Chapter 31
Rebecca M. Ellis
This chapter introduces the work of sociologist Pierre Bourdieu and his concepts of “the field” and “capital” in relation to eBay. In any given... Sample PDF
Applying Bourdieu to eBay's Success and Socio-Technical Design
Chapter 32
Christopher A. Miller
This chapter focuses not on technology mediation of human relationships, but rather on human-like relationships with technology itself. The author... Sample PDF
Relationships and Etiquette with Technical Systems
Anton Nijholt
Prologue: Socio-Technical Implementation
Chapter 33
Laura Anna Ripamonti, Ines Di Loreto, Dario Maggiorini
The necessity of supporting more and more social interaction (and not only mere information sharing) in online environments is the disruptive force... Sample PDF
Augmenting Actual Life Through MUVEs
Chapter 34
Mohamed Ben Ammar, Mahmoud Neji, Adel M. Alimi
Affective computing is a new artificial intelligence area that deals with the possibility of making computers able to recognize human emotions in... Sample PDF
The Role of Affect in an Agent-Based Collaborative E-Learning System Used for Engineering Education
Chapter 35
Pernilla Qvarfordt, Shumin Zhai
Eye-gaze plays an important role in face-to-face communication. This chapter presents research on exploiting the rich information contained in human... Sample PDF
Gaze-Aided Human-Computer and Human-Human Dialogue
Chapter 36
Licia Calvi
The chapter presents and combines the results of two case studies dealing with online communities1 in order to understand under which conditions... Sample PDF
How to Engage Users in Online Sociability
Chapter 37
Ivan Launders
The UK National Health Service (NHS) provides the opportunity to undertake local socio-technical system design to help staff maximize the... Sample PDF
Socio-Technical Systems and Knowledge Representation
Chapter 38
Claire de la Varre, Julie Keane, Matthew J. Irvin, Wallace Hannum
This chapter describes the design of a sociotechnical system to support rural high school students in an online distance education (ODE) course. The... Sample PDF
Social Support for Online Learning
Chapter 39
Jeremy Birnholtz, Emilee J. Rader, Daniel B. Horn, Thomas Finholt
This chapter uses the theoretical notion of common ground to explore remote participation in experimental research. On one hand, there is a desire... Sample PDF
Enabling Remote Participation in Research
Starr Roxanne Hiltz
Prologue: Socio-Technical Evaluation
Chapter 40
John M. Carroll, Mary Beth Rosson, Umer Farooq, Jamika D. Burge
Socio-technical systems are social systems that incorporate technological infrastructures. At the group level of analysis, the most important... Sample PDF
Community Collective Efficacy
Chapter 41
Tanguy Coenen, Wouter Van den Bosch, Veerle Van der Sluys
This chapter views social networking sites as supporting social capital and the advantages which derive from it, namely emotional support... Sample PDF
An Analysis of the Socio-Technical Gap in Social Networking Sites
Chapter 42
Olga Kulyk, Betsy van Dijk, Paul van der Vet, Anton Nijholt, Gerrit van der Veer
This chapter addresses awareness support to enhance teamwork in co-located collaborative environments. In particular, the authors focus on the... Sample PDF
Situational Awareness In Collaborative Work Environments
Chapter 43
Janet L. Holland
This chapter deals with research on the development and use of an assessment instrument for measuring affective satisfaction in online learning. The... Sample PDF
A Scale of Affective Satisfaction in Online Learning Communities
Chapter 44
David Hinds, Ronald M. Lee
In this chapter, the authors suggest how measures of “social network health” can be used to evaluate the status and progress of a virtual community.... Sample PDF
Assessing the Social Network Health of Virtual Communities
Chapter 45
Bertram C. Bruce, Andee Rubin, Junghyun An
This chapter introduces situated evaluation as an approach for evaluating socio-technical innovation and change. Many current evaluations simply... Sample PDF
Situated Evaluation of Socio-Technical Systems
Chapter 46
Heike Winschiers-Theophilus
Communities all over the world have established their own value systems which do not necessarily correlate with the intrinsic values of technology.... Sample PDF
Cultural Appropriation of Software Design and Evaluation
Charles Steinfield
Prologue: The Future of Socio-Technical Systems
Chapter 47
Peter J. Denning
Wicked problems (messes) are tangled social situations that are too costly to stay in and too intransigent to get out of. Collaboration is essential... Sample PDF
Resolving Wicked Problems through Collaboration
Chapter 48
Rachel McLean
As a social activity, the shopping experience can not be recreated or improved through technical design alone. This chapter proposes that there is... Sample PDF
The Myth of the e-Commerce Serf to Sovereign Powershift
Chapter 49
Theresa Dirndorfer Anderson
This chapter explores the challenges associated with teaching the principles of socio-technical systems in the dynamic climate that characterizes... Sample PDF
Teaching the Socio-Technical Practices of Tomorrow Today
Chapter 50
Isa Jahnke
The chapter describes an empirical study of a socio-technical community—as an extended part of an institution— with the aim of revealing its... Sample PDF
Socio-Technical Communities: From Informal to Formal?
Chapter 51
Laurence Claeys, Johan Criel
This chapter introduces the concept of critical user participation as a means to see the socio-technical gap in context aware applications as an... Sample PDF
Future Living in a Participatory Way
Chapter 52
Paul Hodgson
This chapter analyses the formation and generation of social trust through communications technology in postmodern society, and presents some... Sample PDF
The Impact of Communications Technology on Trust
Chapter 53
Kenneth E. Kendall, Julie E. Kendall
This chapter explores the social, organizational, and individual impacts of emerging information technologies using the advent of recent... Sample PDF
Good and Evil in the Garden of Emerging Information Technologies
About the Contributors