Unique Deck Flashcards
Why is it important to not lock in a specific vendor or technology or anything else?
Because requirements, users, and hardware change faster than we can get the software developed.
What is tracing bullets?
The code is very simple and lean but is complete. Helps developers and stake holders to adjust the aim throughout the project.
What is the main difference between tracing bullets and prototypes?
Prototypes are thrown away after is completed and tracing bullets is the lean but complete piece of software.
What can be prototyped?
Things you haven’t tried before, or that is absolute critical to the final system. Anything unproven, experimental or doubtful. Examples:
Architecture;
New functionality in an existing system
Third party tools or components
User interface design.
What is the real value behind the prototype itself?
The value is not in the code itself, but in the lessons learned.
What is a domain language and why is it important to match the terms in the code?
Domain language is the terms used in the field your software fits in. It is important to have similar terms and names so that all people in the project can speak the same language.
What is the most important part of a good estimation?
You need to understand the problem first.
How to express estimates?
Better express in bigger levels of magnitude. E.g two weeks is better than 130 hours.
How to achieve better levels of confidence when estimating?
By creating high level models of the solution and further decomposed.
How to get better at estimating?
By analyzing what went wrong exactly with the model, or the decomposition.
What is a common paradox on project estimation?
We need to get experience in this project to estimate this project.
How to deal with the uncertainties of the project estimation?
By iterative development: Check requirements; Analyze risk (and prioritize riskiest items first) Design, implement and integrate Validate with users
What is a common answer when asked for an estimation?
I’ll get back to you :)
What are the main tips that we need to follow when debugging?
Don’t blame others, won’t help.
Don’t panic.
THINK what could cause the symptoms.
Always find the root cause of the problem.
The bug that just happened is impossible! What to do now.
Don’t waste time saying that. It is clearly possible.
What is very useful and maintainable way of fixing a bug?
Write tests that make it fail before fixing it.
What to do when an exception or any error message appears in the screen?
Read the god damm message.