Francisco Estrada’s checklist for good software

  1. Modularity (Composed of C Modules)
  2. Re-usable modules
  3. Extendable ()
  4. Maintainable (Organized, easy to debug)
  5. Correct (Bug free, Well tested)
  6. Efficient (Uses lowest time and space complexity)
  7. OSS
  8. Private and secure