Введение
Условия развития современного мира, сопровождающиеся ростом потока информации и количества предоставляемых услуг, оказывают существенное влияние на внедрение информационных технологий во все сферы жизнедеятельности человека.
Важнейшей областью в современном обществе является сфера здравоохранения. Увеличение динамики заболеваний среди населения, сопровождающееся ростом ко-личества пациентов, способно затруднить деятельность медицинских учреждений и их сотрудников.
В связи с чем, возникает необходимость создания медицинской информационной системы, способной повысить качество медицинского обслуживания и минимизировать риск возникновения врачебной ошибки, путем систематизации данных и автоматизации процессов. Наличие вышеприведенных проблем в медицинских учреждениях является доказательством актуальности представленной в данной работе темы.
Цель и задачи
Целью данной работы является автоматизация на основе методологии Agile Kanban следующих ключевых бизнес процессов: назначить диагностику, расшифровать результаты диагностики и составить курс терапии. Особенность работы состоит в разработке программного обеспечения, которое будет способно обеспечить выполнение ключевых бизнес-процессов:
- автоматически выбрать необходимую диагностику, сформированную на ос-нове жалоб пациента;
- автоматически расшифровать результаты диагностики и вывести на экран сообщения «Норма» или «Отклонение»;
- сформировать курс терапии с учетом диагноза и возраста пациента.
Для достижения вышеуказанной цели, необходимо реализовать ряд следующих задач:
- детально проанализировать методологию внедрения Agile Kanban;
- идентифицировать и приоритизовать требования;
- спроектировать процессы и оргструктуру в моделях AS-IS и TO-BE на базе нотации UML Activity Diagram до 3-го уровня детализации;
- смоделировать разрабатываемые пользовательские формы;
- спроектировать структуру данных и нормализовать таблицы данных;
- реализовать ключевые бизнес-процессы в среде MS Access.
1. Детальный анализ методологии внедрения Agile Kanban
1.1 Гибкая методология разработки Agile
Методология разработки Agile – это комплекс «гибких» подходов к разработке программного обеспечения. Главные принципы методологии были отображены в Манифесте Agile (Agile Manifesto), принятом в феврале 2001 года. Данный документ провозглашает двенадцать наиболее значимых принципов создания программного обеспечения (ПО) [1]. Четыре из них являются основополагающими и звучат следующим образом:
- Люди и коммуникация превыше процессов и инструментов.
- Рабочий продукт превыше полной документации.
- Взаимодействие с клиентом превыше согласования условий договора.
- Готовность адаптироваться к переменам превыше следования первичному плану.
Специфика методологии Agile состоит в итеративности применяемых в процессе создания ПО подходов. Исходя из сказанного, планирование на высшем уровне осуществляется в отношении всего цикла реализации проекта, после чего весь цикл разработки делится на итерации – последовательность этапов, в процессе которых планомерно разрабатывается и тестируется программное обеспечение. Итогом завершения итерации является инкремент, посредством которого расширяются возможности создаваемого программного обеспечения.
Основное преимущество данной методологии состоит в максимальном снижении рисков, поскольку на каждой итерации процесс создания программного обеспечения контролируется заказчиком, который может одобрить полученные результаты, внести новые запросы или изменить существующие.
1.2 Подход Kanban
Одним из фреймворков методологии Agile является подход Kanban. Kanban при-меняет итеративный подход к созданию программного обеспечения и оперативную адаптацию к изменениям в ходе создания продукта. Специфика подхода заключается в том, что ее можно описать выражением «начните с того, что вы делаете сейчас» [2]. Основными принципами подхода Kanban являются [3]:
- Kanban основывается на действующих подходах к созданию продукта и по ходу осуществления оптимизирует, дополняет и совершенствует их.
- Осуществление значимых преобразований оговаривается заблаговременно: непрерывные преобразования являются путем к оптимизации действующего процесса создания программного обеспечения, при этом кардинальные трансформации кроют в себе немалые риски.
- Почтительное отношение к установленным правилам, ролям и выполняемым обязанностям.
- Стимулирование инициативы.
1.3 Использование подхода Kanban
Для того, чтобы внедрить подход Kanban в процесс разработки программного обеспечения, необходимо соблюдение особых правил, называемых практиками. Ос-новными являются следующие практики [4]:
- визуализация процесса разработки;
- ограничение количества одновременно выполняемых задач;
- измерение и регулирование потока.
В Kanban применяется процедура визуального мониторинга осуществления ста-дий процесса разработки [5]. Главным средством визуализации служит Канбан-доска, необходимая для того, чтобы продемонстрировать команде, на каком этапе находится реализация каждой промежуточной цели, из которых затем складывается весь проект в целом. Доска расчерчена и поделена на столбцы, которые отображают этапы процесса разработки программного обеспечения. Карточки, содержащие задачи, передвигаются по этим столбцам по ходу реализации проекта. На рисунке 1.1 приведен пример Kanban доски, применяемой в процессе разработки программного обеспечения.
Рис. 1.1. Пример Kanban доски
Для того чтобы использование подхода приносило ожидаемый результат, важно производить постоянный мониторинг, сокращение и оптимизацию незавершенной работы [2]. Соблюдение ограничения, позволяет сделать процесс разработки вытягивающим, в котором работа над новыми элементами начинается только по завершении предыдущих задач, что соответствует принципу «Точно в срок».
Полный текст статьи: https://corpinfosys.ru/archive/2021/issue-15/180-2021-15-agilekanban