Monday, February 4, 2008

Data Mining & Software Engineering

So many efforts have been done in data mining field from thousands of researchers and developers both in academia and enterprise. This can be rationale due to the following reasons:
  1. The vast ways in collecting and storing data in all aspects of life.
    The huge data collected in the enterprise lead to overwhelming information workers.
    This lead to one fact, which is “We rich in data but poor in information”. So we seek the solution in the area of data mining.
  2. The data mining serve any field in the enterprise in uncover valuable information that is hidden in its data bases. This information can help enterprise greatly in its enterprise business and will give it a competitive advantage in understands the behind scenes information.

Due to these reasons, the data mining interests a huge numbers of customers approximately in all fields of the enterprise.

But as software engineers what can data mining provide to us? By us I mean the software engineers themselves in their work.

Let say it in other words

given the predefined target of data mining which is uncovering the hidden valuable information in the data bases, which was represented by the old, uncommon name of the data mining field, Knowledge Discovery in Databases.

This led us to another question which is what are the data bases that we as software engineers use for our own work?

These databases called software repositories such as source control systems, archived communications between project members, and issue tracking systems used to help manage the progress of software projects. Hidden information in these repositories can benefit

  • The maintenance of software systems.
  • Improve software design/reuse.
  • Empirically validate novel ideas and techniques.
  • Predictions about software development.
  • Planning of future development project.
  • Understand software development in real practice.

The field that concerns with this area called Mining Software Repositories.

But, is this the only way data mining can benefit software engineers in their work? No, there is another way called Software Mining. Which I will talk about in a later post.

No comments: