ience of Gu essing
                          The Sc
                      ru pal E   stim ation
                    D
                        Te  chni ques
          P ro ject
     from
          M  an agers


                                                           http://www.sxc.hu/photo/814294
AS PRESENTED AT DRUPALCAMP STOCKHOLM ON MARCH 8 2013
Introductions

Seriously, who are these people?
   Shannon Vettes              Jakob Persson
   Partner Manager at          Doing Drupal since 2005, co-
   Commerce Guys, Project      founded NodeOne in 2007,
   Managing since 2005,        currently freelance Drupal
   Drupal since 2010,          consultant
   Working in IT since 2000




                                                              S   J
WE ENCOURAGE BIRDSONG

Tweet , Tweet , Tweedly-deet...
           Questions & comments?

           #drestimate

                                   S   J
WHY YOU ARE HERE
WHY YOU ARE HERE

When a client or
colleague asks you
for an estimate,
what’s your initial
reaction?




                               S
WHY YOU ARE HERE

When a client or
colleague asks you
for an estimate,
what’s your initial
reaction?
  Is it THIS?



                                   S
WHY YOU ARE HERE

When a client or
colleague asks you
for an estimate,
what’s your initial
reaction?
  Or... Maybe This?



                                         S
WHY YOU ARE HERE

When a client or
colleague asks you
for an estimate,
what’s your initial
reaction?
  I hope it’s not this....



                                           S
WHY YOU ARE HERE

If it’s anything like that,
         You’ve come to the
            right place!
WHY YOU ARE HERE
At the end of this presentation,
we want you to feel like this
when asked for an estimate.

We’ll cover:
 What an estimate is
 Why estimates are needed
 How risks affect estimates
 How an estimate is made
 Answers to your questions



                                          S
WHAT AN ESTIMATE IS
WHAT AN ESTIMATE IS


“Estimation is the calculated
approximation of a result which is
usable even if input data may be
incomplete or uncertain.”

– Wikipedia


                                     J
WHAT AN ESTIMATE IS
                                                      “How to bake a pie”
✔ Requirements clarification
      ✔ Use cases
                                               ✔ Theming
    ✔ UI refinement
                                          ✔ Development/config


                                                                ✔ Training/doc
                 ✔ Automated testmaking
                       ✔ Testing
                      ✔ Bugfixing
                                                                  ✔ Deployment




                              ✔ Project management time
                                                                                 J
✔ Requirements clarification
                                                ✔ Use cases
                                              ✔ UI refinement




       Story                Case
Focuses on needs     Focus on behavior
and describe         and interaction,
functionality in a   eliminates
way the shows its    ambiguity and
application and      provides the
business value.      developer with the
                     information he/she
                     needs.

•Role                •Summary
•Need                •Rationale
•Sequence of         •Users
 events              •Preconditions
•How to demo         •Default events
                     •Alternative
                      sequence
                                          http://www.stellman-greene.com/2009/05/03/requirements-101-user-stories-vs-use-cases/


                                                                                                                                  J
✔ Requirements clarification
                                                                                      ✔ Use cases
                                                                                    ✔ UI refinement




            Requirements evolve and are clarified over the course of a
            project, and they’re often provided as UI designs.


                        Click me                                                             Click me                                                             Click me




                                April                                                                                              May

5   6   7   8   9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 1   2   3   4   5   6   7   8   9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31




                                                                                                                                                                                       J
✔ Theming
            ✔ Development/config




<html>                            The “real” work?
           < ?p hp
         m_al ter()               .tpl.php
hook_for
         Views Panel                   <as ide>
 CCK                 s

R ules     $(function() {
                                       ...})
                                                     J
✔ Automated testmaking
                                       ✔ Testing
                                      ✔ Bugfixing




  • Test more, build more
  • Automated testing
        saves time over the
        course of a project
  • Tests helps identify
        and manage
        ambiguous
        requirements


http://www.sxc.hu/photo/684719                            J
✔ Training/doc        ✔ Deployment




                                                   HOMEWORK (DON’T FORGET!):
                                                   - Creating content
                                                   - Ed iting menus




                                            les, ok?
                                 Dr upal ru



http://www.sxc.hu/photo/987819                                                 J
PROJECT MANAGEMENT DOES TAKE TIME

    What about the dreaded....



           ✔ Project management time
                                       J
PROJECT MANAGEMENT DOES TAKE TIME

         What about the dreaded....
“We don’t need another
PM from your team
adding overhead to this
project.”

          - Poor Soul


                    ✔ Project management time
                                                J
PROJECT MANAGEMENT DOES TAKE TIME

         What about the dreaded....
“We don’t need another
PM from your team
adding overhead to this
project.”

          - Poor Soul


                    ✔ Project management time
                                                J
WHY WE NEED ESTIMATES
WHY WE NEED ESTIMATES
                        05

  Estimates help to:
             Plan

  $
      €     Budget


          Communicate

                         J
WHY WE NEED ESTIMATES
            Plan
                                                      05




What do we mean by planning?



                           http://bit.ly/WsdfLj   S
WHY WE NEED ESTIMATES
                         Plan
                                                           05




  What do we mean by planning?
When will it
be done?!?
 (Yes, we mean schedules!)

                                http://bit.ly/WsdfLj   S
WHY WE NEED ESTIMATES
         Plan




                        S
WHY WE NEED ESTIMATES
                                                                                       Plan



                                                                                                     Choose a team


                                                                                   then
                                                April                                                Block their time
1   2   3   4   5   6   7   8   9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 1


                                                                                                     based on estimates

                                                                                                                          S
WHY WE NEED ESTIMATES
         Plan




                        S
WHY WE NEED ESTIMATES
                                                                                       Plan



1   2   3   4   5   6   7   8
                                                April
                                9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 1
                                                                                                     Get a deadline...


                                                                                   then
                                                                                                     Choose a team

                                                                                                                         S
WHY WE NEED ESTIMATES
                                                                                           Plan
                                                                                                                                                                                                           05



                                                Project estimated to 115 hours. I got 3 guys working
                                                             full time for a week gives...




                                                                                           40 hrs × 3 = 120 hrs

                                                April                                                                                              May
1   2   3   4   5   6   7   8   9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 1   2   3   4   5   6   7   8   9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31




                                                                                                                                                                                                       S
WHY WE NEED ESTIMATES
                                                                                           Plan
                                                                                                                                                                                                           05




                                                                                                     t ’s
                                                Project estimated to 115 hours. I got 3 guys working
                                                             full time for a week gives...
                                                                                                 t ha
                                                    ps...
                                                                                                 IT Y
                                                Woo                                           IL= 120 hrs
                                                                                            B× 3
                                                                                         Ahrs
                                        VAIL                                             40

1   2   3   4   5   6   7   8
                                       A        April
                                9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 1   2   3   4   5   6   7   8
                                                                                                                                                   May
                                                                                                                                 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31




                                                                                                                                                                                                       S
WHY WE NEED ESTIMATES
                                                                                           Plan




                                                                     6.4 × 3 = 19.2 hrs per day


                                                April                                                                                              May
1   2   3   4   5   6   7   8   9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 1   2   3   4   5   6   7   8   9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31




115/19.2 = 6 days



                                                                                                                                                                                                       S
WHY WE NEED ESTIMATES
                                                                                      Plan




http://www.sxc.hu/photo/1397088   http://www.sxc.hu/photo/1344947   http://www.sxc.hu/photo/348661   J
WHY WE NEED ESTIMATES
                                                                                      Plan




http://www.sxc.hu/photo/1397088   http://www.sxc.hu/photo/1344947   http://www.sxc.hu/photo/348661   J
WHY WE NEED ESTIMATES
                                                                                      Plan




http://www.sxc.hu/photo/1397088   http://www.sxc.hu/photo/1344947   http://www.sxc.hu/photo/348661   J
WHY WE NEED ESTIMATES
                                                                                            Plan


                                        Even the best laid plans...
                                                 Project A                       Project B                                       Project C


                                                April                                                                                              May

1   2   3   4   5   6   7   8   9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 1   2   3   4   5   6   7   8   9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31

1   2   3   4   5   6   7   8   9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 1   2   3   4   5   6   7   8   9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31

1   2   3   4   5   6   7   8   9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 1   2   3   4   5   6   7   8   9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31




                                                                                                                                              “We’re going to have
                                    “We need a few
                                                                                       “BUG! Fix ASAP!”                                      to work the weekend to
                                   extra adjustments”                                                                                              fix this!” :(

                                                                                                                                                                                                       J
WHY DO WE NEED THEM
              $
                  €      Budget




                                        $ €
                                       €€ $
                                         $
                                      $ $€ $ €
                                      €
                          ?
“stuff customer wants”            “customer’s budget”
                                                        J
WHY DO WE NEED THEM
                                                            $
                                                                    €                          Budget


                                                April                                                                                              May

1   2   3   4   5   6   7   8   9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 1   2   3   4   5   6   7   8   9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31




                                                             ?                                                                                        500


                                                                                                                                                                                                       J
WHY DO WE NEED THEM
                                                            $
                                                                    €                          Budget


                                                April                                                                                              May

1   2   3   4   5   6   7   8   9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 1   2   3   4   5   6   7   8   9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31




                                                                                                                                                                           €????
                                                                                  €????




                                                             ?                                                                                        500


                                                                                                                                                                                                       J
WHY DO WE NEED THEM
      $
          €           Budget

€60
              €30
                     €100

      €120


                    €50




                               J
WHY DO WE NEED THEM
      $
          €           Budget

€60
              €30
                     €100

      €120

                                 $ €
                                €€ $
                    €50           $
                               $ $€ $ €
                               €


                                          J
WHY DO WE NEED THEM
                    $
                               €            Budget

              €60
                                    €30
                                           €100
                     10-20




     30 -40




                             €120

                                                       $ €
                                                      €€ $
                                                        $
80 -120

                    10 -20
                                          €50
                                                     $ $€ $ €
                                                     €


                                                                J
WHY DO WE NEED THEM
                    $
                        €       Budget

We think this is
                                                I’m sure!
 accurate...


                                         €120

                            80 -120




                                                            J
WHY DO WE NEED THEM
                                                            $
                                                                    €                           Budget

        We think this is
                                                                                                                                                                         I’m sure!
         accurate...


                                                                                                                                          €120

                                                                                          80 -120




                                                April                                                                                              May

1   2   3   4   5   6   7   8   9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 1   2   3   4   5   6   7   8   9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31




                                                                                                                                                                                                       J
WHY DO WE NEED THEM
                                                            $
                                                                    €                           Budget

        We know this is
                                                                                                                                                                         I’m sure!
         accurate...


                                                                                                                                          €120

                                                                                          80 -120




                                                April                                                                                              May

1   2   3   4   5   6   7   8   9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 1   2   3   4   5   6   7   8   9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31




                                                                                                                                                                                                       J
WHY DO WE NEED THEM
          $
              €     Budget


                             Complexity
                   €100
                             Familiarity
80 -120


                             Dependency


          80-120




                                           J
WHY DO WE NEED THEM
            $
                €           Budget


         The sweet spot,           Brings a lot of
        low hanging fruit        value but also risk
Value




                                 Postpone, change
        Not a lot of gain
                                     or discard



                       Effort / Risk
                                                       J
WHY DO WE NEED THEM
            $
                €           Budget


         The sweet spot,           Brings a lot of
        low hanging fruit        value but also risk
Value




                                 Postpone, change
        Not a lot of gain
                                     or discard



                       Effort / Risk
                                                       J
WHY DO WE NEED THEM
            $
                €           Budget


         The sweet spot,           Brings a lot of
        low hanging fruit        value but also risk
Value




                                 Postpone, change
        Not a lot of gain
                                     or discard



                       Effort / Risk
                                                       J
WHY DO WE NEED THEM
            $
                €           Budget


         The sweet spot,           Brings a lot of
        low hanging fruit        value but also risk
Value




                                 Postpone, change
        Not a lot of gain
                                     or discard



                       Effort / Risk
                                                       J
WHY DO WE NEED THEM
            $
                €           Budget


         The sweet spot,           Brings a lot of
        low hanging fruit        value but also risk
Value




                                 Postpone, change
        Not a lot of gain
                                     or discard



                       Effort / Risk
                                                       J
WHY DO WE NEED THEM
                           $
                                €                    Budget

                                €50                                               €120
        10 -20
                      C                                           €100

                                                                             A
                                               40 -60              80 -120



                                                     €60
                                                              B
Value




                                €50
        10 -20
                      D               30 -40
                                                 E                               €40


                          €30
                                                                   80 -120
                                                                             G
          10-20




                  F

                                           Effort / Risk
                                                                                         J
WHY DO WE NEED THEM
       Communicate


Communication as in ...



                          http://bit.ly/1008C8p   S
WHY DO WE NEED THEM
            Communicate


     Communication as in ...
Are we on the
same page?

                               http://bit.ly/1008C8p   S
WHY DO WE NEED THEM
           Communicate


    Do they                  Do they
understand how           understand what
  complex this            we’re trying to
   design is?               achieve?




                                            S
WHY DO WE NEED THEM
                        Communicate

4,500 - 5,500                         2,500??? Do they
                   2,500 - 3,500      really understand
                                        the risks and
                                        complexities?




                            RFP




                6,500 - 7,000

                                                          S
WHY DO WE NEED THEM
     Communicate



   €40,000




               €40,000


                         S
WHY DO WE NEED THEM
     Communicate




                      S
MANAGING THE UNFORESEEN




                          S
MANAGING THE UNFORESEEN


     RISK
                          S
MANAGING RISK            Risk



“Risk comes from not knowing
what you’re doing.”
- Warren Buffett




                                      S
MANAGING RISK               Risk


  What’s the point
    of Risk
  Management?
To help you assess risks to
your estimation, and align the
numbers to manage that risk.     Avoid car wrecks

                                                      S
MANAGING RISK       Risk

                                   05




?       Identification
    ?
        Assessment


         Mitigation



                               S
MANAGING RISK       Risk

?       Identification
    ?                              05




                               S
MANAGING RISK                              Risk

               ?          Identification
                    ?                                                          05




              The usual suspects…
                           HEY, NOT MY PROBLEM!
     THE API IS STABLE!                           THERE´S A MODULE FOR THAT!

                                 ISN’T IT OOTB?



UI IS EASY
TO CHANGE!




                                                                           S    J
MANAGING RISK                Risk

                                                                    Assessment                      05




                                                Composite risk rating
                                  Impact                                  Probability

                                                                    ×                   =8
                                          It’s an opportunity to evaluate risk
                                           in order to decide how to treat it.

http://www.sxc.hu/photo/1196348   http://www.sxc.hu/photo/1120986                               S
MANAGING RISK                             Risk

                                 Assessment                                                 05



RISK                                IMPACT         PROBABILITY   RATING

Shared sign on                      5              5             25

Integration online booking          4              4             16

Migration legacy system             2              4             8

Asteroid hitting the Earth          1E+21          0.000000001




                                 Hey! Don’t forget about us!

                                                                 http://www.sxc.hu/photo/1338362
                                                                                            S  J
MANAGING RISK                                    Risk

                                          Assessment                                         05




        Overall risk assessment: Low 1-8, Medium 9-16 or High 17-25

            LOW                         MEDIUM                     HIGH

1   2   3   4   5   6    7   8   9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25

    IGNORE              QUARTERLY        MONTHLY         WEEKLY           DAILY


                    Overall risk monitoring, a continual process.




                                                                                         S
MANAGING RISK                                                            Risk

                                        Assessment                                                          05


                                                             DUDE,                 WTF?
              Meh       Meh seriously    Dude, seriously
                                                           SERIOUSLY            SERIOUSLY?

                                                           the api is stable
         5   ASTEROID                                                          VIDEO COMPONENT




         4                                                 INTEGRATION
Impact




         3

         2                                                  MIGRATION




         1

               1             2                 3                  4                  5


                                    Probability
                                                                                                        S
MANAGING RISK                        Risk

    Mitigation                                  05




           Accept risk - no action

           Eliminate risk

           Limit risk

           Share risk



                                            S    J
MANAGING RISK           Risk

                                                                   05



       THE F  RONT
  FROM
       L INES


‘Just trust us’
     A TRUE RISK MITIGATIO
                             N STORY


                                       http://bit.ly/100ffI1   S
ESTIMATION TECHNIQUES
ESTIMATION TECHNIQUES
                           05




      Ball Park Top-Down


      Weighted Estimate


       Delphi Methods



                            J
ESTIMATION TECHNIQUES
                                  Ball Park Top-Down
                                                           05




                 s
Requ   irement
                          o
               r I want t
 •   As a use create
               to
     be able
                  s
      b log post
                           to
                  r I want
   •   As a use edit blog
                 to
        be able
         posts               to
                    r I want sh
     •    As a use un/publi
                    to
          be able

                                                       ?
                    sts
           blog po




                                                            J
ESTIMATION TECHNIQUES
                                                     Weighted Estimate
                                                                                                                05



                                                                   Task                Est   Conf   Low - Hi

                                                                   Blog listing view   1     4      0.7 - 1.5
                                 Blog


                                                                   Blog post           1     4      0.7 - 1.5

                                                                   Comments            1     4      0.7 - 1.5
Create views      Create rules          Theming             Test


                                                                   Redirect user       2     3      1-4
                     Redirect user
   Blog listing      after making         Blog front page
                         post
                                                                   Show message        2     3      1-4
                        Showing
    Blog post
                        message
                                            Post pages
                                                                                       ...

   Comments
                                          Comment listing                                           300 - 450

                                           Create a post
                                               form

                                                                                                                 J
ESTIMATION TECHNIQUES
       Delphi Methods
                        05




                         J
ESTIMATION TECHNIQUES
                                                                                            05


         When should I use what?
       Ball Park Top-Down Weighted Estimation                            Delphi


        General Strategy                                          Specific Features
When                                 Estimate Ranges
       Decisions > Accuracy                                       Several Experts

            Pros: Easy/Fast           Pros: Variance Range        Pros: Smarter/Accurate
Why        Cons: Short-term             Cons: Takes time           Cons: Feature Specific
       Helps for decision making   Helps level-set expectations   Helps validate theories

                                                                                             J
ESTIMATION TECHNIQUES
                                                        05

100%



                               Actual accuracy of the
                                     estimate

                                         vs

                               Estimator’s confidence
                               in the accuracy of the
                                      estimate


       Time and effort spent

                                                         J
ESTIMATION TECHNIQUES

    The dont’s
   • Don’t play the blame game
   • Don’t estimate what you
        cannot know – requirements
        are like icebergs

   • Don’t estimate in a vacuum

http://www.sxc.hu/photo/1001938
TAKE AWAYS

  • Management by estimate == bad idea
  • Estimates should include much more
       than just development

  • Estimates are more than just numbers
  • Use risk management to avoid
       problems you can identify



http://www.flickr.com/photos/jakeliefer/290510226/
TACK! GRACIAS! DANKE!



 Thanks everyone!
ASK AWAY



             Who’s got                                                             funny
                                                                                   graphic
                                                                                   goes

             questions?                                                            here




http://interspeciesfriends.blogspot.de/2008/08/curious-kitten-and-ducklings.html
TALK TO US

Shannon Vettes
Twitter: @svettes
shannonvettes@gmail.com




  Jakob Persson
  Twitter: @realsolipsist
  jakob.persson@gmail.com

Drupal Estimation Techniques by Project Managers

  • 1.
    ience of Guessing The Sc ru pal E stim ation D Te chni ques P ro ject from M an agers http://www.sxc.hu/photo/814294 AS PRESENTED AT DRUPALCAMP STOCKHOLM ON MARCH 8 2013
  • 2.
    Introductions Seriously, who arethese people? Shannon Vettes Jakob Persson Partner Manager at Doing Drupal since 2005, co- Commerce Guys, Project founded NodeOne in 2007, Managing since 2005, currently freelance Drupal Drupal since 2010, consultant Working in IT since 2000 S J
  • 3.
    WE ENCOURAGE BIRDSONG Tweet, Tweet , Tweedly-deet... Questions & comments? #drestimate S J
  • 4.
  • 5.
    WHY YOU AREHERE When a client or colleague asks you for an estimate, what’s your initial reaction? S
  • 6.
    WHY YOU AREHERE When a client or colleague asks you for an estimate, what’s your initial reaction? Is it THIS? S
  • 7.
    WHY YOU AREHERE When a client or colleague asks you for an estimate, what’s your initial reaction? Or... Maybe This? S
  • 8.
    WHY YOU AREHERE When a client or colleague asks you for an estimate, what’s your initial reaction? I hope it’s not this.... S
  • 9.
    WHY YOU AREHERE If it’s anything like that, You’ve come to the right place!
  • 10.
    WHY YOU AREHERE At the end of this presentation, we want you to feel like this when asked for an estimate. We’ll cover:  What an estimate is  Why estimates are needed  How risks affect estimates  How an estimate is made  Answers to your questions S
  • 11.
  • 12.
    WHAT AN ESTIMATEIS “Estimation is the calculated approximation of a result which is usable even if input data may be incomplete or uncertain.” – Wikipedia J
  • 13.
    WHAT AN ESTIMATEIS “How to bake a pie” ✔ Requirements clarification ✔ Use cases ✔ Theming ✔ UI refinement ✔ Development/config ✔ Training/doc ✔ Automated testmaking ✔ Testing ✔ Bugfixing ✔ Deployment ✔ Project management time J
  • 14.
    ✔ Requirements clarification ✔ Use cases ✔ UI refinement Story Case Focuses on needs Focus on behavior and describe and interaction, functionality in a eliminates way the shows its ambiguity and application and provides the business value. developer with the information he/she needs. •Role •Summary •Need •Rationale •Sequence of •Users events •Preconditions •How to demo •Default events •Alternative sequence http://www.stellman-greene.com/2009/05/03/requirements-101-user-stories-vs-use-cases/ J
  • 15.
    ✔ Requirements clarification ✔ Use cases ✔ UI refinement Requirements evolve and are clarified over the course of a project, and they’re often provided as UI designs. Click me Click me Click me April May 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 J
  • 16.
    ✔ Theming ✔ Development/config <html> The “real” work? < ?p hp m_al ter() .tpl.php hook_for Views Panel <as ide> CCK s R ules $(function() { ...}) J
  • 17.
    ✔ Automated testmaking ✔ Testing ✔ Bugfixing • Test more, build more • Automated testing saves time over the course of a project • Tests helps identify and manage ambiguous requirements http://www.sxc.hu/photo/684719 J
  • 18.
    ✔ Training/doc ✔ Deployment HOMEWORK (DON’T FORGET!): - Creating content - Ed iting menus les, ok? Dr upal ru http://www.sxc.hu/photo/987819 J
  • 19.
    PROJECT MANAGEMENT DOESTAKE TIME What about the dreaded.... ✔ Project management time J
  • 20.
    PROJECT MANAGEMENT DOESTAKE TIME What about the dreaded.... “We don’t need another PM from your team adding overhead to this project.” - Poor Soul ✔ Project management time J
  • 21.
    PROJECT MANAGEMENT DOESTAKE TIME What about the dreaded.... “We don’t need another PM from your team adding overhead to this project.” - Poor Soul ✔ Project management time J
  • 22.
    WHY WE NEEDESTIMATES
  • 23.
    WHY WE NEEDESTIMATES 05 Estimates help to: Plan $ € Budget Communicate J
  • 24.
    WHY WE NEEDESTIMATES Plan 05 What do we mean by planning? http://bit.ly/WsdfLj S
  • 25.
    WHY WE NEEDESTIMATES Plan 05 What do we mean by planning? When will it be done?!? (Yes, we mean schedules!) http://bit.ly/WsdfLj S
  • 26.
    WHY WE NEEDESTIMATES Plan S
  • 27.
    WHY WE NEEDESTIMATES Plan Choose a team then April Block their time 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 1 based on estimates S
  • 28.
    WHY WE NEEDESTIMATES Plan S
  • 29.
    WHY WE NEEDESTIMATES Plan 1 2 3 4 5 6 7 8 April 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 1 Get a deadline... then Choose a team S
  • 30.
    WHY WE NEEDESTIMATES Plan 05 Project estimated to 115 hours. I got 3 guys working full time for a week gives... 40 hrs × 3 = 120 hrs April May 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 S
  • 31.
    WHY WE NEEDESTIMATES Plan 05 t ’s Project estimated to 115 hours. I got 3 guys working full time for a week gives... t ha ps... IT Y Woo IL= 120 hrs B× 3 Ahrs VAIL 40 1 2 3 4 5 6 7 8 A April 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 1 2 3 4 5 6 7 8 May 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 S
  • 32.
    WHY WE NEEDESTIMATES Plan 6.4 × 3 = 19.2 hrs per day April May 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 115/19.2 = 6 days S
  • 33.
    WHY WE NEEDESTIMATES Plan http://www.sxc.hu/photo/1397088 http://www.sxc.hu/photo/1344947 http://www.sxc.hu/photo/348661 J
  • 34.
    WHY WE NEEDESTIMATES Plan http://www.sxc.hu/photo/1397088 http://www.sxc.hu/photo/1344947 http://www.sxc.hu/photo/348661 J
  • 35.
    WHY WE NEEDESTIMATES Plan http://www.sxc.hu/photo/1397088 http://www.sxc.hu/photo/1344947 http://www.sxc.hu/photo/348661 J
  • 36.
    WHY WE NEEDESTIMATES Plan Even the best laid plans... Project A Project B Project C April May 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 “We’re going to have “We need a few “BUG! Fix ASAP!” to work the weekend to extra adjustments” fix this!” :( J
  • 37.
    WHY DO WENEED THEM $ € Budget $ € €€ $ $ $ $€ $ € € ? “stuff customer wants” “customer’s budget” J
  • 38.
    WHY DO WENEED THEM $ € Budget April May 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 ? 500 J
  • 39.
    WHY DO WENEED THEM $ € Budget April May 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 €???? €???? ? 500 J
  • 40.
    WHY DO WENEED THEM $ € Budget €60 €30 €100 €120 €50 J
  • 41.
    WHY DO WENEED THEM $ € Budget €60 €30 €100 €120 $ € €€ $ €50 $ $ $€ $ € € J
  • 42.
    WHY DO WENEED THEM $ € Budget €60 €30 €100 10-20 30 -40 €120 $ € €€ $ $ 80 -120 10 -20 €50 $ $€ $ € € J
  • 43.
    WHY DO WENEED THEM $ € Budget We think this is I’m sure! accurate... €120 80 -120 J
  • 44.
    WHY DO WENEED THEM $ € Budget We think this is I’m sure! accurate... €120 80 -120 April May 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 J
  • 45.
    WHY DO WENEED THEM $ € Budget We know this is I’m sure! accurate... €120 80 -120 April May 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 J
  • 46.
    WHY DO WENEED THEM $ € Budget Complexity €100 Familiarity 80 -120 Dependency 80-120 J
  • 47.
    WHY DO WENEED THEM $ € Budget The sweet spot, Brings a lot of low hanging fruit value but also risk Value Postpone, change Not a lot of gain or discard Effort / Risk J
  • 48.
    WHY DO WENEED THEM $ € Budget The sweet spot, Brings a lot of low hanging fruit value but also risk Value Postpone, change Not a lot of gain or discard Effort / Risk J
  • 49.
    WHY DO WENEED THEM $ € Budget The sweet spot, Brings a lot of low hanging fruit value but also risk Value Postpone, change Not a lot of gain or discard Effort / Risk J
  • 50.
    WHY DO WENEED THEM $ € Budget The sweet spot, Brings a lot of low hanging fruit value but also risk Value Postpone, change Not a lot of gain or discard Effort / Risk J
  • 51.
    WHY DO WENEED THEM $ € Budget The sweet spot, Brings a lot of low hanging fruit value but also risk Value Postpone, change Not a lot of gain or discard Effort / Risk J
  • 52.
    WHY DO WENEED THEM $ € Budget €50 €120 10 -20 C €100 A 40 -60 80 -120 €60 B Value €50 10 -20 D 30 -40 E €40 €30 80 -120 G 10-20 F Effort / Risk J
  • 53.
    WHY DO WENEED THEM Communicate Communication as in ... http://bit.ly/1008C8p S
  • 54.
    WHY DO WENEED THEM Communicate Communication as in ... Are we on the same page? http://bit.ly/1008C8p S
  • 55.
    WHY DO WENEED THEM Communicate Do they Do they understand how understand what complex this we’re trying to design is? achieve? S
  • 56.
    WHY DO WENEED THEM Communicate 4,500 - 5,500 2,500??? Do they 2,500 - 3,500 really understand the risks and complexities? RFP 6,500 - 7,000 S
  • 57.
    WHY DO WENEED THEM Communicate €40,000 €40,000 S
  • 58.
    WHY DO WENEED THEM Communicate S
  • 59.
  • 60.
  • 61.
    MANAGING RISK Risk “Risk comes from not knowing what you’re doing.” - Warren Buffett S
  • 62.
    MANAGING RISK Risk What’s the point of Risk Management? To help you assess risks to your estimation, and align the numbers to manage that risk. Avoid car wrecks S
  • 63.
    MANAGING RISK Risk 05 ? Identification ? Assessment Mitigation S
  • 64.
    MANAGING RISK Risk ? Identification ? 05 S
  • 65.
    MANAGING RISK Risk ? Identification ? 05 The usual suspects… HEY, NOT MY PROBLEM! THE API IS STABLE! THERE´S A MODULE FOR THAT! ISN’T IT OOTB? UI IS EASY TO CHANGE! S J
  • 66.
    MANAGING RISK Risk Assessment 05 Composite risk rating Impact Probability × =8 It’s an opportunity to evaluate risk in order to decide how to treat it. http://www.sxc.hu/photo/1196348 http://www.sxc.hu/photo/1120986 S
  • 67.
    MANAGING RISK Risk Assessment 05 RISK IMPACT PROBABILITY RATING Shared sign on 5 5 25 Integration online booking 4 4 16 Migration legacy system 2 4 8 Asteroid hitting the Earth 1E+21 0.000000001 Hey! Don’t forget about us! http://www.sxc.hu/photo/1338362 S J
  • 68.
    MANAGING RISK Risk Assessment 05 Overall risk assessment: Low 1-8, Medium 9-16 or High 17-25 LOW MEDIUM HIGH 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 IGNORE QUARTERLY MONTHLY WEEKLY DAILY Overall risk monitoring, a continual process. S
  • 69.
    MANAGING RISK Risk Assessment 05 DUDE, WTF? Meh Meh seriously Dude, seriously SERIOUSLY SERIOUSLY? the api is stable 5 ASTEROID VIDEO COMPONENT 4 INTEGRATION Impact 3 2 MIGRATION 1 1 2 3 4 5 Probability S
  • 70.
    MANAGING RISK Risk Mitigation 05 Accept risk - no action Eliminate risk Limit risk Share risk S J
  • 71.
    MANAGING RISK Risk 05 THE F RONT FROM L INES ‘Just trust us’ A TRUE RISK MITIGATIO N STORY http://bit.ly/100ffI1 S
  • 72.
  • 73.
    ESTIMATION TECHNIQUES 05 Ball Park Top-Down Weighted Estimate Delphi Methods J
  • 74.
    ESTIMATION TECHNIQUES Ball Park Top-Down 05 s Requ irement o r I want t • As a use create to be able s b log post to r I want • As a use edit blog to be able posts to r I want sh • As a use un/publi to be able ? sts blog po J
  • 75.
    ESTIMATION TECHNIQUES Weighted Estimate 05 Task Est Conf Low - Hi Blog listing view 1 4 0.7 - 1.5 Blog Blog post 1 4 0.7 - 1.5 Comments 1 4 0.7 - 1.5 Create views Create rules Theming Test Redirect user 2 3 1-4 Redirect user Blog listing after making Blog front page post Show message 2 3 1-4 Showing Blog post message Post pages ... Comments Comment listing 300 - 450 Create a post form J
  • 76.
    ESTIMATION TECHNIQUES Delphi Methods 05 J
  • 77.
    ESTIMATION TECHNIQUES 05 When should I use what? Ball Park Top-Down Weighted Estimation Delphi General Strategy Specific Features When Estimate Ranges Decisions > Accuracy Several Experts Pros: Easy/Fast Pros: Variance Range Pros: Smarter/Accurate Why Cons: Short-term Cons: Takes time Cons: Feature Specific Helps for decision making Helps level-set expectations Helps validate theories J
  • 78.
    ESTIMATION TECHNIQUES 05 100% Actual accuracy of the estimate vs Estimator’s confidence in the accuracy of the estimate Time and effort spent J
  • 79.
    ESTIMATION TECHNIQUES The dont’s • Don’t play the blame game • Don’t estimate what you cannot know – requirements are like icebergs • Don’t estimate in a vacuum http://www.sxc.hu/photo/1001938
  • 80.
    TAKE AWAYS • Management by estimate == bad idea • Estimates should include much more than just development • Estimates are more than just numbers • Use risk management to avoid problems you can identify http://www.flickr.com/photos/jakeliefer/290510226/
  • 81.
    TACK! GRACIAS! DANKE! Thanks everyone!
  • 82.
    ASK AWAY Who’s got funny graphic goes questions? here http://interspeciesfriends.blogspot.de/2008/08/curious-kitten-and-ducklings.html
  • 83.
    TALK TO US ShannonVettes Twitter: @svettes shannonvettes@gmail.com Jakob Persson Twitter: @realsolipsist jakob.persson@gmail.com