БЕЛОРУССКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ ИНФОРМАТИКИ И РАДИОЭЛЕКТРОНИКИ
КАФЕДРА МЕНЕДЖМЕНТА
РЕФЕРАТ
на тему:
"ПРОБЛЕМЫ СОВЕРШЕНСТВОВАНИЯ КАЧЕСТВА ВЫПУСКАЕМОГО ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ "
МИНСК, 2009
Программное обеспечение разрабатывают уже больше пятидесяти лет, но до сих пор программы, изобилующие ошибками, остаются нормой, а качественные решения - редчайшим исключением. Разнообразие дефектов поразительно: от проблемы 2000 года "Все программное обеспечение содержит ошибки, и каждый должен с этим смириться" до изъянов защиты, не говоря уж о множестве катастрофических программных ошибок. Нам следует обратиться к прошлому и понять, почему до сих пор не существует общих технологий, которые позволили бы всем разработчикам писать надежное программное обеспечение с приемлемыми затратами и в разумное время.
Можно выделить следующие существующие проблемы в разработке программного обеспечения:
Несоответствие процессов разработки ПО международным стандартам.
Наличие ошибок в инструментах, используемых для разработки программных продуктов.
Сжатые сроки выполнения проекта.
Недостаточно опытные разработчики ПО.
Различные среды разработки ПО на стороне разработчиков и заказчика.
Плохо организованные процессы разработки ПО.
Недопонимание функциональности программы, которую желает видеть заказчик (общение происходит на иностранном языке, т.к большинство заказов поступает из-за рубежа, это зачастую приводит к двусмысленному пониманию вещей).
Разработка и/или тестирование происходит и на стороне аутсорсинговой компании, и на стороне заказчика. Может привести к затрудненному понимаю или потере кода как со стороны разработчиков, так и со стороны заказчика.
Невозможно разобраться в проблеме не зная ее истоков. Поэтому исследуем период зарождения и развития программного обеспечения, что поможет понять существующие проблемы в области совершенствования процесса написания программ. В начале XXI века есть смысл проанализировать прошедшие 50 лет. Первые эксперименты, которые можно отнести к современному программированию, проводились еще во время Второй мировой войны. Но именно 50-е годы стали первым десятилетием развития программирования как отрасли. За этот период, включая начало нового тысячелетия, буквально на наших глазах кардинально изменился круг задач, которые способно решать программное обеспечение, и формы представления таких решений.
В не меньшей степени изменились методы работы и отношение к программированию самих разработчиков. Технологические достижения в аппаратном обеспечении, операционных системах и языках программирования помогли сформировать среду разработки. Однако социальные и экономические факторы сыграли, пожалуй, более важную роль, поскольку именно они определяли, каким образом отрасль адаптировала эти достижения, кто, в конечном итоге, стал их использовать, и как они влияют (если влияют) на возможность создавать качественное программное обеспечение.
Хотя полно описать последние 50 лет развития программного обеспечения сложно, можно попытаться кратко изложить суть каждого десятилетия, анализируя теорию и практику разработки программного обеспечения, сосредотачиваясь на принципах и тенденциях, которые сформировали современные методы создания программ. Возможно, изучая решения из прошлого, как успешные, так и неудачные, мы обнаружим путеводную нить, которая позволит найти способ улучшить программные системы в будущем.
Программируемые компьютеры впервые начали использовать для решения военных задач, стоявших перед США во Второй мировой войне. Такие устройства требовались для самых разных целей, от вычисления траекторий бомб до дешифровки вражеских радиопередач. Именно война стимулировала создание более качественных и быстрых способов вычислений. К решению этой проблемы были привлечены самые блестящие специалисты. Первыми "компьютерами" были люди, главным образом женщины, которых в 40-х годах не брали в армию США. Они составляли длинные "конвейеры" из механических счетных машин. Представьте себе "работу" программы следующим образом: каждая из сидящих в ряд женщин, работает на своей станции, выполняя определенную часть вычислений траектории бомбы, и передает ответ своей соседке для выполнения следующего шага.
Но в военных условиях скорость и точность одинаково важны, а компьютер ENIAC Дж. Преспера Эккерта и Джона Мочли гарантировал и то, и другое. Кроме того, война открывает финансовые возможности, которых в других условиях может и не представиться. ENIAC был в большей степени электрической, нежели механической машиной, используя электричество не только для управления механическими компонентами, но и для самих вычислений. Эта машина могла не только порождать результаты, но и автоматически использовать эти результаты для других вычислений. Однако ENIAC опоздал, не успев решить ни одной задачи для военных целей (Scott McCartney, ENIAC: The Triumphs and Tragedies of the World’s First Computer, Walker and Company, New York, 1999).
После войны компьютеры стали применяться в первую очередь именно для оборонных задач. Они создавались для решения серьезных математических проблем, и первыми программистами в большинстве своем были люди, которые составляли и выводили уравнения. Физики и математики тщательно разрабатывали алгоритмы.
Наверняка у вас есть товары или услуги, продажа которых приносит вам максимальную прибыль. Для быстрого старта в сети вам необходимо создание посадочной страницы (одностраничного сайта), на которой будет размещена информация о маржинальных товарах/услугах интернет магазина. За 8 лет опыта разработки конверсионных страниц мы выработали оптимальную структуру, которая позволит привлекать через landing page больше продаж. На такую структуру «одевается» ваш контент — фирменный стиль, тексты, фотографии, уникальные торговые предложения, после чего страница выходит в свет. Разработка лендинга и запуск в сети — до 7 рабочих дней. Стоит отметить, что в разработку самой посадочной страницы входит и написание копирайтером продающих текстов для вашего бизнеса, чтобы каждый посетитель страницы захотел совершить покупку именно у вас. Результат: качественно разработаная продающая посадочная страница, которая готова приносить вам новых клиентов.