Давайте сначала поймем, что означает разработка программного обеспечения. Термин состоит из двух слов, программного обеспечения и техники.
Программное обеспечение — это больше, чем просто программный код. Программа представляет собой исполняемый код, который выполняет некоторые вычислительные задачи. Программное обеспечение считается коллекцией исполняемого программного кода, связанных библиотек и документации. Программное обеспечение, если оно изготовлено для конкретного требования, называется программным продуктом.
С другой стороны, инжиниринг — это разработка продуктов с использованием четко определенных научных принципов и методов.
Программная инженерия — это инженерная отрасль, связанная с разработкой программного продукта с использованием четко определенных научных принципов, методов и процедур. Результатом разработки программного обеспечения является эффективный и надежный программный продукт.
Определения
IEEE определяет разработку программного обеспечения как:
(1) Применение систематического, дисциплинированного, количественного подхода к разработке, эксплуатации и обслуживанию программного обеспечения; то есть применение техники к программному обеспечению.
(2) Изучение подходов, как в приведенном выше утверждении.
(1) Применение систематического, дисциплинированного, количественного подхода к разработке, эксплуатации и обслуживанию программного обеспечения; то есть применение техники к программному обеспечению.
(2) Изучение подходов, как в приведенном выше утверждении.
Фриц Бауэр, немецкий программист, определяет разработку программного обеспечения как:
Программная инженерия — это создание и использование принципов звуковой инженерии для получения экономически выгодного программного обеспечения, которое эффективно работает на реальных машинах.
Программная инженерия — это создание и использование принципов звуковой инженерии для получения экономически выгодного программного обеспечения, которое эффективно работает на реальных машинах.
Эволюция программного обеспечения
Процесс разработки программного продукта с использованием принципов и методов разработки программного обеспечения называется эволюцией программного обеспечения. Это включает в себя первоначальную разработку программного обеспечения, его обслуживание и обновление до тех пор, пока не будет разработан желаемый программный продукт, который удовлетворяет ожидаемым требованиям.
Эволюция начинается с процесса сбора требований. После чего разработчики создают прототип предполагаемого программного обеспечения и показывают его пользователям, чтобы получить их отзывы на ранней стадии разработки программного продукта. Пользователи предлагают изменения, по которым несколько последовательных обновлений и обслуживания также продолжают изменяться. Этот процесс изменяется на исходное программное обеспечение, пока не будет выполнено желаемое программное обеспечение.
Даже после того, как пользователь получил желаемое программное обеспечение, передовая технология и изменяющиеся требования вынуждают программный продукт соответствующим образом меняться. Пересоздать программное обеспечение с нуля и идти один на один с требованием невозможно. Единственное возможное и экономичное решение — обновить существующее программное обеспечение, чтобы оно соответствовало последним требованиям.
Законы об эволюции программного обеспечения
Lehman дал законы для развития программного обеспечения. Он разделил программное обеспечение на три категории:
- S-тип (статический тип) — это программное обеспечение, которое работает строго в соответствии с определенными спецификациями и решениями. Решение и способ его достижения сразу же понимаются перед кодированием. Программное обеспечение s-типа меньше всего подвержено изменениям, поэтому это самое простое из всех. Например, программа-калькулятор для математических вычислений.
- P-тип (практический тип) — это программное обеспечение с набором процедур. Это определяется именно тем, что могут делать процедуры. В этом программном обеспечении спецификации могут быть описаны, но решение не очевидно сразу. Например, игровое программное обеспечение.
- Электронный тип (встроенный) — это программное обеспечение тесно связано с требованиями реальной среды. Это программное обеспечение имеет высокую степень эволюции, поскольку в реальных ситуациях происходят различные изменения в законах, налогах и т. Д. Например, программное обеспечение для онлайн-торговли.
Эволюция программного обеспечения E-Type
Lehman дал восемь законов развития программного обеспечения E-Type —
- Продолжающиеся изменения. Программная система электронного типа должна продолжать адаптироваться к изменениям реального мира, иначе она становится все менее полезной.
- Возрастающая сложность. По мере развития системы программного обеспечения типа E ее сложность возрастает, если не проводится работа по ее обслуживанию или уменьшению.
- Сохранение фамильярности — знакомство с программным обеспечением или знание о том, как оно разрабатывалось, почему оно разрабатывалось именно таким образом и т. Д., Должно сохраняться любой ценой для реализации изменений в системе.
- Продолжающийся рост. Для того, чтобы система E-типа предназначалась для решения какой-либо бизнес-проблемы, ее размер для реализации изменений увеличивается в соответствии с изменениями образа жизни бизнеса.
- Снижение качества. Система программного обеспечения типа E ухудшает качество, если не будет тщательно поддерживаться и адаптироваться к изменяющейся операционной среде.
- Системы обратной связи. Программные системы E-типа представляют собой многоконтурные многоуровневые системы обратной связи и должны рассматриваться как таковые, чтобы успешно модифицироваться или улучшаться.
- Саморегулирование — процессы эволюции системы E-типа являются саморегулируемыми с распределением продуктов и мер, близких к нормальным.
- Организационная стабильность . Средний эффективный глобальный уровень активности в развивающейся системе электронного типа не меняется в течение срока службы продукта.
Программные парадигмы
Программные парадигмы относятся к методам и шагам, которые предпринимаются при разработке программного обеспечения. Есть много методов, предложенных и работающих в настоящее время, но мы должны увидеть, где эти парадигмы стоят в разработке программного обеспечения. Они могут быть объединены в различные категории, хотя каждая из них содержится в одной:
Парадигма программирования — это подмножество парадигмы разработки программного обеспечения, которая является еще одним подмножеством парадигмы разработки программного обеспечения.
Парадигма разработки программного обеспечения
Эта парадигма известна как парадигма разработки программного обеспечения, в которой применяются все инженерные концепции, относящиеся к разработке программного обеспечения. Он включает в себя различные исследования и сбор требований, которые помогают построить программный продукт. Это состоит из —
- Сбор требований
- Разработка программного обеспечения
- программирование
Парадигма разработки программного обеспечения
Эта парадигма является частью разработки программного обеспечения и включает в себя —
- дизайн
- техническое обслуживание
- программирование
Парадигма программирования
Эта парадигма тесно связана с программным аспектом разработки программного обеспечения. Это включает —
- кодирование
- тестирование
- интеграция
Необходимость разработки программного обеспечения
Необходимость разработки программного обеспечения возникает из-за более высокой скорости изменения требований пользователя и среды, в которой работает программное обеспечение.
- Большое программное обеспечение. Построить стену легче, чем дом или здание, так же, как размер программного обеспечения становится большим, и инжиниринг должен сделать научный процесс.
- Масштабируемость — если процесс программного обеспечения не основывается на научных и технических концепциях, было бы легче воссоздать новое программное обеспечение, чем масштабировать существующее.
- Затраты. Поскольку индустрия оборудования продемонстрировала свое мастерство, а огромное производство снизило цены на компьютерное и электронное оборудование. Но стоимость программного обеспечения остается высокой, если надлежащий процесс не адаптирован.
- Динамическая природа . Постоянно растущая и адаптирующаяся природа программного обеспечения в значительной степени зависит от среды, в которой работает пользователь. Если природа программного обеспечения постоянно меняется, необходимо внести новые улучшения в существующий. Это где разработка программного обеспечения играет хорошую роль.
- Управление качеством — лучший процесс разработки программного обеспечения обеспечивает лучший и качественный программный продукт.
Характеристики хорошего программного обеспечения
О программном продукте можно судить по тому, что он предлагает и насколько хорошо его можно использовать. Это программное обеспечение должно удовлетворять следующим основаниям:
- эксплуатационный
- переходный
- техническое обслуживание
Ожидается, что хорошо спроектированное и созданное программное обеспечение будет иметь следующие характеристики:
эксплуатационный
Это говорит нам, насколько хорошо программное обеспечение работает в операциях. Это может быть измерено на:
- бюджет
- Юзабилити
- КПД
- правильность
- функциональность
- надежность
- Безопасность
- безопасности
переходный
Этот аспект важен, когда программное обеспечение перемещается с одной платформы на другую:
- портативность
- Interoperability
- Повторное использование
- адаптируемость
техническое обслуживание
В этом аспекте кратко описывается, насколько хорошо программное обеспечение способно поддерживать себя в постоянно меняющейся среде:
- модульность
- Ремонтопригодность
- гибкость
- Масштабируемость
Короче говоря, разработка программного обеспечения — это отрасль компьютерных наук, которая использует четко определенные концепции разработки, необходимые для создания эффективных, надежных, масштабируемых, бюджетных и своевременных программных продуктов.