Обзор и актуальное руководство по разработке программного обеспечения
Следующий план представляет собой обзор и актуальное руководство по разработке программного обеспечения:
Программная инженерия – применение систематического, дисциплинированного, поддающегося количественной оценке подхода к разработке, эксплуатации и обслуживанию программного обеспечения ; это применение техники к программному обеспечению . [1]
Система компьютерной классификации ACM представляет собой полииерархическую онтологию, которая организует темы в этой области и может использоваться в семантических веб-приложениях, а также в качестве де-факто стандартной системы классификации для этой области. Основной раздел «Программное обеспечение и его разработка» представляет собой схему и онтологию разработки программного обеспечения.
Программные приложения
Инженеры -программисты создают программное обеспечение ( приложения , операционные системы , системное программное обеспечение ), которое используют люди.
Приложения влияют на разработку программного обеспечения, заставляя разработчиков решать проблемы новыми способами. Например, потребительское программное обеспечение подчеркивает низкую стоимость, медицинское программное обеспечение - высокое качество, а программное обеспечение для интернет-коммерции - быстрое развитие.
- Программное обеспечение для бизнеса
- Аналитика
- Бронирование авиабилетов
- Банковское дело
- Коммерция
- Составители
- Коммуникация
- Компьютерная графика
- Криптография
- Базы данных , поддерживают практически все поля
- Встроенные системы Как инженеры-программисты, так и традиционные инженеры пишут системы управления программным обеспечением для встраиваемых продуктов.
- Инженерное дело Все традиционные инженерные отрасли широко используют программное обеспечение. Инженеры используют электронные таблицы чаще, чем когда-либо калькуляторы. Инженеры используют специальные программные инструменты для проектирования, анализа и моделирования своих собственных проектов, таких как мосты и линии электропередачи. Эти проекты во многих отношениях напоминают программное обеспечение, поскольку работа существует в виде электронных документов и проходит этапы анализа, проектирования , внедрения и тестирования. Программные средства для инженеров используют принципы информатики; а также принципы исчисления, физики и химии.
- Файл
- Финансы
- Игры
- Информационные системы , поддерживают практически все области
- ЛИС Управление лабораторными данными
- MIS Управление финансовыми и кадровыми данными
- Логистика
- Производство
- Музыка
- Управление сетью
- Сети и Интернет
- Офисные пакеты
- Операционные системы
- Робототехника
- Обработка сигналов , кодирование и интерпретация сигналов
- Моделирование поддерживает практически все поля.
- Науки
- Контроль дорожного движения
- Обучение
- Визуализация , поддерживает практически все поля
- Голосование
- Всемирная паутина
Темы разработки программного обеспечения
Парадигма программирования, основанная на технологии языка программирования.
Базы данных
Графические пользовательские интерфейсы
Инструменты программирования
Библиотеки
Языки дизайна
Шаблоны документируют многие распространенные методы программирования и управления проектами.
Процессы и методологии
- Гибкий
- Тяжёлый вес
- Модели процессов
- Метамодели
Платформы
Платформа объединяет компьютерное оборудование и операционную систему. По мере того как платформы становятся более мощными и менее дорогостоящими, приложения и инструменты становятся более доступными.
Другие практики
Другие инструменты
Темы информатики
Квалифицированные инженеры-программисты знают многое из информатики, включая то, что возможно и невозможно, а также что легко и сложно для программного обеспечения.
Темы математики
Дискретная математика является ключевой основой разработки программного обеспечения .
Другой
Фазы жизненного цикла
Практические результаты
Результаты должны быть разработаны для многих проектов SE. Инженеры-программисты редко создают все эти результаты самостоятельно. Они обычно сотрудничают с авторами, инструкторами, установщиками, маркетологами, специалистами технической поддержки и другими людьми, которые создают многие из этих результатов.
Бизнес-роли
Темы управления
Бизнес-темы
Профессия инженер-программист
История разработки программного обеспечения
История разработки программного обеспечения
Пионеры
Многие люди внесли важный вклад в технологии, практики или приложения SE.
- Джон Бэкус : Фортран , первый оптимизирующий компилятор, BNF
- Виктор Базили : Фабрика опыта.
- Ф. Л. Бауэр : Принцип стека , популяризировавший термин «Программная инженерия».
- Кент Бек : Рефакторинг , экстремальное программирование , парное программирование , разработка через тестирование .
- Тим Бернерс-Ли : Всемирная паутина
- Барри Бём : экономика SE , COCOMO , спиральная модель .
- Грэди Буч : Объектно-ориентированное проектирование , UML .
- Фред Брукс : Managed System 360 и OS 360 . Написал «Мифический человеко-месяц» и «Нет серебряной пули» .
- Ларри Константин : Структурированный дизайн , взаимосвязь , сплоченность.
- Эдсгер Дейкстра : Написал заметки по структурному программированию , дисциплине программирования и переходу к утверждению, считающемуся вредным , алгоритмам , формальным методам , педагогике .
- Майкл Фэган : Проверка программного обеспечения .
- Том Гилб : Метрики программного обеспечения , Проверка программного обеспечения , Эволюционная доставка («Эво») .
- Адель Голдстайн : Написала руководство по эксплуатации ENIAC , первого электронного цифрового компьютера, и обучила некоторых из первых человеческих компьютеров.
- Лоис Хайбт : ФОРТРАН , автор первого парсера .
- Маргарет Гамильтон : придумала термин «программная инженерия», разработала универсальный системный язык.
- Мэри Джин Харролд : Регрессионное тестирование , локализация ошибок
- Грейс Хоппер : Первый компилятор (Марк 1), COBOL , Nanoсекунды .
- Уоттс Хамфри : Модель зрелости возможностей , Персональный процесс разработки программного обеспечения , научный сотрудник Института программной инженерии .
- Жан Ичбиа — Ада
- Майкл А. Джексон : Структурное программирование Джексона , Разработка системы Джексона
- Билл Джой : Беркли Unix , vi , Java .
- Алан Кей : Smalltalk
- Брайан Керниган : C и Unix.
- Дональд Кнут : Написал «Искусство компьютерного программирования» , TeX , алгоритмы , грамотное программирование.
- Нэнси Левесон : Безопасность системы
- Бертран Мейер : Проектирование по контракту , язык программирования Eiffel .
- Питер Г. Нейман : Дайджест РИСКОВ , ACM Sigsoft.
- Дэвид Парнас : Модульный дизайн, социальная ответственность, профессионализм.
- Джеф Раскин : разработал оригинальный графический интерфейс Macintosh , автор книги «Гуманный интерфейс».
- Деннис Ритчи : C и Unix .
- Уинстон В. Ройс : Модель водопада .
- Мэри Шоу : Архитектура программного обеспечения .
- Ричард Столлман : основатель Фонда свободного программного обеспечения
- Линус Торвальдс : Ядро Linux , свободное программное обеспечение / разработка с открытым исходным кодом .
- Уилл Трач: Повторное использование, Заметки по разработке программного обеспечения ACM.
- Джеральд Вайнберг : Написал «Психологию компьютерного программирования» .
- Элейн Вейкер : Тестирование программного обеспечения
- Жанетт Уинг : Официальные характеристики .
- Эд Юрдон : Структурированное программирование , написал книгу «Упадок и падение американского программиста» .
Смотрите также
Известные публикации
- About Face: The Essentials of User Interface Design Алана Купера , о дизайне пользовательского интерфейса. ISBN 0-7645-2641-3
- Модель зрелости способностей Уоттса Хамфри . Написано для Института программной инженерии с упором на управление и процесс. (См. ISBN «Управление процессом разработки программного обеспечения» 0-201-18095-2 ).
- «Собор и базар» Эрика Рэймонда о разработке с открытым исходным кодом.
- Эд Юрдон « Упадок и падение американского программиста» предсказывает конец разработки программного обеспечения в США ISBN 0-13-191958-X
- Шаблоны проектирования Эриха Гаммы , Ричарда Хелма , Ральфа Джонсона и Джона Влиссайдса . ISBN 0-201-63361-2
- Экстремальное программирование, объясненное ISBN Кента Бека 0-321-27865-8
- «Перейти к заявлению, считающемуся вредным», Эдсгер Дейкстра .
- «Интернет, инновации и открытый исходный код: действующие лица в сети» — статья Илкки Туоми (2000) в первый понедельник , источник
- «Мифический человеко-месяц» Фреда Брукса об управлении проектами. ISBN 0-201-83595-9
- Объектно-ориентированный анализ и проектирование, Грейди Буч . ISBN 0-8053-5340-2
- Peopleware от Тома ДеМарко и Тима Листера. ISBN 0-932633-43-9
- Инженер-прагматик против научного дизайнера, Э. В. Дейкстра [1]
- Принципы управления программной инженерией Тома Гилба об эволюционных процессах. ISBN 0-201-19246-2
- Психология компьютерного программирования Джеральда Вайнберга . Написано как независимый консультант, частично о его годах в IBM. ISBN 0-932633-42-0
- Рефакторинг: улучшение дизайна существующего кода Мартин Фаулер , Кент Бек , Джон Брант, Уильям Опдайк и Дон Робертс. ISBN 0-201-48567-2
- Программист-прагматик: от подмастерья к мастеру Эндрю Ханта и Дэвида Томаса . ISBN 0-201-61622-X
- Свод знаний по программной инженерии (SWEBOK) ISO/IEC TR 19759
Смотрите также:
Связанные поля
Смотрите также
Рекомендации
Внешние ссылки
- Система классификации вычислений ACM
- Руководство по своду знаний по программной инженерии (SWEBOK)
- Профессиональные организации
- Британское компьютерное общество
- Ассоциация вычислительной техники
- Компьютерное общество IEEE
- Профессионализм
- Кодекс этики SE
- Профессиональное лицензирование в Техасе
- Образование
- Программа бакалавриата CCSE
- Стандарты
- Стандарты разработки программного обеспечения IEEE
- Целевая группа по интернет-инжинирингу
- ИСО
- Государственные организации
- Европейский институт программного обеспечения
- Институт программной инженерии
- Гибкий
- Организация по продвижению гибкой разработки программного обеспечения
- Разработка через тестирование
- Экстремальное программирование
- Другие организации
- Интернет-сообщество инженеров-программистов
- Общество программной инженерии
- Демография
- Бюро статистики труда США по SE
- Опросы
- Страница Дэвида Редмлза с сайта Калифорнийского университета
- Другой
- Полный текст в формате PDF с конференции НАТО в Гармише
- Компьютерные риски Колонка рисков Питера Г. Ноймана .