Collaborative Education: Building a Skilled Software Verification and Validation User Community
Author(s) -
Sushil Acharya,
P. Manohar,
Walter Schilling,
Ali Ansari,
Peter Wu
Publication year - 2020
Publication title -
papers on engineering education repository (american society for engineering education)
Language(s) - English
Resource type - Conference proceedings
DOI - 10.18260/1-2--20172
Subject(s) - engineering management , software , economic shortage , knowledge management , computer science , software project management , software development , software engineering , engineering , software construction , linguistics , philosophy , government (linguistics) , programming language
Software quality is a crucial issue in software engineering. As software has become ubiquitous, software products have become critical. This poses multitude of problems in the software industry, as there is generally a lack of knowledge of Software Verification and Validation (V&V) benefits and also there is a significant shortage of adequately trained V&V practitioners. This paper describes outlines of a research study that focuses on bridging these supply and demand and knowledge and training gaps in V&V education. Research outcomes both in terms of domain-specific research as well as pedagogical impact are presented. The basic project objectives are to improve software education at the undergraduate level and enhance onthe-job professional training, thereby increasing the pool of professionals with V&V knowledge and skills. The existing V&V course at Author’s institution is critically examined with a view to enhance and modularize selected topics, and improve delivery strategies by incorporating academic research findings and industry best practices. The cogent modules and strategies being developed in this work will be shared among project participants and disseminated to other institutions through multiple channels. Students and practitioners will be equipped with fundamental theoretical knowledge and invaluable hands-on-experiences that will measurably increase their ability to contribute to the industry. 1. Background and Rationale Software quality is a crucial issue in software engineering. As software has become ubiquitous, software products have become critical. This poses a problem in the software industry, as there is generally a lack of knowledge of Software Verification and Validation (V&V) benefits and a shortage of adequately trained V&V practitioners. This project, funded by the National Science Foundation –Transforming Undergraduate Education in Science, Technology, Engineering and Mathematics (NSF-TUES) grant, has objectives to transform a required course in Software V&V offered to Software Engineering students at Author’s University and disseminate it to the academic and professional communities. Existing course contents are being critically examined by a team of faculty and software development practitioners for the purpose of enhancing and modularizing the three credit semester long course using the ADDIE (Analysis, Design, Develop, Implement, and Evaluate) model for instructional design. The improved modules will be developed as mini learning workshops and will be initially delivered at seven universities and deployed by four organizations for on-the-job training. Based upon an assessment of the learning achieved in each delivery mode, the modules will be finalized and packaged for use by additional institutions interested in using the new courseware. In addition, the course modules and assessment reports will be made available P ge 24281.2 through courseware repository and conferences/publications, and professional societies (ex. National Science Digital Library – NSDL, American Society for Engineering Education – ASEE, Association of Computing Machinery – ACM). The end result is expected to improve product and process quality levels throughout the software development community, resulting in a larger and more skilled software V&V user community. The rationale for this project is significant. The Standish Group has categorized software projects as successful, challenged, or failed. Successful projects are defined as those completed on time and on budget, and with all features and functions as originally specified [1] . For the year 2011 the Standish Group’s CHAOS report identified only 37% of software projects as successful [2] . While this is an improvement over previous years, it is still very low. However, much of the improvement can be attributed to implementing standards and practices, one of them being Independent Verification & Validation. [3] Even after many years of developmental activities, software companies continue to spend considerable time and resources, directly and indirectly, dealing with issues of software quality [4] . Specific projects that fail can have a significant impact on many daily personal and business decisions. In October 2013 the US federal government rolled out a failed version of the universal health care website “HealthCare.gov” at a massive cost of 330 million and counting [5] . Also in October 2013, Toyota was found guilty of causing death due to unintended acceleration, the rootcause being “a systematic software malfunction in the Main CPU” [6, 7] . The fishbone diagram (alternatively known as the cause and effect diagram) in Figure 1 depicts critical issues in the 4P’s (People, Project, Product and Process) of effective project management that contribute to software failures. Poor software performance can be traced to a lack of courseware that inhibits both effective academic teaching and on-the-job training. Software quality and software project success rates indicate that V&V is not adequately practiced by the industry. In general, industry has not institutionalized V&V best practices and also lacks practitioners who have practical understanding of V&V topics. High quality software is achieved if software verification and validation activities are integrated into all phases of the software development life cycle (SDLC). For the $549.3 billion (revenue) software industry [8] effective software verification activities will ensure that software development conforms to the desired specifications based on all the assumptions made. Validation activities are performed only after the software is developed to determine if the software correctly executes customer requirements. 2. Research Objectives This project is designed to address V&V related root causes of software failure depicted in Figure 1. First, the improved courseware will be appropriate for delivery in undergraduate education programs, thereby improving the skill and knowledge level of graduates who will enter the software development profession. Second, the courseware will be packaged in discrete modules so that the project results can be used for in-house training programs that will improve P ge 24281.3 the skills and knowledge levels of current software practitioners. Finally the courseware will be developed and tested through the efforts of a team of university and industry partners creating a V&V community which can champion and promote expanded institutionalization of V&V best
Accelerating Research
Robert Robinson Avenue,
Oxford Science Park, Oxford
OX4 4GP, United Kingdom
Address
John Eccles HouseRobert Robinson Avenue,
Oxford Science Park, Oxford
OX4 4GP, United Kingdom