Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University CoxR: Open Source.

Slides:



Advertisements
Similar presentations
Using the Self Service BMC Helpdesk
Advertisements

Business Development Suit Presented by Thomas Mathews.
Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University Identifying Source.
Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University Evolutional Analysis.
Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University Extraction of.
Unified theory of software evolution Reengineering – Business process reengineering and software reengineering BPR model – Business definition, process.
Access 2007 Product Review. With its improved interface and interactive design capabilities that do not require deep database knowledge, Microsoft Office.
Software Documentation Written By: Ian Sommerville Presentation By: Stephen Lopez-Couto.
SubVersioN – the new Central Service at DESY by Marian Gawron.
By Steven Campbell and Erik Boone.  Sharing projects by putting them into a central repository.  Checking out copies of projects from the repository.
Tutorial Introduction Fidelity NTSConnect is an innovative Web-based software solution designed for use by customers of Fidelity National Title Insurance.
CVSQL 2 The Design. System Overview System Components CVSQL Server –Three network interfaces –Modular data source provider framework –Decoupled SQL parsing.
Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University Where Does This.
1 Software Maintenance and Evolution CSSE 575: Session 8, Part 2 Analyzing Software Repositories Steve Chenoweth Office Phone: (812) Cell: (937)
Open Source Workshop1 IBM Software Group Working with Apache Tuscany A Hands-On Workshop Luciano Resende Haleh.
These materials are prepared only for the students enrolled in the course Distributed Software Development (DSD) at the Department of Computer.
Selected Topics in Software Computing Distributed Software Development CVSQL Final Project Presentation.
Trouble History Database of HIMAC ~ Current Status and Future Plan ~ T.Kadowaki (Accelerator Engineering Corporation) 28.SEP.2007
K. Jamroendararasame*, T. Matsuzaki, T. Suzuki, and T. Tokuda Department of Computer Science, Tokyo Institute of Technology, JAPAN Two Generators of Secure.
Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University ICSE 2003 Java.
LBTO IssueTrak User’s Manual Norm Cushing version 1.3 August 8th, 2007.
Article: Source Code Review Systems Author: Jason Remillard Presenter: Joe Borosky Class: Principles and Applications of Software Design Date: 11/2/2005.
Copyright ®xSpring Pte Ltd, All rights reserved Versions DateVersionDescriptionAuthor May First version. Modified from Enterprise edition.NBL.
XP New Perspectives on Browser and Basics Tutorial 1 1 Browser and Basics Tutorial 1.
Department of Computer Science, Graduate School of Information Science and Technology, Osaka University DCCFinder: A Very- Large Scale Code Clone Analysis.
IEEE-SA Attendance Tracking Tool Project Wrap Up for 802 Implementation Dallas – November 2008.
Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University Investigation.
An Adaptive Version-Controlled File System Makoto Matsushita, Tetsuo Yamamoto and Katsuro Inoue Osaka University, JAPAN.
Presented by Abirami Poonkundran.  Introduction  Current Work  Current Tools  Solution  Tesseract  Tesseract Usage Scenarios  Information Flow.
Dream Report: Secure and Reliable Reporting Renee Sikes Applications Engineer Dream Report Brand Manager.
Prepared by: Steve Teo Contributors: Tong Huu Khiem.
Statistics Monitor of SPMSII Warrior Team Pu Su Heng Tan Kening Zhang.
Information Systems and Network Engineering Laboratory II DR. KEN COSH WEEK 1.
Project Overview Graduate Selection Process Project Goal Automate the Selection Process.
Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University Applying Clone.
1 Schema Registries Steven Hughes, Lou Reich, Dan Crichton NASA 21 October 2015.
Forms and Server Side Includes. What are Forms? Forms are used to get user input We’ve all used them before. For example, ever had to sign up for courses.
Project Overview Graduate Selection Process Project Goal Automate the Selection Process.
Web Directory For Computer Science Projects Nidhi Goel Course: CS 491B Instructor: Prof. Chengyu Sun December 8, 2006.
Workshop on Software Product Archiving and Retrieving System Takeo KASUBUCHI Hiroshi IGAKI Hajimu IIDA Ken’ichi MATUMOTO Nara Institute of Science and.
Copenhagen, 7 June 2006 Toolkit update and maintenance Anton Cupcea Finsiel Romania.
Introduction to Software Development. Systems Life Cycle Analysis  Collect and examine data  Analyze current system and data flow Design  Plan your.
Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University Development of.
Department of Computer Science, Graduate School of Information Science & Technology, Osaka University Retrieving Similar Code Fragments based on Identifier.
Prepared by: Steve Teo Contributors: Tong Huu Khiem.
Copyright © 2015 NTT DATA Corporation Kazuo Kobori, NTT DATA Corporation Makoto Matsushita, Osaka University Katsuro Inoue, Osaka University SANER2015.
Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University IWPSE 2003 Program.
 Registry itself is easy and straightforward in implementation  The objects of registry are actually complicated to store and manage  Objects of Registry.
Strictly Business Using “StrictlyFused” to Create an Extensible Knowledge Portal.
Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University 1 Software Tag:
Extracting a Unified Directory Tree to Compare Similar Software Products Yusuke Sakaguchi, Takashi Ishio, Tetsuya Kanda, Katsuro Inoue Department of Computer.
1 Measuring Similarity of Large Software System Based on Source Code Correspondence Tetsuo Yamamoto*, Makoto Matsushita**, Toshihiro Kamiya***, Katsuro.
Department of Computer Science, Graduate School of Information Science & Technology, Osaka University An Empirical Study of Out-dated Third-party Code.
Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University 1 Classification.
The School Portal and New and Improved IFAP Tools for Our Partners Today’s Focus: What is a Portal? (general definitions) What is the School Portal? How.
2004/051 >> Supply Chain Solutions That Deliver Users.
Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University 1 Extracting Sequence.
ASSIGNMENT 2 Salim Malakouti. Ticketing Website  User submits tickets  Admins answer tickets or take appropriate actions.
File Tracking System Presented by J. Madhusudhana Reddy Asst Mgr(IS)
PIER USER TRAINING 1 Class Date and Location. Instructor Name Instructor Contact Info 2 PIER User Training 1.
Information Systems and Network Engineering Laboratory I DR. KEN COSH WEEK 1.
Customer Care & Help Desk. Content  What is Help Desk?  Who should use these?  Features of Help Desk  Hierarchy of Help Desk (Level of User)  Flow.
1 Ivan Marsic Rutgers University LECTURE 2: Software Configuration Management.
Advanced Higher Computing Science The Project. Introduction Worth 60% of the total marks for the course Must include: An appropriate interface using input.
Advanced Higher Computing Science
Architecture Review 10/11/2004
Information Systems and Network Engineering Laboratory II
Source File Set Search for Clone-and-Own Reuse Analysis
Chapter 2: System Structures
Manuscript Transcription Assistant Initiative
Presentation transcript:

Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University CoxR: Open Source Development History Search System Makoto Matsushita, Kei Sasaki, and Katsuro Inoue Osaka University

Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University 2005/12/17Supporting Knowledge Collaboration in Software Development 2 Contents Background  Open-source software development  Repository analysis system “CoxR” Supporting Dynamic Communication System Future research interests

Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University 2005/12/17Supporting Knowledge Collaboration in Software Development 3 Open Source Software Development Open and parallel software development  Anybody join the party at anytime  Developers are living all over the world CVS archives developers source code manual GNATS submit bug-report request feature enhancement source code source code source code source code requests ↓ fixes

Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University 2005/12/17Supporting Knowledge Collaboration in Software Development 4 Reusing repositories System repositories have valuable information such as products evolutional histories and each developer’s information  processes to be done to products  knowledge on requirements and design Analyze and reuse these contents may help to reduce time/efforts of whole software development  reuse the ways of bug-fix  understanding a project itself that are going to join  reuse (a part of) products/components However, there are some difficulties to reuse contents…

Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University 2005/12/17Supporting Knowledge Collaboration in Software Development 5 Problem 1: less relationship between systems Where can I find what I want? user CVS archive GNATS It seems that ‘bktr’ driver has a bug so I’d like to fix it… proposed fix for bktr driver discussions on bktr driver source code fixes files also need to be changed

Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University 2005/12/17Supporting Knowledge Collaboration in Software Development 6 Problem 2: Interests may vary Even if the problem is same, a solution that is done in the past is not suitable for all peoples  knowledge and processes may vary for developers  information needs may vary on time I’d like to seek authorities of graphics driver I’d like to have a new version of bktr driver Maybe similar bugs were appeared on other drivers so search them up Problem: there’s a bug on bktr driver

Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University 2005/12/17Supporting Knowledge Collaboration in Software Development 7 Objective Analyze past processes/histories kept on existing systems, to help developers to search, understand, reuse such processes Modeling information on systems as “development community”, using CVS, , and GNATS Propose an information extraction approach from development community A prototype of the proposed approach

Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University 2005/12/17Supporting Knowledge Collaboration in Software Development 8 Topics Step 1: Modeling information Step 2: Information extraction algorithm Step 3: System implementation

Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University 2005/12/17Supporting Knowledge Collaboration in Software Development 9 Model elements People: developers registered to CVS, archive, and GNATS databases Knowledge: contents of CVS, , and GNATS CVS archivesGNATS integrated model

Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University 2005/12/17Supporting Knowledge Collaboration in Software Development 10 Extracting people/knowledge file path revision # tag, date Message-Id: Date: file path PR # date last modified GNATS CVS 人 source code comments fix audit-trail status Knowledge modification developer contributor Subject: body From: To:, Cc: category bug class description base Originator Responsible

Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University 2005/12/17Supporting Knowledge Collaboration in Software Development 11 People/Knowledge network We assume that the network has 3 types of edges:  People-Knoledge  People-People  Knowledge-Knoledge Development Community

Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University 2005/12/17Supporting Knowledge Collaboration in Software Development 12 Extracting network edges (1/2) People-Knowledge edge  People/Knowledge elements in the same CVS, and GNATS information People-People edge  Peoples in the same CVS, , and GNATS information  Peoples subscribed to the same lists  Peoples working on the same directory

Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University 2005/12/17Supporting Knowledge Collaboration in Software Development 13 Extracting network edges (2/2) Directly connected  Revision histories to the same file  Files in the same directory  Modified at the same time  threads  /PR IDs Similar Knowledges  Source codes  Keywords  Base/modification information in GNATS Knowledge-Knowledge edge

Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University 2005/12/17Supporting Knowledge Collaboration in Software Development 14 Topics Step 1: Modeling information Step 2: Information extraction algorithm Step 3: System implementation Finding out a small network that is matched to the users’ input

Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University 2005/12/17Supporting Knowledge Collaboration in Software Development 15 Topic community Topic = reusable process and information Elements related to a topic can be defined as a sub- network of development community  Topic community may vary to each user development community Topic communmity Experts on this area patches

Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University 2005/12/17Supporting Knowledge Collaboration in Software Development 16 Topic community extraction (1/6) Select the initial knowledge elements 1.Assume that a topic is given by a user 2.Extract knowledge matched to the topic 3.Select an initial knowledge elements Code fragments Directory/file name Mailing lists name Bug class/description Keywords Date Search results Keyword: ”bktr” CVS : bktr_core.c 1.20 Comment: fix register error GNATS : Description: fix bktr option error (2000) I found that there is an register error on bktr driver while watching TV by fxtv program… : Subject bktr module unloding (2002) user

Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University 2005/12/17Supporting Knowledge Collaboration in Software Development 17 Topic community extraction (2/6) Select the initial knowledge elements 1.Assume that a topic is given by a user 2.Extract knowledge matched to the topic 3.Select an initial knowledge elements Select bktr_card.c It seems that bktr_card.c rev is good CVS : bktr_core.c 1.20 Comment: fix register error : Subject bktr module unloding (2002) GNATS : Description: fix bktr option error (2000) user

Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University 2005/12/17Supporting Knowledge Collaboration in Software Development 18 Topic community extraction (3/6) 4.Show related people/knowledges using the network 5.User selects appropriate elements again Search results Search related elements developer: fjoe I’d like to know the people working on bktr_core.c contributor: roger contributor: phk bktr_core.c user

Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University 2005/12/17Supporting Knowledge Collaboration in Software Development 19 Topic community extraction (4/6) 4.Show related people/knowledges using the network 5.User selects appropriate elements again Select fjoe developer: fjoe Hmm, fjoe is actual developer so I want to know more about him. contributor: roger contributor: phk bktr_core.c user

Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University 2005/12/17Supporting Knowledge Collaboration in Software Development 20 Topic community extraction (5/6) “Search and select elements” repeated Search results Search related elements developer: fjoe Same time changed: bktr_card.c bktr_core.c Ok, are there any other elements that when fjoe changed bktr_core.c … user Variables changed in yuv422_pro()

Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University 2005/12/17Supporting Knowledge Collaboration in Software Development 21 Topic community extraction (6/6) “Search and select elements” repeated Search results Search related elements developer: fjoe Same time changed: bktr_card.c commented to the change Topic community Tracking GNATS elements that is talking about bktr_card.c The user finally get information about the changes to bktr_card.c, that helps to fix register error bktr_core.c user PR:41437 causes a register error GNATS PR:41437 (closed) Description : Problems bktr_card.c:yuv422_pro() Variables changed in yuv422_pro()

Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University 2005/12/17Supporting Knowledge Collaboration in Software Development 22 Topics Step 1: Modeling information Step 2: Information extraction algorithm Step 3: System implementation CoxR: web-based system, using FreeBSD data

Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University 2005/12/17Supporting Knowledge Collaboration in Software Development 23 CoxR implementation Using FreeBSD development data, from 1994 to 2004 System development environment  CPU : Pentium4 1.5GHz  RAM : 512MB(SDRAM)  OS : Debian GNU/Linux  System size: about LOCs CVS : FreeBSD CVS repository (Total files, revisions) “Commited changes” mailing lists (Total ) BTS : FreeBSD GNATS PRs (Total 82350)

Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University 2005/12/17Supporting Knowledge Collaboration in Software Development 24 System overview Web Server CoxR-C Topic words Matched People/Knowledge System Control user Relation extraction Relation DB GNATS CVS データ抽出の流れ関連抽出の流れ 情報探索の流れ History DB Information Extraction Search results Knowledge People Knowledge People Knowledge- Knowledge relations People- Knowledge relations People- People relations selection

Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University 2005/12/17Supporting Knowledge Collaboration in Software Development 25 System evaluation Purpose  CoxR provides useful information to developers with appropriate search results Process  Announcing CoxR to ‘freebsd-hackers’ and ‘freebsd- current’ mailing lists that are mainly for FreeBSD developers  Trace users’ behaviors with webserver’s log  Evaluation period: Jan/31/2005-Feb/21/2005  Total users : 79 (31 unique users)

Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University 2005/12/17Supporting Knowledge Collaboration in Software Development 26 Initial knowledge selection Unfortunately not all users select knowledge from the topic search results Maybe they are just “try” to use CoxR search, or search results is not good for users 18 out of 31 users select initial knowledge Type of information selected:  CVS: 12  4  GNATS: 2 Selection times average: 4 times per topics (min 1, max 9)

Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University 2005/12/17Supporting Knowledge Collaboration in Software Development 27 Topic community search Users actually search topic community  12 out of 18  they used to search related people and knowledge within the same subsystem Average network traversal: 2 times  People-People: 1  People-Knowledge: 8  Knowledge-Knowledge: 13

Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University 2005/12/17Supporting Knowledge Collaboration in Software Development 28 Discussions Initial knowledge selections  56% search results would leads to valuable information  “Search by keyword, then search by developer names and/or date” is a typical search patterns Topic community selection  67% users who find initial knowledge elements are successfully find their own topic community  They used to trace Knowledge-Knowledge and People-Knowledge edge of development network

Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University 2005/12/17Supporting Knowledge Collaboration in Software Development 29 Conclusion “CoxR”, a search system for open-source software development  CVS, , and GNATS  Development network, topic community  Evaluation helped with real developers Keywords may have its information costs  Easy to find important keywords  Links between similar keywords Developer roles  Easy to find people by their roles Reuse topic community found by others  It can be a suggestion of finding out topic community

Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University 2005/12/17Supporting Knowledge Collaboration in Software Development 30 Fin

Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University 2005/12/17Supporting Knowledge Collaboration in Software Development 31 CoxR CoxR (Web Server) CoxR user Query Word Query Word = Source code Commit log Keyword, Time File name Developer name Search Result CoDS Related Files /Data CVS information information Developer name Time Topics Commit log Keyword Time File name Developer name Data Display Record System Search Result File name Developer name Time SPxR Code DB DB Create tool Fusion info Create tool CVS Info DBFusion info DB Info DB CVS info Create tool info Create tool Token Similarity Time File name Developer name Source code Token compare tool CGI-Main Source code Search result Lexical analysis tool CVS Repository Archive Code DB DB Create tool Fusion info Create tool CVS Info DBFusion info DB Info DB CVS info Create tool info Create tool Token compare tool CGI-Main Lexical analysis tool Data Display Record System

Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University 2005/12/17Supporting Knowledge Collaboration in Software Development 32 Example case user Sending a password Password Attack if (i != 0) error("Permission denied, please try again."); password = read_passphrase(prompt, 0); packet_start(SSH_CMSG_AUTH_PASSWORD); packet_put_string(password, strlen(password)); memset(password, 0, strlen(password)); xfree(password); packet_send(); packet_write_wait(); Source code of sending a password Needs improvements

Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University 2005/12/17Supporting Knowledge Collaboration in Software Development 33 Searching the repositories Directory structure and list archive Keywords in source code Filename and repository if (i != 0) error("Permission denied, please try again."); password = read_passphrase(prompt, 0); packet_start(SSH_CMSG_AUTH_PASSWORD); packet_put_string(password, strlen(password)); memset(password, 0, strlen(password)); xfree(password); packet_send(); packet_write_wait(); user Identify similar code

Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University 2005/12/17Supporting Knowledge Collaboration in Software Development 34 Searching similar code After matching files are detected, identify which are most important in this case, with logs and diffs pad passwords sent to not give hints to the length Developer green committed to here at 2001/03/20 02:06:40 packet_put_string() is changed to ssh_put_password() There’s an evidence of improvement, but hard to understand what’s are actually changed Understanding with related information

Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University 2005/12/17Supporting Knowledge Collaboration in Software Development 35 Searching related information Display change history of the file Search files and s at the same time of this commit Search files and s by same developer

Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University 2005/12/17Supporting Knowledge Collaboration in Software Development 36 Search by revision histories Search differences between revisions Search file by same developers, and the same time

Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University 2005/12/17Supporting Knowledge Collaboration in Software Development 37 Search by development time Detailed information of this file information

Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University 2005/12/17Supporting Knowledge Collaboration in Software Development 38 Search by keyword “openssh” キーワードによる検索 Combining search results will make it easy to find what we need

Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University 2005/12/17Supporting Knowledge Collaboration in Software Development 39 Search similar information Definition of ssh_put_password() Files commit at the same time (2001/03/20 02:06:40) and same developer (green) Actual source code of how to hide the password packet length is found by CoxR Search living source code from relative source files

Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University 2005/12/17Supporting Knowledge Collaboration in Software Development 40 Solutions if (i != 0) error("Permission denied, please try again."); password = read_passphrase(prompt, 0); packet_start(SSH_CMSG_AUTH_PASSWORD); packet_put_string(password, strlen(password)); memset(password, 0, strlen(password)); xfree(password); packet_send(); packet_write_wait(); user void ssh_put_password(char *password) { int size; char *padded; size = roundup(strlen(password) + 1, 32); padded = xmalloc(size); memset(padded, 0, size); strlcpy(padded, password, size); packet_put_string(padded, size); memset(padded, 0, size); xfree(padded); } Search “how to fix” Understanding changes Reuse it later

Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University 2005/12/17Supporting Knowledge Collaboration in Software Development 41 Discussions Search similar code ・・・ shows actual changes Search relative infomation ・・・ Understanding how to fix the security hole Easy to detect what we need, since any kind of information, including keywords, time, developer name, code fragment, can be used. Easy to understand search results by finding relative information easily; it helps to grasp not only “what,” but also “why” this change happened.

Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University 2005/12/17Supporting Knowledge Collaboration in Software Development 42 Conclusion Remarks Implementing “CoxR”, a search system for both CVS revisions and archives. Using actual open-source development data, CoxR provides easy and quick way to search useful information on software development. Broader experimentation Improvements on search method (multiple search at one time) Information scoring (define “importance/relation level” of each information)