- •Міністерство освіти і науки україни
- •Методичні вказівки до курсового проектування з предмету: "Основи програмування та алгоритмічні мови"
- •1.Мета і задачі курсового проектування
- •2.Зміст і етапи виконання
- •3.Загальні рекомендації з розробки пз
- •Додаток 1
- •Види програм і програмних документів (гост 19.101-77)
- •Додаток 4
- •1. Загальні вимоги
- •2. Титульна частина
- •3. Інформаційна частина
- •4. Основна частина
- •5. Частина реєстрації змін
- •Програма і методика іспитів ( гост 19.301-79 )
- •Додаток 8
- •Додаток 9
- •1.Загальні вказівки
- •Додаток 10
- •1. Призначення програми
- •2. Умови застосування
- •3. Опис задачі
- •Додаток 11 керівництво системного програміста ( гост 19.503-79 )
- •1. Загальні відомості
- •Додаток 12
- •Додаток 13
- •Додаток 14 відомість експлуатаційних документів (гост 19.507-79)
- •Додаток 15
- •Додаток 16
- •Процедурна абстракція
- •Абстракції даних
- •Абстракції ітерації
- •Додаток 17
- •1.Мета і задачі курсового проектування 2
3.Загальні рекомендації з розробки пз
Розробка ПЗ є визначальним елементом курсового проектування і може вестися з використанням лавинообразної або ітеративної моделей розробки.
Лавинообразна модель (модель "водоспаду") може бути використана для розробки ПЗ невеликого розміру (до 10000 операторів вихідної мови) з добре визначеною алгоритмічною базою.
Метою етапу аналізу є опис задачі, що повинна бути повним, послідовним, доступним для читання й огляду різними зацікавленими сторонами, що дозволяє робити порівняння з реальними умовами.
У ході цього етапу вирішуються задачі:
- уточнення вимог, приведених у завданні на проектування;
- розробка специфікацій на ПЗ.
Підсумком виконання цього етапу є експлуатаційні і функціональні специфікації, що містять конкретний опис ПЗ.
Експлуатаційні специфікації повинні містити відомості про швидкодію ПЗ, витрати пам'яті, необхідні технічні засоби, надійність і т.д. Функціональні специфікації визначають функції, які повинне виконувати ПЗ. Специфікації повинні бути повними, точними і ясними.
Мета етапу проектування - ієрархічна розбивка складної задачі створення ПЗ на підзадачи меншої складності.
На етапі проектування вирішуються наступні задачі:
формування структури ПЗ і розробка алгоритмів, які задаються специфікаціями;
визначення складу модулів з поділом їх на ієрархічні рівні;
вибір структури інформації в базі даних;
фіксація міжмодульних інтерфейсів.
Результатом роботи на цьому етапі є специфікації на окремі модулі, подальша декомпозиція яких недоцільна.
Ціль етапу тестування і налагодження - виявлення в ПЗ помилок, перевірка працездатності ПЗ, його відповідність специфікаціям.
У ході цього етапу вирішуються наступні задачі:
- підготовка даних для налагодження;
планування налагодження;
розробка драйверів тестів;
іспит ПЗ.
Результатом роботи повинне бути відтестоване і налагоджене ПЗ. Обєктно-орієнтований підхід руйнує монотонність окремих етапів лавинообразної моделі розробки ПЗ і їхню строгу послідовність. Обєктно-орієнтована розробка ПЗ базується не тільки на ітеративності етапів, але і на їхньому довільному чергуванні.
Ціль і задачи етапу обєктно-орієнтованого аналізу ті ж, що і для лавинообразної моделі. Підсумком виконання цього етапу є ідентифікація і моделювання основних класів і об'єктів, логічних відносин і взаємодій між ними.
На етапі обєктно-орієнтованого проектування результати аналізу модифікуються шляхом уведення нових абстракцій і механізмів, що дозволяють більш ефективно використовувати вже ідентифіковані класи й об'єкти. Ознака завершення процесу обєктно-орієнтованого проектування полягає в тому, що отримані ключові абстракції стають досить простими і не вимагають подальшої декомпозиції.
Еволюція в життєвому циклі розробки обєктно-орієнтованого ПЗ сполучає традиційні етапи, що включають складання програм, їхнє тестування й інтеграцію (комплексування). Таким чином, процес розробки перетворюється в поступове складання ряду прототипів, що потім входять у кінцеву реалізацію. Складання прототипів, що розвиваються, у свою чергу стимулює розробку й оцінку альтернативних рішень, що дозволяє одержати розумний компроміс, який задовольняє рядові обмежень, що відповідають функціональним вимогам, вимогам на терміни розробки і займаний обсяг.
У процесі еволюції ПЗ в ньому можуть відбутися наступні зміни:
додавання нового класу;
зміна реалізації класу;
зміна представлення класу;
реорганізація структури класу;
зміна інтерфейсу класу.
Розгляд етапу модифікації для ітеративної моделі розробки ПЗ не проводиться, так само як і для етапу супроводу в лавинообразної моделі в зв'язку з тим, що це етапи життєвого циклу для довгостроково експлуатованих програмних виробів.
Розробка ПЗ повинна починатися з ретельного вивчення завдання на курсове проектування, представленого в методичних вказівках у формі частково підготовленого технічного завдання. Першочерговою задачею розроблювача є формування повного технічного завдання відповідно до ГОСТ 19.201-78.
Етапи аналізу і проектування повинні бути формалізовані за допомогою одного з засобів, що рекомендуються
апарат формальних специфікацій;
методи структурного аналізу;
методи обєктно-орієнтованого аналізу;
методи обєктно-орієнтованого проектування.
У Додатку 15 даний короткий опис апарата формальних специфікацій.
Підготовка і проведення налагодження і тестування можуть бути проведені відповідно до рекомендацій.
Розроблювальне в курсовому проектуванні ПЗ може бути оснащено графічним користувальницьким інтерфейсом, що відповідає сучасним тенденціям і вимогам ринку. Основні вимоги по організації такого інтерфейсу приведені в Додатку 16.
Склад програмної документації, що входить до складу курсового проекту (роботи) визначається методичними вказівками. При розробці документації необхідно дотримувати вимог наступних стандартів ЄСПД:
- "Види програм і програмних документів" (Додаток 2);
- "Позначення програм і програмних документів" (Додаток 3);
- "Основні написи" (Додаток 4);
- "Загальні вимоги до програмних документів" (Додаток 5);
- "Вимоги до програмних документів, виконаних друкованим способом" (Додаток 6).
Л І Т Е Р А Т У Р А
Боэм Б.У. Инженерное проектирование программного обеспечения.-
М.: Радио и связь, 1985.- 512 с.
2. Буч Г. Объектно-ориентированное проектирование.- М.:Конкорд, 1992. 519 с.
3. Гардан И., Люка М. Машинная графика и автоматизация конструирования.
М.:Мир, 1987.- 272 с.
Единая система программной документации.-
М.:Изд-во стандартов, 1985. - 128с.
5. Лисков Б., Гатэг Дж. Использование абстракций и спецификаций при
разработке программ.- М.: Мир, 2002.- 424 с.
Росс Д.Т. Структурный анализ (SA): язык для передачи понимания. В кн.Требования и спецификации в разработке программ.-
М.:Мир, 1999. С. 240-284.
7. Страуструп Б. Язык программирования С++. В 2-х кн. Часть первая.
К.:ДиаСофт, 2001.- 264 с. Часть вторая.- К.:ДиаСофт, 2001.- 296 с.
8. Хокс Б. Автоматизированное проектирование и производство.-
М.: Мир, 1991.- 296 с.
9. Шикин Е.В., Боресков А.В., Зайцев А.А. Начала компьютерной
графики.- М.:ДИАЛОГ-МИФИ, 2003.- 138 с.
Шлеер С., Меллор С. Объектно-ориентированный анализ: моделирование мира в состояниях.- К.:Диалектика, 2002.- 240 с.