Методы тестирования программного обеспечения. Степанченко И.В. - 31 стр.

UptoLike

Составители: 

33
2.3.3. Проверка за столом
Третьим методом ручного обнаружения ошибок является применяв-
шаяся ранее других методов «проверка за столом». Проверка за столом
может рассматриваться как проверка исходного текста или сквозные про-
смотры, осуществляемые одним человеком, который читает текст про-
граммы, проверяет его по списку ошибок и (или) пропускает через про-
грамму
тестовые данные.
Большей частью проверка за столом является относительно непро-
дуктивной. Это объясняется прежде всего тем, что такая проверка пред-
ставляет собой полностью неупорядоченный процесс. Вторая, более важ-
ная причина заключается в том, что проверка за столом противопостав-
ляется одному из принципов тестирования [1], согласно которому про-
граммист обычно неэффективно тестирует собственные
программы. Сле-
довательно, проверка за столом наилучшим образом может быть выпол-
нена человеком, не являющимся автором программы (например, два про-
граммиста могут обмениваться программами вместо того, чтобы прове-
рять за столом свои собственные программы), но даже в этом случае та-
кая проверка менее эффективна, чем сквозные просмотры или инспекции.
Данная
причина является главной для образования группы при сквозных
просмотрах или инспекциях исходного текста. Заседание группы благо-
приятствует созданию атмосферы здоровой конкуренции: участники хо-
тят показать себя с лучшей стороны при нахождении ошибок. При про-
верке за столом этот, безусловно, ценный эффект отсутствует. Короче го-
воря, проверка за столом, конечно, полезна, но
она гораздо менее эффек-
тивна, чем инспекция исходного текста или сквозной просмотр.
2.4. Список вопросов для выявления ошибок при инспекции
Важной частью процесса инспектирования является проверка про-
граммы на наличие общих ошибок с помощью списка вопросов для вы-
явления ошибок. Концентрация внимания в предлагаемом списке (как,
например, в работе [17]) на рассмотрении
стиля, а не ошибок (вопросы
типа «Являются ли комментарии точными и информативнымии «Рас-
полагаются ли символы THEN/ELSE и DO/END по одной вертикали друг
под другом?») представляется неудачной, так же как и наличие неопре-
деленности в списке, уменьшающее его полезность (вопросы типа «Со-
ответствует ли текст программы требованиям, выдвигаемым при проек-
тировании?»).
Список, приведенный в данном разделе, был составлен
различными авторами. За основу взят список Майерса [18] и дополнен
автором после многолетнего изучения ошибок программного обеспече-
ния, разработанного как лично, так и другими специалистами, а также
учебных программ. В значительной мере он является независимым от
                        2.3.3. Проверка за столом
     Третьим методом ручного обнаружения ошибок является применяв-
шаяся ранее других методов «проверка за столом». Проверка за столом
может рассматриваться как проверка исходного текста или сквозные про-
смотры, осуществляемые одним человеком, который читает текст про-
граммы, проверяет его по списку ошибок и (или) пропускает через про-
грамму тестовые данные.
     Большей частью проверка за столом является относительно непро-
дуктивной. Это объясняется прежде всего тем, что такая проверка пред-
ставляет собой полностью неупорядоченный процесс. Вторая, более важ-
ная причина заключается в том, что проверка за столом противопостав-
ляется одному из принципов тестирования [1], согласно которому про-
граммист обычно неэффективно тестирует собственные программы. Сле-
довательно, проверка за столом наилучшим образом может быть выпол-
нена человеком, не являющимся автором программы (например, два про-
граммиста могут обмениваться программами вместо того, чтобы прове-
рять за столом свои собственные программы), но даже в этом случае та-
кая проверка менее эффективна, чем сквозные просмотры или инспекции.
Данная причина является главной для образования группы при сквозных
просмотрах или инспекциях исходного текста. Заседание группы благо-
приятствует созданию атмосферы здоровой конкуренции: участники хо-
тят показать себя с лучшей стороны при нахождении ошибок. При про-
верке за столом этот, безусловно, ценный эффект отсутствует. Короче го-
воря, проверка за столом, конечно, полезна, но она гораздо менее эффек-
тивна, чем инспекция исходного текста или сквозной просмотр.

      2.4. Список вопросов для выявления ошибок при инспекции
    Важной частью процесса инспектирования является проверка про-
граммы на наличие общих ошибок с помощью списка вопросов для вы-
явления ошибок. Концентрация внимания в предлагаемом списке (как,
например, в работе [17]) на рассмотрении стиля, а не ошибок (вопросы
типа «Являются ли комментарии точными и информативными?» и «Рас-
полагаются ли символы THEN/ELSE и DO/END по одной вертикали друг
под другом?») представляется неудачной, так же как и наличие неопре-
деленности в списке, уменьшающее его полезность (вопросы типа «Со-
ответствует ли текст программы требованиям, выдвигаемым при проек-
тировании?»). Список, приведенный в данном разделе, был составлен
различными авторами. За основу взят список Майерса [18] и дополнен
автором после многолетнего изучения ошибок программного обеспече-
ния, разработанного как лично, так и другими специалистами, а также
учебных программ. В значительной мере он является независимым от
                                  33