skip to main content
10.1145/2695664.2695789acmconferencesArticle/Chapter ViewAbstractPublication PagessacConference Proceedingsconference-collections
research-article

A framework to formally verify conformance of a software process to a software method

Published: 13 April 2015 Publication History

Abstract

The increasing complexity of development projects requires methodological frameworks to support development processes. A method comes with a set of best practices that are enforced and instantiated into processes to drive the realization steps of the development project. However, those best practices come in the form of text in guides and books, or they are in the developer's mind. Thus, during an instantiation of a method, there is no guaranty to enforce its best practices into the process, which could impact negatively the criteria: cost, time, and quality. To cope with this issue, we propose a library of best practices to be checked for four popular methods: Unified Process, Extreme Programming, Scrum and Kanban. On top of this library we have built up a template-based constraint language and implemented it to express additional constraints on processes that are modeled with UML Activity Diagrams (AD). To apply formal verification, we leverage on a formalization based on fUML semantics. The evaluation showed the feasibility of our approach which covers all the aspects of the process, i.e. time, resource, control-flow, and data-flow.

References

[1]
B. Boehm, "Get ready for agile methods, with care," Computer vol. 35, no. 1, pp. 64--69, 2002.
[2]
E. Hossain, M. A. Babar, and H. Paik, "Using Scrum in Global Software Development: A Systematic Literature Review," in Fourth IEEE ICGSE, 2009, pp. 175--184.
[3]
J. Sutherland, A. Viktorov, J. Blount, and N. Puntikov, "Distributed Scrum: Agile Project Management with Outsourced Development Teams," in 40th HICSS 2007.
[4]
K. Schwaber, M. Beedle, Agile Software Development with Scrum, 1ed. Prentice Hall, 2001.
[5]
I. Abdelhalim, J. Sharp, S. Schneider, and H. Treharne, "Formal Verification of Tokeneer Behaviours Modelled in fUML Using CSP," in Formal Methods and Software Engineering, 2010.
[6]
http://epf.eclipse.org/wikis/openup, "OpenUP", Accessed 24/06/2014.
[7]
K. Beck and C. Andres, Extreme Programming Explained: Embrace Change (2Nd Edition). Addison-Wesley Professional, 2004.
[8]
A. Bröckers and V. Gruhn, "Computer-aided verification of software process model properties," in CAISE 1993, pp. 521--546.
[9]
M. M. Muller and W. F. Tichy, "Case study: extreme programming in a university environment," in the 23rd ICSE, 2001, pp. 537--544.
[10]
R. Juric, "Extreme programming and its development practices," in Proceedings of the 22nd International Conference on Information Technology Interfaces, ITI, 2000, pp. 97--104.
[11]
H. Kniberg, M. Skarin, Kanban and Scrum - making the most of both, C4Media, 2010, ISBN: 978-0-557-13832-6, 120 pages.
[12]
Sadiq, W., Orlowska, M. E.: Analyzing process models using graph reduction techniques. Information systems 25(2) (2000) 117--134.
[13]
R. Bendraou, J. Jezequel, M.-P. Gervais, and X. Blanc, "A Comparison of Six UML-Based Languages for Software Process Modeling," IEEE TSE, vol. 36, no. 5, pp. 662--675, 2010.
[14]
R. Bendraou, M.-P. Gervais, and X. Blanc, "UML4SPM: A UML2.0-Based Metamodel for Software Process Modelling," in Model Driven Engineering Languages and Systems, MODELS 2005.
[15]
A. Pnueli, "The temporal logic of programs,"18th Annual Symposium FOCS, pp. 46--57, 1977.
[16]
W. M. P. van der Aalst, K. M. van Hee, A. H. M. ter Hofstede, N. Sidorova, H. M. W. Verbeek, M. Voorhoeve, and M. T. Wynn, "Soundness of workflow nets: classification, decidability, and analysis," Form Asp Comp, vol. 23, no. 3, pp. 333--363, May 2011.
[17]
OMG: FUML version 1.0. www.omg.org/spec/FUML/2011.
[18]
A. Forster, G. Engels, T. Schattkowsky, and R. Van Der Straeten, "Verification of Business Process Quality Constraints Based on Visual Process Patterns," in TASE, 2007, pp. 197--208.
[19]
A. Awad, M. Weidlich, and M. Weske, "Visually specifying compliance rules and explaining their violations for business processes" J. Vis. Lang. Comput., vol. 22, no. 1, Feb. 2011.
[20]
D. Jackson, Software Abstractions: logic, language and analysis, Mit Pr 2011.
[21]
W. M. P. Van Der Aalst, A. H. M. Ter Hofstede, B. Kiepuszewski, and A. P. Barros, "Workflow Patterns" Distrib. Parallel Databases, vol. 14, no.1, jul. 2003.
[22]
Y. Laurent, R. Bendraou, S. Baarir, M. P. Gervais, "Formalization of fUML: an Application to Process Verification," in CAISE, 2014, pp. 347--363.
[23]
T. Lodderstedt, D. Basin, and J. Doser, "SecureUML: A UML-Based Modeling Language for Model-Driven Security," in "UML" 2002 --- The Unified Modeling Language, 2002, pp. 426--441.
[24]
E. del Nuevo, M. Piattini, and F. J. Pino, "Scrum-based Methodology for Distributed Software Development,"in 2011 6th ICGSE, 2011, pp. 66--74.
[25]
J. Hoffmann, I. Weber, and G. Governatori, "On compliance checking for clausal constraints in annotated process models," Inf Syst Front, vol. 14, no. 2, pp. 155--177, Apr. 2012.
[26]
R. Eshuis, "Symbolic Model Checking of UML Activity Diagrams," ACM Trans. Softw. Eng. Methodol. vol. 15, no. 1, pp. 1--38, Jan. 2006.
[27]
K. Jensen, Coloured Petri Nets: Basic Concepts, Analysis Methods and Practical Use. Springer, 1997.
[28]
R. Alur and D. L. Dill, "A theory of timed automata," Theoretical Computer Science, vol. 126, no. 2, pp. 183--235, Apr. 1994.
[29]
O. Salo and P. Abrahamsson, "Agile methods in European embedded software development organisations: a survey on the actual use and usefulness of Extreme Programming and Scrum," IET Software, vol. 2, no. 1, pp. 58--64, Feb. 2008.
[30]
P. Kruchten, "The Rational Unified Process: An Introduction," Addison-Wesley Professional, 2004.
[31]
N. Guelfi and A. Mammar, "A formal semantics of timed activity diagrams and its PROMELA translation,"in APSEC, 2005.
[32]
V.-P. Eloranta, K. Koskimies, T. Mikkonen, and J. Vuorinen, "Scrum Anti-Patterns -- An Empirical Study," in APSEC, 2013.
[33]
M. B. Dwyer, G. S. Avrunin, and J. C. Corbett, "Patterns in property specifications for finite-state verification,"in ICSE, 1999, pp. 411--420.

Cited By

View all
  • (2023)Monitoring Association Constraints in Model-Oriented Programming2023 ACM/IEEE International Conference on Model Driven Engineering Languages and Systems Companion (MODELS-C)10.1109/MODELS-C59198.2023.00068(375-380)Online publication date: 1-Oct-2023
  • (2023)Towards Leveraging Tests to Identify Impacts of Metamodel and Code Co-evolutionIntelligent Information Systems10.1007/978-3-031-34674-3_16(129-137)Online publication date: 8-Jun-2023
  • (2022)Compliance checking of software processes: A systematic literature reviewJournal of Software: Evolution and Process10.1002/smr.244034:5Online publication date: 14-Mar-2022
  • Show More Cited By

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Conferences
SAC '15: Proceedings of the 30th Annual ACM Symposium on Applied Computing
April 2015
2418 pages
ISBN:9781450331968
DOI:10.1145/2695664
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

Sponsors

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 13 April 2015

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. constraints
  2. extreme programming
  3. kanban
  4. scrum
  5. software process model
  6. unified process
  7. verification

Qualifiers

  • Research-article

Funding Sources

  • European Union

Conference

SAC 2015
Sponsor:
SAC 2015: Symposium on Applied Computing
April 13 - 17, 2015
Salamanca, Spain

Acceptance Rates

SAC '15 Paper Acceptance Rate 291 of 1,211 submissions, 24%;
Overall Acceptance Rate 1,650 of 6,669 submissions, 25%

Upcoming Conference

SAC '25
The 40th ACM/SIGAPP Symposium on Applied Computing
March 31 - April 4, 2025
Catania , Italy

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)8
  • Downloads (Last 6 weeks)1
Reflects downloads up to 05 Mar 2025

Other Metrics

Citations

Cited By

View all
  • (2023)Monitoring Association Constraints in Model-Oriented Programming2023 ACM/IEEE International Conference on Model Driven Engineering Languages and Systems Companion (MODELS-C)10.1109/MODELS-C59198.2023.00068(375-380)Online publication date: 1-Oct-2023
  • (2023)Towards Leveraging Tests to Identify Impacts of Metamodel and Code Co-evolutionIntelligent Information Systems10.1007/978-3-031-34674-3_16(129-137)Online publication date: 8-Jun-2023
  • (2022)Compliance checking of software processes: A systematic literature reviewJournal of Software: Evolution and Process10.1002/smr.244034:5Online publication date: 14-Mar-2022
  • (2021)Inconsistency-tolerating guidance for software engineering processesProceedings of the 43rd International Conference on Software Engineering: New Ideas and Emerging Results10.1109/ICSE-NIER52604.2021.00010(6-10)Online publication date: 25-May-2021
  • (2020)Consistent change propagation within modelsSoftware and Systems Modeling10.1007/s10270-020-00823-4Online publication date: 25-Aug-2020
  • (2019)Detecting and exploring side effects when repairing model inconsistenciesProceedings of the 12th ACM SIGPLAN International Conference on Software Language Engineering10.1145/3357766.3359546(113-126)Online publication date: 20-Oct-2019
  • (2016)Supporting the co-adaption of process propertiesProceedings of the International Conference on Software and Systems Process10.1145/2904354.2904371(1-5)Online publication date: 14-May-2016

View Options

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Figures

Tables

Media

Share

Share

Share this Publication link

Share on social media