Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Тестирование программного обеспечения. Фундамен...docx
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
935.81 Кб
Скачать

Глава 3: Типы тестов ... 53

Разработчик архитектуры (architect) определяет общую внутрен­нюю структуру кода и данных, принципы обмена данными меж­ду связанными программами и их совместного использования, а также стратегию разработки совместно и повторно используемых модулей. Разработчик архитектуры может также составлять план тестирования “стеклянного ящика” на самом верхнем уровне, анализировать технические обзоры всех спецификаций и разра­батывать тесты для приемки продукта (проверяющие соответ­ствие кода техническим требованиям).

Специалист по анализу предметной области (subject matter expert или software analyst) должен понимать, чего хотят пользователи и как это выразить в терминах, понятных программисту или другому разработчику.

Специалист по анализу человеческого фактора, или специалист по эргономике (human factor analyst или ergonomist), имеет психологи­ческое образование и знает, как спроектировать программу, что­бы она была полезной и удобной, и как тестировать продукт (или его прототип) на соответствие этим качествам. Некоторые из специалистов настолько хорошо разбираются в вопросах проек­тирования и программирования, что могут непосредственно раз­рабатывать пользовательский интерфейс программ. Впрочем, таких специалистов гораздо меньше, чем считающих себя тако­выми. Остальные же принимают участие в разработке пользова­тельского интерфейса совместно с программистами.

Программист пользовательского интерфейса (user interface programmer) специализируется на создании пользовательского интерфейса программ. Обычно это профессиональный програм­мист, который разбирается в оконной архитектуре и компьютер­ной графике, а в идеальном варианте еще и обладает знаниями в области когнитивной философии.

Пользовательский интерфейс — это, по сути, часть программы, предоставляющая пользователю информацию (в виде графики, текста, звука, в печатном виде и т.п.) и получающая от него от­ветные данные (через клавиатуру, мышь и другие устройства вво­да), которые затем передаются для обработки основной программе. Эту часть программы часто называют слоем представления и полу­чения данных. Именно ее и пишет программист пользовательско­го интерфейса.

В более широком смысле понятие пользовательского интерфей­са включает также содержание информации, которой пользова-

54 Часть I: Основы

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

Ведущие программисты (lead programmer) часто занимаются разра­боткой той части спецификации (технического задания), которая относится к внутренней структуре продукта. Во многих коман­дах, строящих работу по принципу консенсуса, программисты разрабатывают архитектуру продукта сами.

• Менеджер по маркетингу (product manager или product marketing manager) отвечает за соответствие продукта долгосрочной стратегии и имиджу своей компании, а также за маркетинговую деятельность, продолжающуюся после выпуска продукта (рекламу, выпуск и рас­пространение новых версий, обучение продавцов и дилеров). В боль­шинстве компаний менеджер по маркетингу отвечает также и за рентабельность продукта. Он определяет требования рынка, а также те функции и возможности, от которых зависит его конкурентоспо­собность. В определении набора функций продукта и оборудования, с которым он должен быть совместим, менеджер по маркетингу также играет самую активную роль.

• Представитель группы технической поддержки (technical support) — это член или руководитель группы, непосредственно контактирующей с пользователями. Сотрудники этой группы анализируют жалобы пользователей, отвечают на их вопросы и предоставляют им необ­ходимую информацию. На этапе создания продукта они участвуют в проектировании программы и разработке документации, стараясь сделать ее как можно понятнее и минимизировать количество звон­ков, на которые им потом придется отвечать.

• Технические писатели (writers) — это члены группы документирования (documentation group), разрабатывающие руководство пользователя и интерактивную справку. Их советы часто помогают сделать програм­му более простой и понятной.

• Тестировщики (testers) также считаются членами команды разработ­чиков.

• В разработке специфических проектов принимают участие и другие специалисты: по компьютерной графике, надежности, защите, аппа­ратному обеспечению, а также юристы, бухгалтера и т.д.