Current Research Projects and/or Areas of Interest
My research and teaching interests are focused on how professional software developers collaborate and design complex software systems. This involves many aspects from technical to social, business to science, quantitative to qualitative.
My main research project is a study of how professional software developers do their authentic work in their places of work. Almost all of the prior work in this area has been undertaken in contrived settings on contrived problems, not in the actual workplace on the actual work. Going to the site of authentic work is critical for this type of work because, as Suchman and Trigg state, “work activities in every case take place at particular times, in particular places, and in relation to specific social and technological circumstances” (Suchman, 1997, p. 65). Our project is a study of this authentic, situated work in order to uncover new patterns and insights.
This research is informed by the theoretical foundations such as distributed and situated cognition, and activity theory. These theories assume that cognition is distributed across people and artifacts, and that thinking is mediated by technical tools and symbolic representations. We use methods such as “deep hanging out” to understand the social and organizational context. We also use interaction analysis of videos of software developers collaborating on their actual work in order to analyze the fine-grained nature of the social and material circumstances and artifacts that support individual and social cognition. How do the spoken word, gestures, and marks on whiteboards or paper interact as people collaborate? What can we see which was not seen before?
Suchman, L. (1997). Centers of Coordination: A case and some themes. In L. Resnick, R. Saljo, & C. Pontecorvo (Eds.), Discourse, Tools and Reasoning: Essays on Situated Cognition. Springer-Verlag.
Subject or Domain Expertise
- Agile software development practices
- Biomimicry
- Engineering education
- GIS
- Leadership
- Lean Principles and Practices
- Project management
- Simulation systems
- Software design
- Software testing
Programming Languages, Tools, Applications, or Hardware/Software of Interest
I am a generalist, not tied to particular technologies, but have experience in a variety of programming languages and application domains. The three most recent languages I programmed in were in C#, Python, and Java. The three most recent application domains I worked in were internal tools for customer support in a large telecom, micro-finance, and GIS simulation systems.
Past/Present Courses Taught at UWB
- CSS 490: Software Testing
- CSS 350: Management Principles for Computing Professionals
- CSS 360: Software Engineering
- CSS 370: Analysis and Design
- CSS 572: Evidence Based Design
- CSS 590: Human-Centered Design
- CSS 595: Capstone Project I
- CSS 596: Capstone Project II
Selected Publications
- David Socha, Skip Walter, Is Designing Software Different From Designing Other Things? Presented at the Mudd Design Workshop V, Claremont, California, May 2005. Also in International Journal of Engineering Education; Special Issue: Learning and Engineering Design, Vol. 22 No. 3, 2006.
- Hana Ševčíková, Alan Borning, David Socha, and Wolf-Gideon Bleek, Automated Testing of Stochastic Systems: A Statistically Grounded Approach, Proceedings of the ACM International Symposium on Software Testing and Analysis, Portland, Maine, July 2006.
- Paul Waddell, Hana Ševčíková, David Socha, Eric Miller, Kai Nagel, Opus: An Open Platform for Urban Simulation. Presented at the Computers in Urban Planning and Urban Management Conference, June, 2005, London, U.K.
- David Socha, Aikido and Software Engineering. Presented at SIGSOFT 2004/ FSE-12 Workshop on Interdisciplinary Software Engineering Research, Newport Beach, CA, November 2004.
- David Socha, Valentin Razmov, Elizabeth Davis. Teaching Reflective Skills in an Engineering Course. Presented at ASEE 2003 Annual Conference & Exposition, Nashville, Tennessee, June 2003.
- D. Socha, T.C. Folsom, J. Justice,Applying Agile Software Principles and Practices for Fast Automotive Development, in FISITA 2012, November 27-30, 2012, Beijing, China.
- David Socha,Group Whiteboards and Modeler/Customer Teams: Getting Closer to Industrial-Style Collaboration in a Classroom, in SIGCSE’12, February 29–March 3, 2012, Raleigh, North Carolina, USA.
Public Products Shipped
- Depiction GIS/simulation system, UrbanSim urban planning simulation system, Cisco Unity voice mail system, Destruction Derby 64 for Nintendo 64, The Muppets CD-ROM.
Back to top
Industry Affiliations, Experiences, and Interests
- Agile Practices
- GIS
- Simulation
- Games
- Voice-Mail Systems
- Adaptive Chips
Back to top
Random Point of Interest
Here are some of the transformative moments in my career. In 1999 I was introduced to Extreme Programming and re-discovered the joy of programming. In 2000, I took Jerry Weinberg’s Problem Solving Leadership weeklong workshop, which shattered my view of what software development is about, and led me into the world of experiential teaching. Most recently, I spent 10 years studying aikido, from which I learned the power of practice, the value of moving toward center, and about leadership.
Back to top