Оценка длительности проекта

Автор работы: Пользователь скрыл имя, 10 Мая 2012 в 20:58, реферат

Описание

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

Содержание

Перелік позначень та скорочень 9
Вступ 10
1 Огляд проблеми розробки сучасних програмних систем управління проектами 11
1.1 Основні проблеми розробки сучасних програмних систем 11
1.1.1 Необхідність розробки програмного забезпечення 11
1.1.2 Огляд основних моделей життєвого циклу програмного забезпечення 11
1.1.3 Огляд основних методологій розробки програмного забезпечення 12
1.1.4 Чинники вибору методології розробки програмного забезпечення 15
1.2 Докладний опис області управління проектами 16
1.2.1Мотивований вибір методології розробки програмного забезпечення 16
1.2.2 Опис бізнес-процесів області управління проектами 16
1.3 Огляд існуючих систем управління проектами 19
1.4 Постановка задачі автоматизації управління проектами 19
2 Розробка математичної моделі для автоматизації процесу управління проектами 20
2.1 Теоретичні основи оцінки тривалості проекту 20
2.2 Розробка моделі оцінки тривалості проекту 21
3 Розробка програмного забезпечення 25
3.1 Розробка загальної архітектури системи 25
3.2 Розробка діаграми варіантів використання 25
3.2 Розробка концептуальної моделі даних 26
3.3 Вибір та обґрунтування програмних засобів для реалізації програмного забезпечення 28
Висновки 30
Список джерел інформації 31
Додаток А Аналіз основних методологій 32
Додаток Б Огляд систем управління проектами 33
Додаток В Глосарій основних понять 34

Работа состоит из  1 файл

Дипломна робота.Семестр 1.doc

— 563.50 Кб (Скачать документ)

     3.3 Вибір та обґрунтування програмних засобів для реалізації програмного забезпечення

     На  основі огляду систем управління проектами, представленого в додатку Б, були обрані наступні програмні засоби для  реалізації ПЗ:

  • веб-сервер Apache 2.2;
  • мова написання серверних скриптів PHP;
  • СКБД MySQL 5.5;
  • мова написання клієнтських скриптів Javascript.

     Apache HTTP сервер – це веб-сервер з відкритим вихідним кодом. Основними перевагами Apache вважаються надійність і гнучкість конфігурації. Він дозволяє підключати зовнішні модулі для отримання даних [12], дає можливість модифікувати повідомлення про помилки. Недоліком найчастіше називається відсутність зручного стандартного інтерфейсу для адміністратора.

     PHP – це мова розробки скриптів сервера, що включає інтерпретатор мови і набір функцій для доступу до баз даних і різних об'єктів WWW [13]. На даний момент PHP є найбільш зручним і потужним засобом розробки додатків WWW і інтерфейсів до БД в Інтернет. Загалом, PHP – це мова, спеціально націлена на роботу в Інтернеті, мова з універсальним і ясним синтаксисом. В принципі, в PHP є лише один серйозний недолік – його повільність при роботі з великими і складними сценаріями.

     MySQL – вільна СКБД , що характеризується великою швидкістю, стійкістю і легкістю у використанні, є рішенням для малих і середніх застосувань. Зазвичай MySQL використовується як сервер, до якого звертаються локальні або видалені клієнти, проте в дистрибутив входить бібліотека внутрішнього сервера, що дозволяє включати MySQL в автономні програми. Недостатком MySQL можна назвати повільний пошук по індексам, в порівнянні з іншими СКБД.

     JavaScript – об'єктно-орієнтована скриптова мова програмування на стороні клієнта. Найбільш широке застосування знаходить в браузерах як мова сценаріїв для додання інтерактивності веб-сторінок [14]. JavaScript має C-подібний синтаксис, але в порівнянні з мовою С має такі корінні відмінності: об’єкти, з можливістю інтроспекції і динамічної зміни типу через механізм прототипів, обробка винятків, автоматичне приведення типів.

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

Висновки

     В ході виконання даної курсової роботи був проведений аналіз проблеми управління проектами та був проведений аналіз існуючих методологій розробки програмного забезпечення. На основі даного аналізу було обрано Scrum методологію як основу для програмного забезпечення. Було розроблено глосарій проекту, який став основою для створення концептуальної моделі даних, створений у нотації IDEF1X та за допомогою CASE – засобу Computer Associates Erwin.

     Основна функціональність системи була представлена у вигляді UML діаграми варіантів  використання.

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

Список  джерел інформації

  1. Software development //

http://en.wikipedia.org/wiki/Software_development.html, 06.10.2011.

  1. The Importance of Software Development //

http://www.articlesbase.com/software-articles/software-development.html, 13.11.2011.

  1. Авторитетний посібник зі Скраму: правила гри / Кен Швабер [та ін.] : Scrum.org, 2011. – 16 с.
  2. Extreme Programming: A gentle introduction //

http://www.extremeprogramming.org/index.html, 15.11.2011.

  1. Rational Unified Process // http://www.interface.ru/rup01_t.htm, 15.11.2011.
  2. Методологии разработки программного обеспечения //

http://bms-soft.com.ua/ru/services/metodologii-razrabotki-po.html, 17.11.2011.

  1. Business process //

http://en.wikipedia.org/wiki/Business_process.html, 17.11.2011.

  1. Сомервилл И. Инженерия программного обеспечения / И. Сомервилл ; пер с англ. .– М.: Издательский дом «Вильямс», 2002. – 575 с.
  2. Бриткин А.И. Модель оценки длительности итерационного проекта разработки программного обеспечения / А.И. Бриткин .– М.:   Открытое образование – 2009. – 60с.
  3. Архитектура программного обеспечения // http://www.intuit.ru/department/se/compprog/6.html, 04.12.2011.
  4. IDEF1X // http://en.wikipedia.org/wiki/IDEF1X.html, 06.12.2011.
  5. Overview of new features in Apache 2.2 // http://httpd.apache.org/docs/2.2/new_features_2_2.html, 09.12.2011.
  6. What is PHP ? // http://www.php.net/manual/en/intro-whatis.html, 11.12.2011.
  7. JavaScript // http://en.wikipedia.org/wiki/JavaScript.html, 11.12.2011.

Додаток А 
 
Аналіз основних методологій

Таблиця А.1 - Аналіз основних методологій розробки програмного забезпечення

Характеристика Методологія
RUP MSF XP SCRUM
Ітеративний підхід + + + +
Постійний зв'язок з замовником + +
Ступінь формалізації висока висока низька низька
Самоорганізованість команди + +
Швидка  адаптація до змін +

Додаток Б 
 
Огляд систем управління проектами

Таблиця Б.1- Огляд основних систем управління проектами

Характеристика Система
RedMine Bontq Project Kaiser ASTRES
Ліцензія безплатна пропрієтарна пропрієтарна безплатна
Інтеграція  чи генерація динамічної документації integrated wiki, email integration, calendars, Gantt Charts, PDF, Excel/CSV integrated wiki, Google Docs integrated wiki Експорт в MS Excel, CSV, XML, HTML, MediaWiki
Облік затраченого часу +
інтеграція  с email + + + +
СКБД MySQL, PostgreSQL, SQLite PostgreSQL Derby, MySQL, SQL Server MySQL
Мова  програмування Ruby on Rails PHP Java PHP
Веб-сервер Apache Apache Tomcat Apache
Інтерфейс користувача Web, e-mail, iPhone Web, e-mail Web, e-mail Web, e-mail

Додаток В 
 
Глосарій основних понять

Таблиця В.1- Глосарій основних понять

Поняття Опис поняття
Проект унікальний  комплекс взаємопов'язаних заходів  для досягнення заздалегідь поставлених  цілей за певних вимогах до термінів, бюджету та характеристикам очікуваних результатів.
Управління  проектом процес застосування знань, навичок, методів, засобів і  технологій до проектної діяльності з метою досягнення або перевищення  очікувань учасників проекту.
Базис основні параметри проекту та документи, які фіксують їх узгоджене розуміння всіма учасниками.
Проектні  відхилення розбіжності фактичних  і планових результатів проекту, причини таких розбіжностей, методи і технології, що дозволяють справлятися  з такими ситуаціями в проекті. Включають в себе ризики, проблеми і зміни.
Scrum команда група осіб, яка складаєтья із власника продукту, команди розробників (Development Team) і Scrum Майстра (Scrum Master)
Scrum майстер несе відповідальність за те, щоб Scrum був гарантовано зрозумілим всім учасникам та працював. Він стежить за тим, щоб всі учасники команди дотримувалися теоретичних засад, практик та правил Scrum.
Команда розробників складається з  професіоналів, що виконують роботу із розробки потенційно готового до випуску інкременту “завершеного” продукту у кінці кожного спринту.
Власник продукту є відповідальним за досягнення максимальної цінності продукту та роботи, що виконується  командою розробників.
Журнал  продукту це впорядкований  список усього, що повинно бути притаманно продукту; він є єдиним джерелом вимог для будь-яких змін, у внесенні яких до продукту може виникнути необхідність.
Спринт визначений  період розробки продукту, результатом якого є

приріст його функціональності.

Журнал  спринту  це набір  елементів журналу продукту, вибраних для виконання у поточному спринті, разом із планом розробки інкременту продукту та планом досягнення цілі спринту.


Информация о работе Оценка длительности проекта