Диплом: Автоматизация "личного кабинета" консультанта по недвижимости (на примере организации Росинформ)

Внимание! Если размещение файла нарушает Ваши авторские права, то обязательно сообщите нам
53
ОС серверной части зависит от требований, предъявляемых СУБД,
используемой при реализации системы.
Таким образом, платформой для системы автоматизации ООО Росинфом
является ОС Windows на PC.
3.2. Выбор методов и компонент хранилища данных
Еще на стадии физического проектирования структуры данных были
сформулированы основные требования, которым должна удовлетворять СУБД:
реляционная или иерархическая модель представления данных;
поддержка архитектуры клиент-сервер;
поддержка механизма хранимых процедур.
Были рассмотрены следующие СУБД, удовлетворяющие данным
требованиям:
Oracle 8i;
Microsoft SQL Server 2000;
InterBase.
Следует отметить, что в данных список не вошла довольно популярная в
настоящее время СУБД MySQL, так как она не поддерживает механизма
хранимых процедур.
Окончательный выбор был сделан в пользу Microsoft SQL Server, так как
при предоставлении функциональности, аналогичной другим СУБД, данная
СУБД поддерживает тесную интеграцию c ОС семейства Windows.
Перечислим основные достоинства Microsoft SQL Server:
поддержка архитектуры «клиент-сервер»;
тесная интеграция с ОС Windows Server и службой каталогов Active
Directory;
хорошая масштабируемость;
развитые средства администрирования;
поддержка технологии транзакций и блокировок;
гибкий язык манипулирования данными Transact-SQL.
54
Microsoft SQL Server проявляет свои возможности в полной мере только
на ОС Windows Server, поэтому в качестве ОС серверной части системы
автоматизации была выбрана Windows Server.
3.3. Выбор среды разработки
Каждая поставленная задача имеет свои особенности, как со стороны
заказчика, так и со стороны исполнителя. Каждое средство разработки также
имеет свои особенности и характеристики, и является эффективным, только
при разработке тех решений, на которое оно ориентированно. Следовательно,
правильный выбор среды и языка программирования является одним из
решающих факторов при реализации системы.
При выборе среды разработки следует также принимать во внимание
специфику проекта. Система автоматизации ООО Росинфом является системой
автоматизации документооборота. Характерной чертой данного класса систем
является наличие большого количества логических правил обработки данных.
Основную трудность при разработке данных типов приложений составляют
выявление и формализация логических правил обработки данных, поэтому
среда разработки должна полностью избавить разработчика от решения
низкоуровневых задач, связанных с техническими сторонами реализации,
позволяя разработчику концентрироваться именно на предметной логике.
Попросту говоря, чем проще процесс разработки, тем лучше. Кроме
того, язык программирования и среда разработки должны хорошо
поддерживать методологию объектно-ориентированного проектирования,
которая способствует более эффективной реализации, как логики, так и
структуры системы.
Таким образом, выбранная среда должна сочетать в себе простоту
разработки и хорошую поддержку методологии объектно-ориентированного
подхода.
55
Выбор ОС уже произведен, поэтому для выбора средства разработки
рассмотрим список из нескольких (самых популярных) средств разработки
приложений для Microsoft Windows.
Microsoft Visual Basic . Входит в состав пакета Microsoft Visual Studio .
Visual Basic представляет собой среду для создания Windows-приложений.
Язык программирования Visual Basic является одним из диалектов языка Basic,
ориентированный на событийную модель операционной системы Windows и
поддерживает некоторые возможности объектно-ориентированного подхода.
Основное назначение языка – максимально упростить разработку Windows-
приложений с графическим интерфейсом пользователя. Но, кроме того, Visual
Basic полностью поддерживает технологию ActiveX и позволяет создавать
полноценные COM/DCOM компоненты, элементы управления ActiveX и даже
DHTML-приложения. Сильной стороной Visual Basic является его хорошая
поддержка взаимодействия со многими механизмами доступа к данным, самым
современным из которых является технология Microsoft ActiveX Data Object
(надстройка над OLE DB). Также среда имеет большое количество мастеров
(wizards), ускоряющих создание каркаса будущего приложения.
Microsoft Visual Basic .NET. Входит в состав пакета Visual Studio .NET.
Основные назначения этой среды сходны с предыдущей ее версией Visual
Basic. Среди главных отличий стоит отметить следующие нововведения.
Значительно переработан синтаксис самого языка программирования, который
теперь является полноценным объектно-ориентированным языком. Наиболее
значимым отличием является то, что Visual Basic .NET позволяет создавать
приложения для среды Microsoft .NET.
Microsoft Visual C#. Входит в состав пакета Visual Studio .NET. C# –
новый универсальный язык программирования, разработанный Microsoft в
рамках реализации проекта .NET. Имеет C-подобный синтаксис, в его основу
положен объектно-ориентированный подход. Интегрированная среда
разработки ориентирована на визуальное создание графических
пользовательских интерфейсов, но область использования C# этим не
56
ограничивается. C# является основным языком программирования платформы
.NET, с его помощью возможно создание любых проектов в рамках среды
разработки Visual Studio .NET.
Microsoft Visual C++ 6. Входит в состав пакета Microsoft Visual Studio
98. В среде Microsoft Visual C++ 6 при использовании библиотеки MFC
доступно большое количество мастеров и вспомогательных средств
интегрированной среды разработки, выполняющих автоматическую генерацию
программного кода, что может значительно упростить разработку приложений.
Однако, полезными эти средства можно назвать с большой натяжкой, т. к. сам
язык программирования остался тем же C++, с его усложненным синтаксисом и
большем количеством возможностей, нашедших применение в основном при
создании системного ПО, это заставляет часто отвлекаться разработчика на
тонкости реализации и не позволяет в полной мере сосредоточить внимание на
предметной логике.
Borland Delphi. Среда разработки Windows-приложений,
ориентированная на визуальное создание графических пользовательских
интерфейсов, но также может применяться для создания большого числа
других типов приложений. Очень хорошо сочетает в себе возможности
написания как относительно низкоуровневых приложений, так и приложений,
требующих быстрой разработки. Язык программирования – Object Pascal
диалект языка Pascal, основной отличительной особенностью которого является
полноценная поддержка объектно-ориентированного подхода. Среда имеет
свою библиотеку классов VCL, которая используется как оболочка Win API.
1C:Предприятие Основное назначение семейства программ и
платформы 1C:Предприятие автоматизация финансово-хозяйственной
деятельности предприятия. Система ориентирована на создание экономических
приложений, включает встроенные средства для написания систем
автоматизации бухучета, учета складских запасов и движения товарно-
материальных ценностей, а также механизмы для сложных периодических
расчетов. Коме того среда включает в себя базовые возможности, которые
57
могут использоваться для написания приложений, никак не связанных с
экономической областью и достаточно хорошо поддерживает технологию
Microsoft ActiveX. 1С:Предприятие предоставляет разработчику хорошо
продуманный и наиболее универсальный набор объектов и графических
элементов управления, что значительно ускоряет процесс разработки
приложений для работы с базами данных посредством графического
интерфейса пользователя (среда зачастую позволяет вести разработку в
несколько раз быстрее, чем на Visual Basic). Основная особенность готового
решения состоит в том, что оно не может быть автономным и функционирует
только в пределах среды 1C:Предприятие.
Microsoft Access. Входит в пакет Microsoft Office. Основное назначение
среды – работа с однопользовательскими базами данных формата Microsoft Jet
Engine (*.MDB), однако встроенный язык VBA позволяет обращаться к любым
источникам данных посредством ODBC, RDO, ADO. Значительно ускоряет
процесс разработки несложных баз данных, практически сводя к нулю
необходимость написания программного кода. Поддерживает создание
приложений, ориентированных на однопользовательские базы данных. Процесс
разработки других типов приложений с использованием среды Microsoft Access
мало эффективен.
В силу вышеперечисленных требований можно утверждать, что для
разработки автоматизированной системы ООО Росинфом наиболее выгодными
средствами являются Visual C# и Visual Basic .NET, которые имеют очень
много общего, так как функционируют на одной платформе Microsoft .NET и
имеют общую интегрированную среду разработки. Фактически единственным
различием между Visual C# и Visual Basic .NET является используемый язык
программирования.
Окончательный выбор был сделан в пользу среды Visual C#. Так как
язык C# является современным языком, полностью поддерживающим
методологию объектно-ориентированного программирования. Данный язык
создавался практически с чистого листа, поэтому синтаксис C# избавлен от
58
поддержки обратной совместимости, что значительно очищает язык и делает
его более элегантным, чего нельзя сказать о Visual Basic .NET.
В основу синтаксических конструкций C# была положена упрощенная
форма языка C++, поэтому даже с первых минут изучения новый язык кажется
очень знакомым программистам всех C-подобных языков.
Основное преимущество языка C# – полная ориентация на платформу
Microsoft .NET, что делает его наиболее удобным и эффективным средством
разработки для этой платформы. Об этом говорит и тот факт, что сама фирма
Microsoft официально позиционирует C# как основной язык платформы .NET.
3.4. Реализация серверной части
Серверная часть представлена сервером баз данных Microsoft SQL
Server, который содержит базу данных и является центром хранения и
обработки данных системы ООО Росинфом.
Реализация базы данных системы ООО Росинфом состоит из двух
этапов:
создание таблиц базы данных;
написание хранимых процедур.
Реализация интелектуального анализатора.
Реализация анализатора проведена была нами с широким
использованием техники так называемых регулярных выражений.
При поиске файлов на жестком диске обычно используют символы ? и *,
чтобы облегчить поиск нужных файлов. Символ ? соответствует одиночному
символу в имени файла, в то время как * соответствует нулевому или большему
количеству символов. Шаблон типа 'data?.dat' нашел бы следующие файлы:
data1.dat data2.dat datax.dat ... dataN.dat
Использование символа * вместо символа ? расширяет число найденных
файлов. 'data*.dat' соответствует всем следующим файлам: data.dat, data1.dat,
data2.dat, data12.dat, datax.dat, dataXYZ.dat
59
В то время, как такой метод поиска файлов, безусловно, может быть
полезным, он также является и весьма ограниченным. Ограниченные
возможности символов маски ? и * дают нам некоторое понимание, что могут
делать регулярные выражения, но при этом регулярные выражения намного
более мощны и гибки.
Регулярные выражения уходят корнями еще в ранние исследования
функционирования человеческой нервной системы. Нейрофизиологи, Уоррен
Маккуллоч и Уолтер Питц, разрабатывали в то время математический способ
описания нейросетей.
В 1956 году математик по имени Стивен Клин, основываясь на
предшествующих работах Маккуллоча и Питца, опубликовал труд
Представление Событий в Нейросетях, в котором и ввел концепцию
регулярных выражений. Регулярные выражения были выражениями,
использовавшимися для описания того, что он тогда называл "алгеброй
регулярных наборов". Отсюда пошел и термин "регулярное выражение".
Впоследствии его работа нашла применение в некоторых ранних опытах
с вычислительными алгоритмами поиска, проведенных Кеном Томпсоном,
основным разработчиком Unix. Первое практическое применение регулярных
выражений было осуществлено в Unix-редакторе, называвшемся qed.
Дальнейшее - это уже, как говорится, история. Регулярные выражения с
тех пор являются важной частью текстовых редакторов и программ для поиска
текста.
В типичных операциях поиска и замены, мы должны всегда точно
указывать разыскиваемый текст. Этот метод вполне может соответствовать
задачам простого поиска и замены в статическом тексте, но ему недостает
гибкости, что делает поиск динамического текста весьма сложным, если не
сказать невозможным.
Используя регулярные выражения, мы можем:
Проверить строку на соответствие некоему образцу.
Например, можно протестировать входную строку, чтобы узнать,
60
встречается ли в этой строке шаблон номера телефона или шаблон
номера кредитной карточки. Это называется проверкой правильности
данных.
Заменить текст. мы можем использовать регулярное
выражение, чтобы идентифицировать определенный текст в документе, а
затем или удалить его полностью, или заменить другим текстом.
Извлечь подстроку из строки, основываясь на соответствии
образцу. мы можем найти определенный текст в документе или в поле
ввода данных.
Например, если нам нужно произвести глобальный поиск по всему Web-
сайту для удаления некоторого устаревшего материала и для замены отдельных
HTML тэгов, мы можем использовать регулярное выражение для тестирования
каждого файла на предмет того, существуют ли в этом файле разыскиваемый
материал или HTML тэги. Таким способом Вы можете сузить круг
обрабатываемых файлов только до тех, что действительно содержат материал,
который должен быть удален или заменен. Затем мы можете использовать
регулярное выражение, чтобы удалить устаревший материал, и, наконец, Вы
можете использовать регулярные выражения, чтобы найти и заменить тэги,
нуждающиеся в замене.
Другой пример того, где могут быть полезны регулярные выражения,
касается тех языков программирования, которые не имеют развитых
возможностей для обработки строк. Visual Basic, имеет богатый набор функций
для обработки строк. Но JScript, как и язык C - не имеет. Регулярные
выражения обеспечивают существенное расширение возможностей обработки
строк в JScript. Однако, регулярные выражения можно эффективно
использовать и в VBScript, так как это позволит нам производить сразу
несколько строковых манипуляций в одном выражении.
Регулярное выражение - это текстовый шаблон (образец), состоящий из
обычных символов (например, символов от а до z) и специальных символов,
известных как метасимволы. Этот шаблон описывает одну или более строк,
61
которые должны обеспечить совпадения во время выполнения поиска в
предложенном тексте. Регулярное выражение выполняет роль образца для
сопоставления некоего символьного шаблона строке, в которой производится
поиск.
Вот несколько примеров регулярных выражений, которые могут Вам
встретиться:
VB
Соответствие
"^\[ \t]*$"
Соответствует пустой строке.
"\d{2}-\d{5}"
Проверяет на соответствие идентификационный
номер, состоящий из 2-х цифр, дефиса и после еще 5-и
цифр.
"<(.*)>.*<\/\1>"
Соответствует HTML тагу.
Следующая таблица содержит полный список метасимволов и их
поведения в контексте регулярных выражений:
Символ
Описание
\
Помечает следующий за ним символ как специальный символ,
литерал, обратную ссылку или восьмеричную escape-
последовательность. Например, 'n' соответствует символу "n", а '\n '
уже соответствует символу новой строки. Последовательность '\\'
соответствует '\', '\(' соответствует '('.
^
Соответствует положению в начале входной строки. Если
свойство Multiline объекта RegExp установлено в значение True, ^
также соответствует и положению после '\n' или '\r'.
$
Соответствует положению в конце входной строки. Если
свойство Multiline объекта RegExp установлено в значение True, $
также соответствует и положению перед '\n' или '\r'.
*
Соответствует повторению предшествующего подвыражения
ноль или более раз. Например, 'zo*' соответствует 'z' и 'zoo'. *
62
является эквивалентом {0,}.
+
Соответствует повторению предшествующего подвыражения
один или более раз. Например, 'zo+' соответствует 'zo' и 'zoo', но не
соответствует 'z'. + является эквивалентом {1,}.
?
Соответствует повторению предшествующего подвыражения
ноль или один раз. Например, "do(es)?" соответствует "do" в "do" или
в "does". ? является эквивалентом {0,1}
{n}
n является положительным целым числом. Соответствует точно
n-ному количеству повторений. Например, 'o{2}' не соответствует 'o'
в "Bob", но соответствует 2-ум 'o' в "food".
{n,}
n является положительным целым числом. Соответствует хотя
бы n-ному количеству повторений. Например, 'o{2,}' не
соответствует "o" в "Bob" но соответствует всем 'o' в "foooood".
'o{1,}' является эквивалентом 'o+'. 'o{0,}' является эквивалентом 'o*'.
{n,m}
m и n это положительные целые числа, причем n <= m.
Соответствует хотя бы n-ому и не более чем m-ому числу
повторений. Например, "o{1,3}" соответствует первым трем 'o' в
"fooooood". 'o{0,1}' является эквивалентом 'o?'. Обратите внимание,
что Вы не можете размещать пробел между запятой и цифрами.
?
Когда этот символ следует непосредственно за любым другим
квантификатором (*, +, ?, {n}, {n,}, {n,m}), тогда шаблон
соответствия становится "нежадным". "Нежадный" шаблон
соответствует насколько это возможно минимальной части строки, в
которой производится поиск, в то время как заданный по умолчанию
"жадный" шаблон соответствует максимально возможно большей
части этой строки. Например, 'o+?' в строке "oooo" соответствует
одиночному "o", в то время как 'o+' соответствует всем 'o'.
.
Соответствует любому одиночному символу, кроме "\n". Чтобы
шаблон соответствовал любому одиночному символу, включая и "\n",

Смотрите также:

"Автоматизация обработки заявок ООО "Проектно-Строительная Компания"
"Автоматизация процесса аттестации персонала для ООО "Нэт Бай Нэт Холдинг"
"Анализ интернет-активности конкурентов ( на примере конкурентов "Газпром нефть")
"Бухгалтерский учёт и аудит расчётов с подотчётними лицами в организации на примере ООО "ЛОЦ 10""
«Психологическое сопровождение персонала в организации на примере ООО «Крокус»
Cовершенствование деловой оценки персонала в организации (на примере ООО "Даймонд кейтеринг развитие")
IPO - инструмент финансирования деятельности организации. На примере ПАО «Нефтяная компания «Лукойл»
PR как средство продвижения организации (на примере ПАО "Тамбовский завод "Комсомолец им. Н.С. Артемова")
PR-коммуникации в сфере общественного питания (на примере кафе-кондитерской «Cream Cheese»)
SMM как средство повышения эффективности работы учреждений социокультурной сферы (на примере Малого театра)