Методика створення програмного забезпечення для систем управління підприємствами з використанням типових

[ виправити ] текст може містити помилки, будь ласка перевіряйте перш ніж використовувати.

скачати

С. Трофімов

Розробка і впровадження складних програмних комплексів для підприємств зберігання та переробки зерна потребує залучення значних ресурсів як розробника так і самого підприємства, тому вартість таких рішень для промислового підприємства середнього розміру починається від кількох десятків тисяч доларів на нижньому ціновому діапазоні і практично не має верхньої цінової межі. Виникає питання чи є шляхи її зменшення з боку розробників системи.

Вартість сукупного володіння програмною системою складається з вартості створення, вартості впровадження та вартості супроводу. Причому досить поширеною помилкою при виборі ПЗ є врахування вартості тільки самої системи. Тоді як витрати на впровадження та супровід автоматизованої системи управління підприємством (АСУП), яка повинна працювати десятиліттями, значно перекривають вартість самого ПЗ.

В даний час методи та засоби зменшення трудомісткості розробки і супроводу ПЗ (а значить і його вартості) розроблені досить глибоко. Це такі методи програмної інженерії, спрямовані на створення складних систем, як розробка відкритих систем [1], розробка принципів оптимального розбиття систем на модулі [2], методи об'єктно-орієнтованого аналізу і проектування систем [3]. Зараз для розробки ПЗ різного призначення широко застосовується повторне використання програмних об'єктів та програмних компонентів [4], пропонованих виробниками засобів прискореної розробки додатків (rapid application development RAD). Використання CASE-засобів [5] також дозволяє значно скоротити трудомісткість проектування і супроводу систем.

Здавалося б, до вищесказаного вже нічого додати, і при використанні перерахованих методів і засобів вартість створення і супроводу ПЗ буде мінімальною. Однак це не так. Резерви криються в певній структурі ПЗ системи, за допомогою якої здійснюється зниження вартості впровадження та супроводу ПЗ АСУП. Відразу хочу помітити, що "срібної кулі" за висловом Ф. Брукса [6], що дозволяє розробляти легко супроводжувані, дешеві програмні системи, ще не створено, і пропонований підхід потребує подальших досліджень, однак, він вже застосовувався в тій чи іншій мірі при розробці Автоматизованої інформаційної системи для комбінатів хлібопродуктів (АІС КХП) яка успішно працює в режимі промислової експлуатації на кількох десятках підприємств галузі.

Особливо хочу відзначити, що мова йде саме про структуру програмного забезпечення, а не власне інформаційної системи. Не для кого не секрет, що навіть жорстко задану функціональність можна реалізувати різними методами, причому не завжди розрахованими на подальше супроводження. Тут можна відзначити особливості реалізації за допомогою різних мов програмування й особисті уподобання того чи іншого програміста. Останнє часто домінує при слабкому контролі або відсутністю такого з боку керівника проекту. Багато рішень у цьому випадку віддаються на відкуп програмісту, який часто не має належної кваліфікації для створення дійсно легко супроводжуваної і дешевої програмної системи.

Це при тому, що структуру програмного продукту важко визначити за зовнішнім виглядом. Система відповідає заявленій функціональності і невідомо, чи використовується в створюваній системі та чи інша конструкція мови, створюється чи система на основі взаємодіючих об'єктів або написана за допомогою умовних і безумовних переходів.

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

Мені можна заперечити, що для цього і існують CASE-засоби, проте, це тільки кошти, а структура ПО створюється все-таки програмістом, у кращому випадку під керівництвом проектувальника.

І навіть у цьому випадку процес розробки здійснюється без використання якихось загальних законів, як, наприклад, законів фізики в будівництві, і повністю грунтується на методах проб і помилок [7]. Таких законів для розробки ПЗ просто не існує, тому що наукові основи для створення ПЗ тільки розробляються.

Таким чином, надання програмісту готової структури ПЗ, побудованої на основі об'єктивних досліджень конкретної предметної області, та методичних рекомендацій щодо створення ПЗ на основі такої структури може значно зменшити трудомісткість створення і, що важливо, супроводу системи і уберегти від дорогих логічних помилок при створенні програмних модулів .

Термін "типової програмний компонент" визначається як набір програмних об'єктів, що враховують особливості предметної області, невіддільних один від одного в рамках виконання певного класу задач, що мають уніфікований інтерфейс, що дозволяє ТПК взаємодіяти між собою без додаткового координуючого коду та мають можливість зміни своїх властивостей без внесення змін в програмний код.

Основою ТПК при такому підході є динамічно створюване представлення даних, що використовує для цього зберігається в профілі користувача інформацію. Ці мета-дані представляють собою описатели оброблюваних полів таблиць, шаблонів введення-виведення і посилань на інші таблиці. При цьому всі алгоритми виводу на друк, пошуку, угруповання, додавання, видалення записів реалізовані незалежно від оброблюваної інформації. Для заповнення посилальної частини таблиць передбачений інтерфейс для взаємодії з тим же модулем, але налаштованим для роботи з іншими даними, тобто передбачається рекурсивний виклик.

Для створення ПЗ на основі ТПК пропонуються наступні кроки:

1.Створення ТПК - найбільш трудомісткий і дорогий етап, який повинен бути виконаний кваліфікованим програмістом. Він включає в себе наступні пункти:

вибір засобу створення (RAD, CASE);

визначення необхідного набору функцій;

визначення необхідного обсягу адаптації;

створення ієрархії класів;

створення виконуваного коду ТПК.

2.Аналіз предметної області для подальшого створення модулів системи на основі ТПК. Цей етап виконується аналітиком системи і не включає в себе безпосереднього програмування. Його можна розбити на наступні пункти:

визначення набору інформаційних журналів для роботи ТПК;

визначення структури інформаційних журналів, форматів полів даних і зв'язків;

визначення функцій і кваліфікації користувачів.

3.Модулей системи на основі ТПК і профілів користувачів. Цей етап виконується програмістами середньої кваліфікації і включає основний обсяг робіт зі створення системи. Цей етап розбивається на наступні пункти:

створення структури для динамічного формування уявлень даних і при необхідності програмних модулів для їх обробки на основі шаблонів ТПК;

заповнення структури для динамічного формування уявлень даних згідно структурам інформаційних журналів, форматам полів і зв'язків;

попереднє заповнення профілів користувачів згідно функцій і кваліфікації користувачів.

4.Настройка ПО здійснюється відділом впровадження і, надалі, відділом супроводу безпосередньо на підприємстві і містить у собі наступні пункти:

визначення конфігурації дискових пристроїв для конкретних робочих станцій;

заповнення еталонів адрес зберігання файлів;

остаточна настройка профілів користувачів згідно функцій і кваліфікації конкретних користувачів з налаштуванням форм введення-виведення.

Запропонована методика дозволяє скоротити витрати на створення і супровід ПЗ АСУП шляхом скорочення розмірів програмного коду вимагає подальшого супроводу, підвищення його гнучкості, що дозволяє здійснювати основну адаптацію до мінливих умов експлуатації силами самого підприємства без залучення розробника. Знижуються вимоги до кваліфікації програмістів, підвищується надійність системи за рахунок використання багаторазово протестованих компонентів.

Список літератури

[1] Липаев В.В., пугачів Є.М. Мобільність програм і даних у відкритих інформаційних системах. -М.: Наукова книга, 1997. - 368 с.

[2] Маміконов А.Г. Методи розробки автоматизованих систем управління. -М.: Енергія, 1973. - 336 с.

[3] Буч Г. Об'єктно-орієнтований аналіз та проектування з прикладами додатків на С + +: Пер. з англ. -М.:-СПб.: Видавництво Біном, Невський діалект, 1999. -560 С.: Іл.

[4] Zubeck J. Повторне використання об'єктів у системах вкорінене розробки додатків / / COMPUTERWEEKLY. - 1998. - № 7 .- C.24-28

[5] Трофімов С.А. CASE-технології: практична робота в Rational Rose. -M: ЗАТ Видавництво БІНОМ, 2001 р. -272 с.: Іл.

[6] Брукс Ф. Міфічний людино-місяць чи як створюються програмні системи .- Пер. з англ. - СПб.: Символ-Плюс, 1999. - 304 с.: Іл.

[7] Бюрер К. Від ремесла до науки: пошук основних принципів розробки ПЗ. (Http://interface.ru/rational/science.htm)


Додати в блог або на сайт

Цей текст може містити помилки.

Програмування, комп'ютери, інформатика і кібернетика | Доповідь
17кб. | скачати


Схожі роботи:
Особливості створення інформаційного забезпечення систем організаційного управління
Створення програми з використанням програмного продукту Turbo Assembler
Історія автоматизованих систем управління підприємствами АСУП
Етапи подолання систем захисту програмного забезпечення
Адаптація систем управління промисловими підприємствами в умовах трансформаційної економіки
Практичні аспекти створення програмного забезпечення
Можливості та перспективи використання ильменей типових водойм аридної зони для створення
Дослідження динамічних властивостей моделей типових ланок систем автоматичного управління
Види програмного забезпечення Загальні вимоги до програмних систем
© Усі права захищені
написати до нас