<?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; ArgoUML</title>
	<atom:link href="http://web.snauka.ru/issues/tag/argouml/feed" rel="self" type="application/rss+xml" />
	<link>https://web.snauka.ru</link>
	<description></description>
	<lastBuildDate>Sat, 18 Apr 2026 09:41:14 +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://web.snauka.ru/issues/2017/03/77761</link>
		<comments>https://web.snauka.ru/issues/2017/03/77761#comments</comments>
		<pubDate>Mon, 27 Mar 2017 11:43:57 +0000</pubDate>
		<dc:creator>Масенко Иван Александрович</dc:creator>
				<category><![CDATA[05.00.00 ТЕХНИЧЕСКИЕ НАУКИ]]></category>
		<category><![CDATA[ArgoUML]]></category>
		<category><![CDATA[Microsoft Visual Studio]]></category>
		<category><![CDATA[modeling of UML]]></category>
		<category><![CDATA[text editor]]></category>
		<category><![CDATA[the chart of classes]]></category>
		<category><![CDATA[the chart of components]]></category>
		<category><![CDATA[the software for writers]]></category>
		<category><![CDATA[диаграмма классов]]></category>
		<category><![CDATA[диаграмма компонентов]]></category>
		<category><![CDATA[моделирование UML]]></category>
		<category><![CDATA[программное обеспечение для писателей]]></category>
		<category><![CDATA[текстовый редактор]]></category>

		<guid isPermaLink="false">https://web.snauka.ru/?p=77761</guid>
		<description><![CDATA[Наиболее трудоемкими этапами разработки любой информационной системы является этап анализа и проектирования, в процессе которого CASE-средства обеспечивают качество принимаемых технических решений и подготовку проектной документации. При этом большую роль играют методы визуального представления информации. Графические средства моделирования предметной области позволяют разработчикам в наглядном виде изучать существующую систему, перестраивать ее в соответствии с поставленными целями и [...]]]></description>
			<content:encoded><![CDATA[<p>Наиболее трудоемкими этапами разработки любой информационной системы является этап анализа и проектирования, в процессе которого CASE-средства обеспечивают качество принимаемых технических решений и подготовку проектной документации. При этом большую роль играют методы визуального представления информации. Графические средства моделирования предметной области позволяют разработчикам в наглядном виде изучать существующую систему, перестраивать ее в соответствии с поставленными целями и имеющимися ограничениями.</p>
<p>Проектирование программного инструмента для писателя «Сюжет» [1] осуществлялось на базе унифицированного языка моделирования UML, который является языком графического описания для объектного моделирования в области разработки программного обеспечения. В качестве средства проектирования «Сюжет» было выбрано программное обеспечение ArgoUML и модуль для построения диаграмм в интегрированной среде разработки Microsoft Visual Studio.</p>
<p>В процессе проектирования с помощью выбранных CASE-средств была построена диаграмма классов, представляющая статическую структуру модели системы в терминологии классов объектно-ориентированного программирования. Диаграмма классов отражает различные взаимосвязи между объектами или подсистемами программного средства «Сюжет», а также описывает их внутреннюю структуру и типы отношений.</p>
<p>Рассмотрим основные компоненты, представленные на диаграмме классов программного обеспечения «Сюжет» (рисунок 1).</p>
<p>Одним из базовых классов проекта, реализованных в ходе разработки программы является «MainForm», который содержит все необходимые поля и методы для работы оконной формы программы, с которыми взаимодействует пользователь. Стоит отметить наличие в классе «MainForm» таких методов, как: «deldoublespace_Click», «open_reader_Click», «autosave_Tick». Метод «deldoublespace_Click» инициализирует функцию по удалению лишних пробелов между словами. «open_reader_Click» запускает конструктор по созданию экземпляра формы «FormReader», осуществляющий открытие окна программы с выбранным текстом только для чтения. Для обеспечения безопасности работы с произведением в программе «Сюжет» реализован метод «autosave_Tick», запускающий функцию автосохранения, которая вызывает методы, прописанные в классе «TextEditor».</p>
<p align="center"><a href="https://web.snauka.ru/issues/2017/03/77761/11-68" rel="attachment wp-att-77762"><img class="aligncenter size-full wp-image-77762" src="https://web.snauka.ru/wp-content/uploads/2017/01/112.png" alt="" width="835" height="1098" /></a></p>
<p align="center">Рисунок 1 – Диаграмма классов программы «Сюжет»</p>
<p>Основное окно программы имеет специализированный режим отображения на экране [2], который вызывается методом «fullScreen_Click», который присваивает параметру видимости «Visible» значение «false» для таких элементов систем как: главное меню, панель инструментов, левая боковая панель, меню «Пуск» операционной системы Windows. Атрибуты и методы относящиеся к данному режиму имеют в начале названия приставку «fs». В основе работы полноэкранного режима лежит операция по настройке прозрачности текстового поля «RichTextBox». Из-за отсутствия данной функции у элемента управления, было принято решение создать класс «RichTextBoxExt», который содержит в себе функции расширяющие стандартный набор методов элемента управления «RichTextBox». Соответственно чтобы воспользоваться дополненным функционалом элемента управления, необходимо было создать пользовательский элемент управления, с помощью инструментов класса «UserControl», под названием «RichTextControl», в котором содержится новый вариант элемента управления «RichTextBox».</p>
<p>Рассмотрим другие классы, которые вызываются с помощью методов класса «MainForm». Класс «Player» содержит все основные методы по работе со встроенным аудио плеером: Next», «Play», «Preview», «Stop». С помощью таких методов как: «AddTrack», «RemoveTrack», «ClearList» и «GetVolume» класс «MainForm» настраивает громкость плеера, добавляет и удаляет треки из плейлиста, вызывая класс «FormPlayList» с помощью метода «btnShowPlayList_Click».</p>
<p>Как и «MainForm» класс «FormPlayList» содержит все необходимые методы по управлению с плейлистом, имея в качестве расширения методы «btnMix_Click» и «btnCircle_Click», отвечающие за воспроизведение случайного трека из списка и повтор воспроизведения всех треков из плейлиста при достижении последнего аудио файла.</p>
<p>При разработке многофункционального программного обеспечения, необходимо предоставить пользователю возможность настройки. В данном случае это обеспечит класс «settingsProgram_Click». Данный класс содержит атрибуты и методы по настройке автосохранения «autosave», языка интерфейса программы «language», звука нажатия клавиш, таймера времени работы «interval», и таймер количества введенных символов «interval2».</p>
<p>Для вызова конструктора создания формы класса «Words» используется метод «wordscount_Click». На стадии запуска данный класс активирует метод «wordscount», отвечающий за разделение текста программы на слова и внесение их в соответствующую таблицу.</p>
<p>Диаграмма компонентов – описывает особенности физического представления системы, определяет архитектуру разрабатываемой системы, установив зависимости между программными компонентами, в роли которых может выступать исходный  и исполняемый код. Основными графическими элементами диаграммы компонентов являются компоненты, интерфейсы и зависимости между ними.</p>
<p>На диаграмме компонентов (рисунок 2) программного обеспечения «Сюжет» предоставлены внешние компоненты, свойства приложения и компоненты Story.exe.</p>
<p><a href="https://web.snauka.ru/issues/2017/03/77761/111-26" rel="attachment wp-att-77763"><img class="aligncenter size-full wp-image-77763" src="https://web.snauka.ru/wp-content/uploads/2017/01/1111.png" alt="" width="883" height="806" /></a></p>
<p align="center">Рисунок 2 – Диаграмма компонентов программы «Сюжет»</p>
<p>Рассмотрим подробно основные компоненты диаграммы.</p>
<p>Компонент «Settings» отвечает за хранение свойств по настройке программы.</p>
<p>Компоненты «ImageListSave» и «PlayListSave» отвечают за запись адресов загруженных изображений из программы в файл формата xml и адресов загруженных аудио файлов в плейлист встроенного плеера программы.</p>
<p>Для шифрования текста произведения во время срабатывания автосохранения используется компонент «CryptorEngine», который хранит в себе функции не только по шифрованию, но и дешифрованию текста произведений.</p>
<p>Также в программе реализован модуль по осуществлению фонетического анализа произведений. Алгоритм его работы прописан в компоненте FreshEye.</p>
<p>К внешним файлам относятся библиотеки без которых, программа не сможет работать. К таким системным компонентам относятся: библиотека для работы с XML-файлами «System.Xml.Linq.dll», библиотека для создания и работы с формами программы «System.Windows.Forms.dll», и компонент для взаимодействия с графическими файлами «System.Drawing.dll».</p>
<p>В компонент «Properties» входят параметры настроек программы (Settings) и ресурсы программы (Resources), состоящие из иконок, звуков, изображений и т.д.</p>
<p>В результате была разработана структура программного обеспечения «Сюжет», поддерживающая методологию структурного программирования с использованием модульного подхода, которая обеспечивает полную реализацию функционала [3], необходимую и достаточную для полноценной творческой работы писателя над произведением.</p>
]]></content:encoded>
			<wfw:commentRss>https://web.snauka.ru/issues/2017/03/77761/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
