Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Konspekt_AiPPZ.docx
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
40.4 Кб
Скачать

1. Введение в проектирование по.

1.1 Особенности разработки современных программных проектов.

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

Современные крупные проекты ИС характеризуются следующими особенностями:

  • структурная, функциональная и информационная сложность объекта внедрения;

  • высокая техническая сложность, из-за наличия подсистем, обеспечивающих управление транзакциями, аналитическую обработку данных, безопасность;

  • отсутствие полных аналогов и высокая доля вновь разрабатываемого ПО;

  • наличие унаследованного ПО и необходимость его интеграции с разрабатываемым ПО;

  • территориально распределенная и неоднородная среда функционирования;

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

  • значительная длительность жизненного цикла ПО.

Кризис разработки ПО заключается в том, что проекты выполняются с превышением сметы расходов и/или сроков отведенных на разработку, а разработанное ПО не обладает требуемыми функциональными возможностями, имеет низкую производительность и качество.

Причины несвоевременного выполнения проектов:

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

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

  • отсутствие необходимых ресурсов;

  • неудовлетворительное планирование и отсутствие грамотного управления проектом;

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

  • новизна и несовершенство используемой технологии;

  • недостаточная поддержка со стороны высшего руководства;

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

В процессе разработки ПО возникают следующие проблемы:

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

  • недостаток контроля. Без точной оценки процесса разработки срываются графики выполнения работ и превышаются установленные бюджеты. Сложно оценить объем выполненной и оставшейся работы.

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

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

1.2 Основные понятия проектирования по

Основой проектирования программного обеспечения является системный подход.

Системный подход – это методология исследования объекта любой природы как системы.

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

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

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

На начальном этапе развития программной инженерии проектирование ИС выполнялось в основном на интуитивном уровне с применением неформализованных методов, основанных на практическом опыте, экспертных оценках и экспериментальных проверках качества функционирования системы.

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

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

Ручная разработка обычно порождала следующие проблемы:

  • неадекватная спецификация требований;

  • неспособность обнаруживать ошибки в проектных решениях;

  • низкое качество документации, снижающее эксплуатационные качества;

  • затяжной цикл и неудовлетворительные результаты тестирования.

Перечисленные факторы способствовали появлению программно-технологических средств специального класса - CASE-средств (Computer Aided Software Engineering), реализующих CASE-технологию создания и сопровождения ИС. В настоящее время под термином CASE-средства понимаются программные средства, поддерживающие процессы создания и сопровождения ИС, включая анализ и формулировку требований, проектирование прикладного ПО (приложений) и баз данных, генерацию кода, тестирование, документирование, обеспечение качества, конфигурационное управление и управление проектом, а также другие процессы. CASE-средства вместе с системным ПО и техническими средствами образуют полную среду разработки ИС. CASE-технология представляет собой методологию проектирования ИС, а также набор инструментальных средств, позволяющих в наглядной форме моделировать предметную область, анализировать эту модель на всех этапах разработки и сопровождения ИС и разрабатывать приложения в соответствии с информационными потребностями пользователей. Большинство существующих CASE-средств основано на методологиях структурного (в основном) или объектно-ориентированного анализа и проектирования, использующих спецификации в виде диаграмм или текстов для описания внешних требований, связей между моделями системы, динамики поведения системы и архитектуры программных средств.

CASE-средства можно классифицировать на типы:

  • средства анализа (Upper CASE), предназначенные для построения и анализа моделей предметной области;

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

  • средства проектирования баз данных, обеспечивающие моделирование данных и генерацию схем баз данных (как правило, на языке SQL) для наиболее распространенных СУБД;

  • средства разработки приложений;

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

Особенности внедрения CASE-средств:

  • CASE-средства не всегда дают незамедлительный эффект, он может быть получен спустя некоторое время;

  • реальные затраты на внедрение CASE-средств обычно немного превышают затраты на их приобретение;

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

Успешное внедрение CASE-средств должно обеспечивать такие преимущества:

  • высокий уровень технологической поддержки процессов разработки и сопровождения ПО;

  • положительное воздействие на такие факторы: производительность, качество продукции, соблюдение стандартов, документирование;

  • приемлемый уровень отдачи от инвесторов в CASE-средства.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]