Skip to main content
Log in

Social patterns in productive software development organizations

  • Published:
Annals of Software Engineering

Abstract

Software development is a predominantly social activity. It is important to view software development groups, departments, and corporations as social bodies. We study software organizations using a novel data-gathering approach that combines several techniques commonly used in social network analysis. Our techniques differ from those of ordinary social anthropology in that we help the organization introspect about itself; the technique is a “mirror” for the subject organization. We catalogued social network diagrams using a variety of visualization techniques. We have found visual patterns that correlate well to subjective measures of a good organization. We built analytical models to capture properties of the social networks, employing techniques similar to those used in established social network science. The emerging design technique based on architectural patterns provides a good vehicle for communicating organizational patterns. We have captured practices from outstanding organizations in a group of patterns that form a “pattern language” for productive software development.

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

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Institutional subscriptions

Similar content being viewed by others

References

  • Alexander, C. (1979),The Timeless Way of Building, Oxford University Press, New York.

    Google Scholar 

  • Allen, T. (1977),Managing the Flow of Technology, MIT Press, Boston, MA.

    Google Scholar 

  • Beck, K. (1991), “Think Like an Object,”UNIX Review 9, 10, 39–43.

    Google Scholar 

  • Booch, G. (1994),Object-Oriented Analysis and Design with Applications, 2nd Edition, Benjamin-Cummings, Redwood City, CA.

    Google Scholar 

  • Brajkovich, L.F. (1994),Sources of Social Structure in a Start-up Organization: Work Networks, Work Activities, and Job Status, North-Holland Elsevier Press, Netherlands.

    Google Scholar 

  • Brown, D.W., T.A. Burrows and P.M. Zislis (1986), “GOS: A Tool Providing Support for Graphical Human-Machine Interfaces,” InProc. of the 1986 International Zurich Seminar on Digital Communications, Zurich.

  • Cain, B.G. and J.O. Coplien (1993), “A Role-Based Process Modeling Environment,” InProc. of the Second International Conference on the Software Process, IEEE Computer Press, Los Alamitos, California, pp. 125–133.

    Google Scholar 

  • Church, K.W. and J.I. Helfman (1993), “Dotplot: A Program for Exploring Self-Similarity in Millions of Lines of Text and Code,”Journal of Computational and Graphical Statistics 2, 2, 153–174.

    Google Scholar 

  • Coplien, J.O., S. Hutz and B. Marykuca (1993), “Iterative Development/OO: The Bottom Line,”OOPS Messenger 4, 2, 101–108.

    Google Scholar 

  • Coplien, J.O. (1994), “Examining the Software Development Process,”Dr. Dobb's Journal 19, 11, 88–95.

    Google Scholar 

  • Coplien, J. and D. Schmidt, Eds. (1995).Pattern Languages of Program Design, Addison-Wesley, Reading, MA.

    Google Scholar 

  • Deming, W.E. (1986),Out of the Crisis, MIT Center for Advanced Engineering Study, Cambridge, MA.

    Google Scholar 

  • Fraser, S., K. Beck, G. Booch, D. Coleman, J. Coplien, R. Helm and K. Rubin (1994), “How Do Teams Shape Objects? — How Do Objects Shape Teams?”OOPSLA 1994 Proceedings 29, 10, 468–473.

    Google Scholar 

  • Fraser, S.D., K. Beck, G. Booch, D. Coleman, J. Coplien, R. Helm and K. Rubin (1995), “How Do Teams Shape Objects? — How Do Objects Shape Teams?” (Addendum to theProc. of OOPSLA/94)OOPS Messenger 5, 20, 63–67.

    Google Scholar 

  • Gabriel, R.P. (1994), “Productivity: Is There a Silver Bullet?”Journal of Object-Oriented Programming 7, 1, 89–92.

    Google Scholar 

  • Gamma, E. (1992),Object-Oriented Software Development Based on ET++:Design Patterns. Class Library, Tools, Springer-Verlag, Berlin.

    Google Scholar 

  • Gamma, E., R. Helm, R. Johnson and J. Vlissides (1995),Design Patteners: Elements of Re-Usable Object-Oriented Software, Addison-Wesley, Reading, MA.

    Google Scholar 

  • Hartley, J. (1992),Concurrent Engineering: Shortening Lead Times, Raising Quality, and Lowering Costs, Productivity Press, Cambridge, MA.

    Google Scholar 

  • Harrison, N. and J.O. Coplien (1996), “Patterns of Productive Software Organizations,”Bell Labs Technical Journal 1, 1, Summer 1996.

  • Janis, I.L. (1971), “Groupthink,”Psychology Today, November 1971, 43–46, 74–76.

  • Katz, D. and R.L. Kahn (1978),The Social Psychology of Organizations, 2nd Edition, John Wiley and Sons, New York.

    Google Scholar 

  • Koenig, A. (1995), “Antipatterns,”Journal of Object-Oriented Programming 8, 1, 46–48.

    Google Scholar 

  • Krishnamurthy, B. and D.S. Rosenblum (1991), “An Event-Action Model of Computer-Supported Cooperative Work: Design and Implementation,” InProc. of the International Workshop on Computer Supported Cooperative Work, IFIP TC 6/WG C.5, pp. 132–145.

  • Mackenzie, K.D. (1986), “Organizing High Technology Operations for Success.” InManaging High Technology Decisions for Success, J.R. Callahan and G.H. Haines, Eds.

  • Moreno, J.L. (1934),Who Shall Survive?:Foundations of Sociometry, Group Psychotherapy, and Sociodrama, Nervous and Mental Disease Publishing Co., Washington, DC.

    Google Scholar 

  • Ouchi, W.G. (1981),Theory Z: How American Business Can Meet the Japanese Challenge, Addison-Wesley, Reading, MA.

    Google Scholar 

  • Schneiderman, B. (1980),Software Psychology, Winthrop Publishers, Cambridge, MA.

    Google Scholar 

  • Sengé, P. (1990),The Fifth Discipline, Doubleday, New York.

    Google Scholar 

  • Swieringa, J. and A. Wierdsma (1992),Becoming a Learning Organization, Addison-Wesley, Reading, MA.

    Google Scholar 

  • Wasserman, S. and K. Faust (1994),Social Network Analysis, Cambridge University Press, New York.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Rights and permissions

Reprints and permissions

About this article

Cite this article

Cain, B.G., Coplien, J.O. & Harrison, N.B. Social patterns in productive software development organizations. Ann Software Eng 2, 259–286 (1996). https://doi.org/10.1007/BF02063813

Download citation

  • Issue Date:

  • DOI: https://doi.org/10.1007/BF02063813

Keywords

Navigation