A Pragmatic Approach. Brent Bradbury Joshua Bruning. The Evils of Duplication. DRY – Don’t Repeat Yourself!. Imposed Duplication Multiple representations of information Documentation in code Documentation and code Language issues Inadvertent Duplication Impatient Duplication
Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.
DRY – Don’t Repeat Yourself!
Make It Easy to Reuse!
Eliminate Effects Between Unrelated Things
Use Tracer Bullets to Find the Target
Learning to estimate will give you the “apparently magical” skill to determine the feasibility of a given goal.
How Accurate is Accurate Enough?
First assess how accurate an estimate the customer needs
Choose your units accordingly-- “6 months” sounds general whereas “130 days” sounds very specificEstimating
Where do Estimates Come From?
Often from someone who has already done it, bolstered by doing the following…
Understand what’s being asked
Define assumptions and scope
Build a Model of the System
A simple mental model will allow you to think through the complexities of the proposed software. Your experience will tell you when to stop refining the model.
Break the Model into Components
Understand the mathematical complexity of each software component.
Give Each Parameter A Value
Decide which parameters represent critical points in execution, and calculate how much time they’ll take to execute.
Calculate the Answers
Use all of the small estimations to make a final, large estimation.