Nothing Special   »   [go: up one dir, main page]

Skip to main content

Automated Process Quality Assurance for Distributed Software Development

  • Conference paper
Software Engineering Approaches for Offshore and Outsourced Development (SEAFOOD 2008)

Abstract

As required or implicated in many process improvement or assessment models, Process Quality Assurance (PQA) is introduced to objectively evaluate actual software processes against applicable processes descriptions, standards, and procedures and to identify potential noncompliance. In a Distributed Software Development (DSD) environment, PQA is also an absolute necessity to ensure that each development site behaves as expected and high quality software is collaboratively developed. However, several problems brought by the distribution nature of DSD, such as different interpretations of standard processes among development sites, inconsistent criteria for identifying noncompliance, visibility into development activities of all sites being challenging, hidden conflicts or noncompliance for political issues within a site, substantial investment in setting up PQA teams in each site etc., can undermine the objectivity and effectiveness of PQA activities. To alleviate these problems, we introduce an approach in this paper that automates PQA activities for some routine checking tasks in a DSD environment. In the approach, a process model describing the actual software process is automatically built from each site’s repository and, then, the model is checked against logic formulae derived from a common checklist to detect noncompliance. Experiment results show that the approach is helpful to ensure that PQA activities in each site can be conducted according to the same guideline and the objectivity of PQA results is guaranteed.

Supported by the National Natural Science Foundation of China under grant Nos. 60573082, 60473060, 90718042 and the Hi-Tech Research and Development Program (863 Program) of China under grant No.2006AA01Z185, 2007AA010303, as well as the National Basic Research Program (973 Program) of China under grant No. 2007CB310802.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Subscribe and save

Springer+ Basic
$34.99 /Month
  • Get 10 units per month
  • Download Article/Chapter or eBook
  • 1 Unit = 1 Article or 1 Chapter
  • Cancel anytime
Subscribe now

Buy Now

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

Similar content being viewed by others

References

  1. Chrissis, M.B., Konrad, M., Shrum, S.: CMMI®: Guidelines for Process Integration and Product Improvement. Addison Wesley Professional, Reading (2003)

    Google Scholar 

  2. Schmauch, C.H.: ISO 9000 for Software Developers. ASQC Quality Press (1994)

    Google Scholar 

  3. Bradfield, J., Stirling, C.: Modal logics and μ-calculi: an introduction. In: Bergstra, J., Ponse, A., Smolka, S. (eds.) Handbook of Process Algebra, pp. 293–330. Elsevier, Amsterdam (2001)

    Chapter  Google Scholar 

  4. Sommerville, I.: Software Engineering, 7th edn. Addison Wesley, Reading (2004)

    MATH  Google Scholar 

  5. Rai, A., Song, H., Troutt, M.: Software quality assurance: An analytical survey and research prioritization. Journal of Systems and Software 40, 67–83 (1998)

    Article  Google Scholar 

  6. Memon, A., Porter, A., Yilmaz, C., Nagarajan, A., Schmidt, D., Natarajan, B.: Skoll: Distributed continuous quality assurance. In: The 26th IEEE/ACM International Conference on Software Engineering, pp. 459–468 (2004)

    Google Scholar 

  7. Ramasubbu, N., Balan, R.K.: Globally distributed software development project performance: an empirical analysis. In: The 6th joint meeting of the European software engineering conference and the ACM SIGSOFT symposium on The foundations of software engineering, pp. 125–134. ACM, New York (2007)

    Google Scholar 

  8. Gopal, A., Mukhopadhyay, T., Krishnan, M.S.: The role of software processes and communication in offshore software development. Communications of the ACM 45, 193–200 (2002)

    Article  Google Scholar 

  9. Reis, C.R., de Mattos Fortes, R.P.: An overview of the software engineering process and tools in the mozilla project. In: The Open Source Software Development Workshop, pp. 155–175 (2002)

    Google Scholar 

  10. Zhao, L., Elbaum, S.: A survey on quality related activities in open source. ACM SIGSOFT Software Engineering Notes 25, 54–57 (2000)

    Article  Google Scholar 

  11. Becker, S., Jäger, D., Schleicher, A., Westfechtel, B.: A delegation based model for distributed software process management. In: Ambriola, V. (ed.) EWSPT 2001. LNCS, vol. 2077, pp. 130–144. Springer, Heidelberg (2001)

    Google Scholar 

  12. Vanzin, M., Ribeiro, M.B., Prikladnicki, R., Ceccato, I., Antunes, D.: Global software processes definition in a distributed environment. In: SEW 2005: Proceedings of the 29th Annual IEEE/NASA on Software Engineering Workshop, Washington, DC, USA, pp. 57–65. IEEE Computer Society, Los Alamitos (2005)

    Chapter  Google Scholar 

  13. Cook, J., Wolf, A.: Discovering models of software processes from event-based data. ACM Transactions on Software Engineering and Methodology 7, 215–249 (1998)

    Article  Google Scholar 

  14. Cook, J.E., Du, Z.: Discovering thread interactions in a concurrent system. Journal of Systems and Software 77, 285–297 (2005)

    Article  Google Scholar 

  15. Cook, J.E., Du, Z., Liu, C., Wolf, A.L.: Discovering models of behavior for concurrent workflows. Computers in Industry 53, 297–319 (2004)

    Article  Google Scholar 

  16. van der Aalst, W., Weijters, A., Maruster, L.: Workflow mining: Discovering process models from event logs. IEEE Transactions on Knowledge and Data Engineering 16, 1128–1142 (2004)

    Article  Google Scholar 

  17. Weijters, A., van der Aalst, W.: Rediscovering workflow models from event-based data using little thumb. Integrated Computer-Aided Engineering 10, 151–162 (2003)

    Google Scholar 

  18. Cook, J., Wolf, A.: Software process validation: Quantitatively measuring the correspondence of a process to a model. ACM Transactions on Software Engineering and Methodology 8, 147–176 (1999)

    Article  Google Scholar 

  19. Rozinat, A., van der Aalst, W.: Conformance testing: Measuring the fit and appropriateness of event logs and process models. In: Bussler, C.J., Haller, A. (eds.) BPM 2005. LNCS, vol. 3812, pp. 163–176. Springer, Heidelberg (2006)

    Chapter  Google Scholar 

  20. van der Aalst, W., de Beer, H., van Dongen, B.: Process mining and verification of properties: An approach based on temporal logic. In: Meersman, R., Tari, Z. (eds.) OTM 2005. LNCS, vol. 3760, pp. 130–147. Springer, Heidelberg (2005)

    Chapter  Google Scholar 

  21. Cheung, S.C., Kramer, J.: Checking safety properties using compositional reachability analysis. ACM Transactions on Software Engineering and Methodology 8, 49–78 (1999)

    Article  Google Scholar 

  22. Pezze, M., Taylor, R., Young, M.: Graph models for reachability analysis of concurrent programs. ACM Transactions on Software Engineering and Methodology 4, 171–213 (1995)

    Article  Google Scholar 

  23. Yang, Q., Li, M., Wang, Q., Yang, G., Zhai, J., Li, J., Hou, L., Yang, Y.: An algebraic approach for managing inconsistencies in software processes. In: Wang, Q., Pfahl, D., Raffo, D.M. (eds.) ICSP 2007. LNCS, vol. 4470, pp. 121–133. Springer, Heidelberg (2007)

    Chapter  Google Scholar 

  24. Li, M.: Expanding the horizons of software development processes: A 3-D integrated methodology. In: Li, M., Boehm, B., Osterweil, L.J. (eds.) SPW 2005. LNCS, vol. 3840, pp. 54–67. Springer, Heidelberg (2006)

    Chapter  Google Scholar 

  25. Li, M.: Assessing 3-D integrated software development processes: A new benchmark. In: Wang, Q., Pfahl, D., Raffo, D.M., Wernick, P. (eds.) SPW 2006 and ProSim 2006. LNCS, vol. 3966, pp. 15–38. Springer, Heidelberg (2006)

    Chapter  Google Scholar 

  26. Wang, Q., Li, M.: Measuring and improving software process in china. In: Proceedings of the 4th International Symposium on Empirical Software Engineering, pp. 183–192 (2005)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2009 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Zhai, J., Yang, Q., Yang, Y., Xiao, J., Wang, Q., Li, M. (2009). Automated Process Quality Assurance for Distributed Software Development. In: Berkling, K., Joseph, M., Meyer, B., Nordio, M. (eds) Software Engineering Approaches for Offshore and Outsourced Development. SEAFOOD 2008. Lecture Notes in Business Information Processing, vol 16. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-01856-5_14

Download citation

  • DOI: https://doi.org/10.1007/978-3-642-01856-5_14

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-642-01855-8

  • Online ISBN: 978-3-642-01856-5

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics