SourceForge Logo
Data Mining Software Development Experience

Note: Please take a look at DRT, a more recent project that I am working on for design recovery/reverse engineering of interactive graphical applications.

With the emergence of the open source movement, code for a wide range of software systems is now in abundance on the net. Such freely available source code embodies the collective experience of thousands of software developers all over the world from the past three decades.

As a result, we now have a golden opportunity to learn from past software development experience through analysis of publicly available code in numerous open source projects. To this end, the CodeWeb project has been started to make this past experience easily accessible to software developers over the Web.

NOTE: There is now a KDE demo of work in progress on data mining library usage in existing applications. There is also documentation for the demo in pdf and ps format.

Thus far, we have data mined software reuse experience by analysing how an object-oriented library is used in a large collection of applications. In this way, we can guide and check usage of that library in other applications. Indeed, you can view this method as an automated way of constructing a library tutorial. You can read more about this work in an ICSE 2000 paper.

Of course, we don't have to restrict ourselves to mining library usage. Indeed, there are numerous other kinds of software development experience that we can mine: evolution patterns, domain patterns, developer patterns, programming environment patterns, GUI style conventions, end-user interactions, debugging patterns, and coding guidelines. If you have any other ideas, please let me know.

Back to the CodeWeb project summary at SourceForge