Смекни!
smekni.com

Разработка системы автоматизации управления фермой СХПК "Алматы" (стр. 5 из 11)

При «горячей» и «теплой» связи существует возможность использования разового уведомления, когда после первой посылки информации связь между объектами разрывается. [3]

2.3 Управление объектами

После определения характера взаимодействия между объектами системы встает вопрос о необходимости описания с их помощью конкретной структуры кооператива. Как отмечалось, такая операция является завершающей и может выполняться на этапе внедрения системы в кооперативе. Очевидно, что данная операция должна выполняться сравнительно легко и позволять гибко модифицировать связи между компонентами системы. В этом случае можно использовать такие средства, предоставляемые OLE, как OLE Automation и автоматные контроллеры. Если до этого момента рассматривался обмен данными между объектами, то с использованием Automation объекты получают возможность управлять действиями друг друга. Обмен информацией происходит через интерфейс IDispatch посредством вызова метода Invoke для активизации действий, выполняемых данным объектом. В системе управления кооперативом имеет смысл определить, например, расдача корма животным, ленточным способом, посредством компьютера, который будет инициатором создания документов для отражения в документообороте движения материальных ценностей. Список поддерживаемых объектом методов возвращается путем вызова метода Get Type lnfo интерфейса I Dispatch аналогично тому, как запрашивается список поддерживаемых форматов через интерфейс I Data Object. Благодаря этому существует возможность добавления на этапе функционирования системы новых объектов, отражающих изменения в реальной жизни и их интеграции в систему. Необходимо заметить, что это не требует изменений в уже существующих объектах.

2.4 Распределенная обработка данных

Перед системой управления кооператива встает задача определения рабочих мест пользователей информации и обмена информацией между ними. Одним из преимуществ технологии OLE является то, что факт запроса объекта с другой машины проходит «прозрачно» для локальных объектов. Это позволяет масштабировать существующее приложение в рамках всего предприятия без изменения характера взаимодействия между объектами.

Таким образом, предлагаемый способ построения моделей сложных систем, в основе которого лежит создание среды функционирования объектов предметной области, может быть использован и в других плохо формализуемых областях деятельности. Управление производственными процессами, имитация работы сложных механизмов, проектирование новых устройств - вот лишь некоторые из многих возможных областей применения. Поддержка свойств динамического наследования является основным требованием при анализе и управлении системой на различных уровнях детализации.

Предлагаемая архитектура позволяет создавать модульные, хорошо масштабируемые системы, которые могут приспосабливаться к изменениям, происходящим в реальной жизни. Процедуры добавления новых объектов, установление новых и модификация существующих связей может выполняться в процессе работы системы. Появляется возможность использования объектов, разработанных другими производителями с применением различных программных инструментов. Гибкая структура взаимодействия между объектами позволяет осуществлять интеграцию с уже существующими системами, что позволяет сохранить значительные инвестиции, сделанные в программное обеспечение.

2.5 Требования к интерфейсу

Графический интерфейс пользователя является средой работы пользователя с его данными, поэтому его разработка является одним из важнейших моментов написания хорошей конкурентоспособной системы. В настоящее время основные элементы интерфейса унифицированы и подчиняются общему стилю работы операционной системы.

Поскольку наша система разрабатывается для работы в графической системе Windows 9x, то имеет смысл рассмотреть коммерческий стандарт на приложения, предложенный Microsoft, который дает право ставить на программный продукт логотип “DesignedforWindows 9x/NT”.

Этот логотип требует соблюдения следующих принципов при разработке программ:

Командует пользователь:

- пользователь должен быть инициатором всех операций;

- он всегда должен иметь возможность вмешаться в автоматический процесс;

- следует учесть возможность “персонификации” приложения;

- быстрое реагирование приложения на команды пользователя;

- интерактивность.

Наглядность:

- образное представление операций, действий – “рисунок стоит тысячи слов”;

- манипулирование объектами в среде приложения;

- “метафоры” для объектов действий.

Единообразие:

- Единообразие методов работы с операционной системой;

- единообразие внутри приложения;

- единообразие метафор.

Терпимость к пользователю:

- Обратимость или исправимость всех действий.

Обратная связь:

- обратная информация о ходе процесса или режиме работы.

Эстетика:

- приятный внешний вид;

- системная палитра цветов;

- принцип “7±2 вариантов выбора”.

Простота:

- легкость освоения и применения;

- баланс между простотой и доступностью функций и данных.

Проектирование с ориентацией на данные:

- выбор объекта действий обеспечивает доступ к средствам управления объектом, изменения объекта.

Проектирование с ориентацией на документы:

- концепция блока данных как документа (а не как файла).

2.6 Сравнение SQL-серверов ведущих фирм-производителей

SQL-сервер на совеременном этапе развития объединяет все новейшие технологии хранения данных и обеспечения доступа к ним. Важным качеством инженера является способность разбираться во всем многообразии современных продуктов данной категории и выделять преимущества и недостатки каждого из них: Motorola, Nokia, MCI, NorthernTelecom, PhiladelphiaStockExchange, BearStearns, FirstNationalBankofChicago, theMoneyStore, theUSArmy, NASA, Boeing.. Приложения подобного рода имеют много общих требований: легкость использования и управления, производительность, масштабируемость, переносимость, использование ресурсов и восстановление после сбоя. Borland InterBase разработан именно с целью удовлетворять всем этим требованиям.

Даже если большинство систем не требуют экзотических возможностей, на вышеперечисленные, они все равно желают от РСУБД тех же характеристик для реальных задач и решения реальных проблем. Перечисленные характеристики Borland InterBase также очень хорошо подходят для рабочих групп, отделов, и приложений уровня кооператива. BorlandInterbase выбран нами для реализации информационной базы автоматизированной системы управления. [8]

2.7 Механизмы блокировок

Целостность данных - самое важное качество для корпоративных данных. Существует много способов для обеспечения целостности данных в RDBMS. Наиболее распространены пессимистическая и оптимистическая схемы блокировок. Пессимистические блокировки - простейший в реализации способ, когда блокируются страницы, индексы или таблицы для обеспечения целостности транзакции. Оптимистические блокировки предполагают отсутствие блокировок для клиентского приложения. При этом используются более сложные механизмы для обеспечения целостности транзакции. Оптимистические блокировки, обеспечивая целостность данных, обладают оптимальной производительностью и легкостью в использовании.

2.8 Страничные блокировки

Для того, чтобы гарантировать целостность данных, архитектура SQL Server использует механизм блокировок страниц данных. Страница данных это набор записей, хранимых в некоторой области жесткого диска на сервере. Все страницы имеют один и тот же размер, который определяется конфигурацией сервера и базы данных. В зависимости от длины записей и размера страницы, страница может содержать определенное количество записей. Записи в большинстве случаев добавляются в конец таблицы. Базовый размер страницы в SQL Server равен 2K, и это является минимальной единицей блокировки.

Страничные блокировки требуют от разработчика глубоких знаний о конкурентной работе с данными и настройке кода для получения максимально конкурентного доступа. Страничная блокировка блокирует все записи или соответствующие ссылки в индексах, хранимые на одной странице. Например, если размер записи в таблице равен 100 байт, а размер ключа индекса равен 10 байт, то блокировка одной страницы данных и одной страницы индекса приведет к куммулятивному эффекту блокирования 18-ти записей и 180-ти ключей индекса.

То, что "читатель" записи блокирует страницу, на которой эта запись находится, и ее смежные страницы, может привести к проблемам производительности для пользователей, которые нуждаются в доступе к данным на заблокированных страницах. Вместо того, чтобы сосредоточиться на разработке правил управления данными, разработчик вынужден описывать сложную обработку возможного возникновения конфликтов блокировок. Это увеличивает сложность приложения, и повышает стоимость разработки и сопровождения.

Индексы SQL Server блокируются точно так же, как и страницы данных соответствующих таблиц, однако эффект блокировки страницы индекса значительно шире. Записи в таблице хранятся в большинстве случаев в случайном порядке, исключение составляют кластерные индексы. Когда обновляется страница данных, то должен обновиться соответствующий индекс. Как и у таблиц, данные индексов хранятся на страницах. Для обновления страницы индекса, эта страница должна быть сначала заблокирована. В приложениях, работающих с большими объемами данных, это может сильно снизить производительность системы.

Для обеспечения целостного представления данных в Sybase или Microsoft SQL Server разработчик должен использовать блокировки таблиц. Блокировка таблицы вызывает полную блокировку, разделяемую, для обновления или исключительную [Shared, Update, or Exclusive. Представьте себе свод баланса бухгалтером - пока свод не закончен, архитектура SQL Server требует чтобы разработчик полностью заблокировал таблицу на время свода. Кроме этого может потребоваться полное блокирование связанных таблиц.