• Преимущесва регистрации
    Post
    Специальный цены, бонусы и подарки.
    Post
    История заказов, ваши данные, расширенные комментарии.
    Post
    Быстрый заказ с сохранением данных, доп. опции заказа.
EN / RU

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

Дата публикации: 2016-02-06 от torrison1 в Business Analysis and Data Store Project Management
Как описать задачу для автоматизации бизнес-процесса?

Описание бизнес-процессов (бизнес-инструментов)

 

1. Составьте список всех дел которые вы делаете или должна делать автоматическая система

2. Составьте список объектов и их разновидностей, которые участвуют в процессах

Желательно базовое понимание OOП, JSON, XML.

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

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

 

Необходимо понимание:

 

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

 

Функции по своей сути тоже объекты, только они умеют управлять другими объектами, а сами, без объектов теряют свой смысл

Функция должна иметь перечень объектов, с которыми она работает

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

Функции выполняются по очереди сверху вниз.

Функция может возвращать результат - объект.

Функция может сортировать вложенные объекты

 

Базовые возможности работы с объектами (операторы):

- Математические операции (+-*/, деление с остачей, процент, округление)

- Перебор вложенных объектов

- Сортировка вложенных элементов по атрибуту (ASC, DESC)

- Оператор: if, сравнение ==, наличие в строке другой строки, и логические операторы И, ИЛИ, НЕ (and, or, !).

 

Объекты и функции желательно называть так как они звучат в реальности, на английском языке. Для соединения слов использовать “_” (нижнее подчеркивание). Например: user_door_code

 

В случаях работы с cookie, когда вы хотите спрятать названия объектов, то сокращенное название можно писать в скобках. Например: user_door_code (ud1)

 

Также важна оптимизация. Чем меньше повторяющейся информации тем лучше. Например вместо объектов user_visitor, user_client_1order, user_client_manyorders, можно сделать просто объект user у которого будет аттрибут(свойство) user->orders_count (Значек “->” Указывает на вложенность в объект).

 

Почему так? Чем меньше есть виртуальных названий(посредников), тем меньше нужно тратить памяти мозга. Так что перед придумыванием любого нового названия, необходимо подумать, возможно оно не нужно.

 

Типовые объекты:

- Переменная (тип = {текст, число целое, с точкой, логическая})

- Клиент (тип_заказа={онлайн, звонок})

- Сотрудник (должность={оператор, старший смены, логист, управляющий}, занятость={inhouse, freelance})

- Компьютер (тип=”стационарный, ноутбук”)

- Мобильное устройство (тип=”планшет, smartphone”)

- Сервер

- Файл (тип={}, название={})

- Файлы на сервере (сервер={экипаж, дев})

- Шнур (тип={Ethernet, 220В})

- Точка доступа (маршрутизатор) (wifi={да, нет})

- Сеть

- Провайдер

- Интернет

 

- MAC-адрес

- IP-адрес

- URL

- HTTP запрос

- HTTP ответ

 

- Сайт (название={экипаж, тотоха...}, url={})

- База данных (название={экипаж, дев})

- Таблица в Базе Данных (название={заказы, скидки})

    - Поле таблицы (Столбец)

    - Ключевое поле таблицы (auto_increment)

    - Запись таблицы (Стока, row)

    - Таблица пользователей (users)

        - ID

- E-mail

        - Пароль

    - Таблица заказов (ekp_orders)

        - ID


 

- Интерфейс (платформа={web, iphone, android, Windows, Ubuntu})

- Обязательные элементы интерфейса

- Дизайн интерфейса

- Ссылка (href=ссылка, title=текст при наведении, открыть в новой вкладке={да, нет})

- Форма (Набор полей ввода, для отправки на сервер)

- Кнопка (Button)

- Текстовой поле (Input text) (автозаполнение={да, нет}, автозаполнение_список={обьект?}, placeholder={}, autocomplite(базовый) = {да, нет})

- Многострочное текстовое поле (TextArea)

- Выпадающий выбор (Select) (автозаполнение={да, нет}, автозаполнение_список={обьект?})

- Выбор нескольких элементов (MultiSelect) (автозаполнение={да, нет}, автозаполнение_список={обьект?})

- Блок (сролл={да, нет, вертикальный, горизонтальный})

- Картинка (путь)

- Текст (шрифт)

- Всплывающая подсказка alert()

- Всплывающее подтверждение confirm()

- Всплывающий блок

- Всплывающее окно браузера

- Google карта

- Yandex карта

 

- AJAX

- AJAX запрос

- AJAX ответ

- AJAX URL

- API

- API запрос

- API ответ

    - API URL

 

- JSON

- XML

- HTML

 

- Cookie

    Переменная Cookie (значение={})

- Сессия

    Объект Сессии (значение={})

- Файлы на сайте (В папке сайта, мы используем папку /files/)

 

Типовые функции:

- Запись в таблицу

- Редактирование записи в таблице

- Удаление записи в таблице

- сложное редактирование таблицы (тип={SQL запрос, SQL запрос и программный код})

- Отправка письма {тип=”обычный, HTML, mailerloop”}

- Нажатие на объект в интерфейсе

- Изменение объекта и его атрибутов  в интерфейсе

- Добавление, клонирование объекта

- Удаление элемента

- Кнопка из клавиатуре

- Фокус на объект, снятие фокуса

- Таймер {повторение={да, нет}}

- Редирект {url={}}

- Отправить AJAX запрос (нужен AJAX URL, возврат = AJAX ответ)

- Отправить API запрос (нужен API URL, возврат = API ответ)


 

Пример:

 

Этап 1 (Дизайн)

 

Создать интерфейс по URL http://site.com/add_user/

 

Создать объекты:

Форму, в ней создать 2 текстовых инпута, с базовым автокомплитом.

В плейсхолдерах инпутов соответственно: Имя, Пароль.

Блок для сообщений.

Кнопку с текстом - СОХРАНИТЬ.

 

Этап 2 (Программирование)

 

После утверждения дизайна.

 

При нажатии на СОХРАНИТЬ, создать функцию валидации (add_user_validation):

 

ЕСЛИ одно ИЛИ другое поле пустое, добавить сообщение: “Поле такое-то пустое, заполните его перед отправкой формы”

 

ЕСЛИ поле пароль НЕ содержит больших букв ИЛИ меньше 3 символов, то добавить сообщение “По правилам безопасности пароль должен быть не менее 3 символов и содержать хоть одну заглавную букву”

 

ИНАЧЕ Отправляем форму по AJAX на http://site.com/add_user_ajax/

 

Получаем ответ в JSON и проверяем его:

 

ЕСЛИ переменная в JSON status = ok. Записываем переменную user_id в сессию, потом будем ее использовать. Делаем редирект на http://site.com/

 

ИНАЧЕ добавить сообщение с причиной ошибки из переменной error, ответа JSON.

 

Этап 3 (Тестирование)

 

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

 

Этап 4 (Сдача работы)

 

После готовности показать CTO, COO и CEO, по их утверждению закрыть задачу.

 

Этап 5 (Маркетинг)

 

Оценить сколько времени ушло на разработку - это будет стоимость бизнес-инструмента

Оценить влияние инструмента на повышение прибыли компании - $ в месяц.

Если инструмент за 1 год отбился - это успешный инструмент. Если отбился на 30-100% тоже не плохо. Если менее 30% - это НЕУДАЧА.



 

Пример использования Стандартов или Шаблонов

 

Как было:

 

Этап 2 (Программирование)

 

После утверждения дизайна.

 

При нажатии на СОХРАНИТЬ, создать функцию валидации (add_user_validation):

 

ЕСЛИ одно ИЛИ другое поле пустое, добавить сообщение: “Поле такое-то пустое, заполните его перед отправкой формы”

 

ЕСЛИ поле пароль НЕ содержит больших букв ИЛИ меньше 3 символов, то добавить сообщение “По правилам безопасности пароль должен быть не менее 3 символов и содержать хоть одну заглавную букву”

 

ИНАЧЕ Отправляем форму по AJAX на http://site.com/add_user_ajax/

 

Получаем ответ в JSON и проверяем его:

 

ЕСЛИ переменная в JSON status = ok. Записываем переменную user_id в сессию, потом будем ее использовать. Делаем редирект на http://site.com/

 

ИНАЧЕ добавить сообщение с причиной ошибки из переменной error, ответа JSON.

 

Как можно сделать:

 

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

 

Стандарт №34 Создание простой формы регистрации:

 

Обязательные входные данные: Функция успешного ввода данных

 

Процесс:

 

Создать форму, в ней создать 2 поля и кнопку с названиями: E-mail, Пароль, Сохранить.

 

Создать блок для сообщения.

 

При нажатии на кнопку Сохранить, создать функцию валидации (add_user_validation):

 

ЕСЛИ одно ИЛИ другое поле пустое, изменить текст в блоке для сообщения: “Поле такое-то пустое, заполните его перед отправкой формы”

 

ЕСЛИ поле пароль НЕ содержит больших букв ИЛИ меньше 3 символов, то изменить текст в блоке для сообщения “По правилам безопасности пароль должен быть не менее 3 символов и содержать хоть одну заглавную букву”

 

ИНАЧЕ выполняем функцию успешного ввода данных

 

И вот сама задача теперь:

 

Этап 2 (Программирование)

 

Создаем форму по Стандарту №34 Создание простой формы регистрации.

Для формы функция успешного ввода данных:

Отправляем форму по AJAX на http://site.com/add_user_ajax/

 

Получаем ответ в JSON и проверяем его:

 

ЕСЛИ переменная в JSON status = ok. Записываем переменную user_id в сессию, потом будем ее использовать. Делаем редирект на http://site.com/

 

ИНАЧЕ добавить сообщение с причиной ошибки из переменной error, ответа JSON.


 

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

 

Еще пример описания в виде Эссе:

 

Страница Добавить друзей

 

На ней есть форма отправки списка друзей

 

У этой формы, есть функция отправить

 

При отправки уходит объект Письмо MailerLoop

 

В письме есть объект Реферальная ссылка

 

А ссылка ведет на главную и в объекте Главная

 

Есть обработка реферальной ссылки:

 

Если(IF) есть реферальная ссылка, то(THEN) записываем в COOKIE invitor_id

 

Далее в обьекте всплывающее окно Вход и Форма регистрации, есть функция отправки формы регистрации, если все поля введены верно.

 

В этой функции мы добавили:

 

Если COOKIE  invitor_id > 0 то сохраняем в поле user_parent_id таблицы users - это поле и будет идентификатором, что пользователь приглашенный.

 


Комментарии

Комментарии могут оставлять только зарегистрированные пользователи

Регистрация