Жизненный цикл разработки программного обеспечения

Разработка программного обеспечения относится к набору мероприятий в области компьютерных наук, посвященных процессу создания, проектирования, развертывания и поддержки программного обеспечения.

Программное обеспечение само по себе представляет собой набор инструкций или программ, которые сообщают компьютеру, что делать. Оно не зависит от аппаратного обеспечения и делает компьютеры программируемыми. Существует три основных типа:

Системное программное обеспечение для обеспечения основных функций, таких как операционные системы, управление дисками, утилиты, управление оборудованием и другие операционные потребности.

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

Прикладное программное https://telegraf.news/press-relizi/26/razrabotka-it-reshenij/ обеспечение (прикладные программы), помогающие пользователям выполнять задачи. Примерами являются пакеты Office для повышения производительности, программное обеспечение для управления данными, медиаплееры и программы безопасности. Заявлений также относится к веб-и мобильных приложений, таких как те, которые используются в магазине Amazon.com, общайтесь с Facebook и размещать фотографии в Instagram.

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

Разработкой программного обеспечения в основном занимаются программисты, инженеры-программисты и разработчики программного обеспечения. Эти роли взаимодействуют и накладываются друг на друга, и динамика между ними сильно различается в разных отделах разработки и сообществах.

Программисты, или кодировщики, пишут исходный код для программирования компьютеров под конкретные задачи, такие как объединение баз данных, обработка онлайн-заказов, маршрутизация коммуникаций, проведение поиска или отображение текста и графики. Программисты обычно интерпретируют инструкции разработчиков программного обеспечения и инженеров и используют для их выполнения языки программирования, такие как C ++ или Java.

Инженеры-программисты применяют инженерные принципы для создания программного обеспечения и систем для решения проблем. Они используют язык моделирования и другие инструменты для разработки решений, которые часто могут быть применены к проблемам общего характера, в отличие от простого решения для конкретного экземпляра или клиента. Решения в области разработки программного обеспечения основаны на научном методе и должны работать в реальном мире, например, с мостами или лифтами. Их ответственность возросла по мере того, как продукты становятся все более интеллектуальными с добавлением микропроцессоров, датчиков и программного обеспечения. Все больше продуктов не только полагаются на программное обеспечение для дифференциации рынка, но и разработка программного обеспечения должна координироваться с работой по разработке механических и электрических компонентов продукта.

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