BC/NW 2006, №2, (9) :11.4
ВОПРОСЫ ПРИМЕНЕНИЯ СОВРЕМЕННЫХ ТЕХНОЛОГИЙ ПОСТРОЕНИЯ ИНФОРМАЦИОННЫХ
СИСТЕМ ОТ MICROSOFT ПРИ РЕАЛИЗАЦИИ КИС ВУЗА.
Мастюлин В.В.
(Москва,
Информационно-Вычислительный центр Московского Энергетического Института
(Технического Университета), Россия
Значительно возросшая
производительность современных вычислительных систем (во всех смыслах:
быстродействие, объемы оперативной и дисковой памяти, скорость сетевого
взаимодействия) обусловила повышенные требования к объемам функциональности
информационных систем (ИС), поскольку позволила решать ранее неразрешимые
задачи. Это, в свою очередь, приводит к повышению сложности таких систем. Таким
образом, сложность выходит на первое место в числе проблем реализации ИС.
Проблема сложности была
обозначена в конце 80-х годов прошлого века, и
ИТ-сообщество выработало ряд мер по контролю над сложностью. В первую очередь
это объектно-ориентированная парадигма в проектировании и реализации ИС.
Однако теоретические
разработки в области ООП в значительной степени опережали реализацию конкретных
промышленных технологий, использующих эти принципы. То есть, было много
различных реализаций программных и инструментальных сред, но, как правило,
практическая реализация накладывала ограничения на многие основополагающие
принципы.
Тем не менее, индустрия
прилагала значительные усилия, направленные на концептуально полные реализации
принципов ООП, в результате чего в последнее время появились системы
проектирования и программирования, в полной мере использующие возможности,
предоставляемые ООП. В докладе рассматриваются особенности средств
проектирования и программирования от Microsoft, входящие в состав Microsoft
.NET применительно к ИС на базе «толстого» клиента (.NET Forms)..NET
базируется на языково-независимой среде выполнения, представленной в виде
системы выполнения промежуточного языка, и мощной библиотеки классов.
Несмотря на многоязычную
природу, «сердцем» .NET безусловно является язык C#, строго и последовательно
реализующих объектную парадигму. Другой особенностью .NET является строгая
типизация данных, позволяющая многократно снизить вероятность ошибок и
обнаруживающая большинство потенциальных проблем на этапе компиляции.
Раннее связывание также
уменьшает вероятность ошибок, а средства позднего связывания являются
типо-защищенными.
Среда разработки
предоставляет множество графических инструментов как для проектирования и
программирования пользовательского интерфейса, так и для управления структурами
программ и данных.
Современная практика
предполагает разделение ИС на уровни – слои. Обычно применяется следующее
разделение:
·
Слой доступа к данным (Data Access Layer),
·
Слой, реализующий бизнес-логику (Business Layer),
·
Презентационный слой, или интерфейс пользователя (UI).
Поскольку данные в ИС
традиционно хранятся в реляционных СУБД (а лучшего пока не придумана),
возникает проблема сопоставления данных на реляционной платформе с программными
структурами, реализованными в ООП. Так называемый объектно-реляционный мэппинг.
.NET предлагает для решения
этой проблемы механизм типизированных наборов данных (Typed Dataset) и ряд
графических инструментов для управления ими. Эти инструменты автоматически
порождают код, который компилируется в составе проектов. Такой принцип широко
распространен в .NET и поддержан специальными утилитами.
Кроме того в анонсируемой
версии С# 3.0 (промышленный выпуск ожидается в конце
года, а в настоящее время доступны вполне работоспособные пре-релизы) язык
будет расширен для включения в состав языка высокого уровня конструкций,
обрабатывающих реляционные запросы для любых данных, представимых в виде
множеств (в том числе, естественно, данных, хранящихся в реляционных СУБД). Эта
технология получила название запросов, интегрированных в языки (LINQ).
Кроме того, в LINQ для
реляционных СУБД входят средства автоматизированного объектно-реляционного
мэппинга и соответствующих расширений в метамодель.
Расширяемая метамодель
позволяет также описывать классы бизнес-логики максимально точно и
функционально.
Средства привязки элементов
пользовательского интерфейса (байдинг) обеспечивают сопоставление объектов
данных, представленных в программе, с пользовательским интерфейсом
декларативно, практически без кодирования.
Помимо средств
программирования Microsoft предлагает ряд инструментов моделирования,
основанных на стандартах IDEF1x (IE) и UML, позволяющих
решать задачи проектирования, постановки и документирования ИС.
Таким образом, семейство
технологий Microsoft обеспечивает полный цикл построения ИС и, как показала практика
разработки и реализации компонент КИС вуза, снизить затраты и значительно
повысить качество (надежность, эргономику и потребительские свойства) продукта.