Advertisement

Using Correct-by-Construction Software Agile Development

  • Rafael Augusto Lopes Shigemura
  • Gildarcio Sousa Goncalves
  • Luiz Alberto Vieira Dias
  • Paulo Marcelo Tasinaffo
  • Adilson Marques da Cunha
  • Luciana Sayuri Mizioka
  • Leticia Hissae Yanaguya
  • Victor Ulisses Pugliese
Conference paper
Part of the Advances in Intelligent Systems and Computing book series (AISC, volume 738)

Abstract

Disasters and crises, whether climatic, economic, or social are undesirably frequent in everyday lives. In such situations, lives are lost mainly because of inadequate management, lack of qualified and accurate information, besides other factors that prevent full situational awareness, including software failures. The goal of this paper is to report the agile conceptualization, design, build, and demonstration of a computerized system, containing correct-by-construction software, to safely manage critical information, during alerts or crises situations. On this research, the following challenges and requirements were tackled: formal specifications, aerospatial-level reliability, agile development, embedded systems, controlled testability, and product assessment. An Interdisciplinary Problem-Based Learning (IPBL), involving a Scrum of Scrums Agile Framework was adapted for managing the cohesive, productive, and collaborative development team of around 100 undergrad and graduate students remotely working. In addition, the following hardware technologies, for supporting the software development were used: environment sensors, Radio Frequency Identification (RFID), and Unmanned Aerial Vehicles (UAVs). Other software technologies were also used, as well cloud-based web-responsive platforms and mobile applications to geographically manage resources at real-time. Finally, the ANSYS® SCADE (Safety-Critical Application Development Environment) was employed to support the embedded and correct-by-construction module of this system, according to Model-Driven Architecture (MDA) and Model-Driven Development (MDD).

Keywords

Agile software development Correct-by-construction software Model-Driven Architecture (MDA) Model-Driven Development (MDD) Scrum agile method Interdisciplinarity 

Notes

Acknowledgment

The authors would like to thank: the Brazilian Aeronautics Institute of Technology (Instituto Tecnologico de Aeronautica—ITA); the Casimiro Montenegro Filho Foundation (Fundacao Casimiro Montenegro Filho—FCMF); the Ecossistema Digital Business Ltd.; and the 2RP Net Ltd, for their infrastructure and financial support to the development of this research project, allowing its PoC in an academic and simulated real environment.

References

  1. 1.
    United Nations Office for Disaster Risk Reduction (UNISDR) Terminology. https://www.unisdr.org/we/inform/terminology. Accessed 18 Aug 2017
  2. 2.
    Swiss Re Institute, Natural catastrophes and man-made disasters in 2016: a year of widespread damages. http://www.preventionweb.net/publications/view/52534. Accessed 26 Aug 2017
  3. 3.
    UNISDR, International Strategy for Disaster Reduction. https://www.unisdr.org/who-we-are/international-strategy-for-disaster-reduction. Accessed 12 Nov 2016
  4. 4.
    UNISDR, Technology: the future of disaster risk reduction?. https://www.unisdr.org/archive/51043. Accessed 10 Jan 2017
  5. 5.
    Federal Communications Commission, April 2014 Multistate 911 outage: cause and impact. https://apps.fcc.gov/edocs_public/attachmatch/DOC-330012A1.pdf. Accessed 10 Aug 2017
  6. 6.
    W. Sunne, L. Hovmarken, Scrum goes formal: agile methods for safety-critical systems, in Proceedings of the First International Workshop on Formal Methods in Software Engineering: Rigorous and Agile Approaches (FormSERA, Zurich, Switzerland, 2012) Google Scholar
  7. 7.
    K.S. Rubin, Essential SCRUM: A Practical Guide to the Most Popular Agile Process (Addison-Wesley, New York, 2013)Google Scholar
  8. 8.
    J. Sutherland, K. Schwaber, The Definitive Guide to Scrum: The Rules of the Game. http://www.scrumguides.org/docs/scrumguide/v1/Scrum-Guide-US.pdf. Accessed 18 Mar 2016
  9. 9.
    RTCA DO-178C, Software Considerations in Airborne Systems and Equipment Certification (Radio Technical Commission for Aeronautics (RTCA), Washington, DC, 2011)Google Scholar
  10. 10.
    RTCA, DO-278A. Software Integrity Assurance Considerations for Communication, Navigation, Surveillance and Air Traffic Management (CNS/ATM) Systems (RTCA, Washington, DC, 2011)Google Scholar
  11. 11.
    Esterel Technologies Automatic Code Generation. http://www.ansys.com/products/embedded-software/ansys-scade-suite/scade-suite-capabilities#cap6. Accessed 20 Dec 2017
  12. 12.
    L. Rierson, Developing Safety-Critical Software: A Practical Guide for Aviation Software and DO-178C Compliance (CRC Press, New York, 2013)Google Scholar
  13. 13.
    T. Stober, U. Hansmann, Agile Software Development Best Practices for Large Software Development Projects (Springer, Heidelberg, 2010)Google Scholar
  14. 14.
    R.S. Pressman, Software Engineering: A Practitioners Approach (McGraw-Hill, New York, 1997)zbMATHGoogle Scholar
  15. 15.
    L. Copeland, A Practitioner’s Guide to Software Test Design (Artech House Publishers, Norwood, 2007)zbMATHGoogle Scholar
  16. 16.
    L. Crispin, J. Gregory, More Agile Testing (Addison-Wesley, New York, 2015)Google Scholar
  17. 17.
    P. Jorgensen, C. Software, Testing—A Craftsman’s Approach (CRC Press, Boca Raton, 2014)Google Scholar
  18. 18.
    G. Goncalves, et al., An agile developed interdisciplinary approach for safety-critical embedded system, in 14th International Conference on Information Technology: New Generations, vol 2017 (ITNG, Las Vegas, 2017)Google Scholar
  19. 19.
    D. Astels, Test-Driven Development: A Pratical Guide (Prentice Hall, Upper Saddle River, 2003)Google Scholar
  20. 20.
    K. Beck, Test-Driven Development by Example (Addison-Wesley, New York, 2002)Google Scholar
  21. 21.
    I. Sommerville, Software Engineering, 9th edn. (Addison-Wesley, Harlow, 2010)zbMATHGoogle Scholar
  22. 22.
    J. Martins, et al., Agile testing quadrants on problem-based learning involving agile development, big data anda cloud computting, in 14th International Conference on Information Technology: New Generations (ITNG 2017), (Las Vegas, NV, 2017)Google Scholar
  23. 23.
    G. Berry, The foundations of Esterel, in Proof, Language and Interaction: Essays in Honour of Robin Milner, Foundations of Computing Series, ed. By G. Plotkin, C. Stirling, M. Tofte, (MIT Press, Cambridge, 2000)Google Scholar
  24. 24.
    Esterel Technologies. http://www.esterel-technologies.com/products/scade-arinc-661/. Accessed 26 Mar 2016
  25. 25.
    Esterel Technologies “SCADE Suite”. http://www.esterel-technologies.com/products/scade-suite/. Accessed 22 Mar 2017
  26. 26.
    G. Super, S. Groth, R. Hook, et al., START: Simple Triage and Rapid Treatment Plan (Hoag Memorial Presbyterian Hospital, Newport Beach, 1994)Google Scholar

Copyright information

© Springer International Publishing AG, part of Springer Nature 2018

Authors and Affiliations

  • Rafael Augusto Lopes Shigemura
    • 1
  • Gildarcio Sousa Goncalves
    • 1
  • Luiz Alberto Vieira Dias
    • 1
  • Paulo Marcelo Tasinaffo
    • 1
  • Adilson Marques da Cunha
    • 1
  • Luciana Sayuri Mizioka
    • 1
  • Leticia Hissae Yanaguya
    • 1
  • Victor Ulisses Pugliese
    • 1
  1. 1.Computer Science DepartmentBrazilian Aeronautics Institute of Technology (Instituto Tecnologico de Aeronautica—ITA)Sao Jose dos CamposBrazil

Personalised recommendations