Data Management Skillbuilding Hub

Best Practice: Identify most appropriate software


Best Practices by Data Life Cycle

Identify most appropriate software

Data Life Cycle stage(s): Analyze

Follow the steps below to choose the most appropriate software to meet your needs.

  1. Identify what you want to achieve (discover data, analyze data, write a paper, etc.)
  2. Identify the necessary software features for your project (i.e. functional requirements)
  3. Identify logistics features of the software that are required, such as licensing, cost, time constraints, user expertise, etc. (i.e. non-functional requirements)
  4. Determine what software has been used by others with similar requirements
    • Ask around (yes, really); find out what people like
    • Find out what software your institution has licensed
    • Search the web (e.g. directory services, open source sites, forums)
    • Follow-up with independent assessment
  5. Generate a list of software candidates
  6. Evaluate the list; iterate back to Step 1 as needed
  7. As feasible, try a few software candidates that seem promising

Description Rationale

By carefully considering software choice before a project begins, costs, requirements, and limitations can be addressed early in the data life cycle.

Additional Information:

Open source sites:,, etc.



Cite this best practice:

Damien Gessler, Perry Willett, DataONE  (May 11, 2011) "Best Practice: Identify most appropriate software". Accessed through the Data Management Skillbuilding Hub at on Aug 22, 2019


Hosted by DataONE

In collaboration with the community, DataONE has developed high quality resources for helping educators and librarians with training in data management, including teaching materials, webinars and a database of best-practices to improve methods for data sharing and management.

Question If you have a question or concern, please open an Issue in this repository on GitHub.