ПЕРЕЛІК ДИСЦИПЛІН:
  • Адміністративне право
  • Арбітражний процес
  • Архітектура
  • Астрологія
  • Астрономія
  • Банківська справа
  • Безпека життєдіяльності
  • Біографії
  • Біологія
  • Біологія і хімія
  • Ботаніка та сільське гос-во
  • Бухгалтерський облік і аудит
  • Валютні відносини
  • Ветеринарія
  • Військова кафедра
  • Географія
  • Геодезія
  • Геологія
  • Етика
  • Держава і право
  • Цивільне право і процес
  • Діловодство
  • Гроші та кредит
  • Природничі науки
  • Журналістика
  • Екологія
  • Видавнича справа та поліграфія
  • Інвестиції
  • Іноземна мова
  • Інформатика
  • Інформатика, програмування
  • Юрист по наследству
  • Історичні особистості
  • Історія
  • Історія техніки
  • Кибернетика
  • Комунікації і зв'язок
  • Комп'ютерні науки
  • Косметологія
  • Короткий зміст творів
  • Криміналістика
  • Кримінологія
  • Криптология
  • Кулінарія
  • Культура і мистецтво
  • Культурологія
  • Російська література
  • Література і російська мова
  • Логіка
  • Логістика
  • Маркетинг
  • Математика
  • Медицина, здоров'я
  • Медичні науки
  • Міжнародне публічне право
  • Міжнародне приватне право
  • Міжнародні відносини
  • Менеджмент
  • Металургія
  • Москвоведение
  • Мовознавство
  • Музика
  • Муніципальне право
  • Податки, оподаткування
  •  
    Бесплатные рефераты
     

     

     

     

     

     

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

     

    Інформатика, програмування

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

    С. Трофімов

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

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

    В даний час методи і засоби зменшення трудомісткості розробки і супроводу ПЗ (а значить і його вартості) розроблені досить глибоко. Це такі методи програмної інженерії, спрямовані на створення складних систем, як розробка відкритих систем [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)

         
     
         
    Реферат Банк
     
    Рефераты
     
    Бесплатные рефераты
     

     

     

     

     

     

     

     
     
     
      Все права защищены. Reff.net.ua - українські реферати ! DMCA.com Protection Status