Николай Алексеевич Соловьев, Елена Николаевна Чернопрудова - Системы автоматизации разработки программного обеспечения

Системы автоматизации разработки программного обеспечения
Название: Системы автоматизации разработки программного обеспечения
Авторы:
Жанры: Программы | Информатика и вычислительная техника
Серии: Нет данных
ISBN: Нет данных
Год: 2012
О чем книга "Системы автоматизации разработки программного обеспечения"

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

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


Введение

Создание автоматизированных информационных систем (АИС) – весьма сложная и трудоемкая задача в связи с тем, что современное программное обеспечение (ПО) данного класса составляет сотни тысяч операторов. Будущий специалист в области разработки ПО должен иметь представление о современных методах автоматизации анализа, проектирования, реализации и тестирования АИС, т.е. ориентироваться в современных подходах к технологиям программирования.

Теоретической основой построения систем автоматизации проектирования ПО (САПР ПО) являются методы технологии разработки ПО, автоматизация которых является предметом изучения настоящего учебного пособия. Изложение материала строится в соответствии с основными этапами жизненного цикла ПО.

Основой изложенного материала стал учебник «Технология программирования», разработанного в МГТУ им. Н. Баумана профессором Г.С. Ивановой, и допущенного Министерством образования и науки Российской Федерации (Минобрнауки РФ) для студентов ВУЗов, обучающихся по направлению 2301000 – Информатика и вычислительная техника. Материал доработан в процессе многолетней апробации на кафедре программного обеспечения вычислительной техники и автоматизированных систем «Оренбургский государственный университет».

1 Методология автоматизации разработки программного обеспечения

1.1 Актуальность автоматизации разработки программного обеспечения

Производство программного обеспечения сегодня – крупнейшая отрасль мировой экономики, в которой занято около 3-х млн. специалистов. Еще несколько млн. человек напрямую зависят от качества корпоративных автоматизированных информационных систем (АИС).

Поэтому состояние отрасли напрямую определяет благополучие специалистов-разработчиков программного обеспечения (ПО).

1.1.1 Кризис программной инженерии, его причины и пути преодоления

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

В конце ХХ – го века в программной инженерии сложилось критическая ситуация, неразрешенная до сих пор. Кризис выражается в том, что большие проекты ПО стали выполняться с отставанием графика и со значительным превышением расходов, а разработанный продукт не обладал требуемыми функциональными возможностями или производительностью, что не устраивает потребителей. Так, например, в 1995 г. компания Standish Group проанализировала работу 364 американских корпораций по итогам выполнения более 23 000 проектов, связанных с разработкой ПО.

Результаты анализа, представленные на рисунке 1.1, оказались удручающими.


Рисунок 1.1 – Результаты анализа проектов в области программной инженерии


Причины кризиса:

– нечеткая и неполная формулировка требований к ПО;

– недостаточное вовлечение пользователей в работу над проектом;

– отсутствие необходимых ресурсов и неудовлетворительное планирование;

– частое изменение требований спецификаций;

– новизна используемой технологии для организации;

– отсутствие грамотного управления проектом.

В конце 20 – го века утвердилось понимание необходимости перехода от кустарных к индустриальным технологиям создания ПО, к созданию совокупности инженерных методов и средств разработки программных продуктов, объединенных общим названием «программная инженерия» (software engineering). Тогда же появилось первое издание, посвященное программной инженерии – IEEE Transaction on Software Engineering.

В основе программной инженерии лежит фундаментальная идея: разработка ПО является формальным процессом и, следовательно, его можно автоматизировать.

Таким образом, автоматизация разработки программного обеспечения является актуальной инженерной задачей в предметной области специалистов ПОВТАС.

1.1.2 Тенденции развития современных автоматизированных информационных систем

Предметной областью специалистов ПОВТАС являются АИС. Как отмечал Фредерик Брукс, руководитель проекта операционной системы OS/360, самым существенным свойством программных систем (ПС), к классу которых относится АИС, является их сложность. Благодаря уникальности и несхожести своих составных частей АИС принципиально отличается от технических систем, в которых преобладают повторяющиеся элементы.

Тенденциями развития АИС в современных условиях становятся:

– сложность описания (большое количество функций, процессов, элементов данных и сложные взаимосвязи между ними);

– наличие совокупности тесно взаимодействующих компонентов, имеющих локальные задачи и цели функционирования (например, традиционных приложений, связанных с обработкой транзакций, приложений аналитической обработки данных – поддержки принятия решений);

– отсутствие полных аналогов корпоративных АИС, ограничивающие возможность использования типовых проектных решений;

– необходимость интеграции существующих и вновь разрабатываемых приложений;

– функционирование в неоднородной среде на нескольких аппаратных платформах;

– разобщенность и разнородность групп разработчиков по уровню квалификации и сложившимся традициям использования тех или иных инструментальных средств;

– значительная временная протяженность проекта.

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

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

Таким образом, к концу ХХ-го века назрела необходимость разработки программно-технологических средств специального класса, реализующих CASEтехнологии создания и сопровождения ПО АИС.

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


С этой книгой читают
Практическая книга для предпринимателей и маркетологов по разработке и оценке названия от российских практиков с десятилетним стажем.Рекомендовано Гильдией маркетологов
В курсе лекций изложены общие теоретические основы баз данных и информационных систем, концептуальные основы распределенной обработки информации, методические основы и примеры практического проектирования распределенных информационных систем с использованием современных программных инструментальных средств.
Данная книга предназначена для пользователей Microsoft Excel и содержит описание приемов и методов работы, которые из-за своей специфичности недостаточно представлены (либо вообще не представлены) в пользовательской, справочной и иной соответствующей документации. Изучение приведенных в книге примеров позволит читателю открыть для себя не известные ранее возможности Excel. Предлагаемый материал легко усваивается благодаря тому, что излагается дос
Вы хотите попробовать свои силы в компьютерной графике и создать в растровом редакторе Photoshop красивый монтаж? У вас есть все составляющие для собственной работы, но ничего не получается? Не унывайте! Эта книга даст вам шанс и поможет научиться создавать удивительные изображения.Автор, известный специалист в области фотомонтажа и компьютерного дизайна, в легкой и доступной форме познакомит вас с историей появления и становления фотомонтажа как
Хотите принимать решения на основе данных, а не интуиции? Книга «Тестируй, а не гадай: Как проводить А/В-тесты правильно» станет вашим надёжным гидом в мире экспериментов! Вы узнаете, как превращать гипотезы в точные данные, избегать распространённых ошибок и грамотно интерпретировать результаты. Автор шаг за шагом объясняет принципы планирования и проведения А/В-тестов, раскрывает секреты успешного анализа и помогает найти правильные метрики для
Эта книга – руководство по использованию графовых технологий и когнитивного программирования в корпоративной среде. Она охватывает эволюцию графовых баз данных, принципы работы Neo4j и языка запросов Cypher, а также концепцию GraphRAG – инновационного подхода к обработке знаний на основе графов. Читатель познакомится с основами моделирования корпоративного сознания, интеграцией когнитивных методов с графовыми структурами и их влиянием на бизнес-р
Как часто мы делаем глупости, и только потом понимаем их значение в нашей жизни. Не просто бывает уйти, еще труднее вернуться. Трудно привыкать — труднее отвыкнуть. Разве не так?Судьба развела героя не только с любимой, но и с друзьями. Но все можно вернуть, если захотеть.«— Она здесь больше не живет, — услышал я ответ на свой вопрос. Все надежды сразу рухнули.Моя жизнь сделала круг. Я вернулся туда, откуда начал свой путь. Я вернулся, чтобы попр
Она успешна и привлекательна. Случайная встреча, напомнила ей о прошлом, и она решила взять реванш, сделать то, что не удалось тогда.«В глазах любимого человека надо видеть радость, даже если не любима им, усмирять свою боль его радостью, тем, что он жив и счастлив. Моя боль — это моя боль, а я захотела ее отдать ему. Видит Бог, я не хотела того, что произошло».
Сбегая от ненавистной обстановки, я вернулась из небольшого курортного городка в столицу и столкнулась с тем, что первенство преследования перехватило нечто странное и необъяснимое – глубоко за полночь на мой порог явился мужчина с испачканными кровью руками. Нет… Это не грабитель: он оказался ранен. Кто этот человек? От кого скрывается? И самое главное – что значат его постоянные ночные визиты?
Стихи-размышления о поиске, потере и вновь нахождении смысла жизни и радости.