Дипломний проект
На тему:
"Автоматизована система обліку обороту товарів в телекомунікаційній фірмі"
Санкт-Петербург 2007
Введення
У наш час Інтернет став невід'ємною частиною життя сучасного суспільства. З кожним днем зростає число його користувачів, збільшується обсяг наданої інформації в мережі Інтернет. Бурхливе зростання компаній використовують мережу Інтернет як один з важливих елементів своєї торгової та маркетингової діяльності, сприяє інтенсивному розвитку електронної комерції. Зростає попит на програмні продукти, що організують електронну торгівлю в мережі Інтернет.
Електронна комерція дозволяє компаніям більш ефективно і гнучко організувати свої внутрішні робочі процеси, більш тісно взаємодіяти з постачальниками і бути більш чуйними до запитів і очікуванням клієнтів. Вона надає можливість компаніям вибирати кращих постачальників незалежно від їх географічного розташування та забезпечувати продажу на світових ринках.
Загальна концепція електронної комерції включає в себе будь-які форми ділових операцій, здійснюваних електронним способом, використовуючи мережі телекомунікації. Такі операції виникають між компаніями, між компаніями та їх клієнтами, або між компаніями та органами влади.
Ця дипломна робота присвячена розробці системи електронної торгівлі, яка є складовою частиною електронної комерції, посредствам всесвітньої комп'ютерної мережі Інтернет у сфері бізнесу, яку часто називають «електронним магазином», для фірми, що займається оптовою торгівлею автозапчастинами.
Одне з можливих визначень електронної комерції: «будь-який вид угод, при яких взаємодія сторін здійснюється електронним способом замість фізичного обміну або безпосереднього фізичного контакту».
Однак, будучи точним, таке визначення не відображає революційного духу електронної комерції, породженого виникненням нових запитів і технологій та ведучого до корінних змін у способах ведення бізнесу.
Сучасний бізнес характеризується постійним зростанням можливостей компаній-постачальників, а також безперервним розширенням глобальної конкуренції і підвищенням рівня вимог замовників.
У відповідь на це, ділові підприємства в усьому світі змінюють способи організації та управління свого бізнесу. Відбувається відмова від старої ієрархічної структури, зникають бар'єри між відділеннями компанії. Спрощується взаємодія між компанією, її замовниками та постачальниками.
Бізнес-процеси перебудовуються і виходять за старі межі. Ми бачимо безліч прикладів таких процесів, до яких може бути залучена не тільки вся компанія, але і її замовники і постачальники.
Електронна комерція являє собою засіб здійснення та підтримки таких змін в глобальному масштабі. Вона дозволяє компаніям ефективно і гнучко здійснювати внутрішні операції, щільніше взаємодіяти з постачальниками і швидше реагувати на запити та очікування замовників. Компанії отримують можливість вибору кращих постачальників незалежно від географічного розташування, а також можливість виходу на глобальний ринок зі своїми товарами та послугами.
Особливий випадок електронної комерції - електронна торгівля, яка передбачає, що постачальник товарів або послуг надає їх замовнику за певну плату. Спеціальний випадок електронної торгівлі - електронна роздрібна торгівля, яка передбачає, що замовник є скоріше звичайним споживачем, ніж інший компанією. Однак, незважаючи на те, що ці особливі випадки дуже важливі економічно, вони являють собою лише окремі приклади загального випадку, який об'єднує всі форми ділових операцій та угод, здійснюваних електронним способом. Як інші настільки ж важливих прикладів можна навести внутрішня взаємодія в рамках окремої компанії або безкоштовна передача інформації зовнішньої організації.
Технології електронної комерції постійно змінюються. Компанії, які розглядають електронну комерцію тільки як доповнення до вже наявних у них способів ведення бізнесу, ризикують отримати лише часткову вигоду. Головні переваги матимуть фірми, які вирішили змінити організацію і бізнес-процеси таким чином, щоб повністю використовувати можливості електронної комерції.
Введення
Електронну комерцію можна підрозділити на 4 категорії:
• бізнес-бізнес
• бізнес-споживач
• бізнес-адміністрація
• споживач - адміністрація
Рис. 1. Категорії електронної комерції
Прикладом з категорії бізнес-бізнес може служити компанія, що використовує мережу для замовлень постачальникам, а також для отримання рахунків та оплати. Ця категорія електронної комерції успішно складалася протягом кількох років, з частковим використанням технології електронного обміну даними - EDI, у приватних мережах або мережах з додатковими послугами - VAN.
Категорія бізнес-споживач - це електронна роздрібна торгівля.
Дана категорія сильно розширила свої рамки з появою WWW. На сьогоднішній день в Інтернеті відкрито безліч магазинів, що пропонують споживачам всілякі товари, від печива і вина до комп'ютерів та автомобілів.
У категорію бізнес-адміністрація входять всі угоди, укладені між компаніями і урядовими організаціями. Наприклад, у США інформація про плановані урядом закупівлі в Інтернеті, і компанії можуть надсилати свої пропозиції електронним способом. Сьогодні ця категорія поки перебуває в зародковому стані, але може швидко розростися за умови, що уряди використовують власні можливості для підтримки та розвитку електронної комерції. На додаток до оголошень про закупівлі, адміністративні органи можуть також пропонувати можливість електронного обміну при таких операціях, як, наприклад, повернення податку на додану вартість.
Категорія споживач-адміністрація ще не існує. Однак з розростанням категорій бізнес-споживач і бізнес-адміністрація уряду можуть розширити електронну взаємодію в таких областях, як, наприклад, соціальні виплати.
Згідно зі статистикою, трафік, пов'язаний з WEB, є на даний момент домінуючим в Інтернет. Згідно накопиченої статистики з'явилася можливість робити прогнози зростання Російської аудиторії користувачів Інтернет. У найбільшому рекламному агентстві «Відео Інтернешнл» вважають, що в 2006 році число користувачів зросте з 22 до 28 мільйонів, в 2007 році складе 34 мільйони, і буде продовжувати рости на 5-6 мільйонів на рік, поки до 2010 року не досягне 46 мільйонів . За статистикою серед користувачів Інтернет, високозабезпечені громадяни зустрічаються в 2 рази частіше, ніж просто в Росії. При цьому більше половини інтернет-користувачів мають вищу освіту. Це соціально і економічно активна аудиторія.
Бізнес знаходиться в самому серці електронної комерції, однак, у різних типів взаємодії існують відрізняють їх характеристики
У 1995 році дослідження, проведені Gather Group, передбачили, що споживачі будуть використовувати множинні «високопропускние канали інформації» для електронних покупок: інтерактивне телебачення, Інтернет та інші електронні системи. Користувачі WEB представляють собою ключовий напрямок для бізнес-додатків, так як вони, в основному високоосвічені і мають професійні навички.
Одна з основних технологій, що підтримують даний вид взаємодії, є технологією обміну електронними даними. EDI включає в себе обмін стандартизованої, структурованою інформацією між організаціями, що допускають пряму зв'язок між своїми комп'ютерними системами і що обмежують залучення людей і повторне введення інформації.
Введення електронної комерції також включає залучення нових шляхів ведення бізнесу. Зовсім не слід скидати з терезів опору змінам з боку великих і малих організацій. Наприклад, у банківському секторі побоювання раптовості нових і, можливо, конкуруючих моделей бізнесу може з'явитися вирішальним чинником. Окремі сектори можуть зазнати значних структурних змін. Ці аспекти виникає електронної комерції потребують подальшого вивчення.
Уряд відіграє провідну роль у стимулюванні ринку електронної комерції. У Європі був досягнутий значний прогрес в окремих напрямках, в основному в області митниці, оподаткування, збору статистики і громадських закупівель, маючи на меті встановлення транс'європейських мереж і систем, спрямованих безпосередньо на приватний сектор. Зусилля були також зроблені на державному рівні, наприклад, у Швеції поставили за мету, щоб до 1999 р. принаймні 90% громадських закупівель відбувалися електронним чином. У Сполучених Штатах до кінця 1997 р. 70% громадських закупівель на федеральному рівні проводилися електронним способом.
Електронна комерція включає в себе широкий спектр діяльності. Основним компонентом є підтримка циклу комерційної угоди. Електронна комерція включає електронну торгівлю фізичними товарами та послугами, а також електронним матеріалом. Крім того вона включає рекламу і просування товарів і послуг, сприяння контактам між надають їх сторонами, забезпечення маркетингових досліджень ринку, перед-і післяпродажну підтримку, електронні закупівлі та підтримку окремих бізнес-процесів.
Слід зробити відмінність між електронною торгівлею реальними товарами і послугами та електронною торгівлею інформаційним матеріалом, який може бути одержаний безпосередньо по мережі
Електронна торгівля реальними товарами і послугами є наступним кроком за існуючим способом проведення торгових операцій, включаючи в себе нові можливості, надаються технологією, для збільшення ефективності через зниження вартості, розширення потенціалу ринку і більш щільне задоволення запитів клієнтів, як надання коштів для розширення і удосконалення послуг і товарів, у значній мірі за допомогою взаємодії постачальника із замовником. Чекаючи, що ця форма електронної комерції матиме неабиякий вплив на конкурентоспроможність і досить незначний вплив на кількість робочих місць.
1. Системний аналіз
1.1 Загальний опис системи «електронної торгівлі»
У зв'язку із зростанням електронної комерції зараз в Інтернеті найбільш часто зустрічаються додатки, засновані на метафорі «кошика покупок» або «електронного магазину». Зазвичай користувачі звертаються до таких додатків зі своїх веб-браузерів. Каталог товарів дає користувачам можливість переглядати і шукати на сайті елементи, призначені для продажу. Користувачі можуть вибирати об'єкти для купівлі додаючи їх у «кошик покупок». Це означає, що кошик містить список об'єктів, обраних покупцем.
Після того як користувач вибрав цікавлять його товари, він зможе вивчити вміст свого кошика і при необхідності, змінити кількість вибраних елементів або зовсім видалити їх з корзини. Коли клієнт упевнений, що в корзині перебувають те що він готовий придбати, він підтверджує замовлення й оплачує покупки.
Придбаний товар доставляється покупцеві за поштовою адресою. Адреса, інформація про кредитну картку та інші особисті дані вводяться покупцем під час створення облікового запису або при оплаті замовлення. Популярний приклад подібної програми в Інтернеті, сайт OZON.ru, де можна купити книги, музичні компакт-диски, програмні продукти і т.п.
1.2 Аналіз вимог до кошику покупок
Додаток реалізує кошик покупок адресоване двом категоріям користувачів. Перша - це покупці, які відвідують електронний магазин за допомогою браузера, а друга категорія - це адміністратори, які керують сайтом, або за допомогою браузера, або безпосередньо використовуючи можливості операційної системи і системи управління базами даних. Сформулюємо ряд вимог, які повинні бути забезпечені для цих груп користувачів:
Вимоги покупців. Вони включають в себе наступне:
Покупець повинен мати можливість використовувати додаток з будь-якого веб-браузера, що підтримує стандарт HTML і cookie.
Нові користувачі повинні мати можливість реєструватися самостійно, або за допомогою представників фірми. Кожному зареєстрованому користувачеві буде присвоєно персональний ідентифікатор.
Користувачі повинні мати можливість купувати товар за допомогою створюваного додатку.
Користувачі повинні мати можливість переглядати повний список найменувань товарів, представлених на сайті.
Користувачі повинні мати можливість виконувати пошук товару за назвою.
Користувачі повинні мати можливість виконувати пошук по всій базі даних за ключовими словами.
Користувачі повинні мати можливість вибирати і додавати об'єкти в кошик, а потім приймати рішення про підтвердження замовлення.
Користувачі повинні мати можливість змінювати кількість обраних товарів або зовсім видаляти їх з кошика перед тим, як підтвердити замовлення.
Після оплати всі обрані товари повинні бути доставлені користувачеві.
Користувачі повинні мати можливість переглядати статус зроблених замовлень.
Необхідно забезпечити можливість використання програми одночасно великою кількістю відвідувачів.
Продуктивність програми не повинна падати у міру зростання доступних товарів на сайті.
Вимоги адміністратора.
Адміністратору необхідна можливість віддаленого управління додатком через веб-браузер.
Адміністратор повинен мати можливість видаляти зареєстрованих користувачів.
Адміністратору необхідна можливість зміни статусу замовлень покупців, після того як вони будуть йому відправлені.
Огляд мовної та програмної бази
2.1 Що таке РНР
РНР - це серверний мова сценаріїв, розроблений спеціально для Web. У HTML-сторінку можна впровадити PHP-код, який буде виконуватися при кожному її відвідуванні. PHP-код інтерпретується Web-сервером і генерує HTML-код або інший висновок, що спостерігається відвідувачами сторінки.
Розробка РНР була розпочата в 1994 році і спочатку здійснювалася однією людиною, Расмусом Лердорфом. Згодом ця мова адаптувався багатьма талановитими людьми і пройшов через чотири основні редакції, поки не став широко використовуваним і зрілим продуктом, з яким ми маємо справу в даний час. Станом на серпень 2004 року він використовувався в більш ніж чотирнадцяти мільйонів доменів, розкиданих по всьому світу, причому їх число досить-таки швидко збільшується. Багато хто з цих порівняльних тестів показують, що MySQL працює на кілька порядків швидше конкуруючих продуктів. У 2002 році журнал eWeek. опублікував результати порівняння продуктивності п'яти баз даних, використовуваних для побудови Web-додатків. Найкращий результат був розділений між MySQL і значно більш дорогою системою Oracle.
Пакет MySQL доступний безкоштовно у відповідність з ліцензією на програмне забезпечення з відкритим вихідним кодом або, якщо це необхідно для програми, за невелику суму можна придбати комерційну ліцензію. Ліцензія необхідна у випадку, якщо ви хочете поширювати MySQL як частина свого застосування, яке не повинно підпадати під дію ліцензії Open Source. Якщо ви не плануєте передавати програми або користуєтеся вільним програмним забезпеченням, у ліцензії необхідності немає.
У більшості сучасних баз даних використовується мова SQL. Якщо раніше ви працювали з іншими СУРБД, перехід до цієї системи не повинен викликати будь-які труднощі. Установка MySQL настільки ж проста, як і установка багатьох аналогічних продуктів.
MySQL може використовувати серед багатьох UNIX-подібних систем, а також у середовищі Microsoft Windows. Як і у випадку РНР, вихідний код MySQL можна вільно завантажувати і змінювати. У більшості випадків і для більшості користувачів цей момент не є важливим, проте він сприяє душевному спокою, гарантуючи стабільність і безпеку подальшої роботи.
Далеко не для всіх продуктів з відкритим вихідним кодом надається підтримка, навчання, консалтинг і сертифікація з боку відповідних компаній-розробників. Тим не менш, все вищезгадане щодо РНР забезпечується компанією MySQL АВ (www. Mysql. Com).
До числа великих змін, внесених в MySQL 5.0, входять:
- Збережені процедури.
- Підтримка курсорів.
Серед інших змін варто відзначити більш повну сумісність зі стандартом ANSI і поліпшення, що стосуються продуктивності. Якщо ви продовжуєте користуватися попередньою версією сервера MySQL, можливо, прийняти рішення перейти на нову версію допоможе наступний список важливих функціональних можливостей, які були додані в MySQL 5.0:
- Підтримка підзапитів.
- Типи даних GIS для зберігання географічних даних.
- Вдосконалена підтримка інтернаціоналізації.
- Безпека у відношенні транзакцій механізм зберігання innoDB, що став стандартним.
- Кеш запитів MySQL, істотно збільшує швидкість виконання повторюваних запитів, які часто видаються Web-додатками.
Перелічимо основні переваги пакета MySQL.
Нить. Підтримка декількох одночасних запитів.
Архітектура клієнт-сервер - повністю використовуючи переваги комп'ютерних систем і мереж, MySQL дозволяє процесам бути розділеним між сервером БД і клієнтським програмним забезпеченням. Комп'ютер з встановленою на ньому СКБД відповідає за серверну частину процесу, а клієнтські робочі станції відповідають за подання та відображення інформації.
Управління великою кількістю даних - MySQL підтримує величезні БД терабайтного розміру. MySQL дозволяє повністю контролювати розміщення даних та ефективно використовувати дороге устаткування.
Одночасний доступ великої кількості користувачів - MySQL підтримує одночасне підключення великої кількості користувачів, що виконують різні додатки, які оперують одними й тими ж даними. Він мінімізує конкуренцію за доступ до даних і забезпечує узгодженість даних.
Висока надійність - MySQL може працювати 24 години на добу. Такі системні операції як резервне копіювання або часткові неполадки комп'ютерної системи не переривають використання БД.
Оптимізація зв'язків з приєднанням багатьох даних за один прохід.
Записи фіксованої і змінної довжини. ODBC драйвер в комплекті з исходников.
Гнучка система привілеїв і паролів. MySQL дозволяє вибірково контролювати доступ до даних. Так адміністратор БД може вибірково заборонити використання певних програм, не впливаючи на інші програми.
Безпека - для захисту від неавторизованого доступу та використання даних MySQL безвідмовну систему безпеки, що включає обмеження і відстеження спроб доступу до даних.
Переносимість - MySQL програмне забезпечення може працювати під різними операційними системами. Програми, розроблені для MySQL, можуть переноситися з однієї платформи на іншу без або з незначними змінами.
До 16 ключів в таблиці. Кожен ключ може мати до 15 полів.
Підтримка ключових полів і спеціальних полів в операторові CREATE.
Підтримка чисел довжиною від 1 до 4 байт, рядків змінної довжини і позначок часу.
Інтерфейс з мовами С, php і perl.
Заснована на потоках, швидка система пам'яті.
Всі дані зберігаються у форматі ISO8859_1.
Всі операції роботи з рядками не звертають уваги на регістр символів в оброблюваних рядках.
Псевдоніми застосовні як до таблиць, так і до окремих колонках у таблиці.
Всі поля мають значення за замовчуванням. INSERT можна використовувати на будь-якому підмножині полів.
Легкість управління таблицею, включаючи додавання і видалення ключів і полів.
Розробка інформаційної системи
3.1 Постановка завдання
У проектованому Інтернет-магазині передбачається продаж автодеталей.
Наш магазин - ніщо інше, як сайт, тобто набір статичних або динамічних сторінок на якому-небудь сервері в Інтернеті, в якому реалізовано механізм для купівлі товарів. У даному випадку сайт являє собою набір PHP-скриптів.
Онлайновий каталог товарів з розбивкою за категоріями.
Купівельна візок, що дозволяє відстежувати товар, обираний користувачем з метою його придбання.
Сценарій остаточного розрахунку, який обробляє деталі платежу і видає товар покупцеві.
Інтерфейс адміністрування
3.2 Характеристики і призначення
База даних магазину реалізується на СУБД MySQL. Структура БД складається з наступних таблиць:
«Адміністратор» - стримає поля для імені та пароля.
«Автодеталі» - зберігає інформацію з автодеталей.
«Категорії» - зберігає список категорій автодеталей.
«Покупець» - містить ім'я та адресу покупця.
Побудова онлайнового каталогу засноване на вище наведеної структурі БД. Каталог, представляє з себе список категорій у вигляді посилань на список деталей в даній категорії, який в свою чергу складається з посилань на конкретну деталь з її описом.
Для методу відстеження товарів, обираних відвідувачами, буде використовуватися ідентифікаційний номер сеансу. Відстеження обираних елементів у процесі переходу між сторінками, буде реалізовано за наступною схемою:
при заході користувача на сайт його ідентифікаційний номер сеансу буде записано в базу
при додаванні товару в кошик буде зроблено запис до таблиці «кошик» ідентифікаційного номера товару, його кількості та ідентифікаційного номера сеансу.
при оформленні замовлення, всі записи про товари обраних користувачем з таблиці «кошик» будуть стерті.
Крім того, ці дані будуть використовуватися для відображення вибраних товарів у кошику, щоб відвідувач у будь-який момент міг бачити майбутню суму витрат.
Інтерфейс адміністрування Інтернет-магазин надає наступні функції:
додавання, видалення і редагування категорій.
додавання, видалення деталей і редагування інформації по них.
редагування, видалення, додавання властивостей товарів.
зміна пароля.
додавання користувачів.
3.3 Нормовані показники
У даному пункті важливо помітити, що нормовані показники в даному випадку більше відносяться до можливостей кінцевих користувачів. Як і в більшості on - line додатків час реакції системи на дію користувача залежить більшою мірою від пропускної здатності Інтернет-каналу. Оскільки сервер відпрацьовує майже моментально. І все залежить від швидкості Інтернет-з'єднання між сервером і кінцевим користувачем.
Для впевненого підтримки з'єднання з 20-ма користувачами одночасно я вважаю необхідно забезпечити для сервера інтернет-канал швидкістю 2 Мбітс.
У такому випадку візуальна швидкість реакції на дію користувача складе менше 3-х секунд.
Вимоги до конфігурації сервера розглядаються в пунктах нижче.
Умовою функціонування системи є наявність доступу до сервера на якому розташований Інтернет-магазин, а також правильна робота Web-сервера Apache & PHP та СУБД MySQL з боку сервера. З боку клієнта потрібна лише підтримка браузером роботи JavaScript і включені «куки».
Система функціонує в 2-х режимах:
режим користувача;
режим адміністратора;
3.5 Опис і обгрунтування вибору логічної і фізичної структури ІС
3.5.1 Склад і функції оригінальних обчислювальних засобів
Система являє собою програмний продукт на мові PHP.
Система дозволяє:
Клієнтам:
переглядати списки товарів за категоріями;
переглядати інформацію про товари;
купувати товари.
Адміністраторам:
додавання нових товарів;
видалення старих товарів;
редагування супутньої інформації про товари
редагування властивостей каталогу
3.5.2 Web-сервер
Коли відбувається звернення до якоїсь сторінці по її URL-адресою, то посилається повідомлення на комп'ютер з вказаною адресою. При цьому передбачається, що це комп'ютер включений в мережу, його Internet-з'єднання діє, і він готовий прийняти повідомлення і обробити його.
Призначення Web-сервера полягає в перетворенні URL в ім'я файлу і передачу цього файлу назад по Internet або в перетворенні URL в ім'я програми, виконання цієї програми та передача отриманого результату назад.
У ролі хост-комп'ютера може виступати як цілий кластер гіперкомпьютеров, який за вартістю може зрівнятися зі станом якогось нафтового шейха, так і простий скромний ПК. У будь-якому випадку на цьому комп'ютері повинен працювати Web-сервер - програма, яка «слухає» мережу, приймає повідомлення, реагує на них, посилаючи у відповідь домашню сторінку вашої організації.
Які ж вимоги пред'являються до Web-сервера? Він повинен:
Працювати швидко, щоб справлятися з безліччю запитів, використовуючи мінімум апаратних засобів.
Бути багатозадачним, тобто працювати одночасно більш ніж з одним запитом.
Ще раз бути багатозадачним, щоб людина, керуючий їм, міг здійснювати супровід видаються сервером даних, не завершуючи його роботи. У рамках програми організувати багатозадачний режим дуже складно. Єдиний спосіб зробити це як слід - запустити сервер в багатозадачному операційній системі.
Мати засоби аутентифікації якій знаходяться абонентів: деякі з них можуть мати право на більшу кількість послуг, ніж інші.
Реагувати на помилки в отриманих повідомленнях відповідями, які мають сенс у контексті того, що відбувається. Наприклад, якщо клієнт запитує сторінку, яку сервер не може знайти, останній повинен видати у відповідь повідомлення про помилку «404», сенс якого в специфікації HTTP визначається як «сторінка не існує».
Обговорювати з запитуваною абонентом стиль і мову відповіді. Наприклад, сервер повинен - якщо керуючий їм персонал здатний впоратися з цим завданням - вміти відповідати на природній мові, який вважає за краще абонент. Звичайно, це може спричинити за собою велику кількість додаткової роботи для вашого сайту.
Пропонувати різні формати. Говорячи більш технічною мовою, користувачеві можуть знадобитися файли у форматі JPEG, а не GIF, або ні те і ні інше, a TIFF. Може, йому захочеться отримати текст не в форматі PostScript, а у форматі vdi.
Працювати як proxy-сервер. Proxy-сервер - це сервер, який приймає запити від клієнтів і пересилає їх на реальні сервери, а потім передає відповіді назад клієнтам. Необхідність такого режиму може бути викликана двома причинами:
proxy-сервер може працювати на зовнішній стороні брандмауера, надаючи своїм користувачам доступ в Internet;
він може кешувати популярні сторінки, забезпечуючи можливість повторного доступу до них;
бути надійним. Завдання гарного сервера запобігти несанкціонований доступ. Питання безпеки дуже серйозний. У зв'язку з усім вищевикладеним, необхідним вимогам задовольняє Web-сервер Apache, до того ж він встановлений практично у всіх провайдерів internet, що є вирішальним при виборі саме цього сервера.
Apache - Це програма, яка працює в середовищі відповідної багатозадачного операційної системи. Такий операційною системою може бути UNIX, так само як і WindowsNT, Windows95 і OS Сервер.
Для створення клієнтської частини необхідно створити HTML-документ, в якому реалізований інтерфейс з користувачем. У мові HTML це можливо за допомогою форм.
Серверна частина складається з виконуваного модуля, що вирішує основні завдання обробки даних, що надходять від клієнтської частини, формування відповіді у форматі HTML, і т.д. Такий модуль називається cgi-модулем.
Для реалізації взаємодії «клієнт-сервер» важливо, який метод HTTP запиту використовує клієнтська частина при зверненні до WWW сервера. У загальному випадку, запит - це повідомлення, що посилається клієнтом серверу. Перший рядок HTTP запиту включає в себе метод, який повинен бути застосований до запитуваного ресурсу, ідентифікатор ресурсу, і використовувану версію HTTP-протоколу.
Більшість HTTP - запитів виконується для отримання від сервера певного об'єкта. Ці запити містять ключове слово GET. Якщо сервер налаштований відповідним чином, то звернення за деякими URL-адресами може призводити до запуску програми і повернення клієнту результатів її роботи. Такі URL-адреси відповідають CGI-скриптів, використовує метод GET.
Інші CGI-скрипти вимагають більшого обсягу вхідної інформації. Як приклад може слугувати інформація, надсилається із заповненої користувачем форми. Такі скрипти використовують інший метод, що має назву POST. Коли сервер отримує запит з використання методу POST, він запускає CGI-скрипт і потім переводить потік даних, що надходять від клієнта, стандартному каналу введення CGI-скрипта.
Для WWW-сервера стандарту NCSA прикладні програми або CGI-модулі, які обробляють потік даних від клієнта або формують зворотний потік даних можуть бути написані на таких мовах програмування як:
CCeleron, AMD K 6, K 7 Athlon і x 86-сумісні з тактовою частотою від 500 MHz;
Пам'ять: від 512 Mb;
Відеоадаптер і монітор: будь-які, підтримувані необхідної ОС, можлива робота без монітора і відеоадаптера;
Клавіатура і миша: будь-які, підтримувані необхідної ОС, можлива робота без клавіатури і миші;
Жорсткий диск: від 200 Gb;
Пропускна здатність каналу: від 2 Mbit;
ОС: сімейства UNIX;
Підтримка протоколів: TCPCeleron, AMD K 6, K 7 Athlon і x 86-сумісні з тактовою частотою від 300 MHz;
Пам'ять: від 128 Mb;
Відеоадаптер: від 8 Mb;
Монітор: 1024 x 768 @ 85 і вище;
Клавіатура і миша: будь-які, підтримувані необхідної ОС;
Жорсткий диск: від 20 Gb;
Пропускна здатність каналу: від 33,6 кбіт IP;
Підтримка протоколів: TCP редагування документів: текстовий редакор, браузер;
відправка електронних листів: e - mail клієнт;
доступ до сервера через FTP протокол: ftp-клієнт.
4.3 Реляційна модель БД онлайнового магазину
Реляційна модель даних розробленої БД являє собою набір відносин, що змінюються в часі. При створенні інформаційної системи сукупність відносин дозволяє зберігати донні про об'єкти предметної області та моделювати зв'язку між ними.
Таблиця Catalog
Найменування | Призначення | Тип |
ID_catalog | Первинний ключ | Числовий |
Name | Найменування каталогу | Текстовий |
Sub | Первинний ключ каталогу в який вкладено даний каталог | Числовий |
option | Прапор вказує на зміст каталогу | числовий |
Ієрархія каталогів організована таким чином:
- Кореневий каталог в полі Sub містить нуль, який вказує скрипту що це один з кореневих каталогів.
- Поле option вказує на те що міститься в каталозі.
- Щоб визначити які каталоги міститися всередині шуканого каталогу використовується поле Sub в якому вказується первинний ключ шуканого каталогу.
- Для отримання списку товарів містяться в каталозі по полю ID _ catalog з таблиця Product робиться запит по первинному ключу.
Таблиця Product
Найменування | Призначення | Тип |
ID | Первинний ключ | Числовий |
Name | Найменування товару | Текстовий |
Cost | Ціна товару | Числовий |
ID_catalog | Первинний ключ каталогу в якому знаходитися товар |
Числовий | ||
Image | Ім'я графічного файлу в якому зберігатися малюнок продукту | Тестовий |
File_type | Розширення файлу з фотографією | Текстовий |
Дана таблиця служить для зберігання основної інформації про товар. Вибірка з даної відбуватися по полю ID _ catalog, вхідний параметр для умови є первинний ключ поточного каталогу. Для отримання всіх властивостей для даного продукту треба зробити вибірку з таблиці all _ prod _ option по полю ID _ product та ID _ option, де ID _ product це первинний ключ потрібного нам товару, ID _ option це первинний ключі властивостей привласнених каталогу в якому знаходитися потрібний нам товар.
Таблиця prod_option
Найменування | Призначення | Тип |
ID | Первинний ключ | Числовий |
ID_catalog | Первинний ключ каталогу до якого ставитися дане властивість | Числовий |
Name | Найменування властивості | Текстовий |
Дана таблиця призначена для зберігання записів про присвоєні властивості товарів того чи іншого каталогу. Для отримання списку властивостей для товару даної категорії потрібно зробити запит з умова рівності поля ID _ catalog первинному ключу потрібного нам каталогу.
Таблиця all_prod_option
Найменування | Призначення | Тип |
ID | Первинний ключ | Числовий |
ID_option | Первинний ключ із таблиці prod _ option для отримання найменування властивості | Числовий |
ID_product | Первинний ключ із таблиці Product для отримання основної інформації про продукт | Числовий |
Value | Значення властивості товару | Текстовий |
Дана таблиця зберігає в собі присвоєні значення властивостей для кожного товару.
Таблиця basket
Найменування | Призначення | Тип |
ID | Первинний ключ | Числовий |
ID_session | Первинний ключ поточної сесії користувача з таблиці user _ session | Числовий |
ID_product | Первинний ключ товару з таблиці Product | Числовий |
Quantity | Кількість товару в кошику | Числовий |
Дана таблиця зберігає в собі дані про товари спрямованих користувачем до кошика.
Таблиця user_session
Найменування | Призначення | Тип |
ID | Первинний ключ | Числовий |
session | Унікальний ідентифікаційний ключ сесії користувача | Текстовий |
date | Дата створення запису | Дата / час |
Дана таблиця зберігає в собі дані про сесії користувачів.
Таблиці basket і user _ session служать для реалізації кошика. Працюють вони за наступним принципом:
- При першому заході користувача в клієнтську частину web - додатки створюється запис в таблиці user _ sessions з унікального номера сесії і часу заходу на сайт. При цьому одночасно видаляються застарілі записи.
- При додавання товару в корзину в таблицю basket додаються наступні дані: первинний ключ запису з таблиці user _ session яка містить поточний унікальний номер сесії, первинний ключ додається товару, і його кількість.
- При виведенні кошика на екран робиться вибірка з таблиці basket де ID _ session одно первинному ключу запису в таблиці user _ session в якій поле session одно поточному унікальним номером сесії.
4.4 Розробка користувальницьких додатків
У ході дипломної роботи будуть розроблятися два додатки:
додаток адміністратора магазину;
додаток користувача.
4.4.1 Розробка програми клієнта магазину
Цей додаток призначений для виконання призначених для користувача функцій у магазині.
Додаток відповідає за забезпечення інтерфейсу користувача і забезпечує функції серфінгу по категоріям магазину, пошук товару, перегляду списку товарів, перегляду «кошика» покупця, покупки товару.
Для клієнта не потрібна авторизація. Після того, як клієнт зайшов в магазин, всі його дії виконуються у програмі за допомогою набору функцій, які аналізують потрібну дію і виконує його.
На малюнку 4.2 показані головні посилання між сценаріями в тій частині сайту, яка стосується користувача. Клієнт спочатку відкриває головну сторінку, в якій перераховані всі категорії деталей на сайті. Звідси можна перейти до певної категорії деталей, а потім до інформації з окремої деталі.
Користувачеві надається посилання, яка дає можливість додати обрану деталь у візок. На етапі роботи з візком можна зробити остаточний розрахунок і залишити магазин.
4.4.2 Розробка програми адміністратора магазину
Цей додаток призначений для виконання адміністративних функцій в магазині. При цьому додаток виконується на сервері, а користувач управляє ним через web-інтерфейс.
Щоб почати адмініструвати магазин, необхідно авторизуватися з правами адміністратора. Після авторизації, для адміністратора надається дещо відмінна версія користувальницького інтерфейсу сайту. Адміністратор, як і раніше буде мати можливість переглядати категорії і автодеталі, але замість доступу до купівельної візки він може переходити до певної деталі або категорії, а потім редагувати або видаляти її.
На малюнку 4.3 показаний інтерфейс адміністратора.
Розробка сценаріїв, одночасно придатних як для звичайних користувачів, так і для адміністратора, дозволяє заощадити час трудовитрати.
5. Опис інтерфейсів сайту
5.1 Опис інтерфейсу додатку адміністратора магазину
Інтерфейс адміністратора вимагає щоб користувач входив в систему через сценарій авторизації, який буде виводити меню адміністрування.
Дана сторінка виводиться у разі успішного проходження процедури авторизації. Вона містить посилання на додавання товару, редагування товару, зміни пароля і т.д.
На самому початку його роботи аналізується вхідні параметри, якщо вони відсутні, то їм присвоюються нульові значення, а змінній яка відповідає за вибір даних які будуть відображатися у вікні браузера присвоюються значення висновок каталогу. При натискання на Найменування каталогу, Найменування товару, Додати, Видалити, Редагувати та інших кнопок, змінної відповідає за вибір даних для відображення і вибір дії виробленого над каталогом будуть присвоєні відповідні значення.
При виведенні каталогу змінної $ what_print присвоюється значення «print_catalog».
У залежності від вироблених операцій змінної $ action присвоюватися такі значень «add_catalog», «del_catalog».
При додавання каталогу використовується наступний шаблон
<link rel= «stylesheet» type= «textcssform>
«% CURRENT_CATALOG%» замінюється на ID каталогу в якому створюється новий. Після натискання кнопки «Додати» в скрипт передаються змінні для створення нового каталогу.
Висновок списку продуктів.
При виводі списку продуктів змінної $ what_print присвоюється значення «print_product».
У залежності від вироблених операцій змінної $ action присвоюватися такі значень «add_product», «del_product», «edit_product».
Додавання товарів. На даній сторінці відбувається додавання товарів. Тут необхідно ввести інформацію про товар.
При додавання нового товару використовується наступний шаблон
<link rel= «stylesheet» type= «textcssform-data»>
Назва <br>
<input class= «smile_inp» name= «name» type= «text»> <br>
Ціна <br>
<input class= «smile_inp» name= «cost» type= «text»> <br>
Фото <br>
<input class= «smile_inp» type= «file» name= «imgfile»> <br>
<Input type = «hidden» name = «id_catalog»
value = "% CURRENT_CATALOG %»">< br>
<input type= «submit» name = «upload» value = "Виконати »> <br>
<Видалення товарів. Тут можна відредагувати інформацію про товар або зовсім видалити його.
При редагування властивостей товару використовується наступний шаблон
<link rel= «stylesheet» type= «textcssspan> <td> <td>
<input class= «smile_inp» name= «id_%ID%» type= «text» value = «%VALUE%»>
<tr>
<table>
<input type = «hidden» name = «catalog» value = «%CURRENT_CATALOG%»>
<input type = «hidden» name = «ID_product» value = «%PRODUCT%»>
<input type= «submit» name = «save_option» value = "Зберегти »> <br>
<css» href=»..catalog.css»>
<form>
<input class= «smile_inp» name= «name_option» type= «text»>
<Input type = «hidden» name = «id_catalog»
value = "% CURRENT_CATALOG%»>
<input type = «hidden» name = «action» value = «add_option»>
<input type = «hidden» name = «what_print» value = «print_option»>
<br>
<input type= «checkbox» name= «show_on_top» value= «1»>
Показувати в списку товарів <br>
<input type= «submit» value = "Виконати »>
<css» href=»..catalog.css»>
<form>
<Input class = «smile_inp» name = «name_option»
type = «text» value = "% VALUE%»>
<Input type = «hidden» name = «id_catalog»
value = "% CURRENT_CATALOG%»>
<input type = «hidden» name = «action» value = «edit_option»>
<input type = «hidden» name = «what_print» value = «print_option»>
<input type = «hidden» name = «id_option» value = «%ID_OPTION%»>
<br>
<Input type = «checkbox» name = «show_on_top»
value = "1"% SHOW_ON_TOP%> Показувати в списку товарів <br>
<input type= «submit» value = "Виконати »>
</ Form>
«% VALUE%» замінюється на назву обраної для редагування опції.
«% CURRENT_CATALOG%» замінюється на ID каталогу для якого створюється нові властивість.
«% ID_OPTION%» замінюється на ID обраної для редагування опції.
Після натискання кнопки «Виконати» в скрипт передаються змінні для редагування властивості.
При виконання скрипта проводяться наступні дії:
- Перевіряється чи зареєстрований користувач у системі. У разі негативного результату виводитися помилка і виконання скрипта припиняється.
- Перевіряємо на існування необхідних змінних, у разі їх відсутності присвоюються значення визначені за умовчанням.
- Перевіряється існування змінної $ action, якщо змінна існує то виконується ту чи іншу дію над каталогом в залежності від значення змінної. Якщо вона не існує скрипт переходить до виконання наступного пункту.
- Залежно від значення змінної $ what_print скрипт генерує зміст html-сторінки.
5.2 Опис інтерфейсу додатку клієнта магазину
При введенні в рядку браузера URL магазину - користувач потрапляє на вітрину магазину. Дана сторінка представлена на малюнку 5.10.
Малюнок 5.10 - Головна сторінка магазину.
Перебуваючи на цій сторінці - користувач може ознайомитися зі списком категорій.
Розглянемо роботу скрипта index.php. To що виводиться у вікно браузера, при запуску цього скрипта, показано на рис 5.10. При першому запуску скрипта виводитися сторінка вітання.
На самому початку його роботи реєструється сесія користувача і видаляються старі сесії користувачів. Далі перевіряється наявність змінної відповідає за ви вибір інформації виводиться у вікні браузера, якщо вона відсутня, їй присвоюються значення для виведення сторінки вітання. У залежності від вибору вкладки змінної $ action будуть привласнені значення для виведення каталогу або кошика.
Тепер розглянемо дії докладно.
Малюнок 5.11 - Список каталогів
Для виводу списку каталогів використовується функція
show _ catlist, її лістинг наведено нижче:
Код HTML шаблону вписаний прямо в код скрипта.
У ході виконання скрипта наступний текст буде замінений:
% ACTION% буде замінений на «catlist» або «catalog» залежно від дії виробленого при натисканні на посилання.
% ID_CATALOG% буде замінений на ID каталогу.
% NAME% буде замінений на ім'я каталогу
% CURRENT% буде замінений на ID поточного каталогу
Сторінка зі списком деталей представлена на малюнку 5.12.
Малюнок 5.12 - Сторінка зі списком деталей.
Зі сторінки зі списком деталі вибраної категорії, можна клацнувши по посиланню, перейти на сторінку перегляду відомостей про обрану деталі.
Для виведення списку товарів використовується функція
show _ catalog
Код HTML шаблону підвантажується з файлу catalog.html. Який наведено в додатку лістинг 1.3
У ході виконання скрипта наступний текст буде замінений:
% NAME_OF_PRODUCT% буде замінений на найменування товару
% ID_PRODUCT% буде замінений на ID товару
% COST% буде замінений на ціну товару
% PIC% буде замінений на адресу малюнка з фотографією товару
% MAIN_OPTION% буде замінений на список опцій які були відзначені як показуються в списку товарів. Для створення HTML коду з переліком можливостей використовується функція gen_option. Вона створює список властивостей використовуючи SQL запит:
select prod_option. Name, all_prod_option. Value
from prod_option
inner join all_prod_option
on prod_option.ID = all_prod_option.ID_option
and ID_product = $ id_product
where ID_catalog = $ id_catalog
% CURRENT% буде замінений на ID поточного каталогу
Сторінка перегляду відомостей про деталь показана на малюнку 5.13. Також на цій сторінці знаходиться посилання додавання вибраного товару в кошик.
Малюнок 5.13 - Сторінка перегляду відомостей про деталь і додавання її в кошик
Для виведення картки товару використовується функція
show _ product, її лістинг наведений у додатку
Лістинг 1.4
Код HTML шаблону підвантажується з файлу product.html.
У ході виконання скрипта наступний текст буде замінений:
% NAME% буде замінений на найменування товару
% COST% буде замінений на ціну товару
% PIC% буде замінений на адресу малюнка з фотографією товару
% OPTION% буде замінений на список опцій
% ID_PRODUCT% буде замінений на ID товару
Вікно кошика показано на малюнку 5.14.
Малюнок 5.14 - Кошик покупця
З цього ж вікна можна перейти, по натисненні на кнопку «перейти до розрахунку», до оформлення платежу.
Для виводу списку каталогів використовується функція
show_step_one, її лістинг наведено нижче: Лістинг 1.5
Код HTML шаблону підвантажується з файлу basket_step1.html.
У ході виконання скрипта наступний текст буде замінений:
% FULL_COST% буде замінений на повну вартість замовлення.
% BASKET_PRODUCT% буде замінений на html код згенерований функцією gen_basket_product, лістинг функції наведено нижче, Лістинг 1.6
У ході виконання скрипта наступний текст буде замінений:
% NAME% буде замінений на найменування товару
% ID_PRODUCT% буде замінений на ID товару
% QUANTITY% буде замінений на кількість товару в кошику
% COST% буде замінений на вартість кожного товару окремо
% END_COST% буде замінений на повну вартість товару
% ID_BASKET% буде замінений на ID запису сесії
Вікно оформлення платежу представлено на малюнку 5.15.
Після оформлення платежу дані про нього вносяться до бази даних, а кошик очищається.
Малюнок 5.15 - Вікно оформлення платежу
Код HTML шаблону підвантажується з файлу basket_step2.html.
Дані з цієї форми буде передано у функцію mail, що відправить замовлення на e-mail операторам магазину.
6. Оцінка ефективності інвестицій інформаційної системи
6.1 Цілі, завдання та методи оцінки ефективності інвестицій
Ринкова економіка висуває свої вимоги до нових проектів, і виживають лише ті, які прораховують кожен свій крок, і відповідають потребам ринку, а не можливостям виробника. Головну роль при реалізації технічних проектів грають фінансово-економічні розрахунки. Вони визнані вирішувати широке коло завдань:
фінансовий підсумок виробничої діяльності або комерційної угоди для кожної з сторін-учасниць;
виявлення залежності кінцевих результатів фінансово-кредитної операції від основних її параметрів і умов, визначення взаємозв'язку цих параметрів та їх граничних значень;
знаходження параметрів беззбиткового зміни умов угоди.
На даний момент немає єдиної методики оцінки ефективності інвестицій. Кожна фірма, як правило, виходячи з власного досвіду, фінансових ресурсів, переслідуваних цілей і т.д. розробляє свою методику. Ці методики в якості критеріїв ефективності використовують такі показники:
«Чистий» наведений;
внутрішня норма прибутковості;
термін окупності передбачуваних інвестицій;
рентабельності.
У даному розрахунку як критерій ефективності інвестицій використана очікувана величина «чистого» приведеного доходу. Використання даного критерію допоможе при прийнятті рішення про доцільність грошового вкладення вивчити картину можливих фінансових результатів цього вкладення.
Під реалізацією будь-якого технічного проекту в широкому сенсі цього слова розуміється ряд етапів, що включають розробку цього проекту, його виконання та подальшу експлуатацію.
Здійснення кожного з цих етапів вимагає залучення різних засобів, які називаються, загалом, інвестиціями. Джерелами інвестицій можуть бути власні або позикові кошти. І в тому і в іншому випадку досить важливим для вкладника є визначення ефективності їх вкладення.
У фінансовому аналізі для цієї величини застосовують різні показники, взаємопов'язані один з одним. Всі вони відображають один і той же процес зіставлення розподілених у часі доходів від інвестицій і самих інвестицій. Найбільш інформативними з цих показників є загальний підсумковий результат проведеної інвестиційної діяльності, званий «чистої» наведеної величиною доходу. Цей показник визначається як різниця між можливими доходами, одержуваними при здійсненні проекту, і що забезпечують ці доходи інвестиціями.
Для визначення зазначеного показника попередньо необхідно звернути увагу на основні особливості передбачуваної інвестиційної діяльності, до яких відносяться:
- Можливе отримання реальної віддачі від вкладення інвестицій після закінчення ряду років вкладення;
- Відзнака «сьогоднішньої цінності» інвестицій від їх «цінності» у майбутньому через існування інфляційних процесів і постійної зміни ринкової кон'юнктури, що приводить до зміни реальних доходів у порівнянні з очікуваними.
Тому будь-який інвестор, що володіє вільними грошовими активами змушений порівнювати ряд альтернативних варіантів вкладення інвестицій, кожен з яких характеризується своєю прибутковістю і показниками ризику. Порівняння зазвичай здійснюється на основі використання альтернативної вартості активів, тобто втрат від невикористаних можливостей, пов'язаної з альтернативними варіантами.
На практиці відмінність альтернативної вартості зводять до різниці ставок порівняння. При вибірці ставки порівняння орієнтуються на існуючий або усереднений очікуваний рівень ставки відсотка для кожного з альтернативних варіантів.
У фінансових операціях суму прибутку від надання грошей у борг у будь-якій формі називають процентними грошима, а відношення процентних грошей, виплачуваних за фіксований відрізок часу, до величини початкової суми називають процентною ставкою.
Процес збільшення суми грошей у зв'язку з приєднанням відсотків до суми боргу називають нарощенням, або зростанням початкової суми.
Процентні ставки можуть бути простими і складними в залежності від формування вихідної суми, на яку нараховуються ставки відсотка. Якщо вона протягом усього терміну позики змінюється, то мова йде про простих процентних ставках. Якщо ж застосування ставок відсотка йде до суми з вже нарахованими на неї в попередньому періоді відсотками, то це складна процентна ставка.
У довгострокових фінансово-кредитних операціях, до розряду яких належить здійснення інвестиційної діяльності з реалізації будь-якого технічного проекту, для нарощення суми позики або зниження фактичної суми позики застосовують складні відсотки.
Для розрахунку ЧПВД весь процес інвестиційної діяльності представляється у вигляді послідовності безлічі розподілених у часі первинних вкладень і наступних доходів. Цю послідовність називають потоком платежів. При визначенні ЧПВД для кожного члена потоку платежів визначаються втрати від невикористаних можливостей. Вкладник, розраховуючи ЧПВД, виходить не з того, що він буде мати, а з того, що втрачає, не вклавши гроші в ту чи іншу фінансову операцію. «Цінність» кожного члена потоку на момент початку вкладення визначається як різниця між початковою величиною вкладення і величиною можливих втрат. Таке визначення «цінності» кожного члена потоку на момент початку вкладень за умови, що в майбутньому вона становитиме іншу величину за рахунок дії ставки відсотка, називають дисконтуванням.
Дисконтування за складною ставкою відсотка пов'язано з визначенням дисконтного множника V t за кожний рік з n років вкладення за такою формулою:
де i - ставка складних відсотків, t = 1,2, ..., п.
Звичайно значення дисконтних множників для різних ставок і цілого числа років вкладення є табличними.
Такий розрахунок у кількісному фінансовому аналізі називають приведенням вартісного показника до заданого моменту часу, а величину кожного члена потоку платежів, знайдену дисконтуванням, називають сучасною, або наведеної величиною.
Підсумкова величина шуканого показника ЧПВД може бути визначена за формулою:
де п 1 - тривалість здійснення інвестицій; п 2 - тривалість періоду віддачі від інвестицій; З 1 - щорічні інвестиції в періоді l, l = 1, ..., n 1; Р i - щорічна віддача в періоді j, j = 1, ..., п 2.
Відповідно до формули, ЧПВД може бути не тільки позитивною, але нульовий і навіть негативною.
Розрахунок показника ЧПВД пов'язаний зі значними труднощами і в першу чергу, з визначенням очікуваних доходів. Проте, порівняння можливих альтернативних технічних проектів, що дають одне і теж ТЗ, дозволяють значно спростити завдання, тому що передбачається рівність складової у формулі за всіма передбачуваним варіантами. Тому формула визначення ЧПВД спрощується і приймає наступний вигляд:
де - Характеризує сучасну величину сукупних витрат за весь період реалізації.
Проект, що забезпечує , Є найбільш переважним і підлягає фінансуванню.
6.2 Опис основного та альтернативного інвестиційних проектів
Аналіз виробничих інвестицій в основному полягає в оцінці та порівнянні ефективності основного та альтернативного інвестиційних проектів.
Загальний період здійснення інвестиційної діяльності при реалізації будь-якого технічного проекту визначається наявністю таких основних етапів життєвого циклу:
- Розробка;
- Виробництво;
- Експлуатація.
Нормальна діяльність на кожному з цих етапів вимагає вкладень певних грошових коштів. На етапі розробки - це вартість проведення науково-дослідних і дослідно-конструкторських робіт. На етапі виробництва - це витрати на випуск нових об'єктів, тобто фактично собівартість одиниці продукції, і вкладення в основні фонди та оборотні кошти, що забезпечують цей випуск. На етапі експлуатації - це витрати, пов'язані з поточним використанням нового об'єкту та супутні капітальні вкладення. Сума всіх цих витрат, обчислена за роками кожного з трьох етапів, характеризує послідовність первинних вкладень або інвестицій.
Оскільки розробкою в конкретному випадку є програмний продукт, то можна окреслити два періоди інвестицій:
- Розробка та налагодження програмного продукту;
- Експлуатація.
Основний варіант: В якості основного варіанту розглянемо варіанти проекту, коли проектування системи на мові UML проводиться за допомогою пакета Rational Rose. Це дозволить суттєво прискорити процес розробки.
Альтернативний варіант: розглянемо варіант проекту, коли проектування системи на мові UML проводиться «вручну».
Вихідні дані для розрахунків наведено в табл. 1.
Таблиця 1. Вихідні дані
Призначення показників | Умовні позначення | Значення за варіантами | |
Основний | Альтернативний | ||
Річний обсяг продажів, шт. | N | 3 | 3 |
Загальна тривалість етапу розробки і налагодження, міс. | T | 3 | 6 |
Загальна чисельність виконавців у період розробки, чол. | U | 1 | 2 |
Середньомісячна заробітна плата всіх виконавців, р. / міс. | З | 9000 | 18000 |
Загальна тривалість етапу експлуатації, років | Те | 2 | 2 |
6.3 Розрахунок витрат
Вибір ставки складних відсотків грає дуже важливу роль в проведених розрахунках, оскільки визначає сучасну величину пропонованих інвестицій тим точніше, чим точніше обрана ставка і враховані такі реальні процеси, як скорочення віддачі грошових коштів у порівнянні очікуваною та інфляційний забезпечення грошей.
Виберемо як ставки складних відсотків усереднену існуючу величину i = 10%.
Щоб визначити дисконтний множник по кожному року розрахункового періоду, скористаємося даними таблиці 1.
Для основного варіанта: 1) загальна тривалість розробки 3 міс.; 2) загальна тривалість експлуатації 2 роки. Всього 27 міс.
На рис. 6.1. представлено графічне зображення послідовного процесу вкладення інвестицій по роках розрахункового періоду.
Оскільки етап розробки триває 3 міс., То вкладення грошових коштів протягом цього періоду можна вважати разовим і не дисконтувати, і, отже, можна прийняти загальний розрахунковий період 2 роки.
З огляду на це, знаходимо дисконтний множник. Дисконтні множники при i = 10% по роках вкладень представлені в табл. 2.
Таблиця 2. Дисконтні множники
Рік вкладення | 1 | 2 |
Дисконтний множник | 0.9091 | 0.8264 |
6.3.1 Розрахунок вкладень на етапі розробки і налагодження основного варіанту
Загальна тривалість на етапі розробки і налагодження дорівнює 2 місяців.
Кошторисна вартість робіт, виконуваних на протязі цього часу, які визначаються методом розрахунку по окремих статтях кошторисної калькуляції на основі аналізу даних з технічної підготовки виробництва. Вихідна інформація, і розрахунок окремих статей калькуляції зведені в таб. 3.
Таблиця 3. Календарний графік проведення робіт
Найменування етапу | Строки початку | Терміни закінчення |
1. постановка задачі | 01.09.06 | 04.09.06 |
2. підбір літератури і програмних пакетів | 05.09.06 | 12.09.06 |
3. визначення структури і функцій системи | 13.09.06 | 02.10.06 |
4. програмування системи | 03.10.06 | 23.11.06 |
5. налагодження | 24.11.06 | 11.12.06 |
6. підготовка документації | 12.12.06 | 20.12.06 |
Разом: 3 місяців.
6.3.2 Одноразові витрати на матеріали
Ціни на комп'ютери, програмне забезпечення та комплектуючі наведені на жовтень 2006 року.
Таблиця 4. Розрахунок витрат на матеріали
№ | Найменування | Кількість, шт. | Ціна, грн. / шт. |
1 | Комп'ютер | 1 | 30 000 |
2 | Програмний пакет Rational Rose | 1 | 9000 |
3 | Мережеві кабелі і концентратор | 1 | 4000 |
Разом: 43 000 руб. |
Розрахунок основної та додаткової заробітної плати на етапі вишукувальних робіт:
Таблиця 5. Розрахунок основної заробітної плати
Категорія персоналу | К-ть осіб | Зарплата, грн. / міс. | Доп. Зарплата | Час, міс. | Сума, руб. |
Інженер-програміст | 1 | 9000 | 1260 | 2 | 20520 |
Для обліку витрат на етапі написання автоматизованої інформаційної системи та її налагодження визначимо собівартість машино-години роботи на ЕОМ. Необхідні формули наведені в таблиці. 6.
Таблиця 6. Розрахункові формули
Формула розрахунку | Зміст |
| З Про - основна зчас; З Д - додаткова зчас; З СС - відрахування на соціальні потреби, руб.час; З м - витрати на матеріали, руб.час; З ПР - інші виробничі витрати, грн. / год. |
| де З осн - змес; m - порівн. кількість робочих днів у місяці m = 21 |
| де = 14% - відсоток додаткової з / п персоналу |
| де = 35.6% - відсоток відрахування на соціальне обслуговування. |
| де - Число i-х технічних засобів ЕОМ, - Їх потужність, кВт; S - вартість кВт / год електроенергії. |
| а = 20% - річна норма амортизації ЕОМ, S ЕОМ - балансова вартість ЕОМ |
| де Н П = 50% - відсоток інших виробничих витрат |
Основна заробітна плата:
Зо = 9000 год;
Додаткова заробітна плата:
Зд =* 53.57 = 7,5 руб.час;
Витрати на матеріали розглядаємо як одноразові і тут не враховуються. Витрати на електроенергію:
Зее =* 0,2 = 0,15 руб .= 2,97 руб.100 *= 28,34 руб. Год.
Однак, при розрахунку собівартості машино-години враховувалися витрати лише на ЕОМ, зайнятої для вирішення даного питання. А нам необхідно ще враховувати витрати на ремонт обладнання. Витрати на ремонт складають 10% від вартості устаткування, тобто
Зр = 10 * S ЕОМ = 1.48 руб.час.
Знаючи собівартість машино-години роботи ЕОМ, можна визначити витрати на написання автоматизованої системи і її налагодження за формулою:
Знп-о = С * t,
Де t = 336 годину - час написання системи і її налагодження.
Знп-о = 115,75 * 336 = 38892 руб.
Підсумкова калькуляція кошторисної вартості робіт наведена в таблиці 7.
Таблиця 7. Калькуляція кошторисної вартості витрат за основним варіанту
Найменування статей витрат | Всього, руб. |
Матеріали | 43000 |
Основна заробітна плата | 18000 |
Додаткова заробітна плата | 2520 |
Усі види соціального страхування | 7305 |
Інші виробничі витрати | 9274 |
РАЗОМ: | 80099 |
Підсумкова величина витрат на етапі розробки і налагодження дорівнює:
До розр 1 = К1 + З нп-о = 80099 + 38892 = 118991 руб.
Величина дисконтного множника дорівнює 1.
Таким чином, величина витрат на розробку становить 118991 крб.
6.3.3 Розрахунок вкладень на етапі розробки і налагодження альтернативного варіанта
Таблиця 8. Календарний графік проведення робіт
Найменування етапу | Строки початку | Терміни закінчення |
1. постановка задачі | 01.09.06 | 04.09.06 |
2. одбору літератури і програмних пакетів |