Скачать презентацию Техническая документация Иван Позняк Internal Training Введение Скачать презентацию Техническая документация Иван Позняк Internal Training Введение

Documentation_2010.pptx

  • Количество слайдов: 34

Техническая документация Иван Позняк Internal Training Техническая документация Иван Позняк Internal Training

Введение Документация – набор документов, используемых при проектировании, создании и эксплуатации программного обеспечения www. Введение Документация – набор документов, используемых при проектировании, создании и эксплуатации программного обеспечения www. itransition. com Page 2

Как используется Client Development www. itransition. com QA Page 3 Как используется Client Development www. itransition. com QA Page 3

Классификация Техническая документация Project Vision SAO (System Architecture Overview) SDD (System Design Document) API Классификация Техническая документация Project Vision SAO (System Architecture Overview) SDD (System Design Document) API documentation Deployment/Integration/Installation Guide Функциональная документация SRS (System Requirements Specification) QA документация Test cases www. itransition. com Page 4

 «За» и «Против» Плюсы Единый источник знаний на проекте Облегчает передачу знаний Специфицирует «За» и «Против» Плюсы Единый источник знаний на проекте Облегчает передачу знаний Специфицирует как должен работать конечный продукт Позволяет задуматься о проблемах до их появления Минусы Документацию нужно писать Документацию нужно поддерживать в актуальном состоянии www. itransition. com Page 5

Написание Нам нужны Правильный человек Правильный шаблон Время на написание документа Время на ревью Написание Нам нужны Правильный человек Правильный шаблон Время на написание документа Время на ревью документа Используем полученную документацию По необходимости обновляем Шаги 3 и 4 – могут повторяться несколько раз до получения результата нужного качества www. itransition. com Page 6

Шаблоны RUP http: //www. ts. mah. se/RUP/Rational. Unified. Process/word tmpl/index. htm Software Architecture Document Шаблоны RUP http: //www. ts. mah. se/RUP/Rational. Unified. Process/word tmpl/index. htm Software Architecture Document Примеры www. itransition. com Page 7

Место документации в разработке проекта Идея продукта Обработк а RFX Фаза анализа Начало разработ Место документации в разработке проекта Идея продукта Обработк а RFX Фаза анализа Начало разработ ки Разработка ПО Фаза приёмки ПО Эксплуатац ия ПО … www. itransition. com Page 8

Идея продукта Цель Выбрать компанию которая реализует проект Форма Документ либо иным образом оформленное Идея продукта Цель Выбрать компанию которая реализует проект Форма Документ либо иным образом оформленное видение будущей системы Наша реакция Создание RFX www. itransition. com Page 9

Обработка RFX Цель Получить контракт на разработку приложения Форма Proposal Technical Vision Functional Vision Обработка RFX Цель Получить контракт на разработку приложения Форма Proposal Technical Vision Functional Vision Cost $ Технический специалист Бизнес аналитик www. itransition. com Page 10

Technical Vision Ориентация - заказчик Что должно быть Обзор системы Топология системы Используемая платформа/технология Technical Vision Ориентация - заказчик Что должно быть Обзор системы Топология системы Используемая платформа/технология Ответственности отдельных частей Чего писать не стоит: Специфических технических вещей * www. itransition. com Page 11

Пример схемы для Technical Vision www. itransition. com Page 12 Пример схемы для Technical Vision www. itransition. com Page 12

Фаза 0 / Фаза анализа Цель Собрать требования по проекту Форма SRS Бизнес аналитик Фаза 0 / Фаза анализа Цель Собрать требования по проекту Форма SRS Бизнес аналитик www. itransition. com Page 13

Начало разработки * Цель Разработать архитектуру проекта, получить базу для его дальнейшего развития Форма Начало разработки * Цель Разработать архитектуру проекта, получить базу для его дальнейшего развития Форма SAO / SDD Code Технический специалист www. itransition. com Page 14

System Architecture Overview Ориентация – тех. специалисты, разработчики Один из часто пишущихся документов Чаще System Architecture Overview Ориентация – тех. специалисты, разработчики Один из часто пишущихся документов Чаще всего пишется до начала либо в начале процесса разработки Что должно быть Общее описание архитектуры Описание различных фич/механизмов Различные UML диаграммы www. itransition. com Page 15

Диаграммы последовательностей www. itransition. com Page 16 Диаграммы последовательностей www. itransition. com Page 16

Диаграммы классов www. itransition. com Page 17 Диаграммы классов www. itransition. com Page 17

System Design Document Ориентация – тех специалисты, разработчики Отличается от SAO более детальным и System Design Document Ориентация – тех специалисты, разработчики Отличается от SAO более детальным и глубоким рассмотрением отдельных частей системы Что должно быть Схемы Различные UML диаграммы Возможно примеры/отрывки кода www. itransition. com Page 18

Что писать в документации Введение Обзор системы Описание дизайна Архитектурные решения Архитектура системы Политики Что писать в документации Введение Обзор системы Описание дизайна Архитектурные решения Архитектура системы Политики и соглашения Детальное описание системы www. itransition. com Page 19

Введение Назначение документа Целевая аудитория для данного документа Ссылки на другие документы, prerequirements Важные Введение Назначение документа Целевая аудитория для данного документа Ссылки на другие документы, prerequirements Важные понятия и определения Соглашения по обозначениям в документе Краткое содержимое всего документа www. itransition. com Page 20

Обзор системы Здесь дается общий обзор разрабатываемого продукта, включая следующие пункты: Общая функциональность Базовые Обзор системы Здесь дается общий обзор разрабатываемого продукта, включая следующие пункты: Общая функциональность Базовые архитектурные решения Например 3 -tier architecture Назначение и ответственность отдельных частей приложения www. itransition. com Page 21

Описание дизайна: предположения Используемое/требуемое ПО/железо Операционная система Требования к пользователям системы Возможность дальнейшего изменения Описание дизайна: предположения Используемое/требуемое ПО/железо Операционная система Требования к пользователям системы Возможность дальнейшего изменения системы www. itransition. com Page 22

Описание дизайна: ограничения Требования по софту и железу Доступность различных ресурсов (Internet, printer и Описание дизайна: ограничения Требования по софту и железу Доступность различных ресурсов (Internet, printer и т. п. ) Совместимость со стандартами Требования по предоставляемым интерфейсам/используемым протоколам Требования к хранилищам данных (объемы данных и пр. ) Требования к системе безопасности Ограничения по используемой памяти и т. п. Требования по производительности Требования к качеству www. itransition. com Page 23

Описание дизайна: принципы Описываются основные принципы, которыми следует руководствоваться при разработке и проектировании архитектуры Описание дизайна: принципы Описываются основные принципы, которыми следует руководствоваться при разработке и проектировании архитектуры будущего приложения KISS (“keep it simple stupid!”) Упор на скорость/производительность в ущерб использованию памяти Внешний вид/принцип работы как у существующего приложения. . . Желательно пояснение по каждому принципу www. itransition. com Page 24

Архитектурные решения Выбор языка/платформы/библиотеки, повторное использование готовых компонент Возможности по расширению системы Обнаружение, обработка Архитектурные решения Выбор языка/платформы/библиотеки, повторное использование готовых компонент Возможности по расширению системы Обнаружение, обработка ошибок и восстановление после них Фреймворк для работы с базой данных/внешним хранилищем данных Механизмы синхронизации и параллельной обработки Механизмы коммуникации Использование внешних ресурсов www. itransition. com Page 25

Политики и соглашения Описываются те решения, которые не сильно влияют на высокоуровневую организацию, однако Политики и соглашения Описываются те решения, которые не сильно влияют на высокоуровневую организацию, однако влияют на детали реализации тех или иных механизмов Гайдлайны и соглашения Внутренний протокол общения между отдельными модулями Выбор отдельного алгоритма / паттерна программирования Интерфейсы предоставляемые внешним системам Организация кода по физической структуре каталогов и файлов www. itransition. com Page 26

Описание архитектуры системы Дается общее представление об архитектурном устройстве приложения Декомпозиция на компоненты Взаимодействие, Описание архитектуры системы Дается общее представление об архитектурном устройстве приложения Декомпозиция на компоненты Взаимодействие, роли и обязанности отдельных компонент Здесь же можно дать высокоуровневые описания различных подсистем/компонент www. itransition. com Page 27

Детальное описание системы Компонент (модуль, класс, библиотека, . . . ) Назначение, роли и Детальное описание системы Компонент (модуль, класс, библиотека, . . . ) Назначение, роли и обязанности Правила взаимодействия, ограничения Ресурсы, которые используются/управляются этим компонентом Сервисы/интерфейсы предоставляемые компонентом www. itransition. com Page 28

Общие рекомендации DRY (Don’t Repeat Yourself) Вещи, которые легко читаются из кода, можно оставить Общие рекомендации DRY (Don’t Repeat Yourself) Вещи, которые легко читаются из кода, можно оставить без внимания, сделав соответствующую ссылку Следует избегать дублирования, выносить общие вещи в отдельные секции/документы и ставить ссылки Желательно использовать больше диаграмм (классов, последовательностей) для демонстрации того как работает и устроена система [ здесь могла бы быть реклама тренинга по UML ] www. itransition. com Page 29

Фаза приёмки ПО Происходит валидация разработанного ПО на соответствие исходным требованиям и исправление найденных Фаза приёмки ПО Происходит валидация разработанного ПО на соответствие исходным требованиям и исправление найденных багов Активно участвуют практически все QA, заказчик, бизнес-аналитик и разработчики www. itransition. com Page 30

Различные гайды Ориентация – широкие массы Что должно быть Простое понятное изложение Пошаговые инструкции Различные гайды Ориентация – широкие массы Что должно быть Простое понятное изложение Пошаговые инструкции Проработка различных ситуаций/вариантов www. itransition. com Page 31

Фаза эксплуатации ПО Деньги заплатили, все довольны Для поддержки (фикса багов в гарантийный период) Фаза эксплуатации ПО Деньги заплатили, все довольны Для поддержки (фикса багов в гарантийный период) а также для дальнейшего развития функционала приложения может потребоваться API документация www. itransition. com Page 32

API Documentation Ориентация – разработчик Не забывать писать понятные комментарии Различные утилиты для генерации API Documentation Ориентация – разработчик Не забывать писать понятные комментарии Различные утилиты для генерации NDoc Sandcastle Javadoc Rdoc www. itransition. com

Page 33

Спасибо за внимание www. itransition. com Page 34 Спасибо за внимание www. itransition. com Page 34