Автор работы: Пользователь скрыл имя, 03 Июня 2013 в 23:02, реферат
Враховуючи ситуацію на ринку та велику кількість програмних продуктів, часто виникає ситуація, коли під конкретні завдання фірми складно підібрати готове рішення. Для того щоб автоматизувати процеси або задачі, в такому випадку, найоптимальнішим варіантом є розробка необхідного програмного забезпечення. При розробці можливо врахувати всі зауваження і побажання, уникнути непотрібного функціоналу, забезпечити максимальну сумісність програмного забезпечення з раніше встановленим і його повноцінну інтеграцію. Таким чином, розробка програмного забезпечення набирає все більшу популярність і є потужним інструментом для автоматизації будь-яких процесів і завдань.
ВСТУП 3
РОЗДІЛ 1. ПОНЯТТЯ ПРОГРАМНОГО ЗАБЕЗПЕЧЕННЯ 4
1.1.КЛАСИ ПРОГРАМНОГО ЗАБЕЗПЕЧЕННЯ 4
1.2 ТЕОРЕТИЧНІ ОСНОВИ 5
РОЗДІЛ 2 ОСНОВНІ РЕСУРСИ ПРИ РОЗРОБКІ ПЗ 5
2.1. ЧАС 5
2.2. БЮДЖЕТ 5
2.3 ПЕРСОНАЛ 6
2.4 ВИКОРИСТОВАНЕ УСТАТКУВАННЯ, ІНСТРУМЕНТИ, МАТЕРІАЛИ 6
РОЗДІЛ 3. РОЗРОБКА ПРОГРАМНОГО ЗАБЕЗПЕЧЕННЯ 7
3.1. ПРОГРАМНЕ ЗАБЕЗПЕЧЕННЯ ЯК ГАЛУЗЬ ЕКОНОМІКИ 7
3.2 ПРОГРАМНИЙ ПРОДУКТ 7
3.3 ПРОБЛЕМИ РОЗРОБКИ ПРОГРАМНОГО ЗАБЕЗПЕЧЕННЯ 8
РОЗДІЛ 4. ОСОБЛИВОСТІ РОЗРОБКОЮ ПЗ 9
4.1. ПОРОДЖЕННЯ ПРОБЛЕМ СТВОРЮВАНИХ ПРОГРАМ 10
4.2. НАСЛІДОК УНІКАЛЬНОСТІ ПЗ 11
4.3. УЧАСНИКИ ПРОЦЕСУ РОЗРОБКИ ПЗ 12
РОЗДІЛ 5. ПРОГРАМНЕ ТА АПАРАТНЕ ЗАБЕЗПЕЧЕННЯ 12
5.1. ПРИКЛАДНИЙ РІВЕНЬ 12
5.2. СЛУЖБОВИЙ РІВЕНЬ 17
5.3. СИСТЕМНИЙ РІВЕНЬ 19
5.4 БАЗОВИЙ РІВЕНЬ 19
ВИСНОВОК 20
СПИСОК ВИКОРИСТАНИХ ДЖЕРЕЛ 21
«Особливості управління розробкою програмного забезпечення»
Індивідуальне навчально-дослідне завдання
ЗМІСТ
ВСТУП 3
РОЗДІЛ 1. ПОНЯТТЯ ПРОГРАМНОГО ЗАБЕЗПЕЧЕННЯ 4
1.1.КЛАСИ ПРОГРАМНОГО ЗАБЕЗПЕЧЕННЯ 4
1.2 ТЕОРЕТИЧНІ ОСНОВИ 5
РОЗДІЛ 2 ОСНОВНІ РЕСУРСИ ПРИ РОЗРОБКІ ПЗ 5
2.1. ЧАС 5
2.2. БЮДЖЕТ 5
2.3 ПЕРСОНАЛ 6
2.4 ВИКОРИСТОВАНЕ УСТАТКУВАННЯ, ІНСТРУМЕНТИ, МАТЕРІАЛИ 6
РОЗДІЛ 3. РОЗРОБКА ПРОГРАМНОГО ЗАБЕЗПЕЧЕННЯ 7
3.1. ПРОГРАМНЕ ЗАБЕЗПЕЧЕННЯ ЯК ГАЛУЗЬ ЕКОНОМІКИ 7
3.2 ПРОГРАМНИЙ ПРОДУКТ 7
3.3 ПРОБЛЕМИ РОЗРОБКИ ПРОГРАМНОГО ЗАБЕЗПЕЧЕННЯ 8
РОЗДІЛ 4. ОСОБЛИВОСТІ РОЗРОБКОЮ ПЗ 9
4.1. ПОРОДЖЕННЯ ПРОБЛЕМ СТВОРЮВАНИХ ПРОГРАМ 10
4.2. НАСЛІДОК УНІКАЛЬНОСТІ ПЗ 11
4.3. УЧАСНИКИ ПРОЦЕСУ РОЗРОБКИ ПЗ 12
РОЗДІЛ 5. ПРОГРАМНЕ ТА АПАРАТНЕ ЗАБЕЗПЕЧЕННЯ 12
5.1. ПРИКЛАДНИЙ РІВЕНЬ 12
5.2. СЛУЖБОВИЙ РІВЕНЬ 17
5.3. СИСТЕМНИЙ РІВЕНЬ 19
5.4 БАЗОВИЙ РІВЕНЬ 19
ВИСНОВОК 20
СПИСОК
ВИКОРИСТАНИХ ДЖЕРЕЛ 21
Враховуючи ситуацію на ринку та велику кількість програмних продуктів, часто виникає ситуація, коли під конкретні завдання фірми складно підібрати готове рішення. Для того щоб автоматизувати процеси або задачі, в такому випадку, найоптимальнішим варіантом є розробка необхідного програмного забезпечення. При розробці можливо врахувати всі зауваження і побажання, уникнути непотрібного функціоналу, забезпечити максимальну сумісність програмного забезпечення з раніше встановленим і його повноцінну інтеграцію. Таким чином, розробка програмного забезпечення набирає все більшу популярність і є потужним інструментом для автоматизації будь-яких процесів і завдань.В даний час практично неможливо знайти область, в якій би не застосовувалися програмні комплекси автоматизації підприємства. Розробка програмного забезпечення перестала бути розкішшю, і впевнено стає обов'язковою віхою розвитку для будь-якої компанії.Раніше вважалося, що розробка програмного забезпечення потрібна і доступна тільки великим компаніям. Однак, з повсюдним поширенням комп'ютерів, вона знайшла сенс для всіх суб'єктів ринку - від великих корпорацій до невеликих компаній; незалежно від розміру фірми розробка програмного забезпечення дозволить оптимізувати документообіг, полегшити і прискорити обслуговування клієнтів і тим самим підвищити конкурентоспроможність компанії
Для комп'ютерних інформаційних технологій в якості засобів управління технічним комплексом (комп'ютерних систем) виступають програмні засоби (програмне забезпечення). Питання розробки та використання програмного забезпечення взагалі досить добре опрацьовані і широко висвітлені в науковій і навчально-практичній літературі. Загальне визначення змісту поняття «програмне забезпечення» включає в себе сукупність програм системи обробки даних і програмних документів, необхідних для експлуатації цих програм. Дане трактування в загальному випадку може бути використана, особливо якщо мова йде про проблеми власне розробки і експлуатації програмних комплексів як таких. Але з точки зору користувачів в рамках відповідних технологій слід виділити зі складу їх програмного забезпечення експлуатаційні документи, оскільки у відповідності зі структурою засобів і методів інформаційних технологій вони відносяться до організаційно-методичного забезпечення.
Програмне забезпечення для підприємств ділиться на класи
ERP(Enterprise Resources Planning)- система планування ресурсів підприємства;
CRM(
SCM (Supply Chain Management) - система управління логістичним ланцюгом;
PLM (Product Lifecycle Management) - система управління життєвим циклом продукту;
SRM(Supplier Relationship Management)-система управління взаємовідносинами з постачальниками;
BI (Business Intelligence) - інтелектуальні системи підтримки стратегічного менеджменту.
Теоретичні основи програмного забезпечення комп'ютерів базуються на теорії скінченних автоматів, і практично були закладені британським математиком Аланом Тюрингом у 1936 році. Він створив так звану машину Тюринга, математичну модель абстрактної машини, здатної виконувати послідовності рудиментарних операцій, які переводять машину з одного фіксованого стану в інший, вже заданий наперед стан. Головна ідея полягала в математичному доведенні факту, що будь-який, попередньо сформульований стан системи може бути завжди досягнутий послідовним виконанням скінченного набору елементарних команд (програми) з фіксованого алфавіту команд.
Цей ресурс завжди жорстко
обмежений. Тривалість проекту фіксована,
це одне з головних відмінностей проектів
від звичайної операційної
Бюджет проекту теж завжди обмежений і - гроші, як відомо, зайвими не бувають. Гроші часто розглядаються як практично універсальний еквівалент інших ресурсів : за рахунок вкладення додаткових грошей намагаються виграти в часі, залучити додатковий персонал та ін.
Однак повністю в гроші можна перевести тільки використовуване устаткування й матеріали, та й то з деякими втратами в часі на їх придбання та підготовку до роботи. Разом згодом бюджет задає основні обмеження на зміст і можливі результати проекту.
Персонал іноді розглядається як поновлюваний ресурс , що має грошовий еквівалент .Однак найчастіше люди поводяться не зовсім так, як устаткування або меблі, - вони не дозволяють себе "пересувати", "забирати" і "додавати" з такою ж легкістю. Маючи певний персонал, не можна одержати потрібний результат за допомогою заздалегідь відомої послідовності дій. Навіть для одержання тих самих результатів від тої ж самої особи в різних обставинах потрібно застосовувати різні підходи. Звичайно лише працівників середнього рівня можна знайти в потрібній кількості за середню зарплату, а щоб найняти високопрофесійного відповідального члена проектної команди (керівника, бізнес-аналітика, архітектора, фахівця із проектування інтерфейсів та ін.), часто потрібно піти на досить високі витрати. Або ж доведеться орендувати такого фахівця, що коштує ще дорожче. З іншого боку, людину, яка згодом виросте до такого рівня, можна найняти практично випадково. Велике значення для успіху проекту також має побудова з окремих людей справжньої команди, що дала б більший результат, ніж сума результатів окремої роботи її членів. Найчастіше дійсно складне ПЗ без такої команди у рамках виділеного бюджету створити неможливо.
Це ресурси класичного типу, які можуть використовуватися одноразово або багаторазово, можуть зношуватися або не зношуватися в результаті використання (а також просто згодом) і досить адекватно можуть бути виміняні на гроші.
Розробка програмного забезпечення ( англ. software engineering , Software development) - це рід діяльності ( професія) і процес, спрямований на створення і підтримку працездатності, якості та надійності програмного забезпечення, використовуючи технології, методологію та практики з інформатики, управління проектами, математики, інженерії та інших областей знання.
Розробка програмного забезпечення наприкінці 20 ст. - на початку 21 ст. виділилася в окрему важливу галузь економіки — індустрію програмного забезпечення. Процес розробки комп'ютерних програм вимагає висококваліфікованої праці, і розвивається, загалом, повільніше, ніж процес вдосконалення апаратної бази комп'ютерів. Інженерія програмного забезпечення відносно недавно стала окремою професією.
Розробка програмного забезпечення включає в себе багато стадій: проектування, програмування, тестування, впровадження і підтримку.
Проектування починається із формулювання вимог до програмного забезпечення і створення специфікацій - документів, у яких описані функції, що їх повинна виконувати програма.
На наступному етапів створюється
загальний дизайн програми: розбиття
її на окремі блоки і визначення
взаємодії між ними. На етапі безпосереднього
програмування створюється
Перед впровадженням програмний продукт потребує документації — опису можливостей, посібників користувача, системи допомоги. Після впровадження програмного забезпечення, що для програмних продуктів вимагає маркетингу, системи дистрибуції, реклами тощо, програмне забезпечення потребує підтримки. Необхідність у підтримці виникає внаслідок швидкого розвитку комп'ютерів, що зумовлює необхідність взаємодії програмного продукту з іншими, новішими програмами і новою матеріальною базою. Часто підтримка нових можливостей забезпечується випуском нових версій програмного продукту.
Найбільш поширеними проблемами, що виникають в процесі розробки ПЗ, вважають:Брак прозорості. У будь-який момент часу складно сказати, в якому стані знаходиться проект і який відсоток його завершення. Дана проблема виникає при недостатньому плануванні структури (або архітектури) майбутнього програмного продукту, що найчастіше є наслідком відсутності достатнього фінансування проекту: програма потрібна, скільки часу займе розробка, якими є етапи, чи можна якісь етапи виключити або заощадити - наслідком цього процесу є те, що етап проектування скорочується.
Недолік контролю. Без точної оцінки процесу розробки зриваються графіки виконання робіт і перевищуються встановлені бюджети. Складно оцінити обсяг виконаної і залишилася роботи. Дана проблема виникає на етапі, коли проект, завершений більш ніж наполовину, продовжує розроблятися після додаткового фінансування без оцінки ступеня завершеності проекту.
Недолік трасування
Недолік моніторингу. Неможливість спостерігати хід розвитку проекту не дозволяє контролювати хід розробки в реальному часі. За допомогою інструментальних засобів менеджери проектів приймають рішення на основі даних, що надходять у реальному часі. Дана проблема виникає в умовах, коли вартість навчання менеджменту володінню інструментальними засобами порівнянна з вартістю розробки самої програми.
Неконтрольовані зміни. У споживачів постійно виникають нові ідеї щодо розроблюваного програмного забезпечення. Вплив змін може бути суттєвим для успіху проекту, тому важливо оцінювати пропоновані зміни та реалізовувати тільки схвалені, контролюючи цей процес за допомогою програмних засобів. Дана проблема виникає внаслідок небажання кінцевого споживача використовувати ті чи інші програмні середовища.
Наприклад, коли при
створенні клієнт-серверної
Недостатня надійність. Найскладніший
процес - пошук і виправлення помилок
в програмах на ЕОМ. Оскільки число
помилок в програмах
Слід зазначити, що залучення доказового підходу до проектування ПЗ дозволяє виявити помилки в програмі до її виконання. У цьому напрямку багато працювали Кнут, Дейкстра і Вірт. Професор Вірт при розробці Паскаля і Оберона за рахунок строгості їх синтаксису домігся математичної доказовою завершаемості і правильності програм, написаної на цих мовах. Дана проблема виникає при неправильному виборі засобів розробки. Наприклад, при спробі створити програму, що вимагає коштів високого рівня, за допомогою засобів низького рівня.
Наприклад, при спробі створити засоби автоматизації з СУБД на асемблері. В результаті вихідний код програми виходить занадто складним і погано піддається структурованню. Відсутність гарантій якості і надійності програм через відсутність гарантій відсутності помилок в програмах аж до формальної здачі програм замовникам. Дана проблема не є проблемою, яка відноситься виключно до розробки ПЗ. Гарантія якості - це проблема вибору постачальника товару (не продукту).
Далі розглянемо загальні
питання управління проектами та
окремими видам діяльності, яким менеджер
проекту повинен приділяти
Створювані програми є нематеріальними. Це породжує проблеми двох видів.
Програми мають приголомшливу гнучкість, вони не роблять опори впливам, як фізичні матеріали. Усі знають, що побудувати будинок можна із твердого й щільного матеріалу, а щоб зробити батут потрібно використовувати матеріал м'який, гнучкий і міцний. У світі ж програм можна побудувати все, що завгодно, з тих самих базових конструкцій. Тому іноді здається, що раз суть необхідних змін в програмі зрозуміла, то для їх втілення потрібно небагато зусиль. Це не так. Робота с елементами програм у цьому аспекті не занадто відрізняється від роботи з цеглинами й будівельними блоками. А якщо ці блоки ще й коштують абияк, то при спробі пересунути їх програміста взагалі може "завалити" - налагодження отриманої програми зажадає колосальних зусиль. Рух до потрібного результату при розробці ПЗ дуже важко проконтролювати. При піднесенні будинку або будівлі корабля можна безпосередньо спостерігати за тим, як просувається робота. При створенні складної програмної системи силами багатьох розробників потрібно акуратно підбирати індикатори того, як ідуть справи, інакше легко помилитися щодо справжнього стану речей
Информация о работе Особливості управління розробкою програмного забезпечення