Results 1 - 10
of
47
Expertise Browser: A Quantitative Approach to Identifying Expertise
- In proceedings of International Conference on Software Engineering (ICSE 2002
, 2002
"... Finding relevant expertise is a critical need in collaborative software engineering, particularly in geographically distributed developments. We introduce a tool that uses data from change management systems to locate people with desired expertise. It uses a quantification of experience, and present ..."
Abstract
-
Cited by 85 (12 self)
- Add to MetaCart
Finding relevant expertise is a critical need in collaborative software engineering, particularly in geographically distributed developments. We introduce a tool that uses data from change management systems to locate people with desired expertise. It uses a quantification of experience, and presents evidence to validate this quantification as a measure of expertise. The tool enables developers, for example, easily to distinguish someone who has worked only briefly in a particular area of the code from someone who has more extensive experience, and to locate people with broad expertise throughout large parts of the product, such as module or even subsystems. In addition, it allows a user to discover expertise profiles for individuals or organizations. Data from a deployment of the tool in a large software development organization shows that newer, remote sites tend to use the tool for expertise location more frequently. Larger, more established sites used the tool to find expertise profiles for people or organizations. We conclude by describing extensions that provide continuous awareness of ongoing work and an interactive, quantitative resume. 1
Seeding, Evolutionary Growth and Reseeding: The Incremental Development of Collaborative Design Environments
, 1996
"... this paper. In particular, Kumiyo Nakakoji provided invaluable assistance. The research was supported by the National Science Foundation under grants No. IRI-9015441 and MDR-9253245, and NYNEX Science and Technology Center (White Plains, N.Y.). ..."
Abstract
-
Cited by 32 (19 self)
- Add to MetaCart
this paper. In particular, Kumiyo Nakakoji provided invaluable assistance. The research was supported by the National Science Foundation under grants No. IRI-9015441 and MDR-9253245, and NYNEX Science and Technology Center (White Plains, N.Y.).
General Method of Program Code Obfuscation
, 2002
"... Obfuscation can be a simple tool for soft- ware protection. In this paper we present a method of machine code obfuscation, which can be applied to most present processors. The obfuscation method is based on a theory, which led to two useful theorems. The proposed algorithm of obfuscation was impleme ..."
Abstract
-
Cited by 32 (0 self)
- Add to MetaCart
Obfuscation can be a simple tool for soft- ware protection. In this paper we present a method of machine code obfuscation, which can be applied to most present processors. The obfuscation method is based on a theory, which led to two useful theorems. The proposed algorithm of obfuscation was implemented and tested using analytical and empirical approaches. The obtained results give the first estimation of the maximum possible eciency of the obfuscation process.
A socio-technical framework for supporting programmers
- in Proceedings of 2007 ACM Symposium on Foundations of Software Engineering (FSE2007
"... Studies have shown that programmers frequently seek external information during programming, from source code and documents, as well as from other programmers because much of the information remains in the heads of programmers. Programmers therefore often ask other programmers questions to seek info ..."
Abstract
-
Cited by 13 (7 self)
- Add to MetaCart
Studies have shown that programmers frequently seek external information during programming, from source code and documents, as well as from other programmers because much of the information remains in the heads of programmers. Programmers therefore often ask other programmers questions to seek information in a timely fashion to carry out their work. This information seeking entails several conflicting factors. From the perspective of the information-seeking programmer, not asking questions degrades productivity. Conversely, asking questions interrupts other programmers and degrades their productivity, and may be frowned upon by peers due to the perceived social inconsideration of the information seeker. From the perspective of the recipients of the question, even though helping is costly, not helping also incurs social costs due to the deviation from social norms. To balance all these factors, this paper proposes the STeP_IN (Socio-Technical Platform for In situ Networking) framework to guide the design of systems that support information seeking during different phases of programming. The framework facilitates access to the information in the heads of other programmers while minimizing the negative impacts on the overall productivity of the team.
Communication Support for Distributed Collaborative Applications
- Multimedia Systems J
, 1994
"... The Development of distributed, multimedia, collaborative applications requires resolution of communication issues such as concurrency control, and temporal and causal synchronization of traffic over related data streams. Existing transport and/or session layer protocols do not include desired sup ..."
Abstract
-
Cited by 12 (0 self)
- Add to MetaCart
The Development of distributed, multimedia, collaborative applications requires resolution of communication issues such as concurrency control, and temporal and causal synchronization of traffic over related data streams. Existing transport and/or session layer protocols do not include desired support for multi-stream, multipoint communication. In this paper, we propose new communication abstractions and mechanisms that facilitate implementation of the necessary coordination and concurrency control semantics in a collaborative application. We also propose a protocol suite called MCP (Multi-Flow Conversation Protocol) for realization of these abstractions and describe its prototype implementation in an internetwork of workstations. The paper also describes our experience with the prototype and results of a performance evaluation. KEYWORDS: multimedia communication, distributed collaboration, temporal and causal synchronization, Unix networking. This research was supported in p...
The Magic Cauldron
"... This paper analyzes the evolving economic substrate of the open-source phenomenon. We first explode some prevalent myths about the funding of program development and the price structure of software. We present a game-theory analysis of the stability of open-source cooperation. We present nine models ..."
Abstract
-
Cited by 12 (0 self)
- Add to MetaCart
This paper analyzes the evolving economic substrate of the open-source phenomenon. We first explode some prevalent myths about the funding of program development and the price structure of software. We present a game-theory analysis of the stability of open-source cooperation. We present nine models for sustainable funding of open-source development; two non-profit, seven for-profit. We continue to develop a qualitative theory of when it is economically rational to be closed. We then examine some novel additional mechanisms the market is now inventing to fund for-profit open-source development, including the reinvention of the patronage system and task markets. We conclude with some tentative predictions of the future.
Coordination neglect: How lay theories of organizing complicate coordination in organizations
- RESEARCH IN ORGANIZATIONAL BEHAVIOR, ELSEVIER
, 2000
"... We argue that organizations often fail to organize effectively because individuals have lay theories about organizing that lead to coordination neglect. We unpack the notion of coordination neglect and describe specific cognitive phenomena that underlie it. To solve the coordination problem, organiz ..."
Abstract
-
Cited by 11 (0 self)
- Add to MetaCart
We argue that organizations often fail to organize effectively because individuals have lay theories about organizing that lead to coordination neglect. We unpack the notion of coordination neglect and describe specific cognitive phenomena that underlie it. To solve the coordination problem, organizations must divide a task and then integrate the components. Individuals display shortcomings that may create problems at both stages. First, lay theories often focus more on division of labor than on integration. We discuss evidence that individuals display partition focus (i.e. they focus on partitioning the task more than on integration) and component focus (i.e. they tend to focus on single components of a tightly interrelated set of capabilities, particularly by investing to create highly specialized components). Second, when individuals attempt to reintegrate a task, they often fail to use a key mechanism for integration: ongoing communication. Individuals exhibit inadequate communication because the ‘curse of knowledge’ makes it difficult to take the perspective of another and communicate effectively. More importantly, because specialists find it especially difficult to communicate with each other, the
Software Process Improvement: Ten Traps to Avoid
- Software Development
, 1996
"... This paper describes ten common traps that can undermine a software process improvement program. Learning about these process improvement killers---and their symptoms and solutions---will help you prevent them from bringing your initiative to its knees. However, it is important to realize that none ..."
Abstract
-
Cited by 4 (1 self)
- Add to MetaCart
This paper describes ten common traps that can undermine a software process improvement program. Learning about these process improvement killers---and their symptoms and solutions---will help you prevent them from bringing your initiative to its knees. However, it is important to realize that none of the solutions presented here are likely to be helpful if you are dealing with unreasonable people.
Multiple view software process support using the MultiView architecture
- Proc. Motorola Asia-Pacific Software Engineering Symposium (Adelaide, South Australia, 1996)(Ed
, 1996
"... The use of Process Centred Software Development Environments (PCSDEs) promises much to the software development community. By allowing software development processes to be defined and followed accurate measurement of the process can be taken. These measurements will allow improvements to be made on ..."
Abstract
-
Cited by 3 (1 self)
- Add to MetaCart
The use of Process Centred Software Development Environments (PCSDEs) promises much to the software development community. By allowing software development processes to be defined and followed accurate measurement of the process can be taken. These measurements will allow improvements to be made on the basis of objective evidence rather than subjective feel. Thus, the deployment and use of PCSDEs will assist in the attainment of process improvement goals, through greater assurance that defined processes are being followed and that the process from which metrics information is being collected is indeed the process which was described. It is clear, though, that there are many classes of users for such PCSDEs, ranging from project managers to individual software engineers. Each of these potential users will have a different perspective of the software development process and hence will need to be presented with different views of this process as it is enacted. This paper describes progres...

