SlideShare a Scribd company logo
1 of 9
Download to read offline
 	
  	
  	
   	
  
	
  
	
  
	
  
	
  
	
  
	
  
	
  
	
  
	
  
	
  
	
  
	
  
	
   	
  
HOW	
  TO	
  ACCURATELY	
  
ESTIMATE	
  THE	
  SIZE	
  
AND	
  EFFORT	
  OF	
  YOUR	
  
SOFTWARE	
  TESTING	
  
A	
  QASymphony	
  White	
  Paper	
  
Dr.	
  Vu	
  Nguyen	
  
	
  
1	
   	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  QASymphony	
  
	
  
Introduction	
  
	
  
Software	
  testing	
  is	
  a	
  vital	
  part	
  of	
  any	
  software	
  development.	
  New	
  software	
  applications	
  and	
  updates	
  to	
  
existing	
  software	
  must	
  be	
  tested	
  before	
  release	
  to	
  ensure	
  that	
  they	
  are	
  fit	
  for	
  purpose.	
  Quality	
  
assurance	
  is	
  the	
  ultimate	
  goal.	
  Sadly,	
  QA	
  is	
  rarely	
  afforded	
  the	
  time	
  or	
  budget	
  required	
  for	
  a	
  zero	
  defect	
  
release.	
  
Despite	
  the	
  fact	
  that	
  the	
  testing	
  process	
  typically	
  amounts	
  to	
  between	
  10%	
  and	
  25%	
  of	
  the	
  overall	
  
project	
  effort,	
  QA	
  departments	
  are	
  often	
  starved	
  of	
  the	
  time	
  and	
  resources	
  required	
  to	
  do	
  the	
  job	
  right.	
  
The	
  roots	
  of	
  this	
  problem	
  can	
  typically	
  be	
  traced	
  back	
  to	
  inadequate	
  estimations	
  at	
  the	
  outset.	
  	
  
There	
  are	
  numerous	
  methodologies	
  that	
  can	
  be	
  employed	
  to	
  estimate	
  the	
  requirements	
  for	
  an	
  overall	
  
software	
  development,	
  but	
  they	
  invariably	
  fail	
  to	
  take	
  into	
  account	
  a	
  number	
  of	
  specific	
  testing	
  
requirements.	
  The	
  result	
  is	
  often	
  an	
  inaccurate	
  measurement	
  of	
  the	
  budget	
  needed	
  to	
  test	
  efficiently	
  
and	
  meet	
  the	
  schedule.	
  This	
  creates	
  tension	
  between	
  developers	
  and	
  the	
  QA	
  team,	
  as	
  management	
  
applies	
  pressure	
  to	
  meet	
  unrealistic	
  milestones.	
  
In	
  this	
  white	
  paper	
  we	
  will	
  examine	
  the	
  difficulties	
  incumbent	
  in	
  estimating	
  the	
  overall	
  scope	
  of	
  testing	
  
for	
  a	
  given	
  project.	
  We	
  will	
  then	
  go	
  on	
  to	
  highlight	
  an	
  easily	
  applicable	
  method	
  for	
  arriving	
  at	
  accurate	
  
estimates	
  of	
  the	
  size	
  and	
  effort	
  of	
  software	
  testing	
  that	
  is	
  required	
  for	
  any	
  software	
  development.	
  	
  
	
  
	
  
	
  
	
  
	
  
	
  
	
  
	
  
	
  
	
  
	
  
	
  
	
  
2	
   	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  QASymphony	
  
	
  
The	
  problem	
  with	
  inaccurate	
  estimates	
  
	
  
The	
  pressure	
  to	
  ship	
  new	
  software	
  products	
  on	
  time,	
  or	
  roll	
  out	
  new	
  features	
  via	
  updates,	
  has	
  never	
  
been	
  greater.	
  For	
  any	
  software	
  development	
  to	
  meet	
  its	
  schedule,	
  the	
  original	
  planning	
  and	
  estimation	
  
must	
  be	
  as	
  accurate	
  as	
  possible.	
  Since	
  this	
  data	
  is	
  often	
  used	
  to	
  secure	
  investment,	
  for	
  long	
  term	
  
planning,	
  and	
  when	
  bidding	
  for	
  projects,	
  serious	
  inaccuracies	
  can	
  cause	
  untold	
  problems	
  down	
  the	
  line.	
  	
  
QA	
  departments	
  are	
  rarely	
  given	
  an	
  input	
  at	
  the	
  outset	
  and	
  may	
  be	
  asked	
  to	
  sign	
  off	
  on	
  unrealistic	
  
estimates	
  when	
  the	
  project	
  is	
  already	
  underway.	
  The	
  end	
  result	
  is	
  invariably	
  a	
  failure	
  to	
  deliver	
  the	
  
required	
  standard	
  of	
  software	
  on	
  time.	
  Either	
  the	
  release	
  date	
  has	
  to	
  be	
  pushed	
  back,	
  as	
  the	
  schedule	
  is	
  
extended	
  to	
  allow	
  for	
  more	
  testing,	
  or	
  the	
  software	
  is	
  released	
  with	
  a	
  lot	
  of	
  bugs.	
  	
  
When	
  QA	
  departments	
  are	
  asked	
  to	
  provide	
  estimates	
  they	
  tend	
  to	
  rely	
  on	
  experience	
  and	
  gut	
  feeling,	
  
because	
  there	
  is	
  no	
  concrete	
  method	
  of	
  measuring	
  the	
  test	
  size	
  and	
  effort	
  required.	
  Inaccurate	
  
estimates	
  at	
  the	
  outset	
  lead	
  to	
  customer	
  frustration	
  down	
  the	
  line,	
  increased	
  costs,	
  and	
  a	
  negative	
  
impact	
  on	
  your	
  company’s	
  reputation.	
  
What	
  can	
  testing	
  groups	
  do	
  in	
  the	
  face	
  of	
  weekly	
  builds?	
  How	
  do	
  they	
  explain	
  the	
  rising	
  cost	
  in	
  resource	
  
as	
  regression	
  testing	
  kicks	
  in	
  and	
  grows	
  in	
  scope	
  with	
  each	
  new	
  build?	
  They	
  need	
  a	
  method	
  of	
  
estimating	
  accurately.	
  
	
  
The	
  challenge	
  of	
  estimating	
  accurately	
  
	
  
A	
  number	
  of	
  factors	
  impact	
  on	
  software	
  testing	
  and	
  that	
  makes	
  it	
  difficult	
  to	
  arrive	
  at	
  accurate	
  
estimations.	
  	
  
• You	
  can’t	
  just	
  consider	
  the	
  overall	
  number	
  of	
  people	
  on	
  the	
  QA	
  team;	
  you	
  have	
  to	
  think	
  about	
  
their	
  individual	
  capabilities.	
  New	
  team	
  members	
  will	
  not	
  have	
  the	
  same	
  capacity	
  as	
  seasoned	
  
pros.	
  
• Every	
  piece	
  of	
  software	
  is	
  different.	
  You	
  have	
  to	
  take	
  into	
  account	
  the	
  requirements	
  of	
  the	
  
technology	
  employed,	
  and	
  the	
  processes	
  and	
  environments	
  involved.	
  
• It	
  is	
  hard	
  to	
  quantify	
  software	
  quality	
  and	
  apply	
  equal	
  standards	
  to	
  attributes	
  like	
  functionality,	
  
reliability,	
  usability,	
  efficiency,	
  and	
  scalability.	
  
• There	
  are	
  many	
  different	
  types	
  of	
  testing	
  activities,	
  so	
  a	
  comprehensive	
  test	
  plan	
  has	
  a	
  lot	
  of	
  
bases	
  to	
  cover.	
  
• Software	
  requirements	
  may	
  be	
  inaccurate,	
  inadequate,	
  or	
  subject	
  to	
  change	
  during	
  the	
  
development	
  process.	
  
	
  
3	
   	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  QASymphony	
  
	
  
Introducing	
  qEstimation	
  
	
  
The	
  qEstimation	
  process	
  can	
  be	
  applied	
  for	
  any	
  project	
  and	
  it	
  is	
  designed	
  to	
  be	
  accessible	
  for	
  all	
  
members	
  of	
  the	
  QA	
  team.	
  It	
  empowers	
  QA	
  professionals	
  to	
  identify	
  problems	
  with	
  the	
  schedule	
  at	
  the	
  
outset	
  and	
  to	
  provide	
  management	
  with	
  a	
  solid	
  analysis	
  of	
  the	
  time	
  and	
  resources	
  required	
  for	
  
successful	
  software	
  testing.	
  The	
  more	
  this	
  process	
  is	
  used,	
  the	
  more	
  accurate	
  it	
  will	
  become.	
  It	
  is	
  also	
  
flexible	
  and	
  scalable,	
  so	
  you	
  can	
  adapt	
  it	
  to	
  your	
  needs.	
  
By	
  using	
  the	
  qEstimation	
  tool	
  testing	
  groups	
  can	
  quickly	
  establish	
  the	
  resources	
  needed	
  for	
  a	
  given	
  a	
  
project	
  and	
  calculate	
  the	
  velocity	
  of	
  the	
  test	
  team.	
  There’s	
  actually	
  no	
  need	
  to	
  understand	
  why	
  it	
  works,	
  
you	
  can	
  simply	
  plug	
  in	
  the	
  pertinent	
  numbers	
  and	
  within	
  three	
  iterations,	
  as	
  the	
  data	
  is	
  fed	
  back	
  into	
  the	
  
system,	
  you’ll	
  get	
  accurate	
  estimations	
  on	
  the	
  effort	
  required	
  going	
  forward.	
  Any	
  independent	
  test	
  team	
  
can	
  adopt	
  this	
  tool	
  and	
  see	
  concrete	
  results	
  within	
  three	
  to	
  six	
  weeks,	
  making	
  it	
  possible	
  to	
  accurately	
  
report	
  on	
  the	
  velocity	
  of	
  the	
  test	
  team	
  and	
  the	
  resources	
  needed	
  to	
  meet	
  the	
  schedule.	
  
	
  
How	
  does	
  it	
  work?	
  An	
  overview	
  
	
  
To	
  estimate	
  the	
  size	
  of	
  software	
  testing	
  we	
  start	
  with	
  a	
  Test	
  Case	
  Point	
  Analysis	
  (TCPA).	
  Four	
  elements	
  
are	
  taken	
  into	
  account	
  -­‐	
  checkpoint,	
  precondition,	
  test	
  data,	
  and	
  test	
  type	
  (we	
  will	
  go	
  into	
  this	
  in	
  more	
  
detail	
  in	
  the	
  next	
  section).	
  This	
  allows	
  us	
  to	
  establish	
  the	
  scope	
  of	
  the	
  test	
  cycle	
  and	
  to	
  estimate	
  the	
  
effort	
  needed	
  to	
  complete	
  it.	
  As	
  the	
  test	
  cases	
  are	
  completed	
  the	
  actual	
  effort	
  and	
  time	
  required	
  is	
  
plugged	
  back	
  into	
  the	
  model,	
  as	
  you	
  can	
  see	
  in	
  this	
  diagram.	
  
4	
   	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  QASymphony	
  
	
  
	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  
	
  	
  
Using	
  this	
  method	
  ensures	
  that	
  your	
  estimates	
  will	
  grow	
  more	
  and	
  more	
  accurate	
  as	
  you	
  feedback	
  the	
  
actual	
  data	
  from	
  testing	
  and	
  analyze	
  any	
  inaccuracies.	
  It	
  enables	
  you	
  to	
  build	
  a	
  repository	
  of	
  experience	
  
and	
  draw	
  on	
  that	
  knowledge	
  to	
  make	
  informed	
  estimations	
  for	
  new	
  test	
  cycles.	
  
	
  
Calculating	
  Test	
  Case	
  Point	
  Analysis	
  (TCPA)	
  
	
  
Drawing	
  on	
  the	
  idea	
  that	
  Function	
  Point	
  Analysis	
  (FPA)	
  and	
  Use	
  Case	
  Point	
  Analysis	
  (UCPA)	
  are	
  based	
  on	
  
requirements	
  and	
  use	
  cases,	
  test	
  cases	
  are	
  the	
  primary	
  influence	
  on	
  testing	
  and	
  so	
  they	
  are	
  used	
  as	
  the	
  
core	
  input	
  of	
  TCPA.	
  The	
  first	
  step	
  is	
  to	
  use	
  your	
  test	
  cases	
  to	
  calculate	
  the	
  Test	
  Case	
  Point	
  (TCP)	
  count.	
  As	
  
we	
  mentioned	
  before	
  there	
  are	
  four	
  factors	
  to	
  consider	
  -­‐	
  checkpoint,	
  precondition,	
  test	
  data,	
  and	
  test	
  
type.	
  The	
  first	
  three	
  relate	
  to	
  the	
  overall	
  size	
  of	
  the	
  test	
  case	
  and	
  the	
  fourth,	
  test	
  type,	
  acts	
  as	
  a	
  
weighting	
  mechanism	
  that	
  takes	
  into	
  account	
  the	
  varying	
  complexity	
  of	
  different	
  test	
  types.	
  	
  
Checkpoint	
  –	
  an	
  individual	
  condition	
  where	
  the	
  tester	
  can	
  verify	
  that	
  the	
  software	
  behaves	
  as	
  expected.	
  
An	
  individual	
  test	
  case	
  could	
  have	
  one	
  or	
  several	
  checkpoints.	
  Each	
  checkpoint	
  should	
  be	
  counted	
  as	
  one	
  
TCP.	
  
Precondition	
  –	
  what	
  is	
  the	
  overhead	
  in	
  terms	
  of	
  preparation	
  before	
  the	
  test	
  case	
  can	
  be	
  executed?	
  This	
  
is	
  broken	
  into	
  four	
  possible	
  levels	
  of	
  complexity,	
  as	
  highlighted	
  in	
  the	
  table	
  below.	
  
5	
   	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  QASymphony	
  
	
  
Complexity	
  Level	
   Description	
  
None	
  
The	
  precondition	
  is	
  not	
  applicable	
  or	
  important	
  to	
  
execute	
  the	
  test	
  case.	
  Or,	
  the	
  precondition	
  is	
  just	
  
reused	
  from	
  the	
  previous	
  test	
  case	
  to	
  continue	
  the	
  
current	
  test	
  case.	
  
Low	
  
The	
  condition	
  for	
  executing	
  the	
  test	
  case	
  is	
  available	
  
with	
  some	
  simple	
  modifications	
  required.	
  Or,	
  some	
  
simple	
  set-­‐up	
  steps	
  are	
  needed.	
  
Medium	
  
Some	
  explicit	
  preparation	
  is	
  needed	
  to	
  execute	
  the	
  
test	
  case.	
  The	
  condition	
  for	
  executing	
  is	
  available	
  
with	
  some	
  additional	
  modifications	
  required.	
  Or,	
  
some	
  additional	
  set-­‐up	
  steps	
  are	
  needed.	
  
High	
  
Heavy	
  hardware	
  and/or	
  software	
  configurations	
  are	
  
needed	
  to	
  execute	
  the	
  test	
  case.	
  
	
  
Test	
  data	
  –	
  this	
  is	
  the	
  data	
  that	
  is	
  required	
  to	
  execute	
  the	
  test	
  case	
  and	
  it	
  may	
  need	
  to	
  be	
  generated	
  by	
  
test	
  scripts	
  or	
  sourced	
  from	
  previous	
  tests.	
  Once	
  again,	
  there	
  are	
  four	
  possible	
  levels	
  of	
  complexity	
  as	
  
detailed	
  in	
  this	
  table.	
  
Complexity	
  Level	
   Description	
  
None	
   No	
  test	
  data	
  preparation	
  is	
  needed.	
  
Low	
  
Simple	
  test	
  data	
  is	
  needed	
  and	
  can	
  be	
  created	
  during	
  the	
  test	
  case	
  
execution	
  time.	
  Or,	
  the	
  test	
  case	
  uses	
  a	
  slightly	
  modified	
  version	
  of	
  
existing	
  test	
  data	
  and	
  requires	
  little	
  or	
  no	
  effort	
  to	
  modify	
  the	
  test	
  
data.	
  
Medium	
  
Test	
  data	
  is	
  deliberately	
  prepared	
  in	
  advance	
  with	
  extra	
  effort	
  to	
  
ensure	
  its	
  completeness,	
  comprehensiveness,	
  and	
  consistency.	
  
High	
  
Test	
  data	
  is	
  prepared	
  in	
  advance	
  with	
  considerable	
  effort	
  to	
  ensure	
  its	
  
completeness,	
  comprehensiveness,	
  and	
  consistency.	
  	
  This	
  could	
  
include	
  using	
  support	
  tools	
  to	
  generate	
  data	
  and	
  a	
  database	
  to	
  store	
  
and	
  manage	
  test	
  data.	
  Scripts	
  may	
  be	
  required	
  to	
  generate	
  test	
  data.	
  
	
  
The	
  ratings	
  of	
  the	
  complexity	
  levels	
  of	
  the	
  precondition	
  and	
  test	
  data	
  also	
  has	
  to	
  be	
  assigned	
  a	
  TCP	
  value	
  
and	
  so	
  here	
  is	
  a	
  possible	
  set	
  of	
  values	
  for	
  weighting.	
  The	
  values	
  are	
  something	
  you’ll	
  want	
  to	
  fine	
  tune	
  
for	
  your	
  own	
  specific	
  project.	
  
6	
   	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  QASymphony	
  
	
  
Complexity	
  Level	
   Number	
  of	
  TCP	
  for	
  
Precondition	
  
Number	
  of	
  TCP	
  
for	
  Test	
  Data	
  
None	
  	
   0	
   0	
  
Low	
  	
   1	
   1	
  
Medium	
   3	
   3	
  
High	
   5	
   6	
  
	
  
Test	
  type	
  –	
  since	
  there	
  are	
  many	
  different	
  kinds	
  of	
  tests	
  with	
  varying	
  degrees	
  of	
  complexity	
  you’ll	
  want	
  
to	
  weight	
  them	
  accordingly.	
  The	
  actual	
  weights	
  you	
  apply	
  will	
  depend	
  on	
  your	
  own	
  approach,	
  but	
  this	
  
table	
  can	
  serve	
  as	
  an	
  example.	
  Using	
  the	
  user	
  interface	
  and	
  functional	
  testing	
  as	
  your	
  baseline,	
  you	
  can	
  
add	
  other	
  types	
  of	
  test	
  as	
  needed	
  and	
  weight	
  them	
  accordingly;	
  this	
  is	
  not	
  an	
  exhaustive	
  list.	
  
Types	
  of	
  Test	
   Description	
   Weight	
  
User	
  interface	
  and	
  
functional	
  testing	
  
User	
  interface	
  and	
  functional	
  testing	
  is	
  considered	
  
baseline.	
  
1.0	
  
API	
   API	
  testing	
  verifies	
  the	
  accuracy	
  of	
  the	
  interfaces	
  in	
  
providing	
  services.	
  	
  
1.22	
  
Database	
   Testing	
  the	
  accuracy	
  of	
  database	
  scripts,	
  data	
  integrity	
  
and/or	
  data	
  migration.	
  
1.36	
  
Security	
   Testing	
  how	
  well	
  the	
  system	
  handles	
  hacking	
  attacks,	
  
unauthorized	
  and	
  unauthenticated	
  accesses.	
  	
  
1.39	
  
Installation	
   Testing	
  of	
  full,	
  partial,	
  or	
  upgrade	
  install/uninstall	
  
processes	
  of	
  the	
  software.	
  
1.09	
  
Networking	
   Testing	
  the	
  communications	
  among	
  entities	
  via	
  
networks.	
  
1.27	
  
Algorithm	
  and	
  
computation	
  
Verifying	
  algorithms	
  and	
  computations	
  designed	
  and	
  
implemented	
  in	
  the	
  system.	
  
1.38	
  
Usability	
  testing	
   Testing	
  the	
  friendliness,	
  ease	
  of	
  use,	
  and	
  other	
  usability	
  
attributes	
  of	
  the	
  system.	
  
1.12	
  
Performance	
  (manual)	
   Verifying	
  whether	
  the	
  system	
  meets	
  performance	
  
requirements,	
  assuming	
  that	
  the	
  test	
  is	
  done	
  manually.	
  	
  	
  
1.33	
  
Recovery	
  testing	
   Recovery	
  testing	
  verifies	
  the	
  accuracy	
  of	
  the	
  recovery	
  
process	
  to	
  recover	
  from	
  system	
  crashes	
  and	
  other	
  
1.07	
  
7	
   	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  QASymphony	
  
	
  
Types	
  of	
  Test	
   Description	
   Weight	
  
errors.	
  
Compatibility	
  testing	
   Testing	
  whether	
  the	
  software	
  is	
  compatible	
  with	
  other	
  
elements	
  of	
  a	
  system	
  with	
  which	
  it	
  should	
  operate,	
  e.g.,	
  
browsers,	
  operating	
  systems,	
  or	
  hardware.	
  
1.01	
  
	
  
How	
  do	
  you	
  establish	
  weights?	
  
	
  
There’s	
  a	
  chance	
  that	
  the	
  QA	
  manager	
  will	
  want	
  to	
  take	
  responsibility	
  for	
  determining	
  the	
  weights	
  that	
  
should	
  be	
  applied	
  for	
  the	
  precondition	
  complexity,	
  test	
  data	
  complexity,	
  and	
  test	
  types,	
  but	
  we	
  
recommend	
  widening	
  the	
  net	
  and	
  polling	
  the	
  opinions	
  of	
  experienced	
  testers	
  and	
  software	
  engineers.	
  	
  
Ensure	
  that	
  you	
  explain	
  the	
  TCPA	
  system	
  fully	
  and	
  then	
  issue	
  a	
  survey.	
  The	
  results	
  can	
  be	
  used	
  to	
  
establish	
  an	
  average.	
  
	
  
How	
  do	
  you	
  estimate	
  the	
  effort?	
  
	
  
The	
  longer	
  a	
  team	
  works	
  together	
  and	
  the	
  more	
  projects	
  they	
  work	
  on,	
  the	
  easier	
  it	
  becomes	
  to	
  
estimate	
  their	
  average	
  work	
  rate.	
  You’ll	
  need	
  to	
  have	
  an	
  idea	
  of	
  how	
  many	
  test	
  cases	
  can	
  be	
  completed	
  
per	
  hour,	
  per	
  worker.	
  For	
  the	
  qEstimation	
  system	
  to	
  work	
  you	
  need	
  to	
  understand	
  the	
  relationship	
  
between	
  tester	
  minutes	
  and	
  hours	
  and	
  the	
  TCP	
  count.	
  
We	
  recommend	
  two	
  methods	
  for	
  estimating	
  the	
  effort	
  required	
  to	
  complete	
  your	
  test	
  cases.	
  The	
  one	
  
you	
  choose	
  will	
  depend	
  largely	
  on	
  the	
  amount	
  of	
  historical	
  data	
  you	
  can	
  draw	
  on.	
  In	
  simple	
  terms,	
  the	
  
more	
  test	
  cases	
  you	
  complete,	
  the	
  more	
  accurately	
  you	
  can	
  determine	
  how	
  long	
  a	
  new	
  test	
  case	
  will	
  
take	
  to	
  complete.	
  
Using	
  a	
  productivity	
  index	
  you	
  can	
  draw	
  on	
  the	
  results	
  of	
  past	
  tests,	
  or	
  you	
  can	
  devise	
  an	
  experiment	
  to	
  
produce	
  useful	
  data.	
  If	
  you	
  have	
  previous	
  test	
  cycles	
  or	
  data	
  from	
  completed	
  projects	
  that	
  were	
  similar	
  
then	
  you’ll	
  be	
  able	
  to	
  make	
  fairly	
  accurate	
  estimations	
  of	
  the	
  effort	
  required.	
  
You	
  might	
  also	
  consider	
  linear	
  regression	
  analysis.	
  This	
  method	
  allows	
  you	
  to	
  establish	
  estimation	
  
ranges	
  and	
  give	
  a	
  confidence	
  level	
  for	
  the	
  estimate,	
  but	
  it	
  can	
  only	
  be	
  employed	
  if	
  you	
  have	
  five	
  similar	
  
test	
  cycles	
  or	
  projects	
  to	
  draw	
  on.	
  
Once	
  you	
  can	
  work	
  out	
  a	
  ratio	
  for	
  how	
  long	
  a	
  tester	
  takes	
  to	
  complete	
  a	
  TCP	
  then	
  you	
  can	
  accurately	
  
assess	
  the	
  resources	
  required	
  to	
  complete	
  the	
  test	
  cycle	
  in	
  the	
  time	
  frame	
  specified.	
  
	
  
8	
   	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  QASymphony	
  
	
  
A	
  learning	
  model	
  
	
  
As	
  each	
  test	
  cycle	
  is	
  completed	
  you	
  need	
  to	
  compare	
  the	
  actual	
  results	
  with	
  the	
  estimates	
  and	
  account	
  
for	
  any	
  inaccuracies.	
  This	
  information	
  can	
  be	
  used	
  to	
  make	
  the	
  qEstimation	
  model	
  more	
  accurate	
  in	
  
future.	
  It	
  is	
  fast	
  to	
  apply	
  and	
  it	
  grows	
  more	
  accurate	
  as	
  the	
  pool	
  of	
  data	
  it	
  can	
  draw	
  on	
  grows	
  deeper.	
  	
  It	
  
also	
  provides	
  a	
  rigid	
  structure	
  for	
  analysis	
  and	
  estimation	
  that	
  any	
  tester	
  can	
  employ,	
  so	
  it	
  can	
  reduce	
  
the	
  burden	
  on	
  experienced	
  testers	
  who	
  may	
  overestimate	
  the	
  effort	
  required	
  in	
  order	
  to	
  avoid	
  failing	
  to	
  
meet	
  the	
  schedule.	
  
	
  
Reap	
  the	
  rewards	
  
	
  
The	
  ability	
  to	
  accurately	
  estimate	
  the	
  size	
  and	
  effort	
  of	
  your	
  software	
  testing	
  provides	
  a	
  number	
  of	
  
obvious	
  benefits.	
  For	
  working	
  out	
  budgets	
  and	
  staffing	
  levels,	
  this	
  kind	
  of	
  information	
  is	
  vital.	
  If	
  your	
  test	
  
team	
  is	
  presented	
  with	
  an	
  unrealistic	
  schedule	
  you	
  can	
  highlight	
  the	
  shortfall	
  with	
  concrete	
  data	
  based	
  
on	
  past	
  performance.	
  The	
  end	
  result	
  is	
  an	
  achievable	
  schedule	
  and	
  a	
  better	
  quality	
  of	
  software	
  on	
  
release	
  day.	
  The	
  qEstimation	
  tool	
  doesn’t	
  require	
  corporate	
  wide	
  adoption.	
  Any	
  independent	
  test	
  team	
  
can	
  plug	
  in	
  the	
  relevant	
  data	
  and	
  arm	
  themselves	
  with	
  accurate	
  estimations	
  on	
  the	
  resources	
  they	
  
require	
  and	
  the	
  velocity	
  of	
  the	
  test	
  team.	
  
It	
  is	
  a	
  well-­‐established	
  rule	
  in	
  software	
  testing	
  that	
  the	
  earlier	
  a	
  defect	
  is	
  found,	
  the	
  cheaper	
  it	
  is	
  to	
  fix.	
  
The	
  same	
  principle	
  can	
  be	
  applied	
  to	
  test	
  estimations	
  -­‐	
  accuracy	
  at	
  the	
  start	
  will	
  save	
  you	
  a	
  great	
  deal	
  of	
  
time	
  and	
  resource	
  down	
  the	
  line.	
  

More Related Content

What's hot

Best Practices for Writing and Organizing QA Tests
Best Practices for Writing and Organizing QA TestsBest Practices for Writing and Organizing QA Tests
Best Practices for Writing and Organizing QA TestsSarah Goldberg
 
Modelos de Processo de Software Parte 5
Modelos de Processo de Software Parte 5Modelos de Processo de Software Parte 5
Modelos de Processo de Software Parte 5Elaine Cecília Gatto
 
Testing tool classification
Testing tool classificationTesting tool classification
Testing tool classificationPragya Rastogi
 
Agile QA and Testing process
Agile QA and Testing processAgile QA and Testing process
Agile QA and Testing processGloria Stoilova
 
Chapter 5 - Improving the Testing Process
Chapter 5 -  Improving the Testing ProcessChapter 5 -  Improving the Testing Process
Chapter 5 - Improving the Testing ProcessNeeraj Kumar Singh
 
Fundamentals of Software Testing
Fundamentals of Software TestingFundamentals of Software Testing
Fundamentals of Software TestingSagar Joshi
 
2. Softare QA roles and responsibilities
2. Softare QA roles and responsibilities2. Softare QA roles and responsibilities
2. Softare QA roles and responsibilitiesChandra Maddigapu
 
Gestão de defeitos e testes com Jira
Gestão de defeitos e testes com JiraGestão de defeitos e testes com Jira
Gestão de defeitos e testes com JiraQualister
 
Agile Testing Strategy
Agile Testing StrategyAgile Testing Strategy
Agile Testing Strategytharindakasun
 
Modelos de Processo de Software Parte 1
Modelos de Processo de Software Parte 1Modelos de Processo de Software Parte 1
Modelos de Processo de Software Parte 1Elaine Cecília Gatto
 
Software testing basic
Software testing basicSoftware testing basic
Software testing basicRohit Singh
 
Software Testing - Part 1 (Techniques, Types, Levels, Methods, STLC, Bug Life...
Software Testing - Part 1 (Techniques, Types, Levels, Methods, STLC, Bug Life...Software Testing - Part 1 (Techniques, Types, Levels, Methods, STLC, Bug Life...
Software Testing - Part 1 (Techniques, Types, Levels, Methods, STLC, Bug Life...Ankit Prajapati
 

What's hot (20)

Static Testing
Static Testing Static Testing
Static Testing
 
Best Practices for Writing and Organizing QA Tests
Best Practices for Writing and Organizing QA TestsBest Practices for Writing and Organizing QA Tests
Best Practices for Writing and Organizing QA Tests
 
QA Best Practices in Agile World_new
QA Best Practices in Agile World_newQA Best Practices in Agile World_new
QA Best Practices in Agile World_new
 
Modelos de Processo de Software Parte 5
Modelos de Processo de Software Parte 5Modelos de Processo de Software Parte 5
Modelos de Processo de Software Parte 5
 
Software test life cycle
Software test life cycleSoftware test life cycle
Software test life cycle
 
Testing tool classification
Testing tool classificationTesting tool classification
Testing tool classification
 
QA Center Of Excellence (TCoE)
QA Center Of Excellence (TCoE)QA Center Of Excellence (TCoE)
QA Center Of Excellence (TCoE)
 
Agile QA and Testing process
Agile QA and Testing processAgile QA and Testing process
Agile QA and Testing process
 
Chapter 5 - Improving the Testing Process
Chapter 5 -  Improving the Testing ProcessChapter 5 -  Improving the Testing Process
Chapter 5 - Improving the Testing Process
 
Testing fundamentals
Testing fundamentalsTesting fundamentals
Testing fundamentals
 
Software engg unit 4
Software engg unit 4 Software engg unit 4
Software engg unit 4
 
Fundamentals of Software Testing
Fundamentals of Software TestingFundamentals of Software Testing
Fundamentals of Software Testing
 
JMeter
JMeterJMeter
JMeter
 
2. Softare QA roles and responsibilities
2. Softare QA roles and responsibilities2. Softare QA roles and responsibilities
2. Softare QA roles and responsibilities
 
Guide to Agile testing
Guide to Agile testingGuide to Agile testing
Guide to Agile testing
 
Gestão de defeitos e testes com Jira
Gestão de defeitos e testes com JiraGestão de defeitos e testes com Jira
Gestão de defeitos e testes com Jira
 
Agile Testing Strategy
Agile Testing StrategyAgile Testing Strategy
Agile Testing Strategy
 
Modelos de Processo de Software Parte 1
Modelos de Processo de Software Parte 1Modelos de Processo de Software Parte 1
Modelos de Processo de Software Parte 1
 
Software testing basic
Software testing basicSoftware testing basic
Software testing basic
 
Software Testing - Part 1 (Techniques, Types, Levels, Methods, STLC, Bug Life...
Software Testing - Part 1 (Techniques, Types, Levels, Methods, STLC, Bug Life...Software Testing - Part 1 (Techniques, Types, Levels, Methods, STLC, Bug Life...
Software Testing - Part 1 (Techniques, Types, Levels, Methods, STLC, Bug Life...
 

Viewers also liked

Problem frames
Problem framesProblem frames
Problem framesJoseph Raj
 
Software estimation
Software estimationSoftware estimation
Software estimationMd Shakir
 
Software Estimation Techniques
Software Estimation TechniquesSoftware Estimation Techniques
Software Estimation Techniqueskamal
 
Software cost estimation
Software cost estimationSoftware cost estimation
Software cost estimationdjview
 
Object oriented software engineering concepts
Object oriented software engineering conceptsObject oriented software engineering concepts
Object oriented software engineering conceptsKomal Singh
 
Four-Frame Model - Reframing Organisations
Four-Frame Model - Reframing OrganisationsFour-Frame Model - Reframing Organisations
Four-Frame Model - Reframing OrganisationsPhil Vincent
 
Requirements analysis
Requirements analysisRequirements analysis
Requirements analysisasimnawaz54
 

Viewers also liked (14)

Guide to Software Estimation
Guide to Software EstimationGuide to Software Estimation
Guide to Software Estimation
 
Frame
FrameFrame
Frame
 
Framing the Problem
Framing the ProblemFraming the Problem
Framing the Problem
 
Problem frames
Problem framesProblem frames
Problem frames
 
Frames
FramesFrames
Frames
 
Frame materials
Frame materialsFrame materials
Frame materials
 
Software estimation
Software estimationSoftware estimation
Software estimation
 
Frames
FramesFrames
Frames
 
Software Estimation Techniques
Software Estimation TechniquesSoftware Estimation Techniques
Software Estimation Techniques
 
Software cost estimation
Software cost estimationSoftware cost estimation
Software cost estimation
 
Requirements Engineering
Requirements EngineeringRequirements Engineering
Requirements Engineering
 
Object oriented software engineering concepts
Object oriented software engineering conceptsObject oriented software engineering concepts
Object oriented software engineering concepts
 
Four-Frame Model - Reframing Organisations
Four-Frame Model - Reframing OrganisationsFour-Frame Model - Reframing Organisations
Four-Frame Model - Reframing Organisations
 
Requirements analysis
Requirements analysisRequirements analysis
Requirements analysis
 

Similar to How to accurately estimate the size and effort of your software testing (1)

Software Testing and Quality Assurance Services.pptx
Software Testing and Quality Assurance Services.pptxSoftware Testing and Quality Assurance Services.pptx
Software Testing and Quality Assurance Services.pptxSakshiPatel82
 
significance_of_test_estimating_in_the_software_development.pptx
significance_of_test_estimating_in_the_software_development.pptxsignificance_of_test_estimating_in_the_software_development.pptx
significance_of_test_estimating_in_the_software_development.pptxsarah david
 
Estimating test effort part 1 of 2
Estimating test effort part 1 of 2Estimating test effort part 1 of 2
Estimating test effort part 1 of 2Ian McDonald
 
5 Essential Tools for a Successful QA Process in Your Startup
5 Essential Tools for a Successful QA Process in Your Startup5 Essential Tools for a Successful QA Process in Your Startup
5 Essential Tools for a Successful QA Process in Your StartupQuekelsBaro
 
Estimator Metrics STC 2009
Estimator Metrics STC 2009Estimator Metrics STC 2009
Estimator Metrics STC 2009Amit Bhardwaj
 
The Definitive Guide to Implementing Shift Left Testing in QA
The Definitive Guide to Implementing Shift Left Testing in QAThe Definitive Guide to Implementing Shift Left Testing in QA
The Definitive Guide to Implementing Shift Left Testing in QARapidValue
 
How to Create Effective Test Plans and Test Cases for Software Testing
How to Create Effective Test Plans and Test Cases for Software TestingHow to Create Effective Test Plans and Test Cases for Software Testing
How to Create Effective Test Plans and Test Cases for Software TestingOprim Solutions
 
Tackle Business Risks with Continuous Testing.pdf
Tackle Business Risks with Continuous Testing.pdfTackle Business Risks with Continuous Testing.pdf
Tackle Business Risks with Continuous Testing.pdfZoe Gilbert
 
Software testing for beginners
Software testing for beginners Software testing for beginners
Software testing for beginners ssuser622d45
 
significance_of_test_estimating_in_the_software_development.pptx
significance_of_test_estimating_in_the_software_development.pptxsignificance_of_test_estimating_in_the_software_development.pptx
significance_of_test_estimating_in_the_software_development.pptxsarah david
 
What are Some Best Practices for Integrating Functional Testing Services.pdf
What are Some Best Practices for Integrating Functional Testing Services.pdfWhat are Some Best Practices for Integrating Functional Testing Services.pdf
What are Some Best Practices for Integrating Functional Testing Services.pdfAlpha BOLD
 
Tackling software testing challenges in the agile era
Tackling software testing challenges in the agile eraTackling software testing challenges in the agile era
Tackling software testing challenges in the agile eraQASymphony
 

Similar to How to accurately estimate the size and effort of your software testing (1) (20)

ST&PFinalArticle
ST&PFinalArticleST&PFinalArticle
ST&PFinalArticle
 
Manual Testing
Manual TestingManual Testing
Manual Testing
 
Software Testing and Quality Assurance Services.pptx
Software Testing and Quality Assurance Services.pptxSoftware Testing and Quality Assurance Services.pptx
Software Testing and Quality Assurance Services.pptx
 
The Modern QA.pdf
The Modern QA.pdfThe Modern QA.pdf
The Modern QA.pdf
 
significance_of_test_estimating_in_the_software_development.pptx
significance_of_test_estimating_in_the_software_development.pptxsignificance_of_test_estimating_in_the_software_development.pptx
significance_of_test_estimating_in_the_software_development.pptx
 
Estimating test effort part 1 of 2
Estimating test effort part 1 of 2Estimating test effort part 1 of 2
Estimating test effort part 1 of 2
 
QA standards
QA standardsQA standards
QA standards
 
QA Standards
QA StandardsQA Standards
QA Standards
 
5 Essential Tools for a Successful QA Process in Your Startup
5 Essential Tools for a Successful QA Process in Your Startup5 Essential Tools for a Successful QA Process in Your Startup
5 Essential Tools for a Successful QA Process in Your Startup
 
Estimator Metrics STC 2009
Estimator Metrics STC 2009Estimator Metrics STC 2009
Estimator Metrics STC 2009
 
The Definitive Guide to Implementing Shift Left Testing in QA
The Definitive Guide to Implementing Shift Left Testing in QAThe Definitive Guide to Implementing Shift Left Testing in QA
The Definitive Guide to Implementing Shift Left Testing in QA
 
How to Create Effective Test Plans and Test Cases for Software Testing
How to Create Effective Test Plans and Test Cases for Software TestingHow to Create Effective Test Plans and Test Cases for Software Testing
How to Create Effective Test Plans and Test Cases for Software Testing
 
Tackle Business Risks with Continuous Testing.pdf
Tackle Business Risks with Continuous Testing.pdfTackle Business Risks with Continuous Testing.pdf
Tackle Business Risks with Continuous Testing.pdf
 
Adopting Agile Testing
Adopting Agile TestingAdopting Agile Testing
Adopting Agile Testing
 
stfbegn.ppt
stfbegn.pptstfbegn.ppt
stfbegn.ppt
 
Software testing for beginners
Software testing for beginners Software testing for beginners
Software testing for beginners
 
significance_of_test_estimating_in_the_software_development.pptx
significance_of_test_estimating_in_the_software_development.pptxsignificance_of_test_estimating_in_the_software_development.pptx
significance_of_test_estimating_in_the_software_development.pptx
 
What are Some Best Practices for Integrating Functional Testing Services.pdf
What are Some Best Practices for Integrating Functional Testing Services.pdfWhat are Some Best Practices for Integrating Functional Testing Services.pdf
What are Some Best Practices for Integrating Functional Testing Services.pdf
 
Tackling software testing challenges in the agile era
Tackling software testing challenges in the agile eraTackling software testing challenges in the agile era
Tackling software testing challenges in the agile era
 
Testing Experience Magazine Vol.14 June 2011
Testing Experience Magazine Vol.14 June 2011Testing Experience Magazine Vol.14 June 2011
Testing Experience Magazine Vol.14 June 2011
 

More from QASymphony

Saying Goodbye to Quality Center
Saying Goodbye to Quality CenterSaying Goodbye to Quality Center
Saying Goodbye to Quality CenterQASymphony
 
Building Better Collaboration Between Development and Testing in a DevOps World
Building Better Collaboration Between Development and Testing in a DevOps WorldBuilding Better Collaboration Between Development and Testing in a DevOps World
Building Better Collaboration Between Development and Testing in a DevOps WorldQASymphony
 
QASymphony Atlanta Customer User Group Fall 2017
QASymphony Atlanta Customer User Group Fall 2017QASymphony Atlanta Customer User Group Fall 2017
QASymphony Atlanta Customer User Group Fall 2017QASymphony
 
Manual Testing is Dead. Long Live Manual Testing
Manual Testing is Dead. Long Live Manual TestingManual Testing is Dead. Long Live Manual Testing
Manual Testing is Dead. Long Live Manual TestingQASymphony
 
Knowing Where to Tap
Knowing Where to TapKnowing Where to Tap
Knowing Where to TapQASymphony
 
Moving QA from Reactive to Proactive with qTest
Moving QA from Reactive to Proactive  with qTestMoving QA from Reactive to Proactive  with qTest
Moving QA from Reactive to Proactive with qTestQASymphony
 
Debugging Your Testing Team
Debugging Your Testing TeamDebugging Your Testing Team
Debugging Your Testing TeamQASymphony
 
Succeeding as an Introvert
Succeeding as an IntrovertSucceeding as an Introvert
Succeeding as an IntrovertQASymphony
 
TUI & qTest: Why, How and Where Next
TUI & qTest:  Why, How and Where Next TUI & qTest:  Why, How and Where Next
TUI & qTest: Why, How and Where Next QASymphony
 
Diving into the World of Test Automation The Approach and the Technologies
Diving into the World of Test Automation The Approach and the TechnologiesDiving into the World of Test Automation The Approach and the Technologies
Diving into the World of Test Automation The Approach and the TechnologiesQASymphony
 
Modernizing Your Testing Tools
Modernizing Your Testing ToolsModernizing Your Testing Tools
Modernizing Your Testing ToolsQASymphony
 
RESTful API Testing using Postman, Newman, and Jenkins
RESTful API Testing using Postman, Newman, and JenkinsRESTful API Testing using Postman, Newman, and Jenkins
RESTful API Testing using Postman, Newman, and JenkinsQASymphony
 
Whitebox Testing for Blackbox Testers: Simplifying API Testing
Whitebox Testing for Blackbox Testers: Simplifying API TestingWhitebox Testing for Blackbox Testers: Simplifying API Testing
Whitebox Testing for Blackbox Testers: Simplifying API TestingQASymphony
 
Kick-Starting BDD for Your Organization
Kick-Starting BDD for Your OrganizationKick-Starting BDD for Your Organization
Kick-Starting BDD for Your OrganizationQASymphony
 
BizDevOps – Delivering Business Value Quickly at Scale
BizDevOps – Delivering Business Value Quickly at ScaleBizDevOps – Delivering Business Value Quickly at Scale
BizDevOps – Delivering Business Value Quickly at ScaleQASymphony
 
Making the Switch from HP Quality Center to qTest
Making the Switch from HP Quality Center to qTestMaking the Switch from HP Quality Center to qTest
Making the Switch from HP Quality Center to qTestQASymphony
 
Quality Jam 2017: Sheekha Singh "Millennials & Testing"
Quality Jam 2017: Sheekha Singh "Millennials & Testing"Quality Jam 2017: Sheekha Singh "Millennials & Testing"
Quality Jam 2017: Sheekha Singh "Millennials & Testing"QASymphony
 
Quality Jam 2017: Jesse Reed & Kyle McMeekin "Test Case Management & Explorat...
Quality Jam 2017: Jesse Reed & Kyle McMeekin "Test Case Management & Explorat...Quality Jam 2017: Jesse Reed & Kyle McMeekin "Test Case Management & Explorat...
Quality Jam 2017: Jesse Reed & Kyle McMeekin "Test Case Management & Explorat...QASymphony
 
Quality Jam 2017: Paul Merrill "Machine Learning & How it Affects Testers"
Quality Jam 2017: Paul Merrill "Machine Learning & How it Affects Testers"Quality Jam 2017: Paul Merrill "Machine Learning & How it Affects Testers"
Quality Jam 2017: Paul Merrill "Machine Learning & How it Affects Testers"QASymphony
 
Quality Jam 2017: Sheekha Singh "Millennials & Testing"
Quality Jam 2017: Sheekha Singh "Millennials & Testing"Quality Jam 2017: Sheekha Singh "Millennials & Testing"
Quality Jam 2017: Sheekha Singh "Millennials & Testing"QASymphony
 

More from QASymphony (20)

Saying Goodbye to Quality Center
Saying Goodbye to Quality CenterSaying Goodbye to Quality Center
Saying Goodbye to Quality Center
 
Building Better Collaboration Between Development and Testing in a DevOps World
Building Better Collaboration Between Development and Testing in a DevOps WorldBuilding Better Collaboration Between Development and Testing in a DevOps World
Building Better Collaboration Between Development and Testing in a DevOps World
 
QASymphony Atlanta Customer User Group Fall 2017
QASymphony Atlanta Customer User Group Fall 2017QASymphony Atlanta Customer User Group Fall 2017
QASymphony Atlanta Customer User Group Fall 2017
 
Manual Testing is Dead. Long Live Manual Testing
Manual Testing is Dead. Long Live Manual TestingManual Testing is Dead. Long Live Manual Testing
Manual Testing is Dead. Long Live Manual Testing
 
Knowing Where to Tap
Knowing Where to TapKnowing Where to Tap
Knowing Where to Tap
 
Moving QA from Reactive to Proactive with qTest
Moving QA from Reactive to Proactive  with qTestMoving QA from Reactive to Proactive  with qTest
Moving QA from Reactive to Proactive with qTest
 
Debugging Your Testing Team
Debugging Your Testing TeamDebugging Your Testing Team
Debugging Your Testing Team
 
Succeeding as an Introvert
Succeeding as an IntrovertSucceeding as an Introvert
Succeeding as an Introvert
 
TUI & qTest: Why, How and Where Next
TUI & qTest:  Why, How and Where Next TUI & qTest:  Why, How and Where Next
TUI & qTest: Why, How and Where Next
 
Diving into the World of Test Automation The Approach and the Technologies
Diving into the World of Test Automation The Approach and the TechnologiesDiving into the World of Test Automation The Approach and the Technologies
Diving into the World of Test Automation The Approach and the Technologies
 
Modernizing Your Testing Tools
Modernizing Your Testing ToolsModernizing Your Testing Tools
Modernizing Your Testing Tools
 
RESTful API Testing using Postman, Newman, and Jenkins
RESTful API Testing using Postman, Newman, and JenkinsRESTful API Testing using Postman, Newman, and Jenkins
RESTful API Testing using Postman, Newman, and Jenkins
 
Whitebox Testing for Blackbox Testers: Simplifying API Testing
Whitebox Testing for Blackbox Testers: Simplifying API TestingWhitebox Testing for Blackbox Testers: Simplifying API Testing
Whitebox Testing for Blackbox Testers: Simplifying API Testing
 
Kick-Starting BDD for Your Organization
Kick-Starting BDD for Your OrganizationKick-Starting BDD for Your Organization
Kick-Starting BDD for Your Organization
 
BizDevOps – Delivering Business Value Quickly at Scale
BizDevOps – Delivering Business Value Quickly at ScaleBizDevOps – Delivering Business Value Quickly at Scale
BizDevOps – Delivering Business Value Quickly at Scale
 
Making the Switch from HP Quality Center to qTest
Making the Switch from HP Quality Center to qTestMaking the Switch from HP Quality Center to qTest
Making the Switch from HP Quality Center to qTest
 
Quality Jam 2017: Sheekha Singh "Millennials & Testing"
Quality Jam 2017: Sheekha Singh "Millennials & Testing"Quality Jam 2017: Sheekha Singh "Millennials & Testing"
Quality Jam 2017: Sheekha Singh "Millennials & Testing"
 
Quality Jam 2017: Jesse Reed & Kyle McMeekin "Test Case Management & Explorat...
Quality Jam 2017: Jesse Reed & Kyle McMeekin "Test Case Management & Explorat...Quality Jam 2017: Jesse Reed & Kyle McMeekin "Test Case Management & Explorat...
Quality Jam 2017: Jesse Reed & Kyle McMeekin "Test Case Management & Explorat...
 
Quality Jam 2017: Paul Merrill "Machine Learning & How it Affects Testers"
Quality Jam 2017: Paul Merrill "Machine Learning & How it Affects Testers"Quality Jam 2017: Paul Merrill "Machine Learning & How it Affects Testers"
Quality Jam 2017: Paul Merrill "Machine Learning & How it Affects Testers"
 
Quality Jam 2017: Sheekha Singh "Millennials & Testing"
Quality Jam 2017: Sheekha Singh "Millennials & Testing"Quality Jam 2017: Sheekha Singh "Millennials & Testing"
Quality Jam 2017: Sheekha Singh "Millennials & Testing"
 

Recently uploaded

Pharm-D Biostatistics and Research methodology
Pharm-D Biostatistics and Research methodologyPharm-D Biostatistics and Research methodology
Pharm-D Biostatistics and Research methodologyAnusha Are
 
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdfintroduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdfVishalKumarJha10
 
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsUnveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsAlberto González Trastoy
 
Introducing Microsoft’s new Enterprise Work Management (EWM) Solution
Introducing Microsoft’s new Enterprise Work Management (EWM) SolutionIntroducing Microsoft’s new Enterprise Work Management (EWM) Solution
Introducing Microsoft’s new Enterprise Work Management (EWM) SolutionOnePlan Solutions
 
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfLearn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfkalichargn70th171
 
Chinsurah Escorts ☎️8617697112 Starting From 5K to 15K High Profile Escorts ...
Chinsurah Escorts ☎️8617697112  Starting From 5K to 15K High Profile Escorts ...Chinsurah Escorts ☎️8617697112  Starting From 5K to 15K High Profile Escorts ...
Chinsurah Escorts ☎️8617697112 Starting From 5K to 15K High Profile Escorts ...Nitya salvi
 
Payment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdf
Payment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdfPayment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdf
Payment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdfkalichargn70th171
 
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected WorkerHow To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected WorkerThousandEyes
 
AI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
AI Mastery 201: Elevating Your Workflow with Advanced LLM TechniquesAI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
AI Mastery 201: Elevating Your Workflow with Advanced LLM TechniquesVictorSzoltysek
 
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️Delhi Call girls
 
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...panagenda
 
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfThe Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfkalichargn70th171
 
ManageIQ - Sprint 236 Review - Slide Deck
ManageIQ - Sprint 236 Review - Slide DeckManageIQ - Sprint 236 Review - Slide Deck
ManageIQ - Sprint 236 Review - Slide DeckManageIQ
 
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...ICS
 
Exploring the Best Video Editing App.pdf
Exploring the Best Video Editing App.pdfExploring the Best Video Editing App.pdf
Exploring the Best Video Editing App.pdfproinshot.com
 
LEVEL 5 - SESSION 1 2023 (1).pptx - PDF 123456
LEVEL 5   - SESSION 1 2023 (1).pptx - PDF 123456LEVEL 5   - SESSION 1 2023 (1).pptx - PDF 123456
LEVEL 5 - SESSION 1 2023 (1).pptx - PDF 123456KiaraTiradoMicha
 
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfonteinmasabamasaba
 
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...SelfMade bd
 
The title is not connected to what is inside
The title is not connected to what is insideThe title is not connected to what is inside
The title is not connected to what is insideshinachiaurasa2
 

Recently uploaded (20)

Pharm-D Biostatistics and Research methodology
Pharm-D Biostatistics and Research methodologyPharm-D Biostatistics and Research methodology
Pharm-D Biostatistics and Research methodology
 
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdfintroduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
 
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsUnveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
 
Introducing Microsoft’s new Enterprise Work Management (EWM) Solution
Introducing Microsoft’s new Enterprise Work Management (EWM) SolutionIntroducing Microsoft’s new Enterprise Work Management (EWM) Solution
Introducing Microsoft’s new Enterprise Work Management (EWM) Solution
 
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfLearn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
 
Chinsurah Escorts ☎️8617697112 Starting From 5K to 15K High Profile Escorts ...
Chinsurah Escorts ☎️8617697112  Starting From 5K to 15K High Profile Escorts ...Chinsurah Escorts ☎️8617697112  Starting From 5K to 15K High Profile Escorts ...
Chinsurah Escorts ☎️8617697112 Starting From 5K to 15K High Profile Escorts ...
 
Payment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdf
Payment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdfPayment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdf
Payment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdf
 
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected WorkerHow To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
 
AI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
AI Mastery 201: Elevating Your Workflow with Advanced LLM TechniquesAI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
AI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
 
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
 
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
 
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfThe Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
 
ManageIQ - Sprint 236 Review - Slide Deck
ManageIQ - Sprint 236 Review - Slide DeckManageIQ - Sprint 236 Review - Slide Deck
ManageIQ - Sprint 236 Review - Slide Deck
 
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
 
Exploring the Best Video Editing App.pdf
Exploring the Best Video Editing App.pdfExploring the Best Video Editing App.pdf
Exploring the Best Video Editing App.pdf
 
LEVEL 5 - SESSION 1 2023 (1).pptx - PDF 123456
LEVEL 5   - SESSION 1 2023 (1).pptx - PDF 123456LEVEL 5   - SESSION 1 2023 (1).pptx - PDF 123456
LEVEL 5 - SESSION 1 2023 (1).pptx - PDF 123456
 
Microsoft AI Transformation Partner Playbook.pdf
Microsoft AI Transformation Partner Playbook.pdfMicrosoft AI Transformation Partner Playbook.pdf
Microsoft AI Transformation Partner Playbook.pdf
 
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein
 
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...
 
The title is not connected to what is inside
The title is not connected to what is insideThe title is not connected to what is inside
The title is not connected to what is inside
 

How to accurately estimate the size and effort of your software testing (1)

  • 1.                                       HOW  TO  ACCURATELY   ESTIMATE  THE  SIZE   AND  EFFORT  OF  YOUR   SOFTWARE  TESTING   A  QASymphony  White  Paper   Dr.  Vu  Nguyen    
  • 2. 1                                                                                                                                                                                                                                                                                                  QASymphony     Introduction     Software  testing  is  a  vital  part  of  any  software  development.  New  software  applications  and  updates  to   existing  software  must  be  tested  before  release  to  ensure  that  they  are  fit  for  purpose.  Quality   assurance  is  the  ultimate  goal.  Sadly,  QA  is  rarely  afforded  the  time  or  budget  required  for  a  zero  defect   release.   Despite  the  fact  that  the  testing  process  typically  amounts  to  between  10%  and  25%  of  the  overall   project  effort,  QA  departments  are  often  starved  of  the  time  and  resources  required  to  do  the  job  right.   The  roots  of  this  problem  can  typically  be  traced  back  to  inadequate  estimations  at  the  outset.     There  are  numerous  methodologies  that  can  be  employed  to  estimate  the  requirements  for  an  overall   software  development,  but  they  invariably  fail  to  take  into  account  a  number  of  specific  testing   requirements.  The  result  is  often  an  inaccurate  measurement  of  the  budget  needed  to  test  efficiently   and  meet  the  schedule.  This  creates  tension  between  developers  and  the  QA  team,  as  management   applies  pressure  to  meet  unrealistic  milestones.   In  this  white  paper  we  will  examine  the  difficulties  incumbent  in  estimating  the  overall  scope  of  testing   for  a  given  project.  We  will  then  go  on  to  highlight  an  easily  applicable  method  for  arriving  at  accurate   estimates  of  the  size  and  effort  of  software  testing  that  is  required  for  any  software  development.                              
  • 3. 2                                                                                                                                                                                                                                                                                                  QASymphony     The  problem  with  inaccurate  estimates     The  pressure  to  ship  new  software  products  on  time,  or  roll  out  new  features  via  updates,  has  never   been  greater.  For  any  software  development  to  meet  its  schedule,  the  original  planning  and  estimation   must  be  as  accurate  as  possible.  Since  this  data  is  often  used  to  secure  investment,  for  long  term   planning,  and  when  bidding  for  projects,  serious  inaccuracies  can  cause  untold  problems  down  the  line.     QA  departments  are  rarely  given  an  input  at  the  outset  and  may  be  asked  to  sign  off  on  unrealistic   estimates  when  the  project  is  already  underway.  The  end  result  is  invariably  a  failure  to  deliver  the   required  standard  of  software  on  time.  Either  the  release  date  has  to  be  pushed  back,  as  the  schedule  is   extended  to  allow  for  more  testing,  or  the  software  is  released  with  a  lot  of  bugs.     When  QA  departments  are  asked  to  provide  estimates  they  tend  to  rely  on  experience  and  gut  feeling,   because  there  is  no  concrete  method  of  measuring  the  test  size  and  effort  required.  Inaccurate   estimates  at  the  outset  lead  to  customer  frustration  down  the  line,  increased  costs,  and  a  negative   impact  on  your  company’s  reputation.   What  can  testing  groups  do  in  the  face  of  weekly  builds?  How  do  they  explain  the  rising  cost  in  resource   as  regression  testing  kicks  in  and  grows  in  scope  with  each  new  build?  They  need  a  method  of   estimating  accurately.     The  challenge  of  estimating  accurately     A  number  of  factors  impact  on  software  testing  and  that  makes  it  difficult  to  arrive  at  accurate   estimations.     • You  can’t  just  consider  the  overall  number  of  people  on  the  QA  team;  you  have  to  think  about   their  individual  capabilities.  New  team  members  will  not  have  the  same  capacity  as  seasoned   pros.   • Every  piece  of  software  is  different.  You  have  to  take  into  account  the  requirements  of  the   technology  employed,  and  the  processes  and  environments  involved.   • It  is  hard  to  quantify  software  quality  and  apply  equal  standards  to  attributes  like  functionality,   reliability,  usability,  efficiency,  and  scalability.   • There  are  many  different  types  of  testing  activities,  so  a  comprehensive  test  plan  has  a  lot  of   bases  to  cover.   • Software  requirements  may  be  inaccurate,  inadequate,  or  subject  to  change  during  the   development  process.    
  • 4. 3                                                                                                                                                                                                                                                                                                  QASymphony     Introducing  qEstimation     The  qEstimation  process  can  be  applied  for  any  project  and  it  is  designed  to  be  accessible  for  all   members  of  the  QA  team.  It  empowers  QA  professionals  to  identify  problems  with  the  schedule  at  the   outset  and  to  provide  management  with  a  solid  analysis  of  the  time  and  resources  required  for   successful  software  testing.  The  more  this  process  is  used,  the  more  accurate  it  will  become.  It  is  also   flexible  and  scalable,  so  you  can  adapt  it  to  your  needs.   By  using  the  qEstimation  tool  testing  groups  can  quickly  establish  the  resources  needed  for  a  given  a   project  and  calculate  the  velocity  of  the  test  team.  There’s  actually  no  need  to  understand  why  it  works,   you  can  simply  plug  in  the  pertinent  numbers  and  within  three  iterations,  as  the  data  is  fed  back  into  the   system,  you’ll  get  accurate  estimations  on  the  effort  required  going  forward.  Any  independent  test  team   can  adopt  this  tool  and  see  concrete  results  within  three  to  six  weeks,  making  it  possible  to  accurately   report  on  the  velocity  of  the  test  team  and  the  resources  needed  to  meet  the  schedule.     How  does  it  work?  An  overview     To  estimate  the  size  of  software  testing  we  start  with  a  Test  Case  Point  Analysis  (TCPA).  Four  elements   are  taken  into  account  -­‐  checkpoint,  precondition,  test  data,  and  test  type  (we  will  go  into  this  in  more   detail  in  the  next  section).  This  allows  us  to  establish  the  scope  of  the  test  cycle  and  to  estimate  the   effort  needed  to  complete  it.  As  the  test  cases  are  completed  the  actual  effort  and  time  required  is   plugged  back  into  the  model,  as  you  can  see  in  this  diagram.  
  • 5. 4                                                                                                                                                                                                                                                                                                  QASymphony                                               Using  this  method  ensures  that  your  estimates  will  grow  more  and  more  accurate  as  you  feedback  the   actual  data  from  testing  and  analyze  any  inaccuracies.  It  enables  you  to  build  a  repository  of  experience   and  draw  on  that  knowledge  to  make  informed  estimations  for  new  test  cycles.     Calculating  Test  Case  Point  Analysis  (TCPA)     Drawing  on  the  idea  that  Function  Point  Analysis  (FPA)  and  Use  Case  Point  Analysis  (UCPA)  are  based  on   requirements  and  use  cases,  test  cases  are  the  primary  influence  on  testing  and  so  they  are  used  as  the   core  input  of  TCPA.  The  first  step  is  to  use  your  test  cases  to  calculate  the  Test  Case  Point  (TCP)  count.  As   we  mentioned  before  there  are  four  factors  to  consider  -­‐  checkpoint,  precondition,  test  data,  and  test   type.  The  first  three  relate  to  the  overall  size  of  the  test  case  and  the  fourth,  test  type,  acts  as  a   weighting  mechanism  that  takes  into  account  the  varying  complexity  of  different  test  types.     Checkpoint  –  an  individual  condition  where  the  tester  can  verify  that  the  software  behaves  as  expected.   An  individual  test  case  could  have  one  or  several  checkpoints.  Each  checkpoint  should  be  counted  as  one   TCP.   Precondition  –  what  is  the  overhead  in  terms  of  preparation  before  the  test  case  can  be  executed?  This   is  broken  into  four  possible  levels  of  complexity,  as  highlighted  in  the  table  below.  
  • 6. 5                                                                                                                                                                                                                                                                                                  QASymphony     Complexity  Level   Description   None   The  precondition  is  not  applicable  or  important  to   execute  the  test  case.  Or,  the  precondition  is  just   reused  from  the  previous  test  case  to  continue  the   current  test  case.   Low   The  condition  for  executing  the  test  case  is  available   with  some  simple  modifications  required.  Or,  some   simple  set-­‐up  steps  are  needed.   Medium   Some  explicit  preparation  is  needed  to  execute  the   test  case.  The  condition  for  executing  is  available   with  some  additional  modifications  required.  Or,   some  additional  set-­‐up  steps  are  needed.   High   Heavy  hardware  and/or  software  configurations  are   needed  to  execute  the  test  case.     Test  data  –  this  is  the  data  that  is  required  to  execute  the  test  case  and  it  may  need  to  be  generated  by   test  scripts  or  sourced  from  previous  tests.  Once  again,  there  are  four  possible  levels  of  complexity  as   detailed  in  this  table.   Complexity  Level   Description   None   No  test  data  preparation  is  needed.   Low   Simple  test  data  is  needed  and  can  be  created  during  the  test  case   execution  time.  Or,  the  test  case  uses  a  slightly  modified  version  of   existing  test  data  and  requires  little  or  no  effort  to  modify  the  test   data.   Medium   Test  data  is  deliberately  prepared  in  advance  with  extra  effort  to   ensure  its  completeness,  comprehensiveness,  and  consistency.   High   Test  data  is  prepared  in  advance  with  considerable  effort  to  ensure  its   completeness,  comprehensiveness,  and  consistency.    This  could   include  using  support  tools  to  generate  data  and  a  database  to  store   and  manage  test  data.  Scripts  may  be  required  to  generate  test  data.     The  ratings  of  the  complexity  levels  of  the  precondition  and  test  data  also  has  to  be  assigned  a  TCP  value   and  so  here  is  a  possible  set  of  values  for  weighting.  The  values  are  something  you’ll  want  to  fine  tune   for  your  own  specific  project.  
  • 7. 6                                                                                                                                                                                                                                                                                                  QASymphony     Complexity  Level   Number  of  TCP  for   Precondition   Number  of  TCP   for  Test  Data   None     0   0   Low     1   1   Medium   3   3   High   5   6     Test  type  –  since  there  are  many  different  kinds  of  tests  with  varying  degrees  of  complexity  you’ll  want   to  weight  them  accordingly.  The  actual  weights  you  apply  will  depend  on  your  own  approach,  but  this   table  can  serve  as  an  example.  Using  the  user  interface  and  functional  testing  as  your  baseline,  you  can   add  other  types  of  test  as  needed  and  weight  them  accordingly;  this  is  not  an  exhaustive  list.   Types  of  Test   Description   Weight   User  interface  and   functional  testing   User  interface  and  functional  testing  is  considered   baseline.   1.0   API   API  testing  verifies  the  accuracy  of  the  interfaces  in   providing  services.     1.22   Database   Testing  the  accuracy  of  database  scripts,  data  integrity   and/or  data  migration.   1.36   Security   Testing  how  well  the  system  handles  hacking  attacks,   unauthorized  and  unauthenticated  accesses.     1.39   Installation   Testing  of  full,  partial,  or  upgrade  install/uninstall   processes  of  the  software.   1.09   Networking   Testing  the  communications  among  entities  via   networks.   1.27   Algorithm  and   computation   Verifying  algorithms  and  computations  designed  and   implemented  in  the  system.   1.38   Usability  testing   Testing  the  friendliness,  ease  of  use,  and  other  usability   attributes  of  the  system.   1.12   Performance  (manual)   Verifying  whether  the  system  meets  performance   requirements,  assuming  that  the  test  is  done  manually.       1.33   Recovery  testing   Recovery  testing  verifies  the  accuracy  of  the  recovery   process  to  recover  from  system  crashes  and  other   1.07  
  • 8. 7                                                                                                                                                                                                                                                                                                  QASymphony     Types  of  Test   Description   Weight   errors.   Compatibility  testing   Testing  whether  the  software  is  compatible  with  other   elements  of  a  system  with  which  it  should  operate,  e.g.,   browsers,  operating  systems,  or  hardware.   1.01     How  do  you  establish  weights?     There’s  a  chance  that  the  QA  manager  will  want  to  take  responsibility  for  determining  the  weights  that   should  be  applied  for  the  precondition  complexity,  test  data  complexity,  and  test  types,  but  we   recommend  widening  the  net  and  polling  the  opinions  of  experienced  testers  and  software  engineers.     Ensure  that  you  explain  the  TCPA  system  fully  and  then  issue  a  survey.  The  results  can  be  used  to   establish  an  average.     How  do  you  estimate  the  effort?     The  longer  a  team  works  together  and  the  more  projects  they  work  on,  the  easier  it  becomes  to   estimate  their  average  work  rate.  You’ll  need  to  have  an  idea  of  how  many  test  cases  can  be  completed   per  hour,  per  worker.  For  the  qEstimation  system  to  work  you  need  to  understand  the  relationship   between  tester  minutes  and  hours  and  the  TCP  count.   We  recommend  two  methods  for  estimating  the  effort  required  to  complete  your  test  cases.  The  one   you  choose  will  depend  largely  on  the  amount  of  historical  data  you  can  draw  on.  In  simple  terms,  the   more  test  cases  you  complete,  the  more  accurately  you  can  determine  how  long  a  new  test  case  will   take  to  complete.   Using  a  productivity  index  you  can  draw  on  the  results  of  past  tests,  or  you  can  devise  an  experiment  to   produce  useful  data.  If  you  have  previous  test  cycles  or  data  from  completed  projects  that  were  similar   then  you’ll  be  able  to  make  fairly  accurate  estimations  of  the  effort  required.   You  might  also  consider  linear  regression  analysis.  This  method  allows  you  to  establish  estimation   ranges  and  give  a  confidence  level  for  the  estimate,  but  it  can  only  be  employed  if  you  have  five  similar   test  cycles  or  projects  to  draw  on.   Once  you  can  work  out  a  ratio  for  how  long  a  tester  takes  to  complete  a  TCP  then  you  can  accurately   assess  the  resources  required  to  complete  the  test  cycle  in  the  time  frame  specified.    
  • 9. 8                                                                                                                                                                                                                                                                                                  QASymphony     A  learning  model     As  each  test  cycle  is  completed  you  need  to  compare  the  actual  results  with  the  estimates  and  account   for  any  inaccuracies.  This  information  can  be  used  to  make  the  qEstimation  model  more  accurate  in   future.  It  is  fast  to  apply  and  it  grows  more  accurate  as  the  pool  of  data  it  can  draw  on  grows  deeper.    It   also  provides  a  rigid  structure  for  analysis  and  estimation  that  any  tester  can  employ,  so  it  can  reduce   the  burden  on  experienced  testers  who  may  overestimate  the  effort  required  in  order  to  avoid  failing  to   meet  the  schedule.     Reap  the  rewards     The  ability  to  accurately  estimate  the  size  and  effort  of  your  software  testing  provides  a  number  of   obvious  benefits.  For  working  out  budgets  and  staffing  levels,  this  kind  of  information  is  vital.  If  your  test   team  is  presented  with  an  unrealistic  schedule  you  can  highlight  the  shortfall  with  concrete  data  based   on  past  performance.  The  end  result  is  an  achievable  schedule  and  a  better  quality  of  software  on   release  day.  The  qEstimation  tool  doesn’t  require  corporate  wide  adoption.  Any  independent  test  team   can  plug  in  the  relevant  data  and  arm  themselves  with  accurate  estimations  on  the  resources  they   require  and  the  velocity  of  the  test  team.   It  is  a  well-­‐established  rule  in  software  testing  that  the  earlier  a  defect  is  found,  the  cheaper  it  is  to  fix.   The  same  principle  can  be  applied  to  test  estimations  -­‐  accuracy  at  the  start  will  save  you  a  great  deal  of   time  and  resource  down  the  line.