We sometimes get questions like "What criteria should I consider for X" (which are off-topic).
Also, we often get questions with not enough criteria (even though they comply with the general rule) because askers are newcomers to the field and are not too sure what criteria they should look for.

As we gather experience on this, I think we should maintain a list of criteria for each general type of software. It might be too hard or too ambitious, but let's try.

1 Answer 1


Guidelines for ALL questions: What is required for a question to contain “enough information”?

Desktop software

  • Is a graphical interface (GUI) mandatory, or are command-line (CLI) solutions also acceptable?
  • Is it acceptable if (minor) programming skills are required to "fully adjust" a product to your other requirements?

Optical Character Recognition (OCR) software

  • What language do you want to recognize? An OCR good with English might not be good with Japanese.

Synchronization/backup software

  • Are you OK with your data being stored on third-party servers? Do you have your own server? Is it enough to have peer-to-peer connections between your machines?

Enterprise software

  • Do you need professional/community support, with what budget per year?
  • How many users does the software need to support?

Business Intelligence

  • Do you need ETL, ROLAP/OLAP cubes?
  • Do you need need static reports (for instance PDF files), or dynamic reporting with drill-down, or semi-dynamic reporting with dashbaords and filtering?
  • Who will design new reports? BI specialists, programmers, system administrators, people with some computer knowledge, people with no computer knowledge?

Database interface

  • What database are you using? Is it compatible with SQL?

Document management/ECM software

  • Usage
    • How do you want to access the system? Via CIFS, CMIS, Web?
    • If you need a Web UI, do you need commenting/liking documents, instant preview without downloading, Single-Sign-On with an existing user database?
    • Do you need document versionning, ACLs, workflows, full-text search?
  • Content
    • What kind of documents do you want to manage? Physical dead-tree paper, scanned papers, files generated by an office suite like Microsoft Office, other? Are you a media company handling mostly videos or images? Are you an engineering company handling mostly CAD files generated by professional design software?
    • Are you OK with information being stored on a third-party cloud server?
  • Integration
    • Do you need to integrate with any hardware, for instance scanners, bar-code readers, tape storage?
    • Do you need to integrate with any software, for instance ERP, PLM, CRM?

Enterprise Service Bus

  • What systems do you want to integrate? (list them all)
  • What protocols do you need? (list them all)
  • Do you need a graphical user interface for configuration?
  • Do you want to be able to customize code? If yes, any preference for the language (Java etc)?

Mobile applications

  • Should it be usable offline?

GPS/navigation apps

  • In what language do you want the map labels to show?

Device specific apps

  • Should it be able to run on non-jailbroken/non-rooted devices?


  • Should it have an export feature so that you can get your data out of the service?

Libraries (programming)

  • In what programming language are you writing the code that will call the library?
  • Should it be freely redistributable? Or are you OK with paying royalties for embedding the library into your software?

Mock libraries

  • Should it generate mocks dynamically?
  • 1
    "Libraries > What programming language?" -> maybe specify language of the API or language the library itself. Commented May 14, 2014 at 14:55

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .