Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
16
Добавлен:
28.03.2016
Размер:
125.44 Кб
Скачать

4.2 Расчет затрат на создание программного обеспечения

Затраты на создание программного обеспечения Кпо включают затраты на заработную плату разработчиков программы (Ззп) и затраты машинного времени, необходимого для отладки программы на ЭВМ (Змв).

Кпо= Ззп + Змв , (4.1)

Ззп = t*Cпр, (4.2)

где t – общая трудоемкость разработки ПО;

Cпр – средняя часовая заработная плата программиста.

Ззп = 741* 10 = 7410 грн.

Затраты машинного времени, необходимого для отладки программы на ЭВМ (Змв) определяются по формуле:

Змв = tотл*Cмч, (4.3)

где tотл – трудоемкость отладки программы на ЭВМ;

Cмч – стоимость машино-часа ЭВМ.

Змв = 361*5 = 1805 грн.

Таким образом затраты на создание программного обеспечения, составят:

Кпо = 7410+1805=9215 грн.

Ожидаемая длительность разработки ПО:

(4.4)

где Bк – число разработчиков;

Fр – месячный фонд рабочего времени ( при 40-о часовой рабочей неделе Fр = 176 часов).

= 4,2 мес.

4.3 Маркетинговые исследования

Почти у каждого веб-разработчика в определенный момент возникает необходимость разработать Web-приложение. Например, запрограммировать рутинные процессы или сделать свой движок. Известно, что все существующие готовые движки (от счетчиков до блогов и CMS) сделаны не совсем эффективно, исходя из потребностей некоего усредненного пользователя.

Ныне для разработки Web-приложений в Сети предлагается широчайший выбор языков. Наиболее популярными из них являются PHP, Ruby, Perl и Python.

Язык программирования PHP можно смело назвать заслуженным ветераном и несомненным лидером в сайтопроизводстве. Его достоинства: есть на подавляющем числе хостингов, умеет встраиваться в html, прост в применении, обладает массой библиотек и классов, имеет богатейшую документацию, обилие учебников и сообществ. Минусы: не самая удачная (мягко говоря) объектно-ориентированная модель, неудобный синтаксис, относительно низкая производительность.

Язык программирования Ruby, пожалуй, самый молодой язык из рассматриваемых нами. Не путать язык Ruby с его сверхпопулярным производным фреймворком Ruby on Rails (RoR). Достоинства: потрясающе продуманный синтаксис, масса уникальных возможностей, самый «высокоуровневый язык» из рассматриваемых, самый маленький объем кода, прекрасная объектная модель, легок в освоении и «быстром программировании». Минусы: малое распространение на хостингах, дефицит хороших бумажных учебников.

Язык программирования Perl не менее старый и не менее распространенный, чем PHP. Достоинства: за исключением умения встраиваться в html имеет те же выраженные плюсы, что и PHP, но существенно быстрее. Недостатки: Он стар и более сложен, чем PHP. Включает недостатки того же PHP.

Язык программирования Python хорош как синтаксисом, так и производительностью. То что его использует компания Google, говорит само за себя. Достоинства: хороший и крепкий середнячок. Достаточно быстрый, в меру удобный. Как говорят специалисты: «Если для изучения языка Perl Вам нужно потратить, скажем, три недели, то Python Вы изучите за неделю, а Ruby – за один день!»

Все указанные языки программирования относятся к «Свободному программному обеспечению» — широкому спектру программных решений, в которых права пользователя («свободы») на неограниченные установку, запуск, а также свободное использование, изучение, распространение и изменение (совершенствование) программ защищены юридически авторскими правами при помощи свободных лицензий. Для того чтобы сохранить модель научного сотрудничества между разработчиками, необходимо было обеспечить, чтобы исходные тексты программ, написанных разработчиками, оставались доступными для чтения и критики всему научному сообществу с сохранением авторства произведений. Для этого Ричард Столлман сформулировал понятие свободное программное обеспечение, в котором отразились принципы открытой разработки программ в научном сообществе, сложившемся в американских университетах в 1970-е годы. Столлман явно сформулировал эти принципы, они же — критерии свободного программного обеспечения. Эти критерии оговаривают те права, которые авторы свободных программ передают любому пользователю:

  • Программу можно свободно использовать с любой целью («нулевая свобода»).

  • Можно изучать, как программа работает, и адаптировать её для своих целей («первая свобода»). Условием этого является доступность исходного текста программы.

  • Можно свободно распространять копии программы — в помощь товарищу («вторая свобода»).

  • Программу можно свободно улучшать и публиковать свою улучшенную версию — с тем, чтобы принести пользу всему сообществу («третья свобода»). Условием этой третьей свободы является доступность исходного текста программы и возможность внесения в него модификаций и исправлений.

Возможность исправления ошибок и улучшения программ — самая важная особенность свободного и открытого программного обеспечения, что просто невозможно для пользователей закрытых частных программ даже при обнаружении в них ошибок и дефектов, количество которых, как правило, неизвестно никому.

Только удовлетворяющая всем четырём перечисленным принципам программа может считаться свободной программой, то есть гарантированно открытой и доступной для модернизации и исправления ошибок и дефектов, и не имеющей ограничений на использование и распространение. Нужно подчеркнуть, что эти принципы оговаривают только доступность исходных текстов программ для всеобщего использования, критики и улучшения, и права пользователя, получившего исполнимый или исходный код программы, но никак не оговаривают связанные с распространением программ денежные отношения, в том числе не предполагают и бесплатности. В англоязычных текстах здесь часто возникает путаница, поскольку слово «free» по-английски означает не только «свободное», но и «бесплатное», и нередко употребляется по отношению к бесплатному программному обеспечению, которое распространяется без взимания платы за использование, но недоступно для изменения сообществом, потому что его исходные тексты не опубликованы. Такое бесплатное ПО вовсе не является свободным. Наоборот, свободное ПО вполне можно распространять (и распространяют), взимая при этом плату, однако соблюдая при этом критерии свободы: каждому пользователю предоставляется право получить исходные тексты программ без дополнительной платы (за исключением цены носителя), изменять их и распространять далее. Всякое программное обеспечение, пользователям которого не предоставляется такого права, является несвободным — независимо от любых других условий.

Открытый доступ к исходным текстам программ является ключевым признаком свободного ПО, поэтому предложенный несколько позднее Эриком Реймондом термин «open source software» (ПО с открытым исходным текстом) некоторым представляется даже более удачным для обозначения данного феномена, чем изначально предложенный Столлманом «free software». Столлман настаивает на различии этих двух понятий, так как слова «open source» указывают лишь на наличие одного, не самого важного (хотя и необходимого для реализации двух из четырёх свобод), по его мнению, из свойств, присущих свободному ПО — возможности увидеть исходный код.

Поскольку язык программирования Ruby относится к свободному программному обеспечению, то разработанное Web-приложение должно распространяться бесплатно.

Аналоги данного программного средства имеются на языках Python, Perl и PHP, но на языке Ruby аналога нет.

Выводы

В дипломном проекте выполнена разработка Web-приложения «Размещаемая в Сети система сообщений об ошибках» на языке программирования Ruby.

Затраты на создание програмного обеспечения, составляют 9215 грн. Длительность разработки 4,2 мес. Дружественность интерфейса разработанного ПО обеспечивает естественное, легкое, восприятие информации, имеется возможность интерактивного ввода и корректировки данных.

86

Соседние файлы в папке Пример диплома специалиста