Роли в команде
Основные роли:
- Database Developer
- UI Designer
- Apex Developer
- QA Engineer
- Team Leader
- Integration Architect (может отсутствовать, если не требуется интеграция)
Дополнительная роль:
- Apex Administrator - не участвует в процессе разработки
Database Developer
Задачи:
- Разработка схемы данных
- Разработка пакетов-утилит в БД
Необходимые навыки/знания:
- проектирования баз данных
- опыт программирования на PL/SQL
UI Designer
Задачи:
- Разработка (и/или изменение) существующих тем
- Создание кастомных компонентов (и их документирование, например на Wiki)
- Интеграция с JavaScript-библиотеками (фреймворками)
- Создание необходимых JavaScript функций-утилит (например: для валидации ввода значений)
Необходимые навыки/знания:
- DHTML(HTML+JavaScript)
- CSS
- Понимание процесса генерации Apex-ом динамического HTML
Apex Developer
Задачи:
- Разработка интерфейса пользователя средствами Apex
- Использование кастомных компонентов и тем пользовательского интерфейса
- Использование JavaScript функций-утилит
- Использование пакетов-утилит в БД
Необходимые навыки/знания:
- DHTML(HTML+JavaScript) + Ajax
- Знание SQL и PL/SQL
- Понимание процесса разработки приложений на Apex
QA Engineer
Задачи:
- Функциональное тестирование приложения
- Тестирование приложения на производительность
Необходимые навыки/знания:
- Понимание процесса функционального тестирования
- Понимание принципов автотестов и опыт их использования в Web-ориентированной среде
Team Leader
Задачи:
- Разработка архитектуры приложения в соответствии с бизнес-требованиями
- Участие в основных этапах разработки и тестирования системы
- Планирование выпуска новых версий системы
Необходимые навыки/знания:
- Навыки ролей “Database Developer”, “Apex Developer”, “QA Engineer” и “UI Engineer”
- Мэппинг бизнес-требований на технологии и средства Apex и смежных технологий
- Понимание принципов управления проектами
Integration Architect (может отсутствовать, если не требуется интеграция)
Задачи:
- Разработка интеграционной архитектуры
Необходимые навыки/знания:
- Понимание основ и принципов SOA и SaaS
- Опыт интеграционных проектов:
- Интеграция на уровне бизнес-процессов
- Интеграция на основе сервисной шины
- Интеграция на уровне данных (федерат.хранилища данных)
- Интеграция на уровне пользовательского интерфейса
Apex Administrator
Задачи:
- Администрирование Apex-приложений:
- Оптимизация и мониторинг производительности
- Бэкап схемы БД и самого приложения
Необходимые навыки/знания:
- Навыки администратора СУБД Oracle
- Начальные знания Apex
Взаимодействие ролей
Пример: роли в команде из 3-х и 5-и человек
Из 3-х:
- Team Leader (Apex Developer, Database Developer, UI Designer, QA Engineer)
- Apex Developer + Database Developer
- Apex Developer + QA Engineer
Из 5-и:
- Team Leader (Apex Developer, Database Developer, UI Designer, QA Engineer)
- Database Developer + Apex Developer
- Apex Developer + Database Developer
- Apex Developer + QA Engineer
- Apex Developer + UI Designer