Заметки консультанта

Шамрай Александр Владимирович

Руководство по инструментам архитектуры Visual Studio. Приложение

Posted by Шамрай Александр на Апрель 26, 2013

<<Перейти к содержанию

Контрольный список Модели UML

Следующие контрольные списки являются полезным руководством при проверке вариантов использования, последовательностей и схем классов как части сценария проверки. Контрольные списки были получены из Use Cases and Testing Parts 1,2 and 3 и расширены.

Варианты использования / Диаграмма активностей

ПРИМЕЧАНИЕ
Смотрите сценарий Валидация.

Тестирование синтаксиса

Полнота:

  • Все поля определения варианта использования заполнены? Мы действительно знаем, что означают слова?
  • Все шаги необходимые для реализации варианта использования включены?
  • Все пути правильно определены и обрабатываются правильно? Были рассмотрены все комбинации?
  • Все пути, которые могут идти неправильно, определены и обрабатываются правильно? Были рассмотрены все комбинации?

Если у вас есть схема классов бизнес-концепции:

  • Есть вариант использования, который описывает, как создается экземпляр каждого класса?
  • Есть вариант использования, который описывает, каким образом каждая ассоциация создается и уничтожается, и какое значение имеет каждый атрибут?
  • Если вы описали цели или постусловия каждого варианта использования, все бизнес-сущности и отношения в описаниях появляются в схеме классов бизнес-концепции?

Корректность:

  • Цели основного субъекта варианта использования выражены как фраза с активным глаголом?
  • Описан ли вариант использования на соответствующем уровне черного/белого ящика?
  • Обязательны ли предварительные условия? Могут они быть гарантированы системой?
  • Неудачные конечные условия защищают интересы всех заинтересованных сторон?
  • Конечные условия успеха удовлетворяют интересы всех заинтересованных сторон?
  • Проходит ли основной успешный сценарий от его триггера до успешного состояния в конце?
  • Правильна ли последовательность шагов действий?
  • Выражен ли каждый шаг в настоящей форме активного глагола как цель, которая движет процесс вперед?
  • Ясно где и почему альтернативные сценарии отходят от основного сценария?
  • Проектные решения (GUI, базы данных,…) исключены из варианта использования?
  • Вариант использования включает отношения «обобщение», «включать» и «расширить» в их полной мере и используются правильно?

Последовательность:

  • Может система фактически доставить к указанной цели?

Если вы описали ограничения к схеме классов бизнес-концепции:

  • Цели вариантов использования соответствуют этим ограничениям?

Тестирование экспертизы проблемной области

Полнота:

  • Все субъекты определены? Вы можете определить конкретного человека, который может играть роль каждого субъекта?
  • Это все, что необходимо разработать?
  • Все внешние к системе условия обрабатываются?
  • Все слова, которые предполагают неполноту («некоторые», «т.д.»…) были удалены?

Корректность:

  • Это то, что вы действительно хотите? Это все, что вы действительно хотите? Это больше, чем вы действительно хотите?

Последовательность:

  • Когда мы построим эту систему согласно этим вариантам использования, вы будете в состоянии определить, что достигли успеха?
  • Может описываемая система фактически быть построена?

Тестирование трассировки

Полнота:

  • Варианты использования формируют историю, которая развертывается от высокого до низкого уровня?
  • Существует ли установка контекста, вариант использования самого высокого уровня внешней области разработки для каждого главного субъекта?

Корректность:

  • Все функциональные требования системы отражены в вариантах использования?
  • Все источники информации перечислены?

Полнота:

  • Варианты использования определяют все функции в рамках системы и ничего вне рамок?
  • Мы можем отследить каждый вариант использования обратно к его требованию(ям)?
  • Можно проследить каждый вариант использования до своей диаграммы класса, последовательности и состояний?

Диаграмма последовательности

ПРИМЕЧАНИЕ
Смотрите сценарий Валидация.

Тестирование синтаксиса

Полнота:

  • Каждый ли объект необходимый для взаимодействия существует на диаграмме?

Корректность:

  • Все не используемые во взаимодействии объекты были удалены со схемы?
  • Линия жизни каждого объекта начинается и заканчивается в надлежащее время?
  • Активация каждого объекта описана должным образом?
  • Если время жизни объекта заканчивается, это отмечается знаком X?
  • Каждое сообщение именовано сильным глаголом?
  • Соответствующие параметры включены для каждого сообщения?
  • Условные ветви отражены правильно?

Последовательность:

  • Условные операторы покрывают все варианты?
  • Любое дублирование условных операторов было удалено?

Тестирование экспертизы проблемной области

Полнота:

  • Все пути, которые могут идти правильно определены и правильно обрабатываются?
  • Все пути, которые могут пойти неправильно определены и правильно обрабатываются?
  • Проходит ли основной успешный сценарий от его триггера до успешного состояния в конце?

Корректность:

  • Диаграмма последовательности показывает каждый шаг, который должен выполняться для реализации функции?
  • Может ли каждый шаг фактически быть осуществим?

Тестирование трассировки

Последовательность:

  • Каждый вариант использования представлен по крайней мере одной диаграммой последовательности?
  • Каждый главный субъект существует по крайней мере на одной диаграмме последовательности?

Диаграмма классов

ПРИМЕЧАНИЕ
Смотрите сценарий Валидация.

Тестирование синтаксиса

Полнота:

  • Каждый класс определяет атрибуты, методы, отношения и количество элементов?
  • Каждая ассоциация хорошо именована?
  • Каждой ассоциация и агрегация имеет правильное количество элементов?

Корректность:

  • Все атрибуты частные?
  • Все параметры явные, а не встроены в имена методов?
  • Все подклассы реализуют отношения «разновидность» должным образом?
  • Все объекты представлены явно с помощью состояний и переходов, а не как подклассы?
  • В наследуемых структурах все атрибуты и методы продвинуты настолько высоко в структуру наследования как надлежаще?
  • Все полиморфные методы в пределах соответствующих подклассов названы идентично?
  • Каждая ассоциация отражает отношение, которое существует при жизни связанных объектов?

Последовательность:

  • Каждое отношение 0.. * и 1.. * реализуется контейнерами/коллекторами?
  • Количество элементов каждой ассоциации непротиворечиво (сразу и с течением времени)?

Тестирование экспертизы проблемной области

Полнота:

  • Каждый класс именован сильным существительному?
  • Все избыточные, неактуальные или расплывчатые классы были удалены со схемы?
  • Каждый атрибут определен внутри надлежащего класса? Он правильного типа?
  • Видимость каждого атрибута является правильным?
  • Значения по умолчанию для каждого атрибута указаны правильно?
  • Каждый атрибут необходим, а не вычисляем от других?
  • Каждый метод в правильном классе?
  • Имена всех методов сильные глаголы?
  • Каждый метод принимает правильные входные параметры и возвращает правильный выходной параметр?
  • Видимость каждого метода является правильной?
  • Каждый метод реализует одно и только одно поведение?
  • Публичные интерфейсы освобождены от ненужных методов?

Последовательность:

  • Диаграмма классов отображена на соответствующем уровне: концептуальный, спецификация или реализация?

Тестирование трассировки

Последовательность:

  • Каждый объект на схеме последовательности представлен с помощью класса на схеме классов?
  • Каждое сообщение на схеме последовательности отражено как метод в соответствующем классе?

<<Перейти к содержанию

Advertisements

Добавить комментарий

Заполните поля или щелкните по значку, чтобы оставить свой комментарий:

Логотип WordPress.com

Для комментария используется ваша учётная запись WordPress.com. Выход / Изменить )

Фотография Twitter

Для комментария используется ваша учётная запись Twitter. Выход / Изменить )

Фотография Facebook

Для комментария используется ваша учётная запись Facebook. Выход / Изменить )

Google+ photo

Для комментария используется ваша учётная запись Google+. Выход / Изменить )

Connecting to %s

 
%d такие блоггеры, как: