- Software Engineering Techniques and Practices
- Software Engineering Research
- Open Source Software Innovations
- Advanced Software Engineering Methodologies
- Usability and User Interface Design
- Knowledge Management and Sharing
- Team Dynamics and Performance
- Service-Oriented Architecture and Web Services
- Innovative Human-Technology Interaction
- Personal Information Management and User Behavior
- Business Process Modeling and Analysis
- Software System Performance and Reliability
- Mobile Crowdsensing and Crowdsourcing
- Peer-to-Peer Network Technologies
- Wikis in Education and Collaboration
- Teaching and Learning Programming
- Information Systems Theories and Implementation
- Model-Driven Software Engineering Techniques
- Virtual Reality Applications and Impacts
- Technology Adoption and User Behaviour
- Innovative Approaches in Technology and Social Development
- Innovation and Knowledge Management
- Green IT and Sustainability
- Distributed and Parallel Computing Systems
- Mobile Agent-Based Network Management
University of California, Irvine
2015-2024
Irvine University
1999-2024
University of California System
2008-2023
Donald & Barbara Zucker School of Medicine at Hofstra/Northwell
2014
University of Colorado Boulder
1990-2005
UC Irvine Health
2002
Newcomers' seamless onboarding is important for online communities that depend upon leveraging the contribution of outsiders. Previous studies investigated aspects joining process and motivation in open collaboration communities, but few have focused on identifying understanding critical barriers newcomers face when placing their first contribution, a period frequently leads to dropout. This Open Source Software (OSS) projects, which receive contributions from many one-time contributors....
The Unified Modeling Language (UML) is a family of design notations that rapidly becoming de facto standard software language. UML provides variety useful capabilities to the designer, including multiple, interrelated views, semiformal semantics expressed as meta model, and an associated language for expressing formal logic constraints on elements. primary goal this work assessment UML's expressive power modeling architectures in manner which number existing architecture description...
No abstract available.
One of the reasons large-scale software development is difficult number dependencies that engineers face. These create a need for communication and coordination requires continuous effort by developers. Empirical studies, including our own, suggest technical among components social developers implementing those components. Based on this observation, we developed Ariadne, plug-in Eclipse. Ariadne analyzes projects collects authorship information about relying configuration management...
Different approaches and tools have been proposed to support change impact analysis, i.e., the identification of potential consequences a change, or estimation what needs be modified accomplish change. However, just few empirical studies software developers' actual analysis reported in literature. To minimize this gap, paper describes an study two development teams. It describes, through presentation ethnographic data, strategies used by developers handle effect dependencies changes their...
The earlier a conflict is detected, the easier it to resolve-this main precept of workspace awareness. Workspace awareness seeks provide users with information relevant ongoing parallel changes occurring in private workspaces, thereby enabling early detection and resolution potential conflicts. key approach unobtrusively inform developers conflicts arising because concurrent same file dependency violations work. This paper describes our research goals, approach, implementation through...
It has been well-known that the software development profession lacks gender diversity, particularly in technical leadership positions. Researchers and practitioners have spent tremendous efforts on identifying problems finding solutions. However, most of existing engineering literature focuses explicit biases but ignores implicit biases. To fill this gap, study sought to empirically investigate whether professional engineers hold related women profession, examine these predict...
Software architecture descriptions are high-level models of software systems. Some researchers have proposed special-purpose architectural notations that a great deal expressive power but not well integrated with common development methods. Others used mainstream methods accessible to developers, lack semantics needed for extensive analysis. We describe an approach combining the advantages these two ways modeling architectures. present examples extending UML, emerging standard design...
Software development is typically cooperative endeavor where a group of engineers need to work together achieve common, coordinated result. As effort, it especially difficult because the many interdependencies amongst artifacts created during process. This has lead software create tools, such as configuration management that isolate developers from effects each other's work. In so doing, these tools distinction between private and public aspects developer. Technical support provided well for...
The principle of information hiding has been very influential in software engineering since its inception 1972. This prescribes that modules hide implementation details from other order to decrease their interdependencies. separation also decreases the dependency among developers implementing modules, thus simplifying some aspects collaboration. A common instantiation this is form application programming interfaces (APIs). We performed a qualitative study on how practitioners use APIs daily...
The authors describe a conceptual framework to facilitate software reuse. It is shown that high functionality computer systems by themselves do not provide sufficient support for Two this framework, CODEFINDER and EXPLAINER, are presented. addresses issues on information access Support comprehending objects demonstrated with EXPLAINER. A scenario describing how the two used in reuse situation show these fit into bigger pictures of development environments, address limitations systems,...
The concept of awareness plays a pivotal role in research Computer-Supported Cooperative Work. Recently, software engineering researchers interested the collaborative nature development have explored implications this design tools. A critical aspect is associated coordinative work practices displaying and monitoring actions. This concerns how colleagues monitor one another's actions to understand these impact their own they display such way that others can easily them while doing work. In...
While onboarding an open source software (OSS) project, contributors face many different barriers that hinder their contribution, leading in cases to dropouts. Many projects leverage the contribution of outsiders and sustainability project relies on retaining some these newcomers. In this paper, we discuss faced by newcomers OSS. The were identified using a qualitative analysis data obtained from members OSS projects. We organize results conceptual model composed 38 barriers, grouped into...
Information hiding is one of the most important and influential principles in software engineering. It prescribes that modules hide implementation details from other order to decrease dependency between them. This separation also decreases among developers implementing modules, thus simplifying some aspects collaboration. A common instantiation this principle form application programming interfaces (APIs). We performed a field study use APIs observed they served many roles. were successful...
In this paper, we present results from our empirical evaluations of a workspace awareness tool that designed and implemented to augment the functionality software configuration management systems. Particularly, performed two user experiments directed at understanding effectiveness in improving coordination reducing conflicts. first experiment, evaluated through text-based assignments avoid interference well-documented impact individual differences among participants, as these are known...
Collaborative brainstorming can be a challenging but important part of creative group problem solving. Mind-mapping has the potential to enhance process its own challenges when used in group. We introduce GroupMind, collaborative mind-mapping tool that addresses these and opens new opportunities for teamwork, including brainstorming. present semi-controlled evaluation GroupMind impact on solving collaboration activities. performs better than using traditional whiteboard both interaction...
Trust remains a challenge in globally distributed development teams. In order to investigate how trust plays out this context, we conducted qualitative study of 5 multi-national IT organizations. We interviewed 58 individuals across 10 countries and made two principal findings. First, participants described terms their expectations colleagues. These fell into one three dimensions: that socially correct behavior will persist, team members possess technical competency, demonstrate concern for...
On GitHub, contributing to a new project is crucial for developer gain personal growth and maximize impact in the community. It known that female developers are often hesitant explore opportunities contribute projects even when they possess competence make valuable contributions. Drawing from literature of competence-confidence gap, we develop fresh explanation this phenomenon. We validate theoretical through an empirical study using GitHub's historical data. In study, identify all ranking...