Skip to main content

Applications of Ontologies in Collaborative Software Development

  • Chapter
  • First Online:
Collaborative Software Engineering

Abstract

Making distributed teams more efficient is one main goal of Collaborative Software Development (CSD) research. To this end, ontologies, which are models that capture a shared understanding of a specific domain, provide key benefits. Ontologies have formal, machine-interpretable semantics that allow to define semantic mappings for heterogeneous data and to infer implicit knowledge at run-time. Extending development infrastructures and software architectures with ontologies (of problem and solution domains) will address coordination and knowledge sharing challenges in activities such as documentation, requirements specification , component reuse, error handling, and test case management. The purpose of this article is to provide systematic account of how ontologies can be applied in CSD, and to describe benefits of both existing applications such as “semantic wikis ” as well as visionary scenarios such as a “Software Engineering Semantic Web ”.

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

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 84.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 109.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info
Hardcover Book
USD 109.99
Price excludes VAT (USA)
  • Durable hardcover 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

Notes

  1. 1.

    W3 Consortium, see http://www.w3.org/2001/sw/BestPractices/SE/ODA/

  2. 2.

    Object Management Group, see http://www.omg.org/ontology/

  3. 3.

    Resource Description Framework, cf. http://www.w3.org/RDF/

  4. 4.

    Web Ontology Language, cf. http://www.w3.org/2004/OWL/

  5. 5.

    Protégé: http://protege.stanford.edu/

  6. 6.

    http://www.teamweaver.org

  7. 7.

    see e.g. http://doapspace.org/

  8. 8.

    http://code.google.com/projects/baetle

References

  1. The friend of a friend (foaf) project (2007) URL http://www.foaf-project.org/.

  2. Foaf vocabulary specification (2007) URL http://xmlns.com/foaf/spec/.

  3. Semantically-interlinked online communities (sioc) ontology submission request to w3c (2007) URL http://www.w3.org/Submission/2007/02/.

  4. Twiki success stories (2007) URL http://twiki.org/cgi-bin/view/Main/TWikiSuccessStories.

  5. Sioc core ontology specification (2008) URL http://rdfs.org/sioc/spec/.

  6. The sioc project (2008) URL http://sioc-project.org/.

  7. Abran A, Moore J, Bourque P, DuPuis R, Tripp L (2004) Guide to the software engineering body of knowledge-2004. IEEE-CS-Professional Practices Committee.

    Google Scholar 

  8. Ankolekar A (2005) Towards a semantic web of community, content and interations. Ph.D. thesis, School of Computer Science, Carnegie Mellon University.

    Google Scholar 

  9. Ankolekar A, Sycara K, Herbsleb J, Kraut R, Welty C (2006) Supporting online problem solving communities with the semantic web. WWW’06. ACM, NY, USA.

    Google Scholar 

  10. Bachmann F, Merson P (2005) Experience using the web-based tool wiki for architecture documentation. Technical Note CMU.

    Google Scholar 

  11. Berners-Lee T, Hendler J, Lassila O (2001) The semantic web. Scientific American, May, pp. 35–43.

    Google Scholar 

  12. Bizer C, Cyganiak R (2006) D2r server-publishing relational databases on the semantic web (poster). International Semantic Web Conference.

    Google Scholar 

  13. Bontcheva K, Sabou M (2006) Learning ontologies from software artifacts: Exploring and combining multiple sources. Workshop on Semantic Web Enabled Software Engineering, GA, USA.

    Google Scholar 

  14. Bruegge B, Dutoit AH (2003) Object-Oriented Software Engineering: Using UML, Patterns and Java, 2nd edn. Englewood Cliffs, NJ: Prentice Hall.

    Google Scholar 

  15. Bruegge B, Dutoit AH, Wolf T (2006) Sysiphus: Enabling informal collaboration in global software development. International Conference on Global Software Engineering. IEEE CS, Washington, DC, USA.

    Google Scholar 

  16. Cheng LT, De Souza CR, Hupfer S, Patterson J, Ross S (2004) Building collaboration into ides. Queue 1(9): 40–50.

    Article  Google Scholar 

  17. Cubranic D, Murphy GC, Singer J, Booth KS (2005) Hipikat: A project memory for software development. IEEE Transactions on Software Engineering 31(6): 446–465.

    Article  Google Scholar 

  18. Dameron O (2005) Keeping modular and platform-independent software up-to-date: Benefits from the semantic web. 8th International Protégé Conference, Stanford Medical Informatics, Stanford University, USA.

    Google Scholar 

  19. Davenport T, Prusak L (1998) Working Knowledge. Boston, MA: Harvard Business School Press.

    Google Scholar 

  20. Desouza KC, Awazu Y, Tiwana A (2006) Four dynamics for bringing use back into software reuse. Communications of the ACM 49(1): 97–100.

    Article  Google Scholar 

  21. Dumbill E (2002) Finding friends with xml and rdf. URL http://www.ibm.com/developerworks/xml/library/x-foaf.html.

  22. Dumbill E (2004) Describe open source projects with xml. URL http://www128.ibm.com/developerworks/xml/library/x-osproj.html.

  23. Noy FN, McGuiness DL (2001) Ontology development 101: A guide to creating your first ontology. Online. URL http://www.ksl.stanford.edu/people/dlm/papers/ontology101/ontology101-noymcguinness.html.

  24. Gasevic D, Djuric D, Devedic V (2006) Model Driven Architecture and Ontology Development, 1st edn. Berlin: Springer.

    Google Scholar 

  25. Genesereth MR, Nilsson NJ (1987) Logical foundations of artificial intelligence. San Francisco, CA: Morgan Kaufmann Publishers Inc.

    MATH  Google Scholar 

  26. Gomez-Perez A, Corcho-Garcia O, Fernandez-Lopez M (2003) Ontological Engineering. Secaucus, NJ: Springer-Verlag New York, Inc.

    Google Scholar 

  27. Gruber TR (1993) A translation approach to portable ontology specifications. Knowledge Acquisition 5(2): 199–220.

    Article  Google Scholar 

  28. Hansen MT (1999) The search-transfer problem: The role of weak ties in sharing knowledge across organization subunits. Administrative Science Quarterly 44: 82–111.

    Article  Google Scholar 

  29. Happel HJ, Korthaus A, Seedorf S, Tomczyk P (2006) Kontor: An ontology-enabled approach to software reuse. 18th International Conference on Software Engineering and Knowledge Engineering. San Francisco, CA, USA.

    Google Scholar 

  30. Happel HJ, Maalej W (2008) Potentials and challenges of recommendation systems for software development. International Workshop on Recommendation Systems for Software Engineering. ACM.

    Google Scholar 

  31. Happel HJ, Seedorf S (2006) Applications of ontologies in software engineering. International Workshop on Semantic Web Enabled Software Engineering. Athens, USA.

    Google Scholar 

  32. Happel HJ, Seedorf S (2007) Ontobrowse: A semantic wiki for sharing knowledge about software architectures. 19th International Conference on Software Engineering and Knowledge Engineering, SEKE 2007, Boston, MA, USA, pp 506–512.

    Google Scholar 

  33. Herbsleb JD, Mockus A (2003) Formulation and preliminary test of an empirical theory of coordination in software engineering. SIGSOFT Software Engineering Notes 28(5): 138–147.

    Article  Google Scholar 

  34. Kersten M, Murphy G (2006) Using task context to improve programmer productivity. 14th International Symposium on Foundations of Software Engineering. ACM, NY, USA.

    Google Scholar 

  35. Kraut RE, Streeter LA (1995) Coordination in software development. Communications of the ACM 38(3): 69–81.

    Article  Google Scholar 

  36. Krötzsch M, Vrandecic D, Völkel M (2006) Semantic mediawiki. Proceeding on 5th International Semantic Web Conference (ISWC06), pp 935–942.

    Google Scholar 

  37. Lin J, Fox MS, Bilgic T (1996) A requirement ontology for engineering design. Concurrent Engineering 4: 279–291.

    Article  Google Scholar 

  38. Louridas P (2006) Using wikis in software development. IEEE Software 23: 88–91.

    Article  Google Scholar 

  39. Maalej W, Happel HJ (2008) A lightweight approach for knowledge sharing in distributed software teams. 7th International Conference on Practical Aspects of Knowledge Management, Lecture Notes in Computer Science. Springer.

    Google Scholar 

  40. Maalej W, Panagiotou D, Happel HJ (2008) Towards effective management of software knowledge exploiting the semantic wiki paradigm. Software Engineering, volume 121 of LNI, pp. 183–197.

    Google Scholar 

  41. Majchrzak A, Wagner C, Yates D (2006) Corporate wiki users: results of a survey. ACM, Odense, URL http://portal.acm.org/citation.cfm?id=1149472, pp. 99–104.

  42. Malone TW, Crowston K (1994) The interdisciplinary study of coordination. ACM Computing Surveys 26(1): 87–119. DOI http://doi.acm.org/10.1145/174666.174668.

    Google Scholar 

  43. Ruiz F, Hilera JR (2007) Ontologies for Software Engineering and Technology. Berlin/Heidelberg: Springer.

    Google Scholar 

  44. Sarma A, Noroozi Z, Hoek, Avd (2003) Palantir: raising awareness among configuration management workspaces. 25th International Conference on Software Engineering. IEEE CS, DC, USA.

    Google Scholar 

  45. Sengupta B, Chandra S, Sinha V (2006) A research agenda for distributed software development. ACM, Shanghai, China, pp. 731–740.

    Google Scholar 

  46. Södestrom E, Andersson B, Johannesson P, Perjons E, Wangler B (2001) Towards a framework for comparing process modelling lan.guages. International Conference on Advanced Information Systems Engineering.

    Google Scholar 

  47. Staab S, Studer R (Eds.) (2004) Handbook on Ontologies. Berlin: Springer.

    Google Scholar 

  48. Studer R, Grimm S, Abecker A (2007) Semantic Web Services: Concepts, Technologies, and Applications, 1st edn. Heidelberg: Springer-Verlag.

    Book  Google Scholar 

  49. Wang TD, Parsia B, Hendler J (2006) A survey of the web ontology landscape. Technical Report, University of Maryland and University of Manchester.

    Google Scholar 

  50. Wille C, Abran A, Desharnais J, Dumke R (2003) The quality concepts and subconcepts in swebok: An ontology challenge. Workshop on Software Measurement.

    Google Scholar 

  51. Witte R, Zhang Y, Rilling J (2007) Empowering software maintainers with semantic web technologies. 4th European Semantic Web Conference, LNCS. Springer.

    Google Scholar 

  52. Wouters B, Deridder D, Paesschen EV (2000) The use of ontologies as a backbone for use case management. Workshop on Objects and Classifications, a Natural Convergence.

    Google Scholar 

  53. Ye Y, Fischer G (2005) Supporting reuse by delivering task-relevant and personalized information. Automated Software Engineering 12(2): 199–235.

    Article  Google Scholar 

  54. Zeller A (2007) The future of programming environments. Integration, synergy, and assistance. Future of Software Engineering. IEEE CS, Washington, DC, USA.

    Google Scholar 

  55. Zhang Y, Witte R, Rilling J, Haarslev V (2008) Ontological approach for the semantic recovery of traceability links between software artifacts. IET Software 2(3): 185–203.

    Article  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Hans-Jörg Happel .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2010 Springer-Verlag Berlin Heidelberg

About this chapter

Cite this chapter

Happel, HJ., Maalej, W., Seedorf, S. (2010). Applications of Ontologies in Collaborative Software Development. In: Mistrík, I., Grundy, J., Hoek, A., Whitehead, J. (eds) Collaborative Software Engineering. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-10294-3_6

Download citation

  • DOI: https://doi.org/10.1007/978-3-642-10294-3_6

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-642-10293-6

  • Online ISBN: 978-3-642-10294-3

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics