(495) 925-0049, ITShop интернет-магазин 229-0436, Учебный Центр 925-0049
  Главная страница Карта сайта Контакты
Поиск
Вход
Регистрация
Рассылки сайта
 
 
 
 
 

Как вести и осуществлять поддержку процессов разработки и контроля качества

Источник: oracle
Дж. Даунс

В данной статье представлен краткий обзор применяемых на практике методов тестирования, а также краткая инструкция по применению Oracle Test Manager for Web Applications.

Часто перед тестировщиками стоит задача определения планов тестирования, критериев принятия и возможности тестирования, определение усилий по разработке, а также предполагаемых результатов.

Грамотный выбор инструмента для воплощения в жизнь данных методик и стратегий поможет не только облегчить тяжкую ношу тем, кто вовлечён в процесс, но также добавляет эффективности, организованности, обоснованности успешного результата. Прежде чем начать свой рассказ о том, как мы начали и внедрили контроль качества в моей компании, позвольте немного описать ситуацию. http://www.meridianksi.com/ Meridian Knowledge Solutions является лидером в отрасли систем управления обучением (learning management system - LMS) и программных систем управления обучающим контентом. Мы также предоставляем профессиональный сервис, программы обучения, разработку и услуги хостинга. Мы обслуживаем 4.5 миллиона пользователей в более, чем 200 публичных и частных компаниях.

Наш основной продукт - http://www.meridianksi.com/products/meridian_global_lms/ Meridian Global LMS, интегрирует в себе систему управления контентом, аналитику трудовых затрат, управление знаниями, а также моделировнаие способностей в одной LMS. Meridian Global LMS обеспечивает пользователям доступ к системе курсов, документам, данным, инструкторам, и прочим услугам по запросу. Любой материал, разработанный для того, чтобы увеличить производительность труда, прост, всегда доступен и полностью интегрирован в единый веб-сайт.

В данной статье вы найдёте краткий обзор методик тестирования и процессов, используемых в Meridian, обоснование выброра Oracle Test Manager for Web Applications (компонент Oracle Applications Testing Suite) для того, чтобы управлять процессами и осуществлять контроль качества. А также как мы используем Oracle Test Manager for Web Applications каждый день.

Meridian QA: Внедрение контроля качества.

Как известно, задача определения единого процесса для поддержки жизненного цикла программного обеспечения - это весьма сложная задача. Попытка определить все этапы жизненного цикла может оказаться практически невыполнимой задачей. К счастью, это возможно, и это не такая уж и сложная задача, как можно было подумать.

В 2004 году мы решили обрисовать общую картину, и определить обязанности и ответственность за контроль качества (QA - quality assurance), как оно должно быть в нашем продукте (Meridian Global LMS).

Достижение данной цели значит не только определение новых методик для команды контроля качества, но также описание того, как объединить его с другими командами на всех этапах жизненного цикла продукта. Нашей основной задачей было сохранить всё достаточно простым и обтекаемым, насколько это возможно. "Работаем умно, а не тяжело" - стало лозунгом нашей команды. Мы начали с централизованных индивидуальных процессов, основанных на нормальных индустриальных стандартах, а также на нашем многолетнем коллективном опыте о том, как всё работает в реальном мире. Часть наших ключевых процессов вывыдена из самых простых и нормальных производственных примеров существующих организаций. Таких, как Capability Maturity Model Integration подход от Software Engineering Institute. Наконец, мы захотели удостовериться, что те дефекты, которые мы имели ранее, будут отсутствовать в будущем.

Мы разработали простой и рациональный порядок для процесса контроля изменений, стратегии тестирования, порядок документирования, процедуры обзора готовности, а также шаблоны для поддержки и направления для QA. Из этого ничто сильно не отличается от того, что другие компании и организации внедряют, когда они заняты QA и контролем жизненного цикла. Мы верим, что наше преимущество в приверженстве этим принципам QA и в том, как хорошо они работают в разработке, подходят к требованиям и процессам управления.

Так что же эти воображаемые процессы, и как вы можете определить, что создавать? Начнём с определения основного процесса, дополнив его опциональными процессами, которые представляют ценность время от времени. К ним относятся, среди прочего, детализированные планы тестирования, финальные отчёты тестирования, совокупные метрики тестирования. Некоторые процессы, которые могут быть весьма полезными, - это обзоры готовности тестирования, обзоры готовности релиза и формализованная панель контроля изменений (change control board - CCB). Всё это, среди прочего, помогает создать нам идеологию и методологию Meridian.

Итак, все готовы? Что теперь? Основной вопрос и интерес в том, как нам обслуживать и поддерживать всё это в то время, когда происходят постоянные изменения кода, модификации требований?

Ответом для нас стал Oracle Test Manager for Web Applications - Инструмент, который помог нам плавно объединить все эти процессы вместе, осуществляя коммуникацию на уровне портала.

Архитектура Oracle Test Manager for Web Applications

Основное преимущество Oracle Test Manager for Web Applications в его простоте: все фундаментальные направления жизненного цикла программы доступны в простом и интуитивном интерфейсе. Я лично использовал множество других инструментов для тестирования, контроля требований и отслеживания дефектов, которые требовали слишком много времени для синхронизации информации между независимыми приложениями. Эти программы подчас оказывались намного дороже во внедрении и обслуживании, чем Oracle Test Manager for Web Applications. И это по прежнему так.

Один из самых затратных по времени, но при этом основной QA-процесс - это возможность создания связи между требованиями, тестами и выявлением дефектов. Вероятно, это основная черта, которая определила наш выбор Oracle Test Manager for Web Applications в Meridian. Позволяя пользователям связывать требования с тестами (см. Рис 1) и тесты с проблемами (см. Рис 2), и таким образом автоматически связывая проблемы с требованиями (см. Рис 3), Oracle Test Manager for Web Applications обеспечивает связь и отображение, которые помогают нам в CCB процессе, решении возникших проблем, подготовке и выполнения тестирования.


Рис 1 Связывание требований и тестов


Рис 2 Связывание тестов и возникающих проблем


Рис 3 Автоматическое связывание возникших проблем и требований

Давайте рассмотрим архитектуру Oracle Test Manager for Web Applications, его независимые модули "Requirements", "Tests" и "Issues". Базовая версия Oracle Test Manager for Web Applications использует выделенный сервер лицензий и Microsoft SQL Server в качестве СУБД и является для нас простым и удобным вариантом. Использование SQL Server обеспечивает мощное и простое решение для поддержки и и резервирования базы данных. К тому же, выделенный сервер Oracle Test Manager for Web Applications не должен быть излишне требовательный к ресурсам, в отличие от других решений по поддержке жизненного цикла. Модуль " Requirements " Oracle Test Manager for Web Applications обеспечивает стандартизированную платформу для разработки, создания функциональных требований и обслуживания. Его поля и опции обеспечивают адекватную поддержку даже для наиболее комплексных приложений. К тому же возможность создавать произвольные поля в Oracle Test Manager for Web Applications Administrator обеспечивает намного более мощную платформу для гибкого управления требованиями, а также включает настройку приложения для соответствия с определённым вами процессами. Дополнительная возможность прикладывать файлы, такие как картинки или последовательости выполняемых действий, повышают продуктивность, представляя разработчикам и тестировщикам информацию, нужную для написания кода и тестирования в первый раз. В тоже время Oracle Test Manager for Web Applications поддерживает все предыдущие версии требований и обеспечивает возможность сохранять комментарии к каждой сохранённой версии (с помощью произвольных полей).

Модуль "Issues" включает такие же стандарты продуктивности, эффективности, гибкости как и модуль "Requirements". Но он также даёт нам в Meridian платформу, которая нам нужна для эффективного и равномерного управления нашим процессом контроля изменений. Мы получаем пользу от возможности создания произвольных полей и опций, которые нам нужны для управления ожидаемыми дефектами или полезными изменениями (Рис. 4). Модуль "The Issues" не управляет этим процессом за нас, но без него процесс контроля изменений не был бы так эффективным и гибким, как он есть сейчас. К тому же, информация, содержащаяся в модуле "Issues" даёт нам прекрасную гибкость в управлении готовностью релиза, а также отчётность для каждого релиза.


Рис 4 Создание произвольных полей

Последний модуль в Oracle Test Manager for Web Applications - это "Tests". Очевидно, что это основная задача приложения. Возможность структурировать тесты по принципу папок и тестовых групп встроена для соответствующего управления и поддержки. Но возможность управлять ручными, автоматизированными (например, Oracle Functional Testing for Web Applications), и сторонними тестами - это ключевое преимущество этого модуля. Для того, кто конвертирует существующий QA материал в систему управления такую как Oracle Test Manager for Web Applications, процесс ручного тестирования непревзойдён. Просто и легко существующие тесты из таких приложений как Microsoft Word, Microsoft Excel или подобных могут быть конвертированы в структуру Oracle Test Manager for Web Applications. В то же время тесты могут управляться в центральной панели, и использоваться заново бесконечное число раз (Рис. 5).


Рис 5 Управление тестами в центральной панели

Одновременно для более продвинутых QA-отделов предусмотрена возможность управления автоматическим тестированием от Oracle Functional Testing for Web Applications. Она также предоставляет те же ключевые преимущества, как и ручные тесты. Наконец, модуль "Tests" сам по себе может быть достаточно полезным для QA отдела для снижения расходов внедрения и обслуживания. Это такой хороший инструмент, что весь наш QA персонал может тратить весь рабочий день в Oracle Test Manager for Web Applications за своими ежедневными и долгосрочными задачами.

Вместе эти три ключевых модуля связаны и позволяют отслеживать все изменения между ними, что очень важно для организаций. Трассируемость, свойственная Oracle Test Manager for Web Applications, экономит нам дни, если не недели времени на каждый релиз. Позволяет вести процесс от А до Я.

Ручное против автоматического тестирования

Ещё один старый вопрос для нас, как QA организации: Мы используем автоматическое или ручное тестирование? Не является сюрпризом то, что нам приходится принимать те же самые решения, как и другим. Будет ли выгодно автоматизировать этот тип тестирования? Если да, то какой объем тестирования должны мы автоматизировать? Как мы должны правильно осуществлять автоматизацию звука? Количество вопросов бесконечно, и целая книга может быть написана на эту тему.

Одно из основных преимуществ автоматизированных тестов в постоянно повторяющихся сценариях тестирования в однородной и неизменной среде. Проще говоря, возвращение к предыдущему состоянию тестирования наиболее прост.

Мы тратим много времени на добавление новых возможностей и изменяя устаревшую функциональность. Поэтому мы должны иметь некий шанс автоматизировать кусочки приложения. По настоящему, ручное тестирование для нас крайне эффективно. Наши возможности часто меняются, приложение хорошо настраиваемое, а наш пользовательский интерфейс всегда улучшается. Поэтому мы всегда должны быть крайне требовательны к тому, что мы автоматизируем, чтобы не производить дополнительные работы. Проще говоря, мы разработали формальный процесс внедрения автоматизации на уровнях, которые дадут нам наибольшую пользу, т.к. наши QA-процессы были представлены много лет назад. Когда придёт время, мы спокойно внедрим полученные тесты на базовом уровне, что даст нам большую выгоду. Поскольку мы часто внедряем новые версии кода в наше QA-окружение, то накопленные тесты сильно помогут нам удалить низкоуровневые дефекты на корню, вместо того, чтобы ждать, пока тестировщик вручную протестирует пробему.

Как и все наши процессы, автоматизированное тестирование - это отличное средство поддержки, но оно не навязывает сам процесс и конечный результат. Используя Oracle Test Manager for Web Applications для управления выполнением автоматизированных тестов вкупе с другими модулями также, как и планирование запусков, помогает достигнуть именно того, что хотелось.

Отчётность перед руководством

В последней версии значительно улучшена функциональность отчётности Oracle Test Manager for Web Applications. Особенно интересна инструментальная панель отчётов. В предыдущих версиях мы использовали собственную корпоративную панель управлении (в виде еженедельных/ежемесячных метрик) для представления руководству и владельцам такие вещи, как состояние продукта, коэффициент устранения дефектов и тестирование/выявление принадлежности. Эти вопросы жизненно необходимы при покупке и для обоснования прогресса. И когда нужны частые отчёты, то не возникает проблем, чтобы создавать их.

Также новым и полезным свойством является возможность создания своих новых отчётов и публикация их для других. Различные члены нашей команды создают свои личные отчёты для отслеживания внутреннего прогресса, но при этом публикуют некоторые из них для других. Таким образом, эта информация всегда доступна. Это может быть огромным плюсом, т.к. нет необходимости в звонках, письмах или личных встречах только ради того, чтобы узнать состояние работы.

Стандартные отчёты в идеале также не должны повторяться. Мы используем данные отчёты в разных целях. Таких как: состояние процесса тестирования до готовности, статус решения возникших проблем для выведения конечных отчётов, а также необходимость в дополнительном трассировании. Модуль "Reporting" - это очередное полезное свойство, хорошо интегрированное в инструмент Oracle Test Manager for Web Applications.

Несколько полезных советов

У всех приложений всегда есть определенные комбинации клавиш и полезные детали, которые могут помочь управлять и поддерживать эффективность, а так же способствовать передаче знания в пределах группы. Вот некоторые из тех советов и уловок, которые я нашел за эти годы, используя Oracle Test Manager for Web Applications, основанные на том, как мы используем это в нашей организации.

Одно из самых больших преимуществ - это многократное использование произвольных полей в пределах трех основных модулей настолько часто насколько это возможно. Например, мы используем поле "Version" во всех трех модулях. Поскольку мы применяем новые версии кода в нашей среде тестирования по крайней мере раз в день, способность войти и обновить последнюю версию в одном центральном месте экономит нам время и гарантирует, что мы не делаем опечаток или ошибок. Естественно, правильные слежение за версиями помогает в отчётности и точности метрик.

Очень хороший инструмент, недавно включенный в Oracle Test Manager for Web Applications - это Screen Capture Utility. Замечательное приложение, которое может действительно ускорить время, чтобы включать скриншоты кадров графического интерфейса пользователя и ошибок. Использование Screen Capture Utility может упростить процесс ввода проблем или потребности включать кадры графического интерфейса пользователя для требований или тестирования. Это намного более эффективного, чем использование, чем использования старого метода сохранения снимка с помощью клавиши (PrtScn), и какого-нибудь общего инструмента, такого как Microsoft Paint, чтобы вставить, подрезать, и сохранить картинку. Другой интересный факт, который мы обнаружили, состоит в том, что не нужно отказываться от Oracle Test Manager for Web Applications для рабочего стола. Большое число усовершенствований Oracle Test Manager for Web Applications может быть задействовано, чтобы реализовать более современный интерфейс рабочего стола. Однако, есть несколько ключевых преимуществ, чтобы продолжить использование настольного интерфейса. В частности, перетаскивание. Работая над большими томами функциональных тестов и испытательных групп, какие у нас обрабатываются, способность организовать эти испытательные активы перетаскиванием экономит время, в сравнении с использованием кнопок left/right/up/down в веб-интерфейсе. То же самое преимущество существует для требований.

Последний, но от этого не мененнее важный совет - это удостовериться, что включены уникальные идентификаторы. В Tools > Options, убедитесь, что выбрали опцию, чтобы отобразить уникальные идентификаторы вместо того, чтобы использовать заданную по умолчанию сортировку индекса (Рис. 6). Поскольку вы реорганизовываете требования и тесты, заданная по умолчанию индексация может измениться, что может явиться реальной неприятностью, если контролируется трассируемость. Почему? Потому что значение индексации изменится, вследствие перемещения объекта. Использование уникальных идентификаторов поможет предупредить эту потенциальную проблему. Уникальный идентификатор будет следовать за объектом Oracle Test Manager for Web Applications и поддерживать идентификацию во время его движения. В опциях можно также управлять числом записей, которые появятся в одном узле.


Рис 6 Конфигурация для отображения Unique ID

Другое примечание об уникальных идентификаторах - это использование различных экземпляров базы данных при копировании проект. Почему? Если вы скопируете проект на той же самой базе данных, то уникальные идентификаторы, так сказать, перепрыгнут. Поскольку идентификаторы остаются уникальными, что имело обыкновение быть в Проекте A TEST100, теперь будет TEST500 в копии Проекта A. Это, очевидно, может создать петлю в поддержание непротиворечивой трассируемости. Чтобы избежать этого, скопируйте проект в новый и чистый экземпляр базы данных, где отображение идентификатора останется тем же самым. У копирования в пределах той же самой базы данных могут конечно быть свои преимущества в определенных ситуациях, но мы пришли к тому, что лучше использовать новый при копировании в Oracle Test Manager for Web Applications. После главного выпуска мы копируем проект испытательного менеджера в новую базу данных. После выпуска очередной версии продукта мы копируем проект менеджера тестирования в отдельную базу даны для архивирования и продолжаем.

Заключение

Oracle Test Manager for Web Applications предлагает Meridian относительно дешевое решение (особенно по сравнению с другими продавцами), который поддерживает почти все аспекты нашей разработки. Это - чрезвычайно низкие эксплуатационные расходы и легко управляемое приложение, поэтому мы можем больше положиться на его преимущества, и менее волнуясь о его зависимости. Важно отметить, что мы выбрали Oracle Test Manager for Web Applications как приложение для поддержки наших процессов после того, как они были идентифицированы и определены. Я полагаю, что, если бы вам надо было полностью изменить свое приложение и выбирать инструмент с нуля, ваша организация слишком легко может стать зависимой от решения, а процессы - слишком ограничительными и недостаточно гибкими, как и продукт.

В заключение, Oracle Test Manager for Web Applications - инструмент, который реализован в виде централизованного интерфейса, который помогает в принятии решений, в управлении производительностью и пропускной способностью знаний. Нет сомнения, что наша эффективность сильно повысилась без снижения мгновенной трассируемости и оптимизации тестов. Oracle Test Manager for Web Applications - жизнеспособное и надёжное решение, которое любая организация должна рассмотреть, чтобы поддерживать свои решения для организации жизненного цикла приложений.

Ссылки по теме


 Распечатать »
 Правила публикации »
  Написать редактору 
 Рекомендовать » Дата публикации: 25.03.2009 
 

Магазин программного обеспечения   WWW.ITSHOP.RU
Oracle Database Standard Edition 2 Named User Plus License
Oracle Database Personal Edition Named User Plus License
Oracle Database Standard Edition 2 Processor License
Oracle Database Personal Edition Named User Plus Software Update License & Support
ABViewer Standart пользовательская
 
Другие предложения...
 
Курсы обучения   WWW.ITSHOP.RU
 
Другие предложения...
 
Магазин сертификационных экзаменов   WWW.ITSHOP.RU
 
Другие предложения...
 
3D Принтеры | 3D Печать   WWW.ITSHOP.RU
 
Другие предложения...
 
Новости по теме
 
Рассылки Subscribe.ru
Информационные технологии: CASE, RAD, ERP, OLAP
Новости ITShop.ru - ПО, книги, документация, курсы обучения
Программирование на Microsoft Access
CASE-технологии
СУБД Oracle "с нуля"
Компьютерные книги. Рецензии и отзывы
Все о PHP и даже больше
 
Статьи по теме
 
Новинки каталога Download
 
Исходники
 
Документация
 
 



    
rambler's top100 Rambler's Top100