Good software has:
- Continuous integration
- A large and useful suite of tests that are run during #1
- A principal or group of principals who care about the future of the software and is active in its development
- A manager who understands the full software development life cycle
- Developers who understand the business domain and problem the software is designed to solve
[via /.]