Class 4 - Intro to Agile, Working with Stakeholders Flashcards
True or False: It is okay if a system is not deployable at the end of a sprint as bugs can always be fixed in the next sprint
False. The system should be technically deployable at the end of every sprint (code is clean, all tests pass). Deployment should be a business decision
Stable Productivity
A feature similar to one that took 2 weeks at the start of project will take 2 weeks a year later
What things are expected to improve as more time is invested into a project?
- Design and architecture of a software system
- Code structure
- Efficiency and throughput
Fearless Competence
If you see something wrong or dirty, you will fix and clean it
Why is test automation desirable?
Asking humans to do what machines can do is expensive, inefficient, and immoral. Every test that can feasibly be automated must be automated.
What tools can be used to automate UI acceptance tests?
- Selenium
- Espresso
- Robotium
- others…
What is the most honest estimate?
I don’t know
How can you get a more honest estimate for user stories?
- Use relative estimates (story points)
- For time estimations, give a range of possibilities
Perverse Incentives
Incentives that result in unintended negative consequences due to actions people take to receive the incentive. Specifically, do not judge sprint progress based on:
- Story points complete
- # of stories
- # of bugs fixed
Cobra Effect
An attempted solution worsens the original problem (e.g. if a cash reward is given for killing snakes, people will breed snakes just to kill them and make money)
True or False: When you don’t believe something is possible (based on the scope, budget, and time allotted for the project), you should say no
True. Even if you are turning down something the client really wants, it is important to say “no” if something is not feasible.
What can you do to ensure you are continuously learning software engineering?
- Learn at least 1 new language every year
- Read a technical book and a nontechnical book each month
- Take classes
- Participate in local user groups and meetups
- Experiment with different environments
- Stay current
Customer Bill of Rights
- Overall Plan
- Maximize Value
- See Progress
- Change your Mind
- Informed of schedule and estimate changes
- Cancellation
Overall Plan (Customer Bill of Rights)
You have the right to an overall plan and to know what can be accomplished when and at what cost
Maximize Value (Customer Bill of Rights)
You have the right to get the most possible value out of every iteration