Гост по разработке инструкции для программиста. Техническая документация. Когда требуется руководство программиста

Цели и задачи

Руководство программиста разрабатывают в трех случаях:

  1. программный продукт по своему основному назначению является средой разработки или библиотекой (как Delphi или Qt);
  2. комплекс или программный продукт служит платформой для разработки программ или систем определенного типа (как 1С или Axapta);
  3. программа распространяется вместе с исходным кодом или постоянно модифицируется самими разработчиками.

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

Очевидная задача руководства программиста - снабдить разработчика информацией, которой ему будет достаточно для создания на базе нашего программного продукта собственных программ или систем. Еще один мотив создания такого документа - потребность разработчиков время от времени фиксировать состояние продукта, чтобы самим в нем не запутаться и не плодить в коллективе носителей «сакральных знаний».

Руководство программиста должно объяснять:

  • Как устроен «мир», в который погружают разработчика. С какими объектами программист имеет дело, где они находятся, сколько времени существуют и как они взаимодействуют между собой. Какие из них он создает сам, а какие предоставлены ему изначально средой, фреймворком, библиотекой.
  • Какие еще средства разработки (кроме нашего программного продукта) необходимы для того, чтобы создать приложение или систему. Например, если наш программный продукт - это библиотека, то программисту потребуются компилятор (возможно, вполне определенный), какая-то среда разработки и прочий инструментарий.
  • В какой среде функционирует приложение или система? Какими будут его минимальные требования к системе? Понадобятся ли для его запуска какие-либо дополнительные программные средства: фреймворки, рантаймы, интерпретаторы.
  • Что представляет собой минимальное работоспособное приложение или минимальная работоспособная система. Какие объекты в какой последовательности необходимо создать, и как их друг с другом соединить, чтобы приложение вывело хотя бы «Hello World» . Правда, бывают приложения, которые вообще не выводят текста, а управляют доменной печью или трафиком в сетях, но у них все равно обязательно есть какой-то свой минимальный вывод.
  • Как (по шагам) скомпилировать работоспособное приложение или развернуть работоспособную систему.

Это основные вопросы, без ответов на которые программист не сможет нормально работать. Если не сообщить их ему в явном виде, он будет вынужден заняться исследованиями. Но есть еще много дополнительных: методика и техника отладки, стиль программирования и др.

Кроме теории руководство программиста должно содержать полные описания всех предусмотренных в программном продукте объектов. Если это функции, то должны быть приведены их синопсисы, если классы, то описания их интерфейсов и т. д.

Если программный продукт предполагает использование оригинального языка программирования и снабжен собственным компилятором или интерпретатором, в руководство программиста необходимо включить его описание. Однако, если оно получается достаточно объемным, его выносят в отдельный документ, который так и называется: описание языка (программирования).

Методика и стиль изложения

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

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

Основное требование при описании отдельных объектов - полнота описания каждого из них. В отличие от руководства пользователя, при составлении которого в принципе можно рассчитывать на догадливость читателя, который поглядит на интерфейс и сам разберется, руководство программиста описывает весьма неочевидные вещи. И хотя от программиста можно ожидать большей догадливости, чем от пользователя, восполнять недостаток информации ему придется анализом исходного текста, а если он доступен, то тестированием «черного ящика» и отладчиком. Это намного более долгий процесс, чем «блуждание» по меню и диалоговым окнам.

При описании объектов особое внимание следует уделять следующим аспектам:

  • Что обязательно должно предшествовать созданию и использованию объекта.
  • Каковы побочные эффекты обращения к объекту.
  • Особенности интерпретации объектом передаваемых ему данных.
  • Где «физически» (в каком файле, в какой библиотеке) находится объект.

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

  • создание объекта (если перед использованием его необходимо создать);
  • передачу объекту входных данных;
  • получение выходных данных и их интерпретацию.

Описания объектов можно вынести в отдельный том или документ под названием «Справочник программиста». Хорошая мысль - сделать его гипертекстовым.

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

Типовая структура

Структура руководства программиста, зафиксированная в ГОСТ 19.504-79 , такова:

  1. Назначение и условия применения программы.
  2. Характеристика программы.
  3. Обращение к программе.
  4. Входные и выходные данные.
  5. Сообщения.

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

Особенности

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

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

Примеры

АПК «Нострадамус». Руководство программиста

Аналитический программный комплекс «Нострадамус» предназначен для создания аналитических и отчетных банковских систем. Он содержит набор специализированных компонентов, из которых разработчик конструирует приложение в визуальной среде. Программный код в случае необходимости можно писать на языке Pascal (поэтому описание языка программирования не требуется). Программный комплекс разработан компанией «ПрограмБанк », а техническая документация «Философтом» по ее заказу. Кроме руководства программиста в комплект документации входит исчерпывающий справочник по всем компонентам АПК.

1. Общие сведения 1.1. Сокращения 1.2. Назначение 1.3. Функциональные возможности 1.4. Условия применения 1.5. Требования к квалификации разработчика 2. Прикладное решение и его компоненты 2.1. Архитектура АПК «Нострадамус». Понятие прикладного решения 2.2. Требования к прикладному решению 2.2.1. Базовые требования 2.2.2. Требования к входным данным 2.2.3. Требования к алгоритмам раcчета данных 2.2.4. Требования к отчетам и набору каждого из них 2.2.5. Требования к разграничению доступа и информационной безопасности 2.3. Компоненты прикладного решения 2.3.1. Структура базы данных 2.3.2. Загрузка исходных данных 2.3.3. Организация пользовательского интерфейса 2.3.4. Работа пользователя с данными 2.3.5. Обработка и расчет данных 2.3.6. Отображение данных 2.3.7. Средства автоматической загрузки и обработки данных. Системный агент 2.4. Разграничение прав доступа в прикладном решении 2.4.1. Роли пользователей 2.4.2. Профили пользователей 2.5. Жизненный цикл прикладного решения 3. Пример прикладного решения 3.1. Постановка задачи. Определение требований к прикладному решению 3.2. Проектирование прикладного решения 3.2.1. Проектирование структуры таблиц и процедур загрузки данных 3.2.2. Проектирование интерфейса пользователя 3.2.3. Проектирование процедур расчета и отчетов 3.3. Реализация прикладного решения 3.3.1. Авторизация в АПК «Нострадамус» 3.3.2. Создание категории решений 3.3.3. Создание таблиц 3.3.4. Создание процедур загрузки данных 3.3.5. Создание справочников и визуальных форм для них 3.3.6. Создание процедур расчета на языке хранимых процедур базы данных 3.3.7. Создание отчетов 3.3.8. Создание групп пользователей и создание главного меню для них 3.3.9. Создание процедуры автоматического обновления (загрузки) данных с помощью системного агента 3.4. Развертывание прикладного решения 3.5. Тестирование прикладного решения 3.6. Усложнение задачи 3.7. Доработка прикладного решения 3.7.1. Создание интерактивного отчета 3.7.2. Создание интерактивной загрузки 3.7.3. Финальный этап внесения доработок в прикладное решение

Система e-port дилер. Клиент-серверный протокол

Система «e-port дилер» предназначена для приема и проведения моментальных платежей при оплате услуг мобильной связи, доступа в Интернет и т. п. Центральный сервер системы принадлежит группе e-port, а пункт приема платежей может открыть любой желающий, установив у себя на компьютере (подключенном к Интернету) программу-клиент. Обмен данными между центральным сервером и программой-клиентом осуществляется по специальному протоколу. Протокол открытый, что позволяет различным организациям: банкам, розничным сетям, сетям платежных терминалов, осуществлять платежи непосредственно из собственных систем. Протокол разработан Группой e-port , а техническая документация «Философтом» по ее заказу.

Введение i. Система e-port дилер: клиент-серверный протокол. Назначение и обзор возможностей ii. Задачи протокола iii. Основные преимущества использования протокола 1. Реализация протокола (шлюз) 1.1. Общие сведения 1.2. Структура приложения 2. Как работает шлюз 2.1. Регистрация и отчетность 2.1.1. Регистрация 2.1.2. Отчетность 2.2. Обмен данными с сервером 2.2.1. Структура пакета 2.2.2. Справочники 2.2.3. Порядок обмена пакетами 2.3. Цикл обработки операции 2.3.1. Запрос операции 2.3.2. Очередь 2.3.3. Анализ ответа сервера 2.3.4. Нестандартные ситуации 3. Спецификация протокола 3.1. Структурные элементы пакета 3.2. Заголовок запроса 3.3. Заголовок ответа 3.4. Пополнение счета 3.5. Покупка PIN-кода 3.6. Прерывание процесса обработки операции 3.7. Транзакционные свойства операции 3.8. Запрос на проведение нескольких операций 3.9. Справочник 3.10. Статус операции 3.10.1. Примеры сообщений о статусе операций 3.10.2. Коды состояния находящихся в обработке или завершенных операций 3.11. Уведомления системы 4. Глоссарий Приложения Приложение 1. DTD XML-запроса и комментарий DTD XML-запроса Комментарий Приложение 2. DTD XML-ответа Приложение 3. Правила расчета суммовых полей Приложение 4. Примеры запросов и ответов сервера

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

Размещено на http://www.allbest.ru/

Руководство программиста

  • 1. Назначение и условия применения
  • 2. Характеристика программы
  • 3. Обращение к программе
  • 4. Полный перечень модулей и компонентов
  • 5. Сообщение пользователю

1 . Назначение и условия применения

Данный программный продукт может быть использован непосредственно для осуществления деятельности в организации «Проф&Элит», которая занимается установкой пластиковых конструкций, в том числе окон. программный пластиковый оконо

Программный продукт «Проф&Элит» служит для сбора информации о клиентах, сотрудниках, данных замеров для изготовления и производства изделий. Обеспечивает централизованное хранение данных. Продукт обладает простым и понятным интерфейсом, поэтому у пользователя не будет проблем в его освоении.

Проектирование данного программного продукта поможет автоматизировать работу менеджера по работе с дилерами.

Требования к аппаратному обеспечению:

· процессор Intel Pentium IV и выше;

· оперативная память 512 Мб и выше;

· видеокарта AGP/PCI Express 64 Мб и выше;

· свободное пространство на диске 12 Мб;

· видеомонитор с разрешением 1024x768;

· клавиатура;

· мышь;

· принтер для вывода на печать отчетов;

· операционная система Windows 98/2000/XP/Vista/7/8;

· Microsoft Access, Borland Delphi 7.

2 . Характеристика программы

В тестовом режиме был произведен запрос к форме ввода/вывода и введены данные в главную таблицу, что позволило оценить наглядно загруженность центрального процессора (ЦП) и использование выделенной (виртуальной) памяти с помощью «Диспетчера задач», как изображено на рис.Б.1 и рис.Б.2.

Рис.Б.2- Выделенная память и время загрузки

3 . Обращение к программе

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

Запустить данную программу можно непосредственно через оболочку Delphi. Для этого требуется открыть файл проекта Project1.dbr, находящемся в каталоге с программой. Далее, нажав F9, скомпилировать и запустить приложение.

Возможен запуск программы через командную строку. Запустить командную строку «Пуск/Все программы/Стандартные/Командная строка» Далее в командной строке необходимо ввести полный путь к программе, далее написать название программы (Project1.exe) и нажать Enter. Программа запущена.

Еще один способ запуска программы: в меню «Пуск» выберите пункт «Выполнить». В результате на экране откроется окно «Выполнение программы». В поле «Открыть» окна «Выполнение программы» введите путь к файлу программы, которую требуется запустить.

Выход из приложения возможен при нажатии на кнопку «Закрыть» или с помощью пункта меню программы «Файл/Выход», а также можно воспользоваться сочетанием клавиш Alt+F4.

4 . Полный перечень модулей и компонентов

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

В состав данного программного продукта входят следующие модули:

Unit1.pas - главный модуль программы, где непосредственно происходит заполнение данных по заказам;

Unit2.pas - отправка заказа дилеру (дилерский терминал);

Unit3.pas - модуль программы, где происходит заполнение данных по замерам изделия (окна);

Unit4.pas - модуль программы, где происходит заполнение данных по установке изделия (окна);

Unit5.pas - поиск, фильтрация, сортировка по заказам;

Unit6.pas - модуль «О программе».

В главной форме имеются компоненты, изображенные на рис.Б.3. На рисунке также изображено «дерево» всех компонентов формы (рис. Б.4).

Рисунок Б.3 - Компоненты главной формы

Компоненты главной формы:

TADOConnection - используется для указания базы данных и работы транзакциями;

TADOTable - таблица доступная через ADO;

DataSource обеспечивает механизм для связи компонентов доступа к данным (Table) с визуальными компонентами, которые отображают данные (DBGrid, DBEdit, DBListBox и т. д.)

TADOQuery - выполняет запрос (выборку) к базе данных;

TMainMenu - создает главное меню программы;

TDBGrid - осуществляет отображение данных из базы данных в виде таблицы;

TEdit - поле для ввода текстовых сообщений;

TButton - кнопка;

TComboBox - выпадающий список;

TDBCtrlGrid - используется для отображения таблицы в виде «кирпичиков»;

TLabel - надписи;

TGroupBox - панель, как отельный элемент с другими компонентами;

TDBNavigator - компонент для управления навигацией и редактированием данных;

TDBEdit - поле редактирования записи базы данных;

TDateTimePicker - выбор даты;

TSpeedButton - быстрая кнопка;

TBitBtn - кнопка, передающая действие форме;

TBevel - предназначен в приложении для простого обведения чего-либо рамкой.

Компоненты главной формы необходимы для вывода таблиц из базы данных, для изменения, добавления, удаления, фильтрации, поиска, перехода к другим форм и для иных действий.

Рисунок Б.4 - Структура компонентов

5 . Сообщение пользователю

Если пользователь ввёл неверные значения для фильтрации данных базы данных, то выводится сообщение, показанное на рис.Б.5.

Рис.Б.5 - Сообщение об ошибке

Если произошла ошибка при удалении данных, то выводиться сообщение об ошибке, показанное на рис.Б.6.

программный пластиковый окно

Рис.Б.6 - Сообщение об ошибке.

Пользователь забыл ввести номер накладной при сохранении заказа, то выводиться сообщение об ошибке, показанное на рис.Б.7.

Рис.Б.7 - Сообщение о ошибке

При попытке удаления выводится сообщение, показанное на рис.Б.8.

Рис.Б.8 - Диалог с пользователем

Если пользователь ввёл уже номер существующей накладной при сохранении заказа, выводится сообщение, показанное на рис.Б.9.

Рис.Б.9 - Диалог с пользователем

Размещено на Allbest.ru

...

Подобные документы

    Создание классов, реализующих работу со списками и применение их к задаче построения графических моделей. Использование языка С++ для реализации списковой структуры. Назначение и условия применения программы. Руководство для программиста и оператора.

    курсовая работа , добавлен 19.03.2010

    Использование основных свойств объектно-ориентированного языка программирования C ++ при написании программы по реализации списка футболистов разных амплуа. Руководство пользователя и руководство программиста. Работа со списком, программный интерфейс.

    курсовая работа , добавлен 20.07.2014

    Описание входной и выходной информации. Требования к комплексу технических средств и к интерфейсу конечного пользователя. Разработка форм представления входных и выходных данных. Проектирование программных модулей. Руководство пользователя и программиста.

    курсовая работа , добавлен 27.06.2015

    Особенности алгоритмов, критерии качества. Создание и применение программного продукта на языке Delphi. Тип операционной системы. Внутренняя структура программного продукта. Руководство пользователя и программиста, расчет себестоимости и цены программы.

    дипломная работа , добавлен 12.06.2009

    Delphi как программный продукт с феноменальными характеристиками. Компилятор в машинный код. Объектно-ориентированная модель программных компонентов. Масштабируемые средства для построения баз данных. Программный код.

    контрольная работа , добавлен 30.07.2007

    Разработка структурной схемы и интерфейса программного комплекса управления сайтом. Выбор языка программирования. Принципы тестирования программы. Разработка руководства оператора и системного программиста. Расчет сметы затрат на программный продукт.

    дипломная работа , добавлен 11.06.2012

    Назначение и область применения промышленных роботов. Разработка программы "Кинематическое движение" в среде Delphi для определения основных параметров кинематического движения. Описание работы и листинг программы. Руководство программиста и оператора.

    курсовая работа , добавлен 17.11.2014

    Техническое задание. Планы работы: первоначальный, поэтапный. Технический проект. Таблицы базы данных программы. Схема обмена данными. Тестирование программного продукта. Эксплуатационная документация. Руководство программиста. Руководство пользователя.

    курсовая работа , добавлен 07.12.2007

    Создание программного продукта по теме "Назначение и основные свойства палитры компонентов "Standard"", тестирующего знания студентов, в среде языка программирования Delphi. Особенности методики осуществления контроля знаний и состав тестовых заданий.

    курсовая работа , добавлен 17.04.2011

    Разработка программы на языке Visual Basic. Спецификация на программный модуль. Ввод, изменение и удаление данных по определенным требованиям. Руководство системного программиста, программиста и оператора. Ведение базы данных в виде таблицы Excel.

Г О С У Д А Р С Т В Е Н Н Ы Й С Т А Н Д А Р Т С О Ю З А С С Р

Единая система программной документации

Гост 19.504-79

(СТ СЭВ 2095-80)

Руководство программиста. требования к содержанию и оформлению

United system for program documentation.
Programmer"s guide. Requirements to contents and form of presentation

Постановлением Государственного комитета стандартов Совета Министров СССР от 12 января 1979 г. ¹ 74 срок введения установлен

с 01.01. 1980 г.

Настоящий стандарт устанавливает требования к содержанию и оформлению программного документа «Руководство программиста», определённого ГОСТ 19.101-77 .

Стандарт полностью соответствует СТ СЭВ 2095-80.

1. общие положения

1.1. Структуру и оформление документа устанавливают в соответствии с ГОСТ 19.105-78 .

Составление информационной части (аннотации и содержания) является обязательным.

1.2. Руководство программиста должно содержать следующие разделы:

  • назначение и условия применения программ;
  • характеристика программы;
  • обращение к программе;
  • входные и выходные данные;
  • сообщения.

В зависимости от особенностей документы допускается объединять отдельные разделы или вводить новые.

2.1. В разделе «Назначение и условия применения программ» должны быть указаны назначение и функции, выполняемые программой, условия, необходимые для выполнения программы (объем оперативной памяти, требования к составу и параметрам периферийных устройств, требования к программного обеспечению и т.п.).

2.2. В разделе «Характеристика программы» должно быть приведено описание основных характеристик и особенностей программы (временные характеристики, режим работы, средства контроля правильности выполнения и самовосстанавливаемости программы и т.п.).

2.3. В разделе «Обращение к программе» должно быть приведено описание процедур вызова программы (способы передачи управления и параметров данных и др.).

2.4. В разделе «Входные и выходные данные» должно быть приведено описание организации используемой входной и выходной информации и, при необходимости, ее кодирования.

2.5. В разделе «Сообщения» должны быть указаны тексты сообщений, выдаваемых программисту или оператору в ходе выполнения программы, описание их содержания и действий, которые необходимо предпринять по этим сообщениям.

2.6. В приложении к руководству программиста могут быть приведены дополнительные материалы (примеры, иллюстрации, таблицы, графики и т.п.).

* Переиздание (Ноябрь 1987 г.) с Изменением № 1, утвержденным в сентябре 1981 г (ИУС 11-81)

УФИМСКИЙ ГОСУДАРСТВЕННЫЙ АВИАЦИОННЫЙ ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ

КАФЕДРА ВЫЧИСЛИТЕЛЬНОЙ МАТЕМАТИКИ И КИБЕРНЕТИКИ

Прикладное программное обеспечение для учета заявок и контроля их исполнения на примере ООО «Интегрированная транспортная сеть».

      1. Руководство программиста

  1. Аннотация

Приводится руководство программиста программного обеспечения для учета заявок и контроля их исполнения на примере ООО «Интегрированная транспортная сеть».

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

В руководстве программиста рассматриваются назначение, характеристики, условия, необходимые для выполнения программы

  1. Назначение программы

Программный продукт будет использован в компании NetTrans (ООО «Интегрированная транспортная сеть») в отделах технической поддержки, абонентском и строительства как модель взаимодействия, полагающая, что центром всей философии бизнеса является клиент, а основными направлениями деятельности являются меры по поддержке продаж и обслуживания клиентов. Данным программным обеспечением могут воспользоваться лишь зарегистрированные пользователи, регистрация в свою очередь осуществляет лишь администратор, путем добавления нового пользователя в базу данных, так же имеется возможность вести статистику операторов, составляющие заявки абонентов.

  1. 2. Условия, необходимые для выполнения программы

Для работы программного продукта необходима следующая программно-аппаратная конфигурация:

    Windows 7,Windows Server 2003 Service Pack 2,Windows Server 2008,Windows Server 2008 R2,Windows Vista, Windows Vista Service Pack 1,Windows XP Service Pack 2,Windows XP Service Pack 3;

    32-разрядные системы: компьютер, оборудованный процессором Intel или совместимым процессором с тактовой частотой 1 ГГц или выше (рекомендуется 2 ГГц или выше, поддерживается только один процессор);

    64-разрядные системы: процессор с тактовой частотой 1,4 ГГц или выше (рекомендуется 2 ГГц или выше, поддерживается только один процессор);

    1 ГБ свободного места на диске;

    наличие СУБД: MS SQL 2008;

  1. 3. Характеристики программы

  2. 3.1. Режим работы программы

Диалоговый. Web-интерфейс в браузере (с поддержкой HTML5).

    3.2.Средства проверки правильности выполнения программы

Проверка правильности работы программы осуществляется при выполнении конкретных примеров. Программа выдает сообщение при вводе некорректных данных (Рис. 2.20):

Рис. 2.20. Некорректный ввод номера телефона

    3.3. Функционирование программы после сбоев

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

      Обращение к программе

Для запуска программы необходимо выполнить следующие действия:

    Запустить программу на ПК, с поддержкой Microsoft .NET Framework (или на удаленном сервере), если он еще не запущен;

    Откройте ваш любимый браузер (на пример chrome, internet explorer, mozilla firefox);

    Введите в адресную строку IP-адрес сервера, с заранее определенным портом;

    Откроется страница домашняя страница;

    Начать работу с клиентами.

Вверх