Program and Programmer Qualities

Specifications- How well does the program meet the specifications? Does it produce the correct results for any given input? Does it correctly display the results?
Readability- Is the code easy to read and follow? Are variables and constants given appropriate names that make them easy to understand?
Reusability- Can the program or parts of it be used again for other similar problems?
Documentation- Do there exist supplementary documents that explain the purpose of the program and its modules? Are there sufficient comments within the code that are somewhat useful for understanding the flow of the code?
Delivery- Was the program delivered on the time of its due date?
Efficiency- Can the program be written more efficiently (in terms of saving time and space) without sacrificing readability and understanding?
Understandability- Does the programmer understand his or her own code? Can the programmer provide an oral narrative explaining any part of his or her code? Can the programmer answer questions about his or her own code?
Maintainability- Is the programmer able to make changes to his or her code to reflect a change in the specifications?
Readability- Is the code easy to read and follow? Are variables and constants given appropriate names that make them easy to understand?
Reusability- Can the program or parts of it be used again for other similar problems?
Documentation- Do there exist supplementary documents that explain the purpose of the program and its modules? Are there sufficient comments within the code that are somewhat useful for understanding the flow of the code?
Delivery- Was the program delivered on the time of its due date?
Efficiency- Can the program be written more efficiently (in terms of saving time and space) without sacrificing readability and understanding?
Understandability- Does the programmer understand his or her own code? Can the programmer provide an oral narrative explaining any part of his or her code? Can the programmer answer questions about his or her own code?
Maintainability- Is the programmer able to make changes to his or her code to reflect a change in the specifications?