Software
REQUIREMENTS
Top Reasons why Projects Fail
Dilbert
Behavior Driven Development
TESTING WHILE CODING
Errors and Bugs
Is it reasonable to insist on reproducing every defect?
Should we list bugs in the header of a source file?
How do you face a programming task that you’ve never done before?
How do you know if you’re overthinking development?
How do I isolate difficult to reproduce bugs?
THE SOFTWARE MASTER PEACE
TESTING WHILE CODING
Alpha and Beta releases
Basics of the Unix Philosophy
Acceptance Test Driven Development
high-risk locations on road map
Things Happen When You Say No
USA: Why Are So Many IT Projects Failing?
Australia: Why IT projects really fail
The scariest software project horror stories
planning  
Project blockers
how well software solution reacts to invalid input problems not due to programmer error


Project blockers
-----------------------------------------------------------------------------

Induced crush testing before 1.0 release. We are committed to provide functionality and service that meet or exceed promised performance, and the use of real-life data with some random garbage input. Testing will be performed to prove such functionality in the induced stress conditions.

* Robustness: how well software solution reacts to invalid input problems not due to programmer error. This includes situations such as incorrect, inappropriate or corrupt data, unavailability of needed resources such as memory, operating system services and network connections, and user error.
* Usability: the ergonomics of a program: the ease with which a person can use the program for its intended purpose, or in some cases even unanticipated purposes. Such issues can make or break its success even regardless of other issues. This involves a wide range of textual, graphical and sometimes hardware elements that improve the clarity, intuitiveness, cohesiveness and completeness of a program's user interface.

Risks, issues and problems
All risks, issues and problems must be managed on an ongoing basis using appropriate management processes and forms and logs to record all these items.
A great tip is to try and resolve any issues or risks as soon as they are identified, in order to minimize the impact they may have on your project.
Problematic issues must be discussed and prioritized with the relevant stakeholders on an ongoing basis and their impact on the project must be track and monitored.

Project health checks
Tracking projects at a low level is part of ongoing project management, but you must also be able to every now and then during the project’s existence sit back and review the project from a higher level to gain a view of the project’s overall health and status. By taking a weekly summarized view of the project, you will be able to more effectively manage the project and lead the team.
-----------------------------------------------------------------------------------