ВВЕДЕНИЕ
Подъем сельского хозяйствана принципиально новый научно-технический и организационно-экономическийуровень, перевод его на рельсы интенсивного развития, достижение высшегомирового уровня производительности общественного труда, качества продукции иэффективности производства требуют коренного совершенствования управления.Способствовать этому призваны АСУ, которые являются продуктом широкой электронизациинароднохозяйственного комплекса.
Автоматизированные системы управления в настоящее времяшироко используются во всех звеньях управления народным хозяйством. ГОСТ 24.003-84следующим образом определяет АСУ: «Автоматизированная система управления — система «человек — машина», обеспечивающая эффективное функционированиеобъекта, в которой сбор и переработка информации, необходимой для реализациифункций управления, осуществляется с применением средств автоматизации ивычислительной техники».
Только такаяавтоматизированная система может считаться АСУ, результатом работы которойявляется эффективное функционирование объекта. При этом объектом может бытьотдельное устройство или технологический процесс, предприятие, отрасль,сельское хозяйство.
В экономике подэффективностью понимается способность к достижению цели с наименьшимииздержками. При определении эффективности сопоставляют полезный эффект изатраты на его получения. Понятие эффективности конкретизируется в каждойобласти человеческой деятельности в зависимости от специфической формы искомогоэффекта. Понятие «экономический эффект» связано с содержанием целей,преследуемых хозяйственной деятельностью. Наиболее общая цель -удовлетворениематериальных и культурных потребностей народа. Ей подчинено производство ираспределение экономических благ. Поэтому теоретически экономический эффектпроизводства измеряется степенью удовлетворения потребностей общества илиполезным эффектом производимых благ. Показателями экономической эффективностимогут служить производительность труда фондоотдача, выпуск продукции на единицузатрачиваемого сырья и материалов и т. д.
Эффективность АСУопределяется тем конкретным экономическим эффектом производства, которыйдостигается благодаря применению в управлении средств автоматизации ивычислительно техники.
Поэтому цель дипломногопроекта и состоит в том, чтоб автоматизировать СХПК ПЗ ”Алматы”, а вчастности ферму. Автоматизация этого комплекса даст кооперативу многопреимуществ и в частности сократит время обработки информации и ускорит доступк требуемой документации. Управлять фермой можно будет с одного рабочего места.До разработки дипломного проекта в ПЗ ”Алматы” не было автоматизированнойсистемы управления. На рабочих местах экономистов стояли обычные компьютеры онибыли подключены к одной системе, вывод документов на печать.
1. ОРГАНИЗАЦИОННО-ПРАВОВАЯОСНОВА ДЕЯТЕЛЬНОСТИ СХПК ”АЛМАТЫ”
СХПК ”Алматы” являетсяпроизводственным кооперативом. Производственным кооперативом признаетсядобровольное объединение граждан на основе членства для совместнойпредпринимательской деятельности, основанном на их личном трудовом участии иобъединение его членов имущественных взносов.
Правовое положениепроизводственного кооператива и его членов определяется в соответствии сгражданским кодексом, законодательными актами республики Казахстан.
Главной задачейпроизводственного кооператива является удовлетворение потребностей населения вс/х продукции.
Для осуществленияпроизводственно хозяйственной деятельности кооператива, кооператив приобретаетнеобходимое ему сырье, материалы, инструменты, оборудование, машины и другоеимущество.
Производственныйкооператив ”ПЗ ”Алматы” организовывался по желанию граждан на собрании, вТалгарском районе.
Устав кооператива былпринят общим собранием членов кооператива, который разрабатывался группой людейсоздающие кооператив. Кооператив считается созданным с момента регистрацииустава, являющегося основным документом, регулирующим его деятельность.
В уставе кооперативаопределяются наименования кооператива, его местонахождение, предмет и целидеятельности, права и обязанности членов кооператива, органы управления идругие аспекты не противоречащие законодательству.
Наряду с уставом былиразработаны нормативные документы, регулирующие деятельность кооператива.
Устав кооперативасчитается принятым если за него проголосовало более половины членов.
Производственныйкооператив ”ПЗ” Алматы” обладает полной хозяйственной самостоятельностью.Все производственно-хозяйственные взаимоотношения кооператива регулируютсядоговорами.
СХПК ”ПЗ” Алматы”самостоятельно планирует свою производственно-хозяйственную деятельность,финансовую, а также социальное и культурно-бытовое развитие хозяйства.
Доход кооперативаформируется за счет выручки от реализации сельскохозяйственной продукциикооператива.
Материальные затратысоставляют расходы, связанные с производством продукции, которые возмещаются засчет валового дохода кооператива, оставляющего у него после отчислений в бюджетподоходного налога.
Материальные затратысоставляют расходы, связанные с производством продукции, которые возмещаются засчет валового дохода кооператива, оставляющегося у него после отчислений вбюджет подоходного налога.
Кооператив самостоятельноопределяет виды, размеры и порядок формирования и использования фондов.
В СХПК ”ПЗ” Алматы”существуют: фонд развития кооператива, пенсионный фонд, фон оплаты труда идругие.
Кооператив можетпрекратить свою деятельность в связи с длительной неплатежеспособностью, принарушении законодательства, устава кооператива. Ликвидация кооперативапроизводится по решению общего собрания его членов.
Финансовая ипроизводственная деятельность хозяйства осуществляется на основе хозяйственнойсамостоятельностью. Производственный кооператив имеет самостоятельный баланс,расчетные счета в банках, является юридическим лицом.
Предприятие имеет своифонды которые являются совокупностью предметов производственного назначения,которые в натуральной форме функционируют в хозяйствах на протяжении многихлет. В составе основных фондовпроисходят постоянные изменения, вступают в эксплуатацию новые болеесовершенные средства производства и выбывают изношенные.[6]
1.1Организационная структура СХПК ПЗ ”Алматы”
— Директоркооператива:
– исполнительныйдиректор.
— Исполнительныйдиректор:
– главныйэкономист;
– отдел поставоккормов;
– отделобслуживания техники.
— Главныйэкономист:
– экономист поземле;
– экономист поживотноводству;
– экономист покадрам;
– главныйбухгалтер.
— Главныйбухгалтер:
– бухгалтер по земле;
– бухгалтер поживотноводству;
– бухгалтер позаработной плате управленческого персонала и рабочих.
— Экономист поживотноводству:
– зоотехник;
– ветеринар;
– обслуживающийперсонал фермы;
– доярки;
– специалист помашинной и обслуживающей техники;
– уборщики фермы.
— Экономист поземле:
– агротехник;
– специалист помашинной и обслуживающей техники;
– рабочие.
Таблица 1-Технико-экономические показателиПоказатели 1998г. 1999г.
Изменения
+/-
Темп
роста
% 1.Среднесписочная численность работников, чел. 145 216 —- —- 2.Среднегодовая стоимость ОФ тыс.тг. —- 3221 3221 3.Среднегодовая стоимость остатков оборотных средств тыс.тг.. 40885,5 175624 134738,5 430 4.Выручка от реализации в сопоставимых ценах, тыс.тг. 199622 236779 37157 118 5.Затраты на пр-во реализованной продукции, тыс.тг. 175126 202286 27160 115 6.Прибыль от реализации продукции, тыс.тг. 24496 34493 9997 141 7.Затраты на 1тг. реализованной продукции, тг/тг (п.5/п.4) 0,88 0,85 -0,03 96 8.Фондоотдача на 1 тг ОФ, тг/тг (п.4/п.2) —- 73,5 73,5 9.Фондовооруж-ть, тг./чел (п.2/п.1). —- 536,8 536,8 10.Производительность труда, тг/тг (п.4/п.1). 33270 39463 6193 118 11.Рентабельность продаж %, (п.6/п.4). 12 15 3 125
Таблица 2 — Баланскооператива (тыс.тг.)
/>
Изтаблицы 2, можно сделать следующие выводы, в 1999 году появились внеоборотныеактивы в абсолютном выражении они составила 6 422 тыс.тг., а удельный вес их 2.08%.
Стоимостьоборотных активов увеличилась на 269 784 тыс.тг., это произошло в основномиз-за увеличения запасов на 183 624 тыс.тг., увеличилась вес запасов составил68,36 % и он увеличился с начала года на 11.04 %, сумма дебиторскойзадолженности увеличилась на 41 095 тыс.тг., но удельный вес снизился на 15.7%,денежные средства увеличились на 27 585 тыс.тг., удельный вес увеличился на2,24 %.
Величинакапиталов и резервов увеличилась на 14 900 тыс.тг, удельный вес составил 4,82%, это произошло за счет увеличения нераспределённой прибыли
отчётногогода.
Краткосрочныепассивы увеличились на 245 872 тыс.тг., но удельный вес их снизился на 4,8 %,это произошло, целиком, за счет увеличения кредиторской задолженности на 207742 тыс.тг., удельный вес которой увеличился на 43,62 %.[7]
1.2 Анализ финансовойустойчивости кооператива
Оценка финансовойустойчивости предполагает расчёт величины собственных оборотных средств.
Таблица 3 — Расчётвеличины собственных оборотных средств (тыс.тг.)
/>
Изтаблицы 3, можно сделать следующие выводы, величина собственногокапитала увеличилась на 14 900 тыс.тг., темп роста составил 135554.55 %. Собственныеоборотные средств увеличились на 8 478 тыс.тг., темп роста составил 77172.73 %.Величина оборотных средств увеличилась на 254 346 тыс.тг., темп роста составил624.96 %. Краткосрочные пассивы увеличились на 38 130 тыс.тг., что составило208,8 % от прошлого года. Текущая кредиторская задолженность составила 13 573 и221 314 тыс.тг, соответственно, за 1998 и 1999 год. Собственные оборотныесредства, с учетом всех источников финансирования составили 48 630 и 302 979тыс.тг., за 1998 и 1999 год. С учетом всех источников финансированиянаблюдается излишек собственных оборотных средств. Излишек составил 179 и 182тыс.тг., за 1998 и1999 годы.
Взаключении необходимо отметить, что на основе рассчитанных показателей можносделать вывод, что в 1998 и в 1999 году у предприятия было не устойчивоефинансовое состояние.[7]
Кромерасчета показателя собственных оборотных средств, финансовую устойчивостьоценивают с помощью системы показателей.
Однойиз важнейших характеристик устойчивости финансового состояния кооператива, егонезависимости от заемных источников средств является коэффициент автономии(Ка), равный доле источников собственных средств в общем итоге баланса-нетто.Нормальное минимальное значение коэффициента автономии оценивается на уровне0,5. Значение Ка>0,5, показывает, что все обязательства предприятия могутбыть покрыты его собственными средствами. Выполнение ограничения Ка>0,5важно не только для самого предприятия, но и для его кредиторов. Росткоэффициента автономии свидетельствует об увеличении финансовой независимостикооператива, снижении риска финансовых затруднений в будущие периоды. Такаятенденция, с точки зрения кредиторов, повышает гарантии погашения кооперативомсвоих обязательств.
Обязательства п/п
Ка= — (1)
Валютабаланса
Коэффициентавтономии дополняет коэффициент соотношения заемных и собственных средств(Кз/с), который представляет собой частное от деления всей суммы обязательствпо привлеченным заемным средствам на сумму собственных средств. Он указывает,сколько заемных средств привлек кооператив на один тенге вложенных в активысобственных средств. Нормальное ограничение для коэффициента соотношениязаемных и собственных средств Кз/с
Обязательства п/п
Кз/с= ——————————————————– (2)
Собственныеср-ва п/п
Такжесущественной характеристикой финансового состояния является коэффициентсоотношения мобильных и иммобилизованных средств (Км/и)… Значение коэффициентав большей степени обусловлено отраслевыми особенностями круговорота средстванализируемого предприятия.
Оборотныесредства п/п (мобил)
Км/и= — (3)
Внеоборотныеср-ва п/п (иммобил)
Весьмасущественной характеристикой устойчивости финансового состояния являетсякоэффициент маневренности (Км), равный отношению собственных оборотных средствпредприятия к общей величине источников собственных средств. Он показывает,какая часть собственных средств кооператива находится в мобильной форме, позволяющейотносительно свободно маневрировать этими средствами. Высокое значениекоэффициента маневренности положительно характеризует финансовое состояние,однако каких-либо устоявшихся в практике нормальных значений показателя несуществует. Иногда в специальной литературе в качестве оптимальной величиныкоэффициента рекомендуется 0,5.
Собственныеоборотные ср-ва п/п
Км= — (4)
Общаявеличина ист. собств. ср-в
Всоответствии с той определяющей ролью, какую играют для анализа финансовойустойчивости абсолютные показатели обеспеченности кооператива источникамиформирования запасов и затрат, одним из главных относительных показателейустойчивости финансового состояния является коэффициент обеспеченности запасови затрат собственными источниками формирования (Ко), равный отношению величинысобственных оборотных средств к стоимости запасов и затрат предприятия.Нормальное ограничение, получаемое на основе статистических усреднений данных хозяйственнойпрактики, для этого коэффициента имеет следующий вид: Ко>0,6 — 0,8.
Собственныеоборотные ср-ва п/п
Ко= — (5)
Стоимостьзапасов и затрат
Важную характеристику структуры средств кооператива дает коэффициентимущества производственного назначения (Кп.им.), равный отношению суммыстоимостей основных средств (за минусом износа), капитальных вложений,оборудования, производственных запасов и незавершенного производства к итогубаланса. На основе данных хозяйственной практики нормальным считается следующееограничение показателя: Кп.им.>0,5. В случае снижения значения показателяниже критической границы целесообразно привлечение долгосрочных заемных средствдля увеличения имущества производственного назначения, если финансовыерезультаты в отчетном периоде не позволяют существенно пополнить источникисобственных средств.
ОС+К.Вл.+Обор-е+ПЗ+Нез.Пр.
Кп.им.= — (6)
Валютабаланса
Таблица 4 — Оценкафинансовой устойчивости
КОЭФФИЦИЕНТЫ
на начало года
Наконец года
изменение за год К автономии 1,00 0,95 -0.05 К соотношения собст. и заемных средств 4419,91 19,75 -4400,16 К маневренности 1,00 0,57 -0.43 К обеспеченности собственными оборотными средствами 0,00 0,03 0,03
Изтаблицы 4, можно сделать следующие выводы, К автономии уменьшился на 0.05,причем он не удовлетворяет нормативному значению, К соотношения собственных изаемных средств, так же уменьшился на 4400.16, причем, нормальным значением дляэтого коэффициента является от 0-1, К маневренности снизился на 0.43. Кобеспеченности собственными оборотными средствами, увеличился на 0.03.
Задача анализаликвидности баланса возникает в условиях рынка в связи с усилением жесткостифинансовых ограничений и необходимостью давать оценку кредитоспособностикооператива, то есть его способности своевременно и полностью рассчитываться повсем своим обязательствам. Ликвидность баланса определяется как степеньпокрытия обязательств кооператива его активами, срок превращения которых вденьги соответствует сроку погашения обязательств. От ликвидности балансаследует отличать ликвидность активов, которая определяется как величина,обратная времени, необходимому для превращения их в денежные средства. Чемменьше время, которое потребуется, чтобы данный вид активов превратился вденьги, тем выше его ликвидность.
Анализ ликвидности балансазаключается в сравнении средств по активу, сгруппированных по степени ихликвидности и расположенных в порядке убывания ликвидности, с обязательствамипо пассиву, сгруппированными по срокам их погашения и расположенными в порядкевозрастания сроков.
В зависимости от степениликвидности, то есть скорости превращения в денежные средства, активы кооперативаразделяются на следующие группы:
А-1) наиболее ликвидныеактивы — к ним относятся все статьи денежных средств кооператива икраткосрочные финансовые вложения;
А-2) быстро реализуемыеактивы — дебиторская задолженность и прочие активы;
А-3) медленно реализуемыеактивы — запасы и затраты, (минус) НДС (плюс) расчёты с учредителями (плюс)долгосрочные финансовые вложения (за исключением вкладов в УК);
А-4) трудно реализуемыеактивы — статьи раздела 1 актива, за исключением статей этого раздела,включенных в предыдущую группу.
Пассивы балансагруппируются по степени срочности их оплаты:
П-1) наиболее срочныеобязательства — к ним относится кредиторская задолженность и ссуды непогашенныев срок;
П-2) краткосрочныепассивы — краткосрочные кредиты и заемные средства;
П-3).долгосрочные пассивы- Долгосрочные кредиты и займы;
П-4) постоянные пассивы — 1 раздел «Источники собственных средств» пассива баланса.
Дляопределения ликвидности баланса следует сопоставить итоги приведенных групп поактиву и пассиву. Баланс считается абсолютно ликвидным, если имеют местоследующие соотношения:
А-1 > П-1
А-2 > П-2
А-3 > П-3
А-4
Выполнениепервых трех неравенств с необходимостью влечет выполнение и четвертогонеравенства, поэтому практически существенным является сопоставление итоговпервых трех групп по активу и пассиву. Четвертое неравенство носит«балансирующий» характер и в то же время имеет глубокий экономическийсмысл: его выполнение свидетельствует о соблюдении минимального условияфинансовой устойчивости — наличии у кооператива собственных оборотных средств.В случае, когда одно или несколько неравенств системы имеют знак,противоположный зафиксированному в оптимальном варианте, ликвидность баланса вбольшей или меньшей степени отличается от абсолютной. При этом недостатоксредств по одной группе активов компенсируется их избытком по другой группе,хотя компенсация при этом имеет место лишь по стоимостной величине, поскольку вреальной платежной ситуации менее ликвидные активы не могут заместить болееликвидные.
Сопоставлениенаиболее ликвидных средств и быстро реализуемых активов с наиболее срочнымиобязательствами и краткосрочными пассивами позволяет выяснить текущуюликвидность. Сравнение же медленно реализуемых активов с долгосрочнымипассивами отражает перспективную ликвидность. Текущая ликвидностьсвидетельствует о платежеспособности (или неплатежеспособности) кооператива наближайший к рассматриваемому моменту промежуток времени. Перспективнаяликвидность представляет собой прогноз платежеспособности на основе сравнениябудущих поступлений и платежей (из которых в соответствующих группах актива ипассива представлена, конечно, лишь часть, поэтому прогноз достаточноприближенный).
Таблица 5 — Анализликвидности кооператива (тыс. тенге)
/>
Из таблицы 5 можносделать следующие выводы: наибольший удельный вес приходится на медленнореализуемые активы, а наименьший на наиболее ликвидные. Причем по пассивунаибольший удельный вес приходится в начало года на краткосрочные пассивы, а вконце года на наиболее срочные обязательства, т.е. можно сказать, что вкритической ситуации кооператив не сможет рассчитаться по своим обязательствам.
Обобщающий показатель ликвидностибаланса.
0,08*3853+0,34*16725+0,57*27873
Ан.г. =————————————————— = 0,75
0,28*13573+0,72*35046
0,10*31438+0,19*57820+0,69*213539
Ак.г. =————————————————— = 0,91
0,72*221315+0,24*73176
Обобщающийпоказатель ликвидности увеличился в 1999 году, по сравнению с 1998 годом на0.16.
Анализплатежеспособности с помощью относительных показателей ликвидности.
1.К абсолютной ликвидности
А1 3853
КАЛн.г.= — = — = 0,08 (7)
П1+П2 13573+35046
А1 31438
КАЛк.г.= — = — = 0,11 (8)
П1+П2 221315+73176
2.К критической ликвидности
А1+А2 3853+16725
ККрЛн.г= — = — = 0,42 (9)
П1+П2 13573+35046
А1+А2 31438+57820
ККрЛк.г= — = — = 0,30 (10)
П1+П2 221315+73176
3.К текущей ликвидности
А1+А2+А3 3853+16725+27873
КТЛн.г= — = — = 1,00 (11)
П1+П2 13573+35046
А1+А2+А3 31438+57820+213539
КТЛк.г= — = — = 1,03 (12)
П1+П2 221315+73176
Изполученных расчетов, можно сделать следующие выводы, К абсолютной ликвидностине отвечает нормативному значению не в 1998, не в 1999 году, хотя в 1999 году Кабсолютной ликвидности и увеличился на 0,03.
Ккритической ликвидности, так же не соответствует нормативному значению, причемв 1996 году наблюдается снижение на 0,12.[1]
Ктекущей ликвидности не соответствует нормативному значению, но в 1999 годунаблюдается его незначительное увеличение на 0,03. Т.е., можно сделатьзаключение, что кооператив неплатежеспособен. Все значения коэффициентовниже нормативных.
Коэффициент текущейликвидности рассчитывается по формуле:
А1+А2+А3
К1 = — (13)
П1+П2
Откуда на начало периода:
К1 = 1,00
а на конец:
К1 = 1,03
Коэффициентобеспеченности собственными средствами рассчитывается по формуле:
П4-А4
К2 = — (14)
А1+А2+А3
В нашем примере на началопериода это составит:
11
К2 =——————————- = 0,0002.
3853+16725+27873
а на конец:
14911-6442
К2 =———————————- = 0,0280.
31438+57820+213539
В зависимости отполученных конкретных значений К1 и К2 анализ и оценка структуры балансаразвиваются по двум направлениям:
а) в случае, если хотя быодин из этих коэффициентов меньше предельно допустимого значения, следуетопределить коэффициент восстановления платежеспособности за 6 месяцев последующей форме:
К3а = ( К1ф + 6 / Т * (К1ф — К1н ) ) / 2 (15),
где: К1к — фактическоезначение коэффициента текущей ликвидности
(К1) в конце отчетногопериода;
К1н — фактическоезначение коэффициента текущей ликвидности
(К1) начале отчетногопериода;
6 — период восстановленияплатежеспособности в месяцах;
Т — отчетный период вмесяцах (12 месяцев);
б) если коэффициентвосстановления платежеспособности примет значение более 1.0, этосвидетельствует о наличии реальной возможности у кооператива восстановить своюплатежеспособность. Если этот коэффициент окажется меньше 1.0, то у кооперативанет реальной возможности восстановить свою платежеспособность.
Длянашего примера определять значения К3б нет необходимости, поскольку значения К1и К2 меньше предельных значений (соответственно 1,00 и 1,03).
ЕслиК1 и К2 меньше соответствующих предельных значений, следует рассчитатькоэффициент восстановления платежеспособности за 6 месяцев:
К1к +6 / Т * (К1к — К1н)
К3а = — (16),
К1норм
где: 6 — периодвосстановления платежеспособности;
Т — отчетный период (12месяцев);
К1норм — нормативноезначение коэффициента текущей ликвидности (К1), равное 2.
Есликоэффициент утраты платежеспособности К3а примет значение больше 1, то укооператива имеется реальная возможность восстановить свою платежеспособность.В нашем примере К1к = 1,03: отсюда:
1,03+6/12*(1,03-1,00)
К3а = — = 0,5225
2
Результаты проделанныхрасчетов показывают, что у предприятие не удовлетворительная структура балансаи восстановить свою платежеспособность в короткий срок они не в силах.
2.ОБЪЕКТИВНО-ОРИЕНТИРОВАННЫЙ ПОДХОД ПРИ ПРОЕКТИРОВАНИИ АВТОМАТИЗИРОВАННОЙ СИСТЕМЫУПРАВЛЕНИЯ
Каждый год вычислительнаятехника находит новые области применения: сегодня компьютеры используютсяпрактически во всех сферах человеческой деятельности. Постоянное повышение ихпроизводительности позволяет возлагать на них решение все более сложных задач.Область применения компьютеров уже не ограничивается чисто вычислительнымизадачами. Но на этом пути есть трудности, возникающие, в частности, припопытках использования вычислительной техники в плохо формализуемых областяхчеловеческой деятельности. Основной проблемой является отсутствие механизма,позволяющего адекватно представлять реально происходящие процессы и их участниковв виде компьютерной модели. Очевидно, чем точнее модель будет описыватьдействительность, тем достовернее станут результаты, получаемые прииспользовании вычислительной техники.
Выбор системы управлениябизнесом для рассмотрения не случаен: сегодня наблюдается устойчивый спрос натакие системы. По мере развития человечества формы его деятельности постоянноусложняются. Соответственно меняются и требования, предъявляемые к способамуправления. Компьютеры уже довольно продолжительное время используются в подобныхсистемах для сбора информации, и естественным является дальнейшее расширениеобласти их использования для анализа полученной информации и выполнения базовыхфункций управления. Сфера управления бизнесом и возникающие в ней проблемыперестают быть прерогативой руководства компании и работников. Созданиеподобных систем невозможно без привлечения специалистов в области прикладнойматематики, архитекторов программных систем.
Обзор рынка показываетдостаточно четкое разделение потребителей в зависимости от используемых имисистем на три категории: персональные системы; системы для малого бизнеса;системы автоматизации деятельности средних и крупных компаний. Соответствующимобразом делится и программное обеспечение (ПО) в этом секторе рынка.
Системы автоматизациидеятельности средних и крупных компаний имеют не только модули для работы сфинансовой информацией, но и программы автоматизации делопроизводства,управления проектами, распределения товаров по складам и др. Среди наиболеераспространенных и активно продвигаемых систем на казахстанском рынке можноназвать системы Scala, Platinum и программы R/3 немецкого концерна SAP-лидерана сегодняшний день в области автоматизации деятельности предприятия.
Рассмотрим эту группусистем. Обобщая информацию, полученную в результате исследования модели, можносказать, что эти программные продукты автоматизируют каждую из основныхопераций. Источником информации для ввода данных о хозяйственных операцияхявляются первичные документы, которые подтверждают факт свершения хозяйственнойоперации и содержат различные детали. За обработку документа каждогоконкретного типа отвечает модуль системы. Вся переработанная информацияхранится в общей базе данных (БД) в стандартном виде.
Структура таких систем ипринципы их работы напоминают системы ручной обработки учетных данных. С этимсвязаны ограничения, возникающие при попытках использования систем для анализадеятельности кооператива в аспектах, отличных от финансовых.
2.1 Недостатки системы
Исторически крупныеуправленческие системы развивались по своим правилам. Это было связано с тем,что крупные организации раньше других форм бизнеса получили доступ квычислительной технике и поэтому подобные системы имеют длительную историюразвития. Это обстоятельство, помимо положительного аспекта, имеет иопределенные отрицательные стороны.
Развитие и модернизациясистем. Почтенный возраст таких систем часто служит преградой на пути ихдальнейшего развития, так как большая часть времени разработчиков уходит наборьбу с существовавшими аппаратными и программными ограничениями, а полученнаяв результате структура системы не способствует легкой модификации. В качествесоздателя системы выступала, как правило, одна компания, поэтому ей приходилосьобращать внимание не только на аспекты учета и анализа, т.е. функциональнуюсторону ПО, но и на средства генерации отчетности, работы с БД, взаимодействияс периферийными устройствами.
Одним из основныхнедостатков больших программных систем является тот факт, что в основу ихфункционирования уже заложен механизм взаимодействия между составными частямипредприятия. Поэтому для успешного внедрения системы обычно оказываетсянедостаточно настройки системы на конкретных пользователей, а требуютсяизменения установленного порядка ведения учета. В случае применения, например,системы R/3 может потребоваться даже частичная или полная реорганизацияпредприятия. Это расширяет поле деятельности консультационных фирм, но являетсянегативным фактором для компании, в которой внедряется система, так какувеличиваются и без того немалые затраты на приобретение ПО.
Очевидно, что основы всехперечисленных недостатков лежат в архитектуре, заложенной при создании систем.Как уже отмечалось, крупные системы управления бизнесом имеют достаточнодлинную историю, поэтому в них зачастую используются устаревшие техническиерешения, мешающие развитию систем и их адаптации к нуждам конкретныхпользователей.
Методика построениякрупных программных систем в качестве одного из первых шагов предусматриваетпредварительное определение структуры рассматриваемой области с точки зрениявзаимодействия составляющих ее частей. [5]2.2 Методыпроектирования программных систем
Под методомпроектирования понимается процесс создания ряда моделей, которые описываютсвоими средствами различные стороны разрабатываемой системы. В настоящее времясуществуют различные подходы к этой проблеме, среди которых можно выделить триосновные группы: метод структурного проектирования; метод организации потоковданных; объектно-ориентированное проектирование.
В системах управлениябизнесом имеет смысл использовать все указанные методы, причем в два этапа. Напервом этапе необходимо использование методов объектно-ориентированногопроектирования для создания объектов, являющихся отражением реальносуществующих понятий предметной области и определения базовых механизмоввзаимодействия между ними. На втором этапе применяются методы структурногопроектирования и организации потоков данных как средств описания взаимодействиямежду объектами и документооборота на предприятиях. В силу специфики предметнойобласти и, как уже отмечалось, различных требований к подобным системам, второйэтап может считаться этапом непосредственного внедрения системы в кооператив.
Поэтому основной задачейпри создании подобных систем является задача определения базовых объектов имеханизмов взаимодействия между ними.
Наилучшей системойявляется та, которая наиболее точно и полно описывает производственные циклы,действующие на предприятии, и хранит отношения между субъектами хозяйственнойдеятельности в естественной для прикладной области форме. Использованиеобъектно-ориентированного проектирования при этом приводит к необходимостивыделения объектов, являющихся участниками процессов, происходящих напредприятии.
В связи с произвольностьювыбора уровня абстракции имеет смысл учитывать все объекты, которыепредставляют интерес с точки зрения учета и анализа результатов деятельности.Объекты, используемые в системе управления бизнесом в качестве представителейреальных понятий предметной области должны удовлетворять ряду требований, безвыполнения которых процесс настройки системы будет чрезвычайно затруднительным.Рассматриваемые объекты с точки зрения программной архитектуры должны обладатьспособностью владеть группами других объектов и одновременно быть членамиразличных групп. Используя различные способы группировки, пользователь системыполучает возможность ведения различного вида учета на предприятии.
Определение типа объектане обязательно в процессе работы системы. Он запрашивается на возможностьвыполнения какого-либо действия. В случае подтверждения объект-владелец группыимеет право скорректировать полученные результаты. При отказе возможныразличные действия вплоть до игнорирования этого объекта при выполненииконкретной операции. В этом случае объект-владелец получает возможностьпользоваться свойствами объектов группы и выполнять действия, которые не былизаложены в нем на этапе создания. Например, завод может иметь склад храненияготовой продукции и цех по производству автомобилей. Объект-завод приобретаетсвойства объекта-склада и цеха как производственной единицы. К нему применимывсе операции, которые можно выполнять с его составляющими.
Обычно этот принциписпользуется в множественном наследовании для порождения объектов-наследников,имеющих свойства их предков. Коренное отличие состоит в том, что притрадиционном программировании это определяется на этапе создания программы.Объект может выглядеть как объект-предок в определенном контексте, но предок несуществует независимо от самого объекта и не может принадлежать одновременнодвум другим объектам. В предложенной схеме они существуют независимо друг отдруга. Таким образом, необходимо, чтобы для удовлетворения потребностейпользователя все объекты рассматриваемой системы удовлетворяли принципудинамического наследования. Принцип динамического наследования являетсяключевым фактором, который может обеспечить успех систем такого рода. [3]
В качестве связующегокомпонента при построении систем предлагается использовать технологию OLE 2фирмы Microsoft, так как:
— OLE — встроенноесредство операционных систем Windows 95 и многоплатформной Windows NT;
— OLE — фактическийстандарт отрасли и имеет сильную поддержку со стороны третьих производителей;
— в виде распределенногоOLE в сети реализована возможность хранения объектов на различных компьютерах;
— совместимость с OLEявляется требованием спецификации CORBA.
Хранение информации.
Объектно-ориентированныеБД. Одним из наиболее бурно развивающихся направлений в области хранения информацииявляется разработка объектно-ориентированных систем управления базами данных.Они отличаются от реляционных БД тем, что позволяют хранить сложные данные ивзаимосвязи между их элементами. Именно это привлекает к ним интерес как кновому способу хранения информации.
Гибридные БД. Онивыступают в качестве связующего компонента между объектно-ориентированными иреляционными БД, заполняя возникшее пространство между двумя технологиями. Вгибридных схемах используются несколько подходов (от промежуточного слоя ПО дочисто реляционного подхода с трансляцией запросов, поступающих от приложений вязык SQL).
Структурированныехранилища OLE. Технология OLE также предлагает свой подход к хранениюинформации в виде объектов. В основу положен принцип структурированныххранилищ, представляющих собой файловую систему, построенную поверх основнойсистемы файлов. Она обладает такими преимуществами, как поддержка транзакций идвоичная совместимость между платформами. Автоматически поддерживаетсявосстановление всех файлов, которые были изменены при откате транзакции. Вслучае практической реализации можно использовать все три подхода, так какоперация загрузки и создания объектов должна проводиться прозрачно дляфункциональной части системы.Представление информации.
В связи с тем, что всистеме с предлагаемой архитектурой данные могут храниться в различных форматахдаже для объектов одного и того же типа, встает вопрос об отображении ипредставлении хранимой информации. В данном случае имеет смысл разграничитьрассматриваемые объекты на две группы — объекты хозяйственной деятельности какэлементы структуры предприятия и документы как инициаторы выполненияопределенных действий. Аналогично имеет смысл разделить и способы представленияинформации — в виде управляющих элементов OLE (OCX) и составных документов. Приэтом один вид представления не обязательно отрицает использование другогоспособа.
Перед системой, котораядолжна охватывать все аспекты деятельности кооператива, ставится задачаполучения и обработки информации, поступающей из различных источников и имеющейразличные форматы представления. Унифицированная передача данных позволяет нетолько обмениваться информацией между объектами OLE, но и передавать информациюв приложения, не поддерживающие эту технологию, но умеющие работать с буферомобмена данными Clipboard. Такая технология избавляет разработчика отнеобходимости знания того, как и откуда поступают данные. Основными методами являются Query Get Data, Get Data,Set Data и Enum Format Etc. Методы Query Get Data и Enum FormatEtc служат соответственно для определения того, поддерживает ли объектзапрашиваемый формат данных, и для получения списка всех поддерживаемыхобъектом форматов.
Если множестваподдерживаемых форматов данных у объектов не пересекаются, то имеетсявозможность использования объектов-трансляторов. Технически при этом происходитопрос реестра операционной системы в целях поиска объектов, поддерживающихнеобходимые типы данных, и организуется последовательный процесс вызова методовGet Data и Set Data. Используяэтот механизм, объект 1 получает возможность хранить данные в формате объекта2, т.е. в их первоначальном виде, а обрабатывать в своем собственном формате.
Таким образом, несуществует ограничений на вид поступаемой информации при условии, что в системе есть соответствующие трансляторы вспособ представления, поддерживаемый другими объектами. Это ключ к решениюодной из основных проблем, возникающей при совместном использовании различныхсистем, — проблеме обмена информацией.
Говоря об обмене данными,нельзя не упомянуть о необходимости поддержки обновления данных в реальномвремени средствами самой системы.
Для поддержки обновленияданных целесообразно использовать метод D Advise интерфейса I Data Objectобъекта-сервера в совокупности с интерфейсом l Advise Sink объекта-клиента. Взависимости от необходимости существует возможность установления одного из трехтипов связи между объектами: «холодной»;«теплой»;«горячей».
«Холодная» связь. Такиесвязи могут использоваться для обмена информацией по заранее определеннымсхемам. Использование только методов Get Data при обмене информацией междуобъектами может служить примером этого типа связи.
«Теплая» связь. Данныйтип связи между объектами может использоваться, если для объекта важен сам фактизменения данных. В этом случае объект-клиент знает, что информация, которой онобладает, устарела и может инициировать процесс обновления через определенныйпромежуток времени, либо запросив подтверждение у оператора. При установлении«теплой» связи у объекта сервера вызывается метод D Advise и ему передаетсяформат представления данных, в котором клиент хочет получить информацию, способсвязи — только уведомление и интерфейс приема данных для того, чтобы можно былоорганизовать обмен данными позднее.
«Горячая» связь. Методсоединения по способу «горячей» связи предполагает уведомление клиента обизменениях информации путем посылки ему обновленной информации. Этот методнеобходимо использовать при изменениях курсов валют, биржевых котировок идругой информации, характер изменения которой является критической для бизнеса.
При «горячей» и «теплой»связи существует возможность использования разового уведомления, когда послепервой посылки информации связь между объектами разрывается. [3]2.3 Управлениеобъектами
После определенияхарактера взаимодействия между объектами системы встает вопрос о необходимостиописания с их помощью конкретной структуры кооператива. Как отмечалось, такаяоперация является завершающей и может выполняться на этапе внедрения системы вкооперативе. Очевидно, что данная операция должна выполняться сравнительнолегко и позволять гибко модифицировать связи между компонентами системы. В этомслучае можно использовать такие средства, предоставляемые OLE, как OLEAutomation и автоматные контроллеры. Если до этого момента рассматривался обменданными между объектами, то с использованием Automation объекты получаютвозможность управлять действиями друг друга. Обмен информацией происходит черезинтерфейс IDispatch посредством вызова метода Invoke для активизации действий,выполняемых данным объектом. В системе управления кооперативом имеет смыслопределить, например, расдача корма животным, ленточным способом, посредствомкомпьютера, который будет инициатором создания документов для отражения в документооборотедвижения материальных ценностей. Список поддерживаемых объектом методоввозвращается путем вызова метода Get Type lnfo интерфейса I Dispatch аналогичнотому, как запрашивается список поддерживаемых форматов через интерфейс I Data Object. Благодаря этомусуществует возможность добавления на этапе функционирования системы новыхобъектов, отражающих изменения в реальной жизни и их интеграции в систему.Необходимо заметить, что это не требует изменений в уже существующих объектах.
2.4 Распределенная обработкаданных
Перед системой управлениякооператива встает задача определения рабочих мест пользователей информации иобмена информацией между ними. Одним из преимуществ технологии OLE является то,что факт запроса объекта с другой машины проходит «прозрачно» для локальныхобъектов. Это позволяет масштабировать существующее приложение в рамках всегопредприятия без изменения характера взаимодействия между объектами.
Таким образом,предлагаемый способ построения моделей сложных систем, в основе которого лежитсоздание среды функционирования объектов предметной области, может бытьиспользован и в других плохо формализуемых областях деятельности. Управлениепроизводственными процессами, имитация работы сложных механизмов,проектирование новых устройств — вот лишь некоторые из многих возможныхобластей применения. Поддержка свойств динамического наследования являетсяосновным требованием при анализе и управлении системой на различных уровняхдетализации.
Предлагаемая архитектурапозволяет создавать модульные, хорошо масштабируемые системы, которые могутприспосабливаться к изменениям, происходящим в реальной жизни. Процедурыдобавления новых объектов, установление новых и модификация существующих связейможет выполняться в процессе работы системы. Появляется возможностьиспользования объектов, разработанных другими производителями с применениемразличных программных инструментов. Гибкая структура взаимодействия междуобъектами позволяет осуществлять интеграцию с уже существующими системами, чтопозволяет сохранить значительные инвестиции, сделанные в программноеобеспечение.2.5 Требования кинтерфейсу
Графический интерфейспользователя является средой работы пользователя с его данными, поэтому егоразработка является одним из важнейших моментов написания хорошейконкурентоспособной системы. В настоящее время основные элементы интерфейсаунифицированы и подчиняются общему стилю работы операционной системы.
Поскольку наша системаразрабатывается для работы в графической системе Windows 9x, тоимеет смысл рассмотреть коммерческий стандарт на приложения, предложенный Microsoft, который дает право ставить напрограммный продукт логотип “Designed for Windows 9x/NT”.
Этот логотип требуетсоблюдения следующих принципов при разработке программ:
Командует пользователь:
– пользовательдолжен быть инициатором всех операций;
– он всегда должениметь возможность вмешаться в автоматический процесс;
– следует учестьвозможность “персонификации” приложения;
– быстроереагирование приложения на команды пользователя;
– интерактивность.
Наглядность:
– образноепредставление операций, действий – “рисунок стоит тысячи слов”;
– манипулированиеобъектами в среде приложения;
– “метафоры” дляобъектов действий.
Единообразие:
– Единообразиеметодов работы с операционной системой;
– единообразиевнутри приложения;
– единообразиеметафор.
Терпимость кпользователю:
– Обратимость илиисправимость всех действий.
Обратная связь:
– обратнаяинформация о ходе процесса или режиме работы.
Эстетика:
– приятный внешнийвид;
– системная палитрацветов;
– принцип “7±2 вариантов выбора”.
Простота:
– легкость освоенияи применения;
– баланс междупростотой и доступностью функций и данных.
Проектирование сориентацией на данные:
– выбор объектадействий обеспечивает доступ к средствам управления объектом, измененияобъекта.
Проектирование сориентацией на документы:
– концепция блокаданных как документа (а не как файла).2.6 Сравнение SQL-серверов ведущихфирм-производителей
SQL-сервер на совеременном этаперазвития объединяет все новейшие технологии хранения данных и обеспечениядоступа к ним. Важным качеством инженера является способность разбираться вовсем многообразии современных продуктов данной категории и выделятьпреимущества и недостатки каждого из них: Motorola, Nokia, MCI, Northern Telecom, Philadelphia Stock Exchange, Bear Stearns, First NationalBank of Chicago, the Money Store, the US Army, NASA, Boeing… Приложения подобного рода имеютмного общих требований: легкость использования и управления, производительность,масштабируемость, переносимость, использование ресурсов и восстановление послесбоя. Borland InterBase разработан именно с целью удовлетворять всем этимтребованиям.
Даже если большинствосистем не требуют экзотических возможностей, на вышеперечисленные, они всеравно желают от РСУБД тех же характеристик для реальных задач и решенияреальных проблем. Перечисленные характеристики Borland InterBase также оченьхорошо подходят для рабочих групп, отделов, и приложений уровня кооператива. Borland Interbase выбран нами для реализацииинформационной базы автоматизированной системы управления. [8]2.7 Механизмы блокировок
Целостность данных — самое важное качество для корпоративных данных. Существует много способов дляобеспечения целостности данных в RDBMS. Наиболее распространеныпессимистическая и оптимистическая схемы блокировок. Пессимистическиеблокировки — простейший в реализации способ, когда блокируются страницы,индексы или таблицы для обеспечения целостности транзакции. Оптимистические блокировкипредполагают отсутствие блокировок для клиентского приложения. При этомиспользуются более сложные механизмы для обеспечения целостности транзакции.Оптимистические блокировки, обеспечивая целостность данных, обладаютоптимальной производительностью и легкостью в использовании. 2.8 Страничные блокировки
Для того, чтобыгарантировать целостность данных, архитектура SQL Server использует механизмблокировок страниц данных. Страница данных это набор записей, хранимых внекоторой области жесткого диска на сервере. Все страницы имеют один и тот жеразмер, который определяется конфигурацией сервера и базы данных. В зависимостиот длины записей и размера страницы, страница может содержать определенноеколичество записей. Записи в большинстве случаев добавляются в конец таблицы.Базовый размер страницы в SQL Server равен 2K, и это является минимальнойединицей блокировки.
Страничные блокировкитребуют от разработчика глубоких знаний о конкурентной работе с данными инастройке кода для получения максимально конкурентного доступа. Страничнаяблокировка блокирует все записи или соответствующие ссылки в индексах, хранимыена одной странице. Например, если размер записи в таблице равен 100 байт, аразмер ключа индекса равен 10 байт, то блокировка одной страницы данных и однойстраницы индекса приведет к куммулятивному эффекту блокирования 18-ти записей и180-ти ключей индекса.
То, что«читатель» записи блокирует страницу, на которой эта записьнаходится, и ее смежные страницы, может привести к проблемам производительностидля пользователей, которые нуждаются в доступе к данным на заблокированныхстраницах. Вместо того, чтобы сосредоточиться на разработке правил управленияданными, разработчик вынужден описывать сложную обработку возможноговозникновения конфликтов блокировок. Это увеличивает сложность приложения, иповышает стоимость разработки и сопровождения.
Индексы SQL Serverблокируются точно так же, как и страницы данных соответствующих таблиц, однакоэффект блокировки страницы индекса значительно шире. Записи в таблице хранятсяв большинстве случаев в случайном порядке, исключение составляют кластерныеиндексы. Когда обновляется страница данных, то должен обновитьсясоответствующий индекс. Как и у таблиц, данные индексов хранятся на страницах.Для обновления страницы индекса, эта страница должна быть сначалазаблокирована. В приложениях, работающих с большими объемами данных, это можетсильно снизить производительность системы.
Для обеспеченияцелостного представления данных в Sybase или Microsoft SQL Server разработчикдолжен использовать блокировки таблиц. Блокировка таблицы вызывает полнуюблокировку, разделяемую, для обновления или исключительную [Shared, Update, orExclusive. Представьте себе свод баланса бухгалтером — пока свод не закончен,архитектура SQL Server требует чтобы разработчик полностью заблокировал таблицуна время свода. Кроме этого может потребоваться полное блокирование связанныхтаблиц.
В Microsoft SQL Server6.5 механизм блокировок улучшен по сравнению с версией 6.0 и Sybase SQL Server поддержкойблокировок на уровне записей при вставке. Это увеличивает производительностьвставки записей, но никак не решает другие проблемы со страничными, индекснымиили табличными блокировками. Поэтому, независимо от версии, обновление данных вархитектуре SQL Server все равно требует табличных или страничных блокировокдля обеспечения целостности данных. [8]
2.9 Архитектурамноговерсионности записей
InterBase обеспечиваетоптимистические блокировки при помощи Архитектуры Многоверсионности Записей(Multi-Generational Architecture – [MGA]. Этот механизм создаетоптимизированные версии для новых, удаленных или обновляемых записей, которыевидны только в контексте конкретной транзакции, изменяющей данные. Реально,InterBase версионирует только изменяемые столбцы (поля) путем создания deltas.Это обеспечивает максимальную производительность и минимальные требования кдисковому пространству.
Вместо того, чтобы писатькод обработки страничных, индексных и табличных блокировок, разработчик прииспользовании InterBase должен обрабатывать только конфликты обновления сдругими транзакциями. Это означает значительно меньшие затраты при разработке исопровождении для корпораций, использующих InterBase.
Страничные и табличныеблокировки SQL серверов Microsoft и Sybase могут сильно влиять напроизводительность, когда многим пользователям требуется доступ к одним итем-же данным (или находящимся на близлежащих страницах). Например, в реальныхситуациях, страничные блокировки в SQL Server могут замедлять доступ к данным(ожидание освобождения блокировок страниц, индексов или таблиц). Этот эффектможет быть заметен в системах с большим объемом данных или когда пользователивыполняют создание длительных отчетов по данным в тот момент, когда другиепользователи модифицируют данные. Архитектура Многоверсионности записей InterBaseгарантирует доступность данных на чтение для любых пользователей и в любоевремя. Клиентское приложение никогда не ждет доступности таблиц, записей илииндексов, независимо от числа пользователей в системе или длительности исложности какой-либо транзакции. Разработчики, использующие InterBase,автоматически получают максимум производительности приложений, безотносительносложности обработки данных. 2.10 Двухфазное подтверждение транзакций
Слово «транзакция»произошло от слияния слов «акция трансформации». Транзакция этодействие или группа действий, которые переводят систему из одного целостногосостояния в другое. Например, при переводе денег с одного счета на другой,должна быть изменена сумма либо обоих счетов, либо ни одного в случае ошибки.
Транзакциихарактеризуются свойствами ACID:
– Atomicity (атомарность) — «все илиничего». Либо вся транзакция завершается, либо ни одна из ее частей. Еслитранзакция не может быть завершена, то все операции, произведенные внутритранзакции, отменяются;
– Consistency (целостность) — транзакция должнапереводить базу данных из одного целостного состояния в другое. Целостностьопределяется бизнес-правилами (логикой базы данных) и вводится в действиеприложением;
– Isolation (изоляция, изолированность) — Поскольку может возникать множество конкурентных транзакций, каждая транзакциядолжна быть изолирована от действий, производимых другими транзакциями. Т.е.транзакции должно «казаться», что она является единственной,выполняемой над базой данных;
– Durability (прочность)- Изменения,подтвержденные транзакцией, обязаны вступить в силу.
Если использовать вкачестве примера снятие средств с расчетного счета, то все ACID-свойства должныиметь место. Представим что информация о получении товара хранится в одной БД,а информация о счете поставщика – в другой. В этом случае при регистрациисчет-фактуры на полученные ТМЦ соответственно должен измениться счетпоставщика, и выполняться это должно в одной транзакции. Такие ситуацииобрабатываются при помощи двухфазного подтверждения транзакций (Two PhaseCommit — 2PC). Это механизм, который применяет к изменениям в обоих базахданных свойства ACID.Двухфазное подтверждение транзакций имеет две отдельныефазы: подготовка и подтверждение. Если по какой-то причине процесс не можетбыть выполнен в течение фазы подготовки, например после регистрациисчет-фактуры, но до изменения суммы счета поставщика, то транзакция должна бытьотменена (rollback). Это гарантирует что на дебиторская задолженностьпоставщика будет соответствовать нашей кредиторской.
Microsoft SQL Server и Sybase SQL Server требуют от разработчика программнойобработки 2PC. InterBase обеспечиваетавтоматическую обработку 2PC в соответствии со всеми требованиями ACID бездополнительного программирования на любых платформах (Windows NT, DEC UNIX,HP-UX, Irix и т.д.). Это обеспечивает максимум легкости сопровождения приотсутствии дополнительных затрат. 2.11 Многоразмерные массивы
InterBase обеспечиваетуникальный тип данных называемый Многоразменый Массив (Multi Dimensional Array[MDA]). Тип MDA не реализован ни в одной другой РСУБД. Тип MDA позволяетразработчику зранить массивы любой длины и до 16 измерений. Массивыпредоставляют возможность хранения и представления данных в случаях, вбольшинстве невозможных для архитектуры SQL Server. Ключевой особенностьюявляется производительность массивов. Дополнительно, если элемент массивасодержит значение NULL, то Inter Base не выделяет для него дисковоепространство. В реляционных терминах, доступ к набору данных с одной стороныотношения, не имеющего соответствующего значения, потребует использования outerjoun в любом запросе, использующем такое отношение. В большинстве РСУБД,производительность запросов с outer join невелика. Доступ к массивам Inter Baseосуществляется другим способом, и поэтому не ухудшает скорость доступа кданным.
Высокаяпроизводительность и богатое представление данных, обеспечиваемые многомернымимассивами, позволяют разработчикам создавать решения, невозможные прииспользовании других РСУБД. 2.12 Обработка транзакций
Индустрия баз данныхподдерживает несколько разных моделей транзакций для решения различных задач.
· OLTP:
Интерактивная обработкатранзакций [OLTP] наиболее характерна для банковских операций. По такомусценарию, приложение выполняет серию коротких (по содержимому и по времени)транзакций. Приложению может потребоваться изменение одной-двух записей илинебольшой отчет. Большие и длительные отчеты выполняются неинтерактивно.
· DSS:
Системы поддержкипринятия решений (или анализа информации) [DSS] преназначены для поддержкидлительных транзакций, таких как итоговые отчеты или статистический анализ.Этот тип систем зависит от относительно статического «вида» базыданных, для того чтобы обеспечить целостность данных на все время действиядлительной транзакции.
· OLCP:
Интерактивная комплекснаяобработка [OLCP] является смесью моделей OLTP и DSS. Такая модель пытаетсяподдержать баланс между этими двумя моделями, и предназначается для большинствареальных приложений. Такие требования приводят к необходимости иметь высокуюпроизводительность, возможность выполнения резервирования данных «находу», выполнять длительные запросы или длительные отчеты покапользователи обновляют текущую информацию. Информация должна быть доступна влюбое время без ограничения доступа как для OLTP так и для DSS транзакций. SQL Server:
Архитектура SQL Serverразработана для поддержки либо OLTP либо DSS, но не для одновременной поддержкиобоих. Кроме этого, не поддерживается большинство требований к режиму OLCP дляреальных приложений. Такие ограничения вызваны механизмом блокировок,используемым в SQL Server.
Borland Inter Baseполностью поддерживает модель OLCP. Уникальная архитектура многоверсионности записейгарантирует, что пользователи транзакций OLTP не обнаружат блокировок приобновлении данных, используемых транзакциями DSS, в то время как транзакциямDSS гарантируется воспроизводимое чтение. Многоверсионность записей гарантируетвоспроизводимость состояния БД как для чтения, так и возможность обновленияданных независимо от уровня изоляции транзакции. Это снижает сложность и времяразработки клиентских программ, и обеспечивает доступность корпоративных данныхв любой момент. 2.13 Конфигурирование и настройка
· SQLServer:
Microsoft SQL Server иSybase SQL Server имеют мириады конфигурационных опций и параметров настройкидля оптимизации производительности базы данных. Многие их этих параметровдостаточно сложны и могут влиять друг на друга. Только достаточноквалифицированный администратор БД может управлять всеми этими параметрами длянастройки сервера. Например, в Sybase System 11 появилось более 200 параметровнастройки. Это добавляет сложности к управлению сервером, стоимость обученияадминистратора БД, и предполагает что по мере усложнения используемой базыданных может потребоваться настройка севера.
· Inter Base:
Borland Inter Baseавтоматически конфигурируется и настраивается, и не требует никакоговмешательства администратора в настройки. Это максимально облегчает управлениеи сопровождение. В общем случае, у IB существует не более конфигурационных 20параметров, которые практически никак не влияют друг на друга (основныхпараметров всего 3 — размер кэша и лимиты занимаемой памяти). Это сделаноспециально для уменьшения стоимости сопровождения и обслуживания. Послеустановки, вмешательство администратора БД требуется разве что в случаекатастрофического сбоя оборудования, или для регулярного выполнения bakup(который можно автоматизировать при помощи утилиты AT на Windows NT, илиспециальных утилит на UNIX). 2.14 Восстановление при сбоях
Автоматическоевосстановление базы данных SQL Server включает в себя«воспроизведение» содержимого transaction logs. Этот процесспоследовательно применяет к БД транзакции, сохраненные в transaction log длятого чтобы восстановить состояние БД на момент последнего checkpint.
Если база данных невосстанавливается из существующего transaction logI, следовательно ее надоудалить и восстановить из архива. При этом восстанавливается сначала полнаякопия БД, а затем все «частичные» архивы (incremental backups),которые были созданы от момента сохранения полной копии БД. Это достаточносложный и длительный процесс.
Восстановление базыданных Borland InterBase происходит автоматически без вмешательстваадминистратора БД. Транзакции, которые не успели завершиться на момент сбоя,будут полностью отменены, и БД останется в целостном состоянии. Недостаткомявляется отсутствие «частичного» архивирования, т.е. если в результатесбоя был поврежден носитель данных, восстановить удастся только БД в еепоследнем полном архивировании. Это компенсируется скоростю выполнения backup,его выполнением «на ходу», а также скоростью восстановления данных.
Borland InterBase используеттехнику «горячего» резервирования при помощи так называемой«тени» (shadow). «Теневая» БД — дубликат базы данных,находящийся на другом физическом устройстве. Обновление «тени»производится с каждым обновлением страницы основной базы данных. В случае аппаратногосбоя носителя основной базы данных, Borland InterBase в зависимости от режима«затенения» переключает пользователей на «тень», делая ееосновной базой данных. Это может происходить либо автоматически, либо покоманде администратора базы данных. Таким образом, решается либо задачаобеспечения непрерывного доступа к БД (online), либо гарантирование наличияцелой копии рабочей базы данных. «Теней» базы данных может бытьстолько, сколько нужно для гарантии сохранности данных. 2.15 Сравнение средствразработки корпоративных приложений
Но при всем обилиипостоянно появляющихся технологий разработки, основными языками остаются Си иПаскаль. За последнее время фактически все ведущие производители средствразработки выпустили новые версии своих продуктов.
Современные средстваразработки включают в себя все новейшие технологии программирования, работы сданными взаимодействия с другими информационными объектами. Они должны отвечатьряду критериев:
1) являтьсякомпиляторами (т.е. на любой стадии разработки создает настоящий машинный код);
2) работать исоздавать исполнимые файлы для платформы Windows 9x/NT (далее Win32);
3) даватьвозможность низкоуровневой отладки (просмотр произвольных областей памяти,точки останова, просмотр и модификация значений переменных,дизассемблирование);
4) иметьинтегрированную среду разработки и отладки;
5) работать с базамиданных SQL-серверного типа;
6) даватьвозможность доработки стандартных библиотек (вплоть до низкоуровневой работы с Win32 API, использования ассемблерных вставок, работы суказателями);
7) поддерживатьразработку многоуровневых приложений, в частности поддержку современныхстандартов DCOM, CORBA, транзакционно-объектных серверов;
8) поддерживатькомпонентный подход в разработке (как с точки зрения использования готовыхкомпонентов, так и с точки зрения создания собственных);
9) Поддерживатьгрупповую разработку.
На рынке программногообеспечения лидируют следующие продукты:
– InpriseC++ 3.0 Enterprise Edition;
– InpriseDelphi 4.0 Enterprise Edition;
– SybasePower++ 2.1;
– MicrosoftVisual C++ 6.0;
– IBMVisual Age for C++
Пунктам с 1 по 5удовлетворяют все вышеперечисленные продукты. По остальным критериямвозможности каждого из продуктов имеют некоторые различия.
Но определяющим привыборе нами языка программирования стали другие критерии, тем более что далеконе все новейшие технологии будут использованы при создании автоматизированнойсистемы. В частности, не последнюю роль играют опыт работы и репутацияпродукта.
Для построения системы инаписания программного кода был выбран Delphi. Этот инструмент заслуженно характеризуется каквысокоэффективный, легкий в освоении и в отладке (что играет далеко непоследнюю роль в реальной работе), дает возможность быстрого созданиязаконченных приложений, и, наконец, считается лучшим для создания системархитектуры “клиент/сервер”.
Delphi позволяет создавать приложения дляработы с удаленными БД, причем они автоматически соответствуют большинствупринципов логотипа “Designedfor Windows 9x/NT”.[10]
Inprise DelphiClient/Server Suite 4.0
Требования к аппаратномуобеспечению:
– Intel 486/66MHz и выше (рекомендуется Pentium120);
– MSWindows95 (рекомендуется Windows NT 4.0 SP3);
– RAM 16Mb (рекомендуется 64Mb);
– требуется для установки 60Mb(Compact Install), 190Mb(FullInstall);
– CD-ROM для инсталляции;
– монитор VGA и выше (рекомендуется SVGA 21”);
– мышь;
– сетевая поддержка(Windows 9x/NT)
3.УСЛОВИЯ ЗАДАЧИ
Всостав рациона кормления на стойловый период дойных коров входит 9 видовкормов. В таблице 6 приводятся необходимые данные о кормах. Для обеспечениянамечаемой продуктивности стада необходимо, чтобы в рационе кормлениясодержалось не менее (14,5+0,1) кг кормовых единиц, (1750) гперевариваемого протеина, (110) г кальция, (45+0,1) г фосфора, (660+0,1) мгкаротина и (18+0,1) кг сухого вещества. В качестве дополнительных условий даныследующие соотношения для отдельных групп кормов в рационе: концентратов(кукуруза, жмых и комбикорм) – 5-20%, грубых кормов (стебли кукурузы, сенолюцерновое, сено суданки) – 15-35%, силоса – 35-60%, корнеплодов (свекласахарная и кормовая) –10-20%. Определить рацион кормления животных по критериюминимальной себестоимости.
Таблица6 — Содержание питательных веществ в 1 кг корма и его себестоимостьПитательные вещества Кукуруза Жмых Стебли кукурузы Сено люцерны Сено суданки Силос кукурузы Свекла сахарная Свекла кормовая Комби-корм Кормовые единицы, кг 1,34 1,9 0,37 0,49 0,52 0,2 0,26 0,12 0,9 Перевариваемый протеин, г 78 356 14 116 65 19 12 9 112 Питательные вещества Кукуруза Жмых Стебли кукурузы Сено люцерны Сено суданки Силос кукурузы Свекла сахарная Свекла кормовая Комби-корм Кальций, г 0,7 5,9 6,2 17,7 5,7 1,5 0,5 0,4 15 Фосфор, г 3,1 9,1 1 2,2 2,3 0,5 0,4 13 — Каротин, мг 4 2 5 45 15 15 — — — Сухое вещество 0,87 0,87 0,8 0,85 0,85 0,26 0,24 0,12 0,87 Себестоимость, тг./кг
0,43+
0,01N
0,65-
0,01N
0,05+
0,01N
0,25+
0,01N
0,3+
0,01N
0,8-
0,01N
0,15+
0,01N
0,14+
0,01N
0,75-
0,01N
3.1 Краткое описаниепакета LINDO
Пакет LINDO представляет собой прикладнуюпрограмму, предназначенную для решения различных задач линейногопрограммирования и анализа полученных результатов.
Данная программапозволяет пользователям работать с исходными данными, практически не изменяяих, что очень удобно для неопытных пользователей, на которых рассчитана даннаяпрограмма. Программа позволяет получить хороший анализ результатов в удобнойформе. Однако при всех достоинствах, пакет имеет и недостатки: отсутствие наэкране информации на румынском или русском языках и очень неудобный интерфейс,не позволяющий следить за ходом ввода данных и выполнения работы. Хотявозможность просмотра и исправления введенных данных предусмотрена, но онанеудобна пользователю.
Необходимые для работы спакетом команды описаны в пункте 3.2.
3.2 Ход выполнениязадания с использованием пакета LINDO
Напишем экономико-математическуюмодель данной производственной задачи. Обозначим через xj(j=1,8) количествопроизводимой продукции. Кроме того, т.к. объем ресурсов для оборудования даетсяв часах, а производительность оборудования в м¤/час, то необходимо перейти ксоизмеримости.
Таким образом, задачасводится к нахождению оптимального плана производства продукции каждого вида сцелью получения максимальной прибыли.
ЗЛПбудет выглядеть так:
1 Целевая функция:
min Z = 0.51×1+ 0.57×2+0.13×3+0.33×4 +0.38×5+0.72×6+0.23×7+0.22×8 + 0.67×9
при ограничениях:
1.34×1+ 1.9×2+0.37×3+0.49×4+0.52×5+ 0.2×6+0.26×7+0.12×8+ 0.9×9 >=15.3
78×1+ 356×2+ 14×3+ 116×4+ 65×5+ 19×6+ 12×7+ 9×8+ 112×9 >=1758
0.7×1+ 5.9×2+ 6.2×3+17.7×4+ 5.7×5+ 1.5×6+ 0.5×7+ 0.4×8+ 15×9 >=118
3.1×1+ 9.1×2+ x3+ 2.2×4+ 2.3×5+ 0.5×6+ 0.4×7+ 13×8>=45.8
4×1+ 2×2+ 5×3+ 45×4+ 15×5+ 15×6>=660.8
0.87×1+0.87×2+ 0.8×3+0.85×4+0.85×5+0.26×6+0.24×7+0.12×8+0.87×9 >=18.8
x1+ x2+ x9 >=5
x1+ x2+ x9
x3+ x4+ x5 >=15
x3+ x4+ x5
x6 >=35
x6
x7+ x8>=10
x7+ x8Xj >= 0
Экономико-математическая модель состоит из целевой функции, системыограничений и условия не отрицательности переменных xj.
2 Двойственной кданной задаче является следующая:
Целевая функция:
max F = 15.3y1+1758y2+118y3+45.8y4+660.8y5+18.8y6+5y7-20y8+15y9-35y10+35y11-60y12+10y13-20y14
при ограничениях:
1.34y1+ 78y2+ 0.7y3+3.1y4+ 4y5+0.87y6+y7-y8
1.9y1+ 356y2+ 5.9y3+9.1y4+ 2y5+0.87y6+y7-y8
0.37y1+ 14y2+6.2y3+ y4+ 5y5+ 0.8y6+ y9-y10
0.49y1+ 116y2+17.7y3+2.2y4+45y5+0.85y6+ y9-y10
0.52y1+ 65y2+ 5.7y3+2.3y4+15y5+0.85y6+ y9-y10
0.2y1+ 19y2+ 1.5y3+0.5y4+15y5+0.26y6+ y11-y12
0.26y1+ 12y2+ 0.5y3+0.4y4+ 0.24y6+ y13-y14
0.12y1+ 9y2+ 0.4y3+ 13y4+ 0.12y6+ y13-y14
0.9y1+112y2+ 15y3+ 0.87y6+y7-y8
Данныезадачи составляют пару двойственных задач. Решение прямой задачи даетоптимальный план минимизации расходов на рацион кормления, а решениедвойственной задачи – оптимальную систему оценок питательной ценностииспользуемых кормов.
Длярешения прямой задачи воспользуемся пакетом LINDO.
Пакетустановлен на диске Е: в каталоге \LINDO. Для его загрузки активизируем данныйкаталог и находим файл с именем lindo.exe.
Вначаленеобходимо ввести целевую функцию F. Для этого после двоеточия (:) набираемслово max и после пробела вводим целевую функцию. После знака вопроса набираемST и вводим ограничения. В конце набираем END.
Дляпросмотра всей задачи используют команду LOOK ALL, а для просмотра строки — LOOK.
Принеобходимости можно произвести редактирование той или иной строки путем наборакоманды ALT и изменять либо значения переменных (VAR), либоправых частей (RHS), либо направление оптимизации с max на min и наоборот.
Решениепроизводится вводом команды GO, а для проведения послеоптимизационного анализапосле (?) нажимают Y.
Послевведения задачи и набора команды GO получаем следующие результаты:
OBJECTIVEFUNCTION VALUE32, 1779200