Investigating a Distributed and Scalable Model Review Process
DOI:
https://doi.org/10.19153/cleiej.21.1.4Keywords:
Review, Inspection, Models, Model Quality Assurance, Crowdsourcing, Feasibility Study, Controlled ExperimentAbstract
[Context] Models play an important role in Software and Systems Engineering processes. Reviews are well-established methods for model quality assurance that support early and efficient defect detection. However, traditional document-based review processes have limitations with respect to the number of experts, resources, and the document size that can be applied. [Objective] In this paper, we introduce a distributed and scalable review process for model quality assurance to (a) improve defect detection effectiveness and (b) to increase review artifact coverage. [Method] We introduce the novel concept of Expected Model Elements (EMEs) as a key concept for defect detection. EMEs can be used to drive the review process. We adapt a best-practice review process to distinguish (a) between the identification of EMEs in the reference document and (b) the use of EMEs to detect defects in the model. We design and evaluate the adapted review process with a crowdsourcing tool in a feasibility study. [Results] The study results show the feasibility of the adapted review process. Further, the study showed that inspectors using the adapted review process achieved results for defect detection effectiveness, which are comparable to the performance of inspectors using a traditional inspection process, and better defect detection efficiency. Moreover, from a practical perspective the adapted review process can be used to complement inspection efforts conducted using the traditional inspection process, enhancing the overall defect detection effectiveness. [Conclusions] Although the study shows promising results of the novel process, future investigations should consider larger and more diverse review artifacts and the effect of using limited and different scopes of artifact coverage for individual inspectors.
References
[2] A. Aurum, H. Petersson, C. Wohlin, “State-of-the-Art: Software Inspection after 25 years,” Journal of Software, Testing, Verification and Reliability, 12(3), pp.133-154, 2002.
[3] S. Biffl, P. Grünbacher, M. Halling, “A Family of Experiments to Investigate the Effects of Groupware for Software Inspection,” Automated Software Engineering, 13(3), pp.373-394, 2006.
[4] L. Briand, D. Falessi, S. Nejati, M. Sabetzadeh and T. Yue, “Traceability and SysML design slices to support safety inspections: A controlled experiment,” ACM Transactions on Software Engineering and Methodology (TOSEM), 23(1), 2014.
[5] M.E. Fagan, “Design and code inspections to reduce errors in program development,” IBM Systems Journal, 15(7), pp. 182-211, 1976.
[6] M. Kalinowski, G. Travassos, “A computational framework for supporting software inspections,” in Proceedings of the International Conference on Automated Software Engineering (ASE), pp. 46-55, 2004.
[7] F. Lanubile, T. Mallardo, “Tool support for distributed inspection,” in Proceedings of COMPSAC, 2002.
[8] T.D. LaToza, A. van der Hoek, “Crowdsourcing in Software Engineering: Models, Motivations, and Challenges,” IEEE Software, 33(1), pp. 74-80, 2016.
[9] K. Mao, L. Capra, M. Harman, Y. Jia, “A survey of the use of crowdsourcing in software engineering,” Journal of Systems and Software, 28p., Available: http://dx.doi.org/10.1016/j.jss.2016.09.015, 2016.
[10] NASA, “Software Formal Inspection Standards,” NASA-STD-8739.9, NASA, 2013.
[11] M. Poesio, J. Chamberlain, U. Kruschwitz, L. Robaldo, L. Ducceschi, “Phrase detectives: Utilizing collective intelligence for internet-scale language resource creation,” ACM Trans. Interact. Intell. Syst., 3(1), 44p., 2013.
[12] A. Quinn, B. Bederson, “Human Computation: A Survey and Taxonomy of a Growing Field,” in Proc. of Human Factors in Computing Systems (CHI), pp.1403-1412, 2011.
[13] P. Rigby, B. Cleary, F. Painchaud, M-A. Storey, D. German, “Contemporary Peer Review in Action: Lessons Learned from Open Source Development,” IEEE Software, 29(6), pp.56-61, 2012.
[14] W. Suryn, Software Quality Assurance. A Practitioner’s Approach. Wiley, 2014.
[15] G. Travassos, F. Shull, M. Fredericks, V.R. Basili, “Detecting Defects in Object Oriented Designs: Using Reading Techniques to Increase Software Quality,” in Proceedings of the 14th ACM SIGPLAN OOPSLA Conference, pp 47-56, 1999.
[16] D. Winkler D., F.J. Ekaputra, S. Biffl, “AutomationML Review Support in Multi-Disciplinary Engineering Environments”, in Proceedings of ETFA, pp.1-8, 2016.
[17] D. Winkler, M. Sabou, S. Petrovic, S. Biffl, M. Kalinowski, G. Carneiro, “Improving Model Inspection with Crowdsourcing,” in Proceedings of the 4th International Workshop on Crowdsourcing in Software Engineering (CSI-SE), ACM/IEEE International Conference on Software Engineering (ICSE), Buenos Aires, Argentina, 2017.
[18] D. Winkler, M. Sabou, S. Petrovic, G. Carneiro, M. Kalinowski, S. Biffl, “Investigating Model Quality Assurance with a Distributed and Scalable Review Process,” in Proceedings of the 20th Ibero-American Conference on Software Engineering (CIBSE), Experimental Software Engineering (ESELAW) Track, Buenos Aires, Argentina, 2017.
[19] C. Wohlin, P. Runeson, M. Höst, M. Ohlsson, B. Regnell, A. Wessl, Experimentation in software engineering. Springer, 2012.
Downloads
Published
Issue
Section
License
CLEIej is supported by its home institution, CLEI, and by the contribution of the Latin American and international researchers community, and it does not apply any author charges whatsoever for submitting and publishing. Since its creation in 1998, all contents are made publicly accesibly. The current license being applied is a (CC)-BY license (effective October 2015; between 2011 and 2015 a (CC)-BY-NC license was used).