INTRODUCTION

Why Software  Quality Matters?

... or why are we here today?

AN EXAMPLE

  • WHEN: 15th January 1990
  • WHO: Suffered by AT&T (US Network Carrier)
  • HOW: Single misplaced line of code in 3.000.000 lines
  • WHAT: Major disruption in phone service
    • 9 hours
    • $1.1 Billion loss

Show me the code!

network code() 
{ 
  switch (line) { 
    case THING1: 
        doit1(); 
        break; 
    case THING2: 
        if (x == STUFF) { 
           do_first_stuff(); 
           if (y == OTHER_STUFF) 
              break; 
            do_later_stuff(); 
        } /* coder meant to break to here... */ 
        initialize_modes_pointer(); 
        break; 
    default: 
         processing(); 
    } /* ...but actually broke to here! */ 
   use_modes_pointer();/* leaving the modes_pointer uninitialized*/ 
} 

This break makes the code go out of the switch

Could it be worse?

 

  • Fail-safe system failed
  • Bug propagated and created a chain reaction
  •  

Title Text

But that was a while ago, we have today new methodologies, programming languages, frameworks...

Title Text

Subtitle

Software Crisis

"Few fields have so large a gap between best current practice and average current practice."

US Department of Defense

The complexity of the problems addressed of software has outpaced the improvements in the software creation process

"We have repeatedly reported on cost rising by millions of dollars, schedule delays, of not months but years, and multi-billion-dollar systems that don't perform as envisioned. The understanding of software as a product and of software development as a process is not keeping pace with the growing complexity and software dependence of existing and emerging mission-critical systems."

Government Accounting Office

INTRODUCTION

By Daniel Coloma

INTRODUCTION

  • 596