Technology Readiness Tracker

The goal of this project is to create a tool that can be used for conducting research on the maturity of a technology development. This tool will provide ways to search for and analyze trends in technology to provide a better picture about the current state of a given technology allowing allowing a company to make better decision about whether to invest in this technology, or to pursue it as a product line.

Background:
The idea for this project originally came from a method of classifying technologies created by NASA called Technology Readiness Levels. These levels track the progression of a technology all the way from its initial conception, to it being actively and successfully used. This is useful because it provides an indication as to how mature a technology is, and if has developed to the point where it is reliable enough to be used in a project.

The original goal of this project was to automate the mapping of a given technology to its readiness level, and predict when it would advance to the next levels. Predicting this would have a multitude of uses, for example, it could give an indication of whether a newly developed technology would be worthwhile to license. Since then, the goals of our project have shifted to what is described below.

Data Sets
To meet our specifications, we plan to focus on US Patent Data, as it contains a large amount of information useful to understanding the state of a technology, and is easily accessible through various data sources.

As this project is largely data based, finding adequate sources is extremely important. When evaluating potential data sources, we looked at the following criteria:
 * 1) Accessibility: How easy is this data source to access? Do we need specialized tools? Can it be queried without downloading the entirety of the data set? Is it quick to query?
 * 2) Completeness: How complete is this data source? Is it up to date? Does it enough information to make it a worthwhile data source?
 * 3) Compatibility: How easy would this data source be to combine data from this source with other types of data?

Patent data
Based on the above analysis, we have decided to use the USPTO PAIR API for the majority of our data. It is the only data source that is feasible to use to get data on a large number of patents, and the speed at which it can return data is a huge plus. In addition to this, we will use the PatFT database to selectively supplement the data returned by the PAIR API for individual patents.

Additionally, we are using the Google Geocoding API, and the OpenStreetMap API as mapping data source for one of our visualizations.

Technology Choices

 * Python- a general purpose programming language that we picked to use as the main programing language for our project. We decided this because:
 * All of the team members in our project have experience with Python
 * Python has many great data processing libraries that will be useful for achieving our first requirement (Find trends in dataset).
 * Python code is quick to write, so we can focus on the meat of our project.


 * Web Application (HTML/CSS/Javascript)- Two of our major requirements are Graphing Data, and a User Interface. We decided to develop a web application in order to fulfill these.
 * Interactive visualizations are far easier to create as a web application, then as a desktop application.
 * Web applications are much easier for an end user to use- All they need to do is navigate to a specific page in a web browser.
 * There are many useful Javascript libraries for visualization and user interfaces

Data Visualizations
Our main unit of data analysis is a Query, such as computer. This query represents all the patents with the word computer somewhere in their title. For each query generate several visualizations:

(note: will be expanded later with images/descriptions as things are finalized)