Collaborative Software Engineering

Navigating the social and cognitive complexity of modern software development

The Human Side of Code

Software engineering is fundamentally a social activity. Our research moves beyond code to investigate the cognitive, social, and organizational factors that shape how we build software—from early-stage requirements to final deployment.

Our Approach

We use design thinking and empirical methods to understand how practitioners navigate ambiguity and conflict. By studying perspective-taking and team dynamics, we aim to develop tools that enhance communication and coordination in complex environments.

Active Projects

Perspective Taking in Complex Software Teams

Perspective Taking in Complex Software Teams

While software failures are often framed as technical shortcomings, many originate from poor decision-making and communication breakdowns. We investigate how cognitive factors like perspective-taking and psychological safety impact a team’s ability to navigate ambiguity and deliver quality software.

read more
Design Thinking for Self-Regulated Learning (Mathiné)

Design Thinking for Self-Regulated Learning (Mathiné)

We are addressing the cognitive overload caused by the fragmented digital ecosystem in higher education. By prototyping tools like “Mathiné,” we aim to streamline academic task management and improve student self-efficacy through centralized task breakdown and time-boxing.

read more