<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Электронный научно-практический журнал «Современная техника и технологии» &#187; application software</title>
	<atom:link href="http://technology.snauka.ru/tags/application-software/feed" rel="self" type="application/rss+xml" />
	<link>https://technology.snauka.ru</link>
	<description></description>
	<lastBuildDate>Fri, 30 Jan 2026 18:56:12 +0000</lastBuildDate>
	<language>ru</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.2.1</generator>
		<item>
		<title>Проектирование автоматизированного рабочего места врача-терапевта санатория</title>
		<link>https://technology.snauka.ru/2014/11/4881</link>
		<comments>https://technology.snauka.ru/2014/11/4881#comments</comments>
		<pubDate>Fri, 21 Nov 2014 13:38:28 +0000</pubDate>
		<dc:creator>Заргарян Елена Валерьевна</dc:creator>
				<category><![CDATA[Общая рубрика]]></category>
		<category><![CDATA[application software]]></category>
		<category><![CDATA[Automated workplace physician]]></category>
		<category><![CDATA[design tools.]]></category>
		<category><![CDATA[Power Designer]]></category>
		<category><![CDATA[requirements specification]]></category>
		<category><![CDATA[Автоматизированное рабочее место врача]]></category>
		<category><![CDATA[программное приложение]]></category>
		<category><![CDATA[средства проектирования]]></category>
		<category><![CDATA[техническое задание]]></category>

		<guid isPermaLink="false">https://technology.snauka.ru/?p=4881</guid>
		<description><![CDATA[Введение. Эффективность функционирования предприятия или организации любой отрасли и сферы деятельности напрямую зависит от скорости, точности и своевременности обмена данными как внутри этого предприятия между его составляющими частями (отделами, подсистемами и т.д.), так и вне его, то есть взаимодействие и обмен данными этой организации с другими (конкурирующими, предприятиями-партнерами и т.д.). И чем больше, масштабнее предприятие, [...]]]></description>
			<content:encoded><![CDATA[<p><strong>Введение.</strong> Эффективность функционирования предприятия или организации любой отрасли и сферы деятельности напрямую зависит от скорости, точности и своевременности обмена данными как внутри этого предприятия между его составляющими частями (отделами, подсистемами и т.д.), так и вне его, то есть взаимодействие и обмен данными этой организации с другими (конкурирующими, предприятиями-партнерами и т.д.). И чем больше, масштабнее предприятие, тем серьезнее перед его управляющими встает проблема организации и контроля потоков огромного количества информации предприятия [1].</p>
<p>Для качественного решения таких проблем на предприятиях используются автоматизированные системы управления (АСУ).</p>
<p><strong>Целью данной статьи</strong> является освещение разработанного программного приложения для обеспечения деятельности санатория, в частности разработка автоматизированного рабочего места врача &#8211; терапевта.</p>
<p>Актуальность данного программного приложения обуславливается необходимостью:</p>
<p>1. Ведения сбора сведений и оценки результатов оказания медицинской помощи, необходимых для эффективного лечения, профилактики и реабилитации;</p>
<p>2. Сокращения сроков ожидания медицинской помощи за счет управления потоками пациентов, предоставления данных о загрузке врачей, доступности ресурсов в реальном времени;</p>
<p>3. Сокращения затрат на лечебно-профилактический процесс;</p>
<p>4. Повышения оперативности доступа к информации: вся медицинская информация о пациенте, результатах профилактической и лечебно-диагностической работы, включая результаты исследований, доступна врачу с рабочего места, в реальном времени;</p>
<p>5. Обеспечения врача необходимыми информационными ресурсами: непосредственно в процессе оказания медицинской помощи врач имеет доступ к актуальным данным.</p>
<p>При создании программного приложения были проанализированы следующие средства реализации [2]:</p>
<p>1. Power Designer, которые поддерживает средства построения моделей и диаграмм, методологию UML, CDM, PDM и возможности хранилищ данных. Данное программное приложение поддерживает возможности командной разработки</p>
<p>2. Oracle – мощная и устойчивая СУБД, работающая под управлением различных операционных систем, включая Windows 98, Windows 2000/XP, несколько вариантов Unix. Она является одной из самых популярных СУБД в мире и имеет длительную историю разработки и использования. Значительная часть технологии Oracle открыта для разработчика, что обеспечивает большую гибкость при ее конфигурировании и настройке.</p>
<p>Однако все это означает, что Oracle может быть не простой в установке, и для работы с ней необходимо многому научиться. Более того, методики, которые работают в версии Oracle, предназначенные для одной операционной системы, могут потребовать модификации в версии для другой операционной системы.</p>
<p>Существует много конфигураций программного пакета Oracle. Во-первых, существует две различные версии ядра СУБД Oracle: для индивидуального пользования и для организаций. Кроме того, имеется программа для разработки форм и отчетов, программа Oracle Designer и множество средств для публикации баз данных Oracle в WEB. [1]</p>
<p>3. SQL Navigator &#8211; самая популярная среда разработки под Oracle , предоставляющая широкие возможности по написанию, настройке и отладке библиотек PL/SQL, включающая встроенную экспертную систему и систему подсказок.</p>
<p>4. Delphi &#8211; является средой визуального проектирования, что позволяет быстро и качественно создавать программы в коллективе на производстве, значительно снизить затраты времени на подготовку приложений, а также согласовать деятельность группы поставщиков, кодировщиков, тестеров и технических писателей. Ещё одним достоинством Delphi является её межплатформенность, т.е. возможность компиляции Windows-приложений в формат Kylix для Linux.</p>
<p><strong>Анализ технического задания. </strong>В общем случае средства программной поддержки врача терапевта можно представить совокупностью трех автоматизированных рабочих мест (АРМов):</p>
<p>- АРМ «Регистратура»</p>
<p>- АРМ «Врач-терапевт»</p>
<p>- АРМ «Администратор»</p>
<p><strong>АРМ «Врача-терапевта»</strong></p>
<p>Рассматривая работу врача &#8211; терапевта в общем случае, можно отметить, что к нему поступает пациент с карточкой и, возможно, результатами дополнительного диагностического обследования, а основной его задачей является выработка схемы лечения пациента, в которую могут войти различные процедуры, медикаментозная терапия, посещение узких специалистов и т.д. Врач терапевт должен разобраться в проблемах пациента, определить в какой стадии находится то или иное заболевание и решить, что делать пациенту для улучшения своего самочувствия. Всю работу по подготовке принятия решения можно разбить на несколько этапов: описание состояния пациента, клиническое обследование, постановка диагнозов, определение целей терапии, постановка критериев достижения целей терапии, анализ состояния пациента и синтез схемы лечения на основе полученной информации. Интерфейс врача терапевта должен быть построен в соответствии с приведенной схемой. Основной формой АРМа должна быть <em>форма отображения пациентов</em>, которые проходят лечение у данного врача и их посещений к врачу. Посещения могут быть нескольких типов: первичный прием, повторный прием, профилактическая консультация. Для каждого типа посещения в АРМе врача — терапевта должен выбираться свой инструментарий для работы с пациентом. У формы отображения пациентов должны быть те же возможности по поиску и фильтрации соответствующих записей, что и у формы отображения АРМа регистратора. Для боле тонкой классификации типов посещения пациентов должно быть введено понятие — цель посещения. Так, например, Кроме того, в идентификаторах списка должно быть поле даты следующего прихода пациента. Форма приема пациента должна быть организована в виде соответствующего мастера, который представляет работу в логической последовательности. На первом этапе мастера регистрируются жалобы пациента, анамнез заболевания пациента, анамнез жизни пациента, аллергологический анамнез, проводится опрос по органам и системам. Если до приема врачом пациент прошел диагностирующую процедуру, которая каким — либо образом исключает заболевания некоторых органов и систем, то опрос стоит сократить, для экономии времени врача. Кроме того, на первом этапе работы мастера имеется возможность провести диагностическую процедуру в рамках АРМ «Дополнительная диагностика». При приеме пациента, с целью узнать его состояние опрос следует начинать с <em>регистрации жалоб</em> пациента. Необходимо узнать:</p>
<p>1. На что жалуется больной.</p>
<p>2. Точная локализация болезненных явлений.</p>
<p>3. Иррадиация боли.</p>
<p>4. Время появления (днем/ночью)</p>
<p>5. Факторы, вызывающие болезненные ощущения (физическое или психическое напряжение, прием пищи и т.р.).</p>
<p>6. Характер болезненного ощущения, например характер боли: сжимающий, колющий, жгучий, постоянный, приступообразный и т.д. , а также его интенсивность, продолжительность</p>
<p>7. Чем купируется болезненное явление</p>
<p>8. Поведение больного, вынужденное положение больного, облегчающие болезненные ощущения.</p>
<p>Каждую жалобу необходимо классифицировать по принадлежности к той или иной системе организма. После этого необходимо провести детализированный опрос пациента по тем органам и системам, которые упоминались на этапе регистрации жалоб. В процессе детализации рассматриваются следующие органы и системы:</p>
<p>После регистрации жалоб и детализации по пораженным органам и системам подробно в хронологической последовательности описывается возникновение, развитие и течение настоящего заболевания от первых его проявлений до момента обследования его терапевтом (описание анамнеза заболевания). Описание может свестись к опросу по следующей схеме:</p>
<p>1. В течение, какого времени считает себя больным?</p>
<p>2. Где и при каких обстоятельствах заболел впервые?</p>
<p>3. Факторы, способствующие началу заболевания</p>
<p>4. С каких признаков началось заболевание?</p>
<p>5. Первое обращение к врачу, результаты проводившихся исследований, диагноз заболевания, лечение в тот период, его эффективность.</p>
<p>6. Последующее течение заболевания</p>
<p>Вторым этапом работы мастера проведения приема пациента, является клинический осмотр, проводящийся врачом &#8211; терапевтом. В рамках клинического осмотра врач проводит внешний осмотр пациента, пальпацию, перкуссию, аускультацию, с целью определения состояния различных органов и систем, съем ЧП, съем АД, замер роста, определение массы тела. Информация о результатах каждого вида осмотра регистрируется врачом в соответствующих полях мастера проведения осмотра.</p>
<p>На третьем этапе работы мастера проводится внесение диагноза, поставленного врачом пациенту. Вносится основной диагноз, определяется, находится ли заболевание в ремиссии или в обострении, вносятся сопутствующие диагнозы, для них так же определяется то состояние, в котором они находятся. После установки диагнозов и определения течений заболеваний врач может принять на себя обязательства по лечению соответствующего заболевания, либо направить пациента к узкому специалисту.</p>
<p><strong>АРМ «Администратор»</strong></p>
<p>На уровне АРМа «Администратор» осуществляются следующие виды работ:</p>
<p>- конфигурирование клиники;</p>
<p>- настройка АРМов;</p>
<p>- настройка справочников.</p>
<p><strong>Анализ аналогичных программных систем. «АИС «Поликлиника»</strong><strong> </strong>[1-4].<strong> </strong>Компания КРОК разработала и внедрила автоматизированную информационную систему для центральной поликлиники ФСБ России (<strong>АИС «Поликлиника»</strong>). Система охватывает 340 автоматизированных рабочих мест, ее пользователями являются более 700 медицинских работников, обслуживающих свыше 5 тысяч человек в сутки. Система предназначена для комплексного информационно-аналитического обеспечения работы поликлиники. Система, центральным программным компонентом которой является медицинская информационная система «МедАналитика», также включает в себя серверное, компьютерное, сетевое и периферийное оборудование, подключенную к городской телефонной сети учрежденческую АТС, структурированную кабельную систему, высокоскоростную локальную вычислительную сеть, а также системы электропитания и охранной сигнализации.</p>
<p><strong>Медицинская автоматизированная система &#8220;МедИС-Т&#8221;. </strong>Система предназначена для автоматизации производственной медицины, поликлиник, стационаров, здравпунктов, санаториев. Имеет возможность удаленного администрирования рабочих мест системы (через Internet).</p>
<p><strong>Реализация программного приложения. </strong>С помощью программной системы Power Designer 15 была реализована <em>концептуальная модель</em> данных. Так как для регистрации жалоб пациента необходимо заполнять практически одни и те же поля для каждой жалобы, было принято решение разработать абстрактную таблицу регистрации жалоб.</p>
<p>Были разработаны следующие таблицы:</p>
<p>- Tusers – содержит данные о пользователях системы.</p>
<p>- Tpacient – карточка пациента.</p>
<p>- Tzalob – содержит жалобы пациента.</p>
<p>- T_boby_system – системы организма человека.</p>
<p>- T_ boby_pod_system – вид жалобы на конкретную систему организма.</p>
<p>- Tonsp_obch – таблица для определения настоящего состояния пациента.</p>
<p>- Tanamnez – анамнез заболевания.</p>
<p>- Tanamnez_next- последующее течение заболевания</p>
<p>- Tdiaznoz – содержит диагноз пациента.</p>
<p>- T_pod_diaznoz- содержит сопутствующие главному диагнозы.</p>
<p>С помощью программной системы Power Designer 15 на основе концептуальной модели данных была получена <em>физическая модель данных</em>, ориентированная на Oracle (см. рис. 1).</p>
<p><strong><em>Создание представлений (views)</em></strong><strong><em> </em></strong>[5, 6]<strong><em>. </em></strong>Представление – это результат SQL выражения, состоящего из операторов выборки, проектирования и соединения. Представления позволяют обеспечить более гибкую защиту таблиц, с их помощью можно ограничить доступ к определенным столбцам или строкам, а также они могут быть использованы для соединения таблиц.</p>
<p style="text-align: center;"> <a href="https://technology.snauka.ru/2014/11/4881/ris-1-10" rel="attachment wp-att-4882"><img class="alignnone size-full wp-image-4882" src="https://technology.snauka.ru/wp-content/uploads/2014/11/ris.1.jpg" alt="" width="625" height="360" /></a></p>
<p align="center">Рис. 1 &#8211; Модель данных</p>
<p>Структура представления:</p>
<p>Create or replace view «<span style="text-decoration: underline;">v</span>_имя таблицы» («имя_поля 1»,« имя_поля 2»…« имя_поля n» ) as select «имя_поля 1»,« имя_поля 2»…..« имя_поля n» FROM «имя таблицы» WHERE DEL=0</p>
<p>Где DEL – поле пометки на удаление</p>
<p>Для каждой таблицы были созданы представления вышеописанной структуры.</p>
<p><strong><em>Создание последовательностей(sequences). </em></strong>Последовательность – это объект, который генерирует серию последовательных уникальных чисел. Последовательности чаще всего используются для генерации значений суррогатных ключей.</p>
<p><strong><em>Создание триггеров (triggers). </em></strong>Триггеры в Oracle – это процедуры на языке Java или SQL, которые вызываются при выполнении определенных действий с базой данных. Oracle поддерживает несколько типов триггеров: одни запускаются командами SQL, создающие в базе данных новые структуры, например таблицы, другие запускаются единожды а уровне таблицы, когда происходит изменение строк таблицы, третьи запускаются по одному разу для каждой измененной строки.</p>
<p>Структура созданных триггеров:</p>
<p>BEGIN SELECT SEC_«имя_таблицы».NEXTVAL INTO :NEW. «Идентификатор_таблицы» FROM DUAL; END;</p>
<p><strong>Реализация клиентской части программного приложения. </strong>Программа состоит из следующих модулей:</p>
<p>- login_Unit – модуль, предназначенный для входа в систему.</p>
<p>- dm_unit – модуль, предназначенный для хранения сконфигурированных инструментов доступа к базе данных.</p>
<p>- Admin_Unit – модуль, предназначенный для отображения списка зарегистрированных пользователей системы.</p>
<p>- Main_Unit – Главная форма приложения.</p>
<p>- Find_User_Unit – модуль, предназначенный для ввода данных необходимых для поиска.</p>
<p>- New_User_Unit – модуль, предназначенный для добавления нового пользователя.</p>
<p>- Edit_User_Unit – модуль, предназначенный для редактирования данных пользователя.</p>
<p>- Reg_nit – модуль, предназначенный для отображения карточек пациентов.</p>
<p>- New_Pacient_Unit – модуль, предназначенный для внесения в базу данных нового пациента.</p>
<p>- Edit_pacient_Unit – модуль, предназначенный для редактирования данных пациента.</p>
<p>- Pacient_Unit – модуль, предназначенный для отображения пациентов в АРМ «Врач-терапевт».</p>
<p>- Choose_Date_Unit– модуль, предназначенный для выбора даты.</p>
<p>- Reg_Zalob_Unit – модуль, предназначенный для регистрации жалоб пациента.</p>
<p>- Detail_zalob_Unit– модуль, предназначенный для детализации зарегистрированных жалоб.</p>
<p>- Edit_Unit – модуль, предназначенный для ввода большого объема данных.</p>
<p>- Anamnez_Unit – модуль, предназначенный для описания анамнеза заболевания.</p>
<p>- new_zalob_Unit – модуль, предназначенный для внесения новой жалобы в базу данных.</p>
<p>- Edit_Zalob_Unit – модуль, предназначенный для редактирования я жалоб.</p>
<p>- Opred_Sost_Unit – модуль, предназначенный для определения настоящего состояния пациента.</p>
<p>- Diagnoz_Unit – модуль, предназначенный для вынесения главного диагноза и сопутствующих ему диагнозов.</p>
<p>- Sost_Unit_– модуль, предназначенный для просмотра состояний пациента на разные даты. Служит для определения динамики развития пациента.</p>
<p>- Edit_Sost_Unit – модуль, предназначенный для редактирования данных о состоянии пациента .</p>
<p>- Restore_Users_Unit – модуль, предназначенный для восстановления ошибочно удаленных пользователей системы.</p>
<p>- DMrestore_Unit – модуль, предназначенный для хранения сконфигурированных инструментов доступа к базе данных.</p>
<p>- Restore_Pacient_Unit – модуль, предназначенный для восстановления ошибочно удаленных пациентов.</p>
<p>- Restore_diagnoz_Unit – модуль, предназначенный для восстановления ошибочно удаленных диагнозов пациентов.</p>
<p>Структура программного приложения приведена на рисунке 2.</p>
<p>После запуска программного приложения на экране монитора отобразится форма, которая предложит пройти процедуру аутентификации (см. рис 3). Для входа в систему необходимо будет ввести «логин» и «пароль» в соответствующие поля формы.</p>
<p>После входа в систему отобразится главная форма программного приложения (см. рис 4). Данная форма не является информативной и предоставляет только выбор режима работы с приложением:</p>
<p>- АРМ «Администратор»;</p>
<p>- АРМ «Регистратура»;</p>
<p>- АРМ «Врач-терапевт».</p>
<p align="center"> <a href="https://technology.snauka.ru/2014/11/4881/ris-2-9" rel="attachment wp-att-4883"><img class="alignnone size-full wp-image-4883" src="https://technology.snauka.ru/wp-content/uploads/2014/11/ris-2.jpg" alt="" width="614" height="362" /></a></p>
<p align="center">Рис. 2 &#8211; Структура программного приложения</p>
<p>В случае если у пользователя не назначены права на какой-либо режим работы с системой, то для данного пользователя этот режим будет недоступен.<strong> </strong></p>
<p align="center"><a href="https://technology.snauka.ru/2014/11/4881/ris-3-2" rel="attachment wp-att-4884"><img class="alignnone size-full wp-image-4884" src="https://technology.snauka.ru/wp-content/uploads/2014/11/ris-3.jpg" alt="" width="313" height="171" /></a></p>
<p align="center">Рис. 3 &#8211; Форма входа в систему</p>
<p style="text-align: center;"> <a href="https://technology.snauka.ru/2014/11/4881/ris-4-3" rel="attachment wp-att-4885"><img class="alignnone size-full wp-image-4885" src="https://technology.snauka.ru/wp-content/uploads/2014/11/ris.4.jpg" alt="" width="472" height="288" /></a></p>
<p align="center">Рис. 4 &#8211; Главная форма программного приложения</p>
<p><strong>АРМ «Администратор». </strong>После входа в систему в режиме администратора на экране отобразится форма АРМ «Администратор» (см. рис. 5).</p>
<p>На форме отображены пользователи системы, а также права этих пользователей. С этими данными можно производить следующие действия:</p>
<p>- Добавить – отображение формы добавления нового пользователя (см. рис. 6).</p>
<p>Для корректного добавления пользователя необходимо заполнить все поля, а также распределить права для пользователя, после чего необходимо нажать на кнопку «Добавить».</p>
<p align="center"><a href="https://technology.snauka.ru/2014/11/4881/ris-5-2" rel="attachment wp-att-4886"><img class="alignnone size-full wp-image-4886" src="https://technology.snauka.ru/wp-content/uploads/2014/11/ris.5.jpg" alt="" width="623" height="289" /></a></p>
<p align="center">Рис. 5 &#8211; Форма АРМ «Администратор»</p>
<p align="center"><a href="https://technology.snauka.ru/2014/11/4881/ris-6-3" rel="attachment wp-att-4887"><img class="alignnone size-full wp-image-4887" src="https://technology.snauka.ru/wp-content/uploads/2014/11/ris.6.jpg" alt="" width="512" height="241" /></a></p>
<p align="center">Рис.6 &#8211; Форма добавления нового пользователя</p>
<p>- Изменить &#8211; отображение формы редактирования данных пользователя. Данная форма аналогична форме добавления нового пользователя.</p>
<p>- Удалить – данная функция предназначена для удаления пользователя. Физически данные из базы не удаляются. В любой момент возможно восстановление удаленных данных.</p>
<p>- Поиск – активация формы ввода строки поиска (см. рис. 7).</p>
<p align="center"><a href="https://technology.snauka.ru/2014/11/4881/7-8" rel="attachment wp-att-4888"><img class="alignnone size-full wp-image-4888" src="https://technology.snauka.ru/wp-content/uploads/2014/11/71.jpg" alt="" width="289" height="128" /></a></p>
<p align="center">Рис.7 &#8211; Форма ввода строки поиска</p>
<p>После ввода строки поиска необходимо нажать на кнопку «Найти».</p>
<p>- Отмена – функция предназначена для отмены результатов поиска.</p>
<p>Также администратор имеет возможность восстановления удаленных данных. Для восстановления пользователей системы существует специализированная форма (см. рис. 8)</p>
<p align="center"><a href="https://technology.snauka.ru/2014/11/4881/8-5" rel="attachment wp-att-4889"><img class="alignnone size-full wp-image-4889" src="https://technology.snauka.ru/wp-content/uploads/2014/11/8.jpg" alt="" width="544" height="330" /></a></p>
<p align="center">Рис.8 &#8211; Восстановление пользователей системы</p>
<p>Чтобы восстановить пользователя необходимо указать его в списке удаленных пользователей, а затем нажать кнопку «Восстановить».</p>
<p>Для восстановления удаленных пациентов существует специализированная форма восстановления пациентов (см. рис. 9)</p>
<p>&nbsp;</p>
<p align="center"><a href="https://technology.snauka.ru/2014/11/4881/9-2" rel="attachment wp-att-4890"><img class="alignnone size-full wp-image-4890" src="https://technology.snauka.ru/wp-content/uploads/2014/11/9.jpg" alt="" width="576" height="227" /></a></p>
<p align="center">Рис. 9 &#8211; Восстановление пациентов</p>
<p>Чтобы восстановить пациента необходимо указать его в списке удаленных пациентов, а затем нажать кнопку «Восстановить».</p>
<p>Для восстановления удаленных диагнозов существует специализированная форма восстановления диагнозов (см. рис. 10.)</p>
<p align="center"> <a href="https://technology.snauka.ru/2014/11/4881/10-3" rel="attachment wp-att-4891"><img class="alignnone size-full wp-image-4891" src="https://technology.snauka.ru/wp-content/uploads/2014/11/10.jpg" alt="" width="536" height="363" /></a></p>
<p align="center">Рис. 10 &#8211; Восстановление диагнозов</p>
<p>Чтобы восстановить диагноз необходимо указать его в списке удаленных диагнозов, а затем нажать кнопку «Восстановить». Чтобы восстановить сопутствующий диагноз необходимо указать его в списке удаленных сопутствующих диагнозов, а затем нажать кнопку «Восстановить». Диагноз будет восстановлен у того пациента, у которого он был удален.</p>
<p><strong>АРМ «Врач-терапевт». </strong>После активации режима врача терапевта, на экране отобразится форма отображения пациентов (см. рис. 11).</p>
<p>На форме отображены пациенты, закрепленные за конкретным врачом.</p>
<p>С этими данными можно производить следующие действия:</p>
<p>- Выбор пациентов, записанных на конкретное число. Для активации данной функции необходимо нажать на кнопку «Пациенты».</p>
<p align="center"><a href="https://technology.snauka.ru/2014/11/4881/11-5" rel="attachment wp-att-4892"><img class="alignnone size-full wp-image-4892" src="https://technology.snauka.ru/wp-content/uploads/2014/11/11.jpg" alt="" width="576" height="287" /></a></p>
<p align="center">Рис. 11 &#8211; Форма АРМ «Врач-терапевт»</p>
<p>На экране отобразиться форма выбора даты (см. рис. 12)</p>
<p align="center"><a href="https://technology.snauka.ru/2014/11/4881/12-3" rel="attachment wp-att-4893"><img class="alignnone size-full wp-image-4893" src="https://technology.snauka.ru/wp-content/uploads/2014/11/12.jpg" alt="" width="294" height="167" /></a></p>
<p align="center">Рис. 12 &#8211; Форма выбора даты</p>
<p>По окончании выбора даты необходимо нажать на кнопку «Просмотр».</p>
<p>- Поиск – активация формы ввода строки поиска(см. рис. 7).</p>
<p>- Отмена – функция предназначена для отмены результатов поиска.</p>
<p>- Начать прием – активация мастера приема пациента.</p>
<p>Первым этапом приема пациента является регистрация жалоб пациента (см. рис. 13).</p>
<p align="center"><a href="https://technology.snauka.ru/2014/11/4881/13-2" rel="attachment wp-att-4894"><img class="alignnone size-full wp-image-4894" src="https://technology.snauka.ru/wp-content/uploads/2014/11/13.jpg" alt="" width="623" height="286" /></a></p>
<p align="center">Рис. 13 &#8211; Форма регистрации жалоб пациента</p>
<p>На данной форме отображены жалобы пациента. С этими данными можно производить следующие действия:</p>
<p>- Добавить – активация формы добавления жалобы пациента (см. рис. 14).</p>
<p align="center"><a href="https://technology.snauka.ru/2014/11/4881/attachment/14" rel="attachment wp-att-4895"><img class="alignnone size-full wp-image-4895" src="https://technology.snauka.ru/wp-content/uploads/2014/11/14.jpg" alt="" width="433" height="195" /></a></p>
<p align="center">Рис. 14 &#8211; Форма добавления жалобы пациента</p>
<p>- Детализировать – активация формы детализации жалобы пациента (см. рис. 15).</p>
<p>- Редактировать – данная форма аналогична форме детализации жалобы пациента.</p>
<p>- Удалить – данная функция предназначена для удаления карточки пациента. Физически данные из базы не удаляются.</p>
<p style="text-align: center;">  <a href="https://technology.snauka.ru/2014/11/4881/attachment/15" rel="attachment wp-att-4896"><img class="alignnone size-full wp-image-4896" src="https://technology.snauka.ru/wp-content/uploads/2014/11/15.jpg" alt="" width="478" height="364" /></a></p>
<p align="center">Рис. 15 &#8211; Форма детализации жалобы пациента</p>
<p>После регистрации жалоб пациента, и их детализации необходимо перейти к описанию анамнеза заболевания. Для этого необходимо заполнить поля на двух вкладках:</p>
<p>- Анамнез заболевания (см. рис. 16).</p>
<p>- Последующее течение заболевания (см. рис. 17).</p>
<p>После описания анамнеза заболевания необходимо приступить к определению состояния пациента. В случае если пациент посещал врача неоднократно, благодаря данной форме, возможно отследить динамику развития заболевания (см. рис. 18).</p>
<p align="center"> <a href="https://technology.snauka.ru/2014/11/4881/attachment/16" rel="attachment wp-att-4897"><img class="alignnone size-full wp-image-4897" src="https://technology.snauka.ru/wp-content/uploads/2014/11/16.jpg" alt="" width="538" height="299" /></a></p>
<p align="center">Рис. 16 &#8211; Вкладка описания анамнеза заболевания</p>
<p align="center"><a href="https://technology.snauka.ru/2014/11/4881/attachment/17" rel="attachment wp-att-4898"><img class="alignnone size-full wp-image-4898" src="https://technology.snauka.ru/wp-content/uploads/2014/11/17.jpg" alt="" width="537" height="268" /></a></p>
<p align="center">Рис. 17 &#8211; Вкладка описания последующего течения заболевания</p>
<p>С данными формы можно проводить следующие действия:</p>
<p>- Добавить – активация формы определения состояния пациента (см. рис. 19).</p>
<p>- Редактировать – активация формы редактирования состояния пациента. Данная форма аналогична форме определения состояния.</p>
<p>После описания анамнеза заболевания необходимо приступить к вынесению диагноза (см. рис.20).</p>
<p align="center"><a href="https://technology.snauka.ru/2014/11/4881/attachment/18" rel="attachment wp-att-4899"><img class="alignnone size-full wp-image-4899" src="https://technology.snauka.ru/wp-content/uploads/2014/11/18.jpg" alt="" width="529" height="325" /></a></p>
<p align="center">Рис. 18 &#8211; Форма отображения состояния пациента</p>
<p align="center"><a href="https://technology.snauka.ru/2014/11/4881/attachment/19" rel="attachment wp-att-4900"><img class="alignnone size-full wp-image-4900" src="https://technology.snauka.ru/wp-content/uploads/2014/11/19.jpg" alt="" width="478" height="227" /></a></p>
<p align="center">Рис.19 &#8211; Форма определения состояния пациента</p>
<p>После вынесения диагноза можно завершить мастер приема пациента.</p>
<p align="center"><a href="https://technology.snauka.ru/2014/11/4881/attachment/20" rel="attachment wp-att-4901"><img class="alignnone size-full wp-image-4901" src="https://technology.snauka.ru/wp-content/uploads/2014/11/20.jpg" alt="" width="527" height="393" /></a></p>
<p align="center"> Рис. 20 &#8211; Форма вынесения диагнозов</p>
<p>Разработанное программное приложение можно использовать для автоматизации рабочего места врача санатория.</p>
]]></content:encoded>
			<wfw:commentRss>https://technology.snauka.ru/2014/11/4881/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Ещё раз к вопросу о повышении эффективности разработки программной продукции</title>
		<link>https://technology.snauka.ru/2016/12/10882</link>
		<comments>https://technology.snauka.ru/2016/12/10882#comments</comments>
		<pubDate>Fri, 09 Dec 2016 13:12:48 +0000</pubDate>
		<dc:creator>Oberst</dc:creator>
				<category><![CDATA[Общая рубрика]]></category>
		<category><![CDATA[application software]]></category>
		<category><![CDATA[development organization]]></category>
		<category><![CDATA[software development]]></category>
		<category><![CDATA[Team Foundation Server]]></category>
		<category><![CDATA[организация разработки]]></category>
		<category><![CDATA[прикладное программное обеспечение]]></category>
		<category><![CDATA[разработка программного обеспечения]]></category>

		<guid isPermaLink="false">https://technology.snauka.ru/?p=10882</guid>
		<description><![CDATA[Один из важнейших компонентов любой информационно-управляющей системы – программное обеспечение. В большинстве случаев именно от его качества зависит эффективность автоматизации управления объектами, системами или процессами [1,2,3,4]. Активная разработка коммерческого программного обеспечения началась ещё в 80-е годы прошлого века. Но, до настоящего времени, процесс создания программного обеспечения (ПО) сложно назвать оптимальным. И этому есть множество причин: [...]]]></description>
			<content:encoded><![CDATA[<p>Один из важнейших компонентов любой информационно-управляющей системы – программное обеспечение. В большинстве случаев именно от его качества зависит эффективность автоматизации управления объектами, системами или процессами [1,2,3,4]. Активная разработка коммерческого программного обеспечения началась ещё в 80-е годы прошлого века. Но, до настоящего времени, процесс создания программного обеспечения (ПО) сложно назвать оптимальным. И этому есть множество причин: технологических, организационных и других. Как показала практика, в своём развитии разработка программного обеспечения проходит те же стадии, которые в своё время проходила разработка промышленной продукции.</p>
<p>На начальном этапе развития программирование, в том числе коммерческое, было, практически, искусством, в котором каждый разработчик кустарным способом создавал продукт, всецело от него зависящий. Впоследствии, с появлением систем программирования, продукт начал обосабливаться от производителя, появилась коллективная разработка. По аналогии с промышленностью, эту стадию можно назвать уровнем мануфактурного производства. В настоящее время, с дальнейшим развитием подходов и систем разработки, рассуждая логически, должна наступить эпоха промышленного программирования, когда каждый разработчик производит только свою программу или функцию (библиотеку), не вдаваясь: зачем и кому она нужна. Должна наступить, но пока не наступила… Почему?</p>
<p>Причин много. Это и несовершенство организационных основ процесса разработки [5,6,7], и субъективные факторы использования средств автоматизации [8] и другие. Одна из существенных причин, на наш взгляд, кроется именно в организации процесса разработки программ. Отсутствие чёткого регламента разработки, её этапности с контролем на каждом этапе, слабая автоматизация этого процесса приводит к парадоксальной ситуации: программный продукт до сих пор продолжает зависеть от своего создателя. В результате, при возникновении необходимости, сторонний разработчик часто просто не может доработать продукт, сделанный до него. Иногда программисту проще написать новую программу, чем доработать существующую. Даже при наличии полноценной конструкторской документации. Это парадокс: любой слесарь со средним образованием может изготовить по чертежу гайку М8, которая навернётся на любой болт с метрической резьбой М8, а программист с высшим образованием – не может по чужой документации доработать программу.</p>
<p>Справедливости ради стоит отметить, что эта проблема существенно продвинулась в решении в части разработки программных средств общего назначения. А вот в разработке прикладного ПО, где процесс существенно более творческий и разнообразный, пока всё остаётся на уровне «мануфактуры». С одной стороны, оправдание этому есть – разработка отдельных задач действительно, подчастую, является уникальным разовым процессом. Но это только при разработке автономных узкоспециализированных задач. А вот при разработке распределённых расчётно-моделирующих комплексов или систем поддержки принятия решений объективно необходимо переходить от «ремесла» к технологиям. А именно это и есть тенденция развития современного ПО – от отдельных задач к системам [9,10,11]. Но эта тенденция пока не подкрепляется использованием соответствующих технологий. Результат – повышенные затраты времени и финансов, дублирование работ.</p>
<p>Но проблема не безнадёжна, пути решения её есть. Как показывает личный опыт автора – они лежат в области грамотной организации труда всех категорий разработчиков. Как за счёт использования структурных подходов к работе на основе стандартов управления проектами PMBoK (<em>Project Management Body of Knowledge</em>), ISO 21500 и реализующей их положения методологии организации разработки, такой, например, как RUP (<em>Rational</em><em> </em><em>Unifield</em><em> </em><em>Process</em>), так и использования специализированного инструментария автоматизации управления разработкой, например VSS (<em>Microsoft Visual SourceSafe</em>), дальнейшего развития этой системы – TFS (<em>Team Foundation Server</em>) или других систем и веб-приложений для управления проектами и задачами: Jira, Gemini, Savana, Redmine, Trac, TaskJuggler и т.п.</p>
<p>Системы типа TFS предназначены для совместной распределённой работы над проектами по созданию компонентов программного обеспечения. TFS представляет собой комплексное решение, реализующее [12]:</p>
<p>- систему управления версиями;</p>
<p>- сбор данных и построение отчётов;</p>
<p>- отслеживание изменений и статуса проекта.</p>
<p>Работа с TFS организована по принципу трёхуровневой архитектуры: клиентский уровень, прикладной уровень и уровень данных (рисунок 1).</p>
<p style="text-align: center;"><a href="https://technology.snauka.ru/2016/12/10882/risunok-22" rel="attachment wp-att-10883"><img src="https://technology.snauka.ru/wp-content/uploads/2016/11/risunok.png" alt="" width="624" height="476" /></a></p>
<p style="text-align: center;">Рисунок 1. Общая структура системы TFS</p>
<p>Клиентский уровень включает следующие компоненты:</p>
<p>- объектная модель TFS, представляющая собой открытый API, используемый для взаимодействия с TFS;</p>
<p>- компоненты VSIP<em> </em>(<em>Visual</em><em> </em><em>Studio</em><em> </em><em>Industry</em><em> </em><em>Partners</em>), инструментальные средства, надстройки и языки программирования сторонних производителей для <em>Visual Studio</em>.</p>
<p>- компоненты интеграции с <em>Microsoft Office</em>, которые включают ряд надстроек <em>Microsoft Office Excel</em> и <em>Microsoft Office Project</em>, обеспечивающих возможность запрашивать и обновлять рабочие элементы в базе данных TFS <em>Work Item Tracking</em>;</p>
<p>- инструментальные средства командной строки;</p>
<p>- инфраструктура политик регистрации изменений файла в системе контроля версий.</p>
<p>Клиентский уровень используется для создания и управления проектами, а также для доступа к хранимым и управляемым элементам проекта.</p>
<p>Прикладной уровень (уровень приложений) предоставляет собой web-сервисы ASP.NET, с которыми взаимодействует клиентский уровень. Они сгруппированы в следующие наборы:</p>
<p>- сервисы обработки данных <em>Team</em><em> </em><em>Foundation</em><em> </em><em>Data</em><em> </em><em>Services</em>;</p>
<p>- сервисы интегрирования <em>Team Foundation Integration Services</em>.</p>
<p>Прикладной уровень включает в себя web-портал <em>Team Project Portal</em> (портал командного проекта), который используется в роли центра взаимодействия проектов, управляемых TFS. В состав прикладных сервисов входят средства контроля версий TFVC (<em>Team</em><em> </em><em>Foundation</em><em> </em><em>Version</em><em> </em><em>Control</em>), серверы сборки и отладки <em>Team</em><em> </em><em>Build</em> и <em>Team</em><em> </em><em>Load</em><em> </em><em>Test</em><em> </em><em>Agents</em> и другие.</p>
<p>Уровень данных TFS состоит из следующих компонентов и хранилищ данных:</p>
<p>- компоненты статуса рабочих элементов;</p>
<p>- единый репозиторий на базе <em>SharePoint</em>, содержащий связанную с проектом документацию.</p>
<p>Уровень данных, основывающийся на SQL <em>Server</em><em> 2005 </em><em>Standard</em><em> </em><em>Edition</em>, обеспечивает сервисы постоянного хранения данных для репозитория документов. Уровень данных и уровень приложений могут существовать на различных физических или виртуальных серверах.</p>
<p>Работа с системой TFS организована интуитивно понятно: создаются проекты (<em>Team Projects</em>), которые делятся на последовательно или параллельно выполняемые работы и связанные наборы задач конечным исполнителям, обладающие определённым набором свойств и статусов. Указанные свойства определяют содержание задачи, исполнителя, сроки реализации и т.п. Связи между задачами и свойствами позволяют контролировать сроки и полноту выполнения этапов проекта.</p>
<p>Как показала практика, TFS обеспечивает автоматизированное выполнение целого ряда важнейших функций управления проектами:</p>
<p>- многократная блокировка файлов для изменения (<em>multiple simultaneous check-outs</em>), позволяющая нескольким пользователям одновременно могут редактировать один и тот же файл;</p>
<p>- отложенное внесение правок (<em>shelving</em>) &#8211; сохранение набора изменений, которые необходимо внести в будущем, другие участники проекта будут уведомлены об этих наборах, но если им намеренно не предоставлен доступ, то содержимое будет недоступно для просмотра и изменения;</p>
<p>- ветвление с последующим слиянием (<em>branching and merging</em>);</p>
<p>- урегулирование конфликтов в случае слияния различных «веток»;</p>
<p>- разграничение уровней доступа &#8211; независимо для разных файлов и папок</p>
<p>- поддержка версионности документации;</p>
<p>- откаты до предыдущих версий, в том числе по отдельным «веткам» проекта;</p>
<p>- операции подтверждения малых изменений (<em>atomic commits</em>).</p>
<p>Каждая из перечисленных функций, выполняемая в совокупности проекта, существенно упрощает управление разработкой прикладного ПО.</p>
<p>Как показал практический опыт использования TFS при разработке крупных проектов прикладного ПО, данное средство достаточно эффективно обеспечивает автоматизацию:</p>
<p>- постановки задач разработчикам и контроля их выполнения;</p>
<p>- архивации данных о версионности и вносимых в программы изменениях;</p>
<p>- сборки версий (в том числе автоматической, с рассылкой уведомлений) и контроля версионности продукта.</p>
<p>С учётом этого, автоматизация организации процесса разработки обеспечивает существенное повышение его эффективности.</p>
<p>Конечно, TFS не является спасением от всех бед в области промышленной разработки ПО. Собственно, при наличии грамотного руководства и отлаженного процесса организации труда в организации, все функции управления процессом разработки могут быть реализованы и в неавтоматизированном режиме [13,14,15]. То же самое можно сказать о небольших уникальных проектах, разрабатываемых под конкретную задачу в сжатые сроки. Хотя последний случай, всё-таки спорный. Часто быстро разработанный и внедрённый проект приходится дорабатывать в ходе эксплуатации, и тут использование TFS при разработке сильно упростило бы процесс настройки под требования пользователей. А для некоторой «среднестатистической» организации, да ещё и ведущей несколько нетиповых проектов, TFS – серьёзное подспорье в работе в любом случае. Тем более, что данный тип ПО является организационным и его влияние на состояние конечного программного продукта минимально и не противоречит требованиям информационной безопасности  [16,17].</p>
<p>Разумеется, использование TFS в разработке программного обеспечения, не панацея. Всех проблем ни RUP, ни TFS не решит. Но это одна из предпосылок повышения эффективности использования немалого, но пока слабо востребованного интеллектуального потенциала страны и перехода от использования зарубежного ПО к отечественному, что очень актуально в условиях перманентного информационного противоборства в современном постиндустриальном мире [18,19,20].</p>
]]></content:encoded>
			<wfw:commentRss>https://technology.snauka.ru/2016/12/10882/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
