close

Вход

Забыли?

вход по аккаунту

?

Nine Steps to Delivering Defect

код для вставкиСкачать
Nine Steps to Delivering
Defect-Free Software
By: Terence M. Colligan
Presented by: Isaac Bailey
Outline
•
•
•
•
•
•
•
•
•
•
•
Introduction
1. Believe Defect-Free Software is Possible
2. Think Defect-Free Software is Important
3. Commit to Delivering Defect-Free Software
4. Design Your Code for Simplicity and Reliability
5. Trace Every Line of Code When Written
6. Review Code by Programmer Peers
7. Build Automated QA into Your Code
8. Build and Test Daily
9. Use Automated Checking Wherever Possible
Summary
Introduction
Terence Colligan has been working in
software development for 30 years at the
time this article was written.
One engineer changed his entire outlook on
how software should be written.
They have come up with these nine steps.
1. Believe Defect-Free Software is
Possible
• The first reaction is “It’s just not possible”.
• This attitude is the biggest obstacle.
• The average engineer:
– Defects are inevitable.
• The defect-free engineer:
– Defects embarrass them.
– They are disgusted to find defects in other
people’s code
2. Think Defect-Free Software is
Important
• Why is defect-free software important?
– Reduces support costs.
– Reduces programming costs.
– Reduces development time.
– Can provide a competitive advantage.
3. Commit to Delivering DefectFree Software
• Colligan used to make decisions based on
short schedule time instead of focusing on
the defect-free side.
• In reality the schedules were longer, there
were more bugs in the software, more
support was required, higher costs and
lower profits.
4. Design Your Code for Simplicity
and Reliability
• A clean, well structured design simplifies
producing reliable code. Whereas a poor
design cripples the engineer.
• Each function should be precise and have
only one purpose.
• If a bug is found then the programmer can
find and fix the code fast, saving time and
money.
5. Trace Every Line of Code When
Written
• Using a debugger trace every new line of
code.
• Try to predict the outcome before each line
is executed.
• By stepping through each line of code, you
ensure that the new code is fully tested.
• You confirm that the code is functioning as
intended.
6. Review Code by Programmer
Peers
• Single most cost-effective way to remove
bugs from code.
• This process forces the engineer to
articulate assumptions.
• Allows for more than one engineer to view
the code while it is still easy to change.
• Encourages cross-training and sharing of
techniques.
7. Build Automated QA into Your
Code
• Automated test are designed to exercise
every part of the program.
• Use the power of the computer.
• Avoid human error.
8. Build and Test Daily
• This gives developers feedback about
changes made and management gets
objective feedback about the project
status.
• This helps in making better estimates
about costs and shipping dates.
9. Use Automated Checking
Wherever Possible
• Set your compiler’s warning level to
maximum.
• Use the memory trace subsystem.
• Other commercial tools
Summary
• It take a lot of work.
• Some details will be adapted to your
situation.
• By demanding defect-free software you
can deliver it.
• http://www.tenberry.com/errfree/steps.htm
Документ
Категория
Презентации
Просмотров
6
Размер файла
96 Кб
Теги
1/--страниц
Пожаловаться на содержимое документа