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

skip to main content
10.1109/FOSE.2007.4guideproceedingsArticle/Chapter ViewAbstractPublication PagesicseConference Proceedingsconference-collections
Article
Free access

Collaboration in Software Engineering: A Roadmap

Published: 23 May 2007 Publication History

Abstract

Software engineering projects are inherently cooperative, requiring many software engineers to coordinate their efforts to produce a large software system. Integral to this effort is developing shared understanding surrounding multiple artifacts, each artifact embodying its own model, over the entire development process. This focus on modeloriented collaboration embedded within a larger process is what distinguishes collaboration research in software engineering from broader collaboration research, which tends to address artifact-neutral coordination technologies and toolkits. This article first presents a list of goals for software engineering collaboration, then surveys existing collaboration support tools in software engineering. The survey covers both tools that focus on a single artifact or stage in the development process (requirements support tools, UML collaboration tools), and tools that support the representation and execution of an entire software process. Important collaboration standards are also described. Several possible future directions for collaboration in software engineering are presented, including tight integration between web and desktop development environments, broader participation by customers and end users in the entire development process, capturing argumentation surrounding design rationale, and use of massively multiplayer online (MMO) game technology as a collaboration medium. The article concludes by noting a problem in performing research on collaborative systems, that of assessing how well certain artifacts, models, and embedded processes work, and whether they are better than other approaches.

References

[1]
{1} S. McConnell, "Lifecycle Planning," in Rapid Development: Taming Wild Software Schedules Redmond, WA: Microsoft Press, 1996.
[2]
{2} R. Grinter, "Systems Architecture: Product Designing and Social Engineering," in ACM Conference on Work Activities Coordination and Collaboration (WACC'99), San Francisco, California, 1999, pp. 11-18.
[3]
{3} T. W. Malone and K. Crowston, "The Interdisciplinary Study of Coordination," in ACM Computing Surveys (CSUR), vol 26, no 1, pp. 87-119, 1994.
[4]
{4} C. R. B. d. Souza, D. F. Redmiles, L.-T. Cheng, D. R. Millen, and J. Patterson, "How a Good Software Practice Thwarts Collaboration - The Mulitple Roles of APIs in Software Development," in Proc. Foundations of Software Engineering (FSE 2004), Newport Beach, CA, 2004, pp. 221-230.
[5]
{5} M. S. Ackerman and D. W. McDonald, "Collaborative Support for Informal Information in Collective Memory Systems," in Information Systems Frontiers, vol. 2, no. 3/4, pp. 333-347, 2000.
[6]
{6} B. Boehm and A. Egyed, "Software Requirements Negotiation: Some Lessons Learned," in the 20th International Conference on Software Engineering (ICSE'98), Kyoto, Japan, 1998, pp. 503-507.
[7]
{7} Telelogic, "Getting Started with DOORS (DOORS 7.1)," Feb 5, 2004, http://endymion.ugent.be/~stijn/doors/doors_getting _started.pdf.
[8]
{8} The Bugzilla Team, "The Bugzilla Guide - 2.23.3 Development Release," October 15, 2006, http://www.bugzilla.org/docs/tip/html/.
[9]
{9} G. A. Bolcer and R. N. Taylor, "Endeavors: a Process System Integration Infrastructure," in 4th International Conference on the Software Process (ICSP'96), Brighton, UK, 1996, pp. 76-89.
[10]
{10} B. S. Lerner, L. J. Osterweil, Stanley M. Sutton Jr., and A. Wise, "Programming Process Coordination in Little-JIL Toward the Harmonious Functioning of Parts for Effective Results," in European Workshop on Software Process Technology, 1998.
[11]
{11} Microsoft Corportation, "Microsoft Office Project Standard 2007 Product Guide," April 2006, http://office.microsoft.com/en-us/project/ HA101680121033.aspx.
[12]
{12} Rational Software Corporation, "Rational RequisitePro User's Guide," June 2003, http://www.se.fh-heilbronn.de/usefulstuff/Rational%20Rose%202003%20Doc umentation/reqpro_user.pdf.
[13]
{13} L. Dusseault, WebDAV: Next-Generation Collaborative Web Authoring, Prentice Hall PTR, 2003.
[14]
{14} E. J. Whitehead, Jr. and Y. Y. Goland, "WebDAV: A Network Protocol for Remote Collaborative Authoring on the Web," in 6th European Conference on Computer Supported Cooperative Work (ECSCW'99), Copenhagen, Denmark, 1999, pp. 291-310.
[15]
{15} L. Wakeman and J. Jowett, PCTE: The Standard for Open Repositories: Prentice Hall, 1993.
[16]
{16} Borland Software Corporation, "CaliberRM 2006 User Tutorial," Nov 2006, http://info.borland.com/techpubs/ caliber_rm/2006/EN/CaliberRM%20Tutorial.pdf.
[17]
{17} Ludwig Consulting Services, "Requirement Management Tools," 2006, http://www.jiludwig.com/Requirements _Management_Tools.html.
[18]
{18} Ravenflow, "RAVEN: Requirements Authoring and Validation Environment," 2007, http://www.ravenflow.com/ products/index.php.
[19]
{19} GATHERSPACE.COM, "Gatherspace: Requirements Management and Use Case Software," 2007, http://www.gatherspace.com/static/product2.html.
[20]
{20} eRequirements, "eRequirements Product Tour," 2007, http://www.erequirements.com/app?service=page/ProductTo ur.
[21]
{21} N. Maiden, "Discovering Requirements with Scenarios: The ART-SCENE Solution," in ERCIM News, vol. 58, July 2004.
[22]
{22} N. Maiden, N. Seyff, P. Grunbacher, O. Otojare, and K. Mitteregger, "Making Mobile Requirements Engineering Tools Usable and Useful," in 14th Int'l Requirements Engineering Conference (RE'06), 2006, pp. 26-35.
[23]
{23} O. Creighton, M. Ott, and B. Bruegge, "Software Cinema-Video-based Requirements Engineering," in 14th Int'l Requirements Engineering Conference (RE'06), 2006, pp. 106-115.
[24]
{24} UCI Software Architecture Group, "ArchStudio 4: Software and Systems Architecture Development Environment," 2007, http://www.isr.uci.edu/projects/archstudio/.
[25]
{25} A. Kompanek, "Modeling a System with Acme," 1998, http://www.cs.cmu.edu/~acme/html/WORKING- %20Modeling%20a%20System%20with%20Acme.html.
[26]
{26} T. N. Nguyen and E. V. Munson, "Object-oriented Configuration Management Technology can Improve Software Architectural Traceability," in 3rd ACIS International Conference on Software Engineering Research, Management and Applications (SERA'05), Mount Pleasant, Michigan, USA, 2005, pp. 86-93.
[27]
{27} P. Maheshwari and A. Teoh, "Supporting ATAM with a Collaborative Web-based Software Architecture Evaluation Tool," in Science of Computer Programming, vol. 57, no. 1, pp. 109-128, 2005.
[28]
{28} IBM, "Rational Rose Product Overview," 2007, http://www- 306.ibm.com/software/awdtools/developer/rose/index.html.
[29]
{29} A. Ramirez, P. Vanpeperstraete, A. Rueckert, K. Odutola, J. Bennett, L. Tolke, and M. v. d. Wulp, "ArgoUML User Manual (v0.22)," 2006, http://argouml-stats.tigris.org/ documentation/manual-0.22/.
[30]
{30} Borland Software Corporation, "Borland Together Product Overview," 2007, http://www.borland.com/us/products/ together/index.html.
[31]
{31} Telelogic, "Rhapsody: Model-Driven Development with UML 2.0, SysML and Beyond," 2007, http://www.ilogix.com/sublevel.aspx?id=53.
[32]
{32} Altova, "UModel Product Overview," 2007, http://www.altova.com/products/umodel/uml_tool.html.
[33]
{33} Wikipedia.org, "List of UML Tools," 2007, http://en.wikipedia.org/wiki/List_of_UML_tools.
[34]
{34} T. C. N. Graham, A. G. Ryman, and R. Rasouli, "A World-Wide-Web Architecture for Collaborative Software Design," in Software Technology and Engineering Practice (STEP'99), Pittsburgh, PA, 1999, pp. 22-29.
[35]
{35} gliffy.com, "Gliffy Product Information," 2007, http://gliffy.com/features.shtml.
[36]
{36} Q. Chen, J. Grundy, and J. Hosking, "An e-whiteboard Application to Support Early Design-stage Sketching of UML Diagrams," in IEEE Symposium on Human Centric Computing Languages and Environments, Auckland, New Zealand, 2003, pp. 219-226.
[37]
{37} S. V. Shukla and D. F. Redmiles, "Collaborative Learning in a Software Bug-Tracking Scenario," in Workshop on Approaches for Distributed Learning through Computer Supported Collaborative Learning, Boston, MA, 1996.
[38]
{38} Wikipedia.org, "Comparison of Iusse Tracking Systems," http://en.wikipedia.org/wiki/Comparison_of_issue_tracking_ systems.
[39]
{39} H. Hedberg, "Introducing the Next Generation of Software Inspection Tools," in Product Focused Software Process Improvement (LNCS 3009), 2004, pp. 234-247.
[40]
{40} F. Macdonald and J. Miller, "A Comparison of Computer Support Systems for Software Inspection," Automated Software Engineering, vol. 6, no. 3, pp. 291-313, 1999.
[41]
{41} C. Nentwich, L. Capra, W. Emmerich, and A. Finkelstein, "xlinkit: A Consistency Checking and Smart Link Generation Service," ACM Transactions on Internet Technology (TOIT), vol 2, no 2, pp. 151-185, May 2002.
[42]
{42} A. Marcus and J. I. Maletic, "Recovering Documentation-to-source-code Traceability Links using Latent Semantic Indexing," in Proc. 25th Int'l Conf. on Software Engineering (ICSE'03), Portland, Oregon, 2003, pp. 125-135.
[43]
{43} L. Osterweil, "Software Processes are Software too," in 9th International Conference on Software Engineering, Monterey, CA, 1987, pp. 2-13.
[44]
{44} R. Kadia, "Issues Encountered in Building a Flexible Software Development Environment," in ACM SIGSOFT 92: 5th Symposium on Software Development Environments, Tyson's Corner, Virginia, 1992, pp. 169-180.
[45]
{45} I. Z. Ben-Shaul, "Oz: A Decentralized Process Centered Environment (PhD Thesis)," in Department of Computer Science: Columbia University, Dec 1994.
[46]
{46} I. Z. Ben-Shaul, G. E. Kaiser, and G. T. Heineman, "An Architecture for Multi-user Software Development Environments," in ACM SIGSOFT 92: 5th Symposium on Software Development Environments, Tyson's Corner, Virginia, 1992, pp. 149-158.
[47]
{47} S. M. Kaplan, W. J. Tolone, A. M. Carroll, D. P. Bogia, and C. Bignoli, "Supporting Collaborative Software Development with ConversationBuilder," in ACM SIGSOFT 92: 5th Symposium on Software Development Environments, Tyson's Corner, Virginia, 1992, pp. 11-20.
[48]
{48} P. J. Kammer, G. A. Bolcer, R. N. Taylor, A. S. Hitomi, and M. Bergman, "Techniques for Supporting Dynamic and Adaptive Workflow," in Computer Supported Cooperative Work (CSCW), vol. 9, no. 3/4, pp. 269-292, 2000.
[49]
{49} T. Mens, "A State-of-the-Art Survey on Software Merging," IEEE Transactions on Software Engineering, vol 28, no 5, pp. 449-462, 2002.
[50]
{50} A. Sarma, Z. Noroozi, and A. v. d. Hoek, "Palantír: Raising Awareness among Configuration Management Workspaces," in 25th International Conference on Software Engineering, Portland, Oregon, May 2003, pp. 444-454.
[51]
{51} J. Froehlich and P. Dourish, "Unifying Artifacts and Activities in a Visual Tool for Distributed Software Development Teams," in 26th Int'l Conference on Software Engineering (ICSE'04), Edinburgh, Scotland, UK, 2004, pp. 387-396.
[52]
{52} Tigris.org, "Tigris.org: Open Source Software Engineering Tools," 2007, http://www.tigris.org/.
[53]
{53} S. P. Reiss, The Field Programming Environment: A Friendly Integrated Environment for Learning and Development. Norwell, MA: Kluwer, 1995.
[54]
{54} A. Carzaniga, D. S. Rosenblum, and A. L. Wolf, "Design and Evaluation of a Wide-Area Event Notification Service," in ACM Transactions on Computer Systems, vol. 19, no. 3, pp. 332-383, Aug 2001.
[55]
{55} A. Tang, M. A. Babar, I. Gorton, and J. Han, "A Survey of the Use and Documentation of Architecture Design Rationale," in 5th Working IEEE/IFIP Conference on Software Architecture (WICSA'05), Pittsburgh, PA, 2005.
[56]
{56} Visualizing Argumentation: Software Tools for Collaborative and Educational Sense-Making, P. A. Kirschner, S. Buckingham-Shum, and C. S. Carr, Eds. London: Springer-Verlag, 2003.
[57]
{57} W. Zhang, H. Mei, and H. Zhao, "Feature-driven Requirement Dependency Analysis and High-level Software Design," in Requirements Engineering, vol 11, no 3, pp. 205-220, 2006.
[58]
{58} Design Rationale: Concepts, Techniques, and Use, T. P. Morgan and J. M. Carroll, Eds.: Lawrence Erlbaum Associates, 1996.
[59]
{59} Rationale Management in Software Engineering, A. H. Dutoit, B. Paech, R. Mccall, and I. Mistrik, Eds.: Springer-Verlag, New York, 2006.
[60]
{60} S. J. B. Shum, A. M. Selvin, M. Sierhuis, J. Conklin, C. B. Haley, and B. Nuseibeh, "Hypermedia Support for Argumentation-Based Rationale: 15 Years on from gIBIS and QOC," in Rationale Management in Software Engineering, A. H. Dutoit, B. Paech, R. Mccall, and I. Mistrik, Eds., 2005.
[61]
{61} S. E. Dossick, "A Virtual Environment Framework for Software Engineering (PhD Thesis)," Dept. of Computer Science, Columbia University, 2000.
[62]
{62} C. R. B. d. Souza and D. F. Redmiles, "Opportunities for Extending Activity Theory for Studying Collaborative Software Development," in Workshop on Applying Activity Theory to CSCW Research and Practice (with the 8th European Conference of Computer-Supported Cooperative Work, ECSCW'03), Helsinki, Finland, 2003.
[63]
{63} A. Zeller, "The Future of Programming Environments: Integration, Synergy, and Assistance," in Future of Software Engineering 2007, L. Briand and A. Wolf (eds.), IEEE-CS Press, 2007.

Cited By

View all
  • (2024)The effect of autonomous team role selection in flexible projectsComputers and Industrial Engineering10.1016/j.cie.2024.110079190:COnline publication date: 9-Jul-2024
  • (2023)Collaborative Model-Driven Software Engineering — A systematic survey of practices and needs in industryJournal of Systems and Software10.1016/j.jss.2023.111626199:COnline publication date: 1-May-2023
  • (2022)Gender Influence on Communication Initiated within Student TeamsProceedings of the 53rd ACM Technical Symposium on Computer Science Education - Volume 110.1145/3478431.3499279(432-438)Online publication date: 22-Feb-2022
  • Show More Cited By

Recommendations

Comments

Please enable JavaScript to view thecomments powered by Disqus.

Information & Contributors

Information

Published In

cover image Guide Proceedings
FOSE '07: 2007 Future of Software Engineering
May 2007
382 pages
ISBN:0769528295

Publisher

IEEE Computer Society

United States

Publication History

Published: 23 May 2007

Qualifiers

  • Article

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)45
  • Downloads (Last 6 weeks)2
Reflects downloads up to 20 Nov 2024

Other Metrics

Citations

Cited By

View all
  • (2024)The effect of autonomous team role selection in flexible projectsComputers and Industrial Engineering10.1016/j.cie.2024.110079190:COnline publication date: 9-Jul-2024
  • (2023)Collaborative Model-Driven Software Engineering — A systematic survey of practices and needs in industryJournal of Systems and Software10.1016/j.jss.2023.111626199:COnline publication date: 1-May-2023
  • (2022)Gender Influence on Communication Initiated within Student TeamsProceedings of the 53rd ACM Technical Symposium on Computer Science Education - Volume 110.1145/3478431.3499279(432-438)Online publication date: 22-Feb-2022
  • (2019)New Opportunities for Integrated Formal MethodsACM Computing Surveys10.1145/335723152:6(1-36)Online publication date: 16-Oct-2019
  • (2019)Agile Collaboration for Distributed Teams [Software Technology]IEEE Software10.1109/MS.2018.287466836:1(72-78)Online publication date: 1-Jan-2019
  • (2019)Supporting a flexible grouping mechanism for collaborating engineering teamsProceedings of the 14th International Conference on Global Software Engineering10.1109/ICGSE.2019.00033(119-128)Online publication date: 25-May-2019
  • (2019)Extended reality in global software deliveryProceedings of the 14th International Conference on Global Software Engineering10.1109/ICGSE.2019.000-1(70-71)Online publication date: 25-May-2019
  • (2019)An extended reality approach for creating immersive software project workspacesProceedings of the 12th International Workshop on Cooperative and Human Aspects of Software Engineering10.1109/CHASE.2019.00013(27-30)Online publication date: 27-May-2019
  • (2019)The impact of human factors on the participation decision of reviewers in modern code reviewEmpirical Software Engineering10.1007/s10664-018-9646-124:2(973-1016)Online publication date: 1-Apr-2019
  • (2018)An exploratory study for scoping software product lines in a collaborative wayProceedings of the 11th International Workshop on Cooperative and Human Aspects of Software Engineering10.1145/3195836.3195852(17-20)Online publication date: 27-May-2018
  • Show More Cited By

View Options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Login options

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media