Internet
Fact-checked

At WiseGEEK, we're committed to delivering accurate, trustworthy information. Our expert-authored content is rigorously fact-checked and sourced from credible authorities. Discover how we uphold the highest standards in providing you with reliable knowledge.

Learn more...

What Is Software Mining?

G. Wiesen
G. Wiesen

Software mining is a process by which a person or group, usually involved in the information technology (IT) industry, looks at the source code of a software program to determine information about it. This can be done in a number of different ways, though other software is often used to make the process easier or faster. Information found through this method can then be used in a variety of ways, and it is routinely utilized in creating models for future software development. Software mining is similar in some respects to data mining, though the type of information gained and its uses can be quite different.

The process of software mining is often used by companies and software developers to extract data from a program for use in the development of new software. This is typically done by software developers going through the various lines of code that make up a program and extracting data from that code. Other programs are often used to facilitate software mining, often by searching for certain terms or segments within the code itself. Information found in this way can be used in many ways, often as a model for the development of new programs.

Raw data may be extracted from software to serve as a reference in the development of new software.
Raw data may be extracted from software to serve as a reference in the development of new software.

Software mining is typically done by a company or individual on software that was developed by that company, is legally owned by the company, or which is provided under an open source license. This makes the use of any data extracted through the mining process legal. Software mining performed on a program owned by another person or company, however, may violate copyright laws that protect software as intellectual property. This can be something of a nebulous legal area in some instances, however, so mining should be done carefully by a programmer or developer.

Software mining is similar to another process known as data mining.
Software mining is similar to another process known as data mining.

In many ways, software mining is similar to another process known as data mining. Data mining often uses similar techniques and applications as those used in mining software, though it is done to databases and other large quantities of raw data rather than to a particular software program. The two terms are used interchangeably by some IT professionals, however, and so “data mining” may be used with regard to a software program as well. While data mining commonly seeks to gain useful and specific data from a large data set, software mining is often performed to find how data tables and code were created in the first place.

Discussion Comments

Markerrag

This is a pretty common thing that has been done for years, actually. Why reinvent the wheel? Programmers love to find existing bits of code that help them achieve specific tasks so they can meet deadlines quicker and focus on the unique aspects of their programs.

Post your comments
Login:
Forgot password?
Register:
    • Raw data may be extracted from software to serve as a reference in the development of new software.
      By: FotolEdhar
      Raw data may be extracted from software to serve as a reference in the development of new software.
    • Software mining is similar to another process known as data mining.
      By: Gandolfo Cannatella
      Software mining is similar to another process known as data mining.