Файл: Лекции по программной инженерии.pdf

ВУЗ: Не указан

Категория: Лекция

Дисциплина: Программная инженерия

Добавлен: 25.10.2018

Просмотров: 6982

Скачиваний: 27

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.
background image

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

 

Комплект офисных приложений MS OFFICE  

 

Бухгалтерские системы 

 

Финансовые аналитические системы 

 

Интегрированные пакеты делопроизводства 

  CAD – системы (системы автоматизированного проектирования) 
 

Редакторы HTML или Web – редакторы 

 

Браузеры – средства просмотра Web - страниц 

 

Графические редакторы 

 

Экспертные системы 

И так далее. 

Инструментальное ПО  

Инструментальное ПО или системы программирования  - это системы для 
автоматизации разработки новых программ на языке программирования. 
 
В самом общем случае для создания программы на выбранном языке 
программирования (языке системного программирования) нужно иметь 
следующие компоненты: 
1. Текстовый редактор для создания файла с исходным текстом программы.  
2. Компилятор или интерпретатор. Исходный текст с помощью программы-
компилятора переводится в промежуточный объектный код. Исходный текст 
большой программы состоит из нескольких модулей (файлов с исходными 
текстами). Каждый модуль компилируется в отдельный файл с объектным 
кодом, которые затем надо объединить в одно целое. 
3. Редактор связей или сборщик, который выполняет связывание объектных 
модулей и формирует на выходе работоспособное приложение – исполнимый 
код. 
Исполнимый код – это законченная программа, которую можно запустить на 
любом компьютере, где установлена операционная система, для которой эта 
программа создавалась. Как правило, итоговый файл имеет расширение .ЕХЕ 
или .СОМ. 
4. В последнее время получили распространение визуальный методы 
программирования (с помощью языков описания сценариев), 


background image

ориентированные на создание Windows-приложений. Этот процесс 
автоматизирован в средах быстрого проектирования. При этом используются 
готовые визуальные компоненты, которые настраиваются с помощью 
специальных редакторов. 
 
Наиболее популярные редакторы (системы программирования программ с 
использованием визуальных средств) визуального проектирования: 

  Borland Delphi - предназначен для решения практически любых 

задачи прикладного программирования 

  Borland C++ Builder – это отличное средство для разработки DOS и 

Windows приложений 

  Microsoft Visual Basic – это популярный инструмент для создания 

Windows-программ 

  Microsoft Visual C++ - это средство позволяет разрабатывать любые 

приложения, выполняющиеся в среде ОС типа Microsoft Windows  

 
 

Тема 2-3.  ЖИЗНЕННЫЙ ЦИКЛ  ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ  

 

Понятие ЖЦ ПО. Международный стандарт ISO/IEC 12207: 1995. Основные и 

вспомогательные  процессы  ЖЦ  ПО.  Организация  процессов  ЖЦ.  Связь  между 
процессами. 

ПОНЯТИЕ ЖЦ 

Жизненный  цикл  (ЖЦ)  программного  обеспечения  (ПО)  определяется  как 

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

Основным  нормативным  документом,  регламентирующим  состав  процессов 

ЖЦ  ПО,  является  международный  стандарт  ISO/IEC  12207:  1995  “Information 
Technology  -  Software        Life  Cycle  Processes”  (ISO  -  International  Organization  for 
Standardization - Международная организация по стандартизации, IEC - International 
Electrotechnical  Commission  -  Международная  комиссия  по  электротехнике.  Он 
определяет  структуру  ЖЦ,  содержащую  процессы,  действия  и  задачи,  которые 
должны быть выполнены во время создания ПО.  

В данном стандарте ПО (или программный продукт) определяется как набор 

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

Процесс  определяется  как  совокупность  взаимосвязанных  действий, 

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

Каждый  процесс  разделен  на  набор  действий,  каждое  действие  –  на  набор 


background image

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

В России существуют стандарты: 
ГОСТ  34601  -  90.  «Информационная  технология.  Комплекс  стандартов  на 

автоматизированные системы. Автоматизированные системы. Стадии создания». 

ГОСТ  34601  -  89.  «Информационная  технология.  Комплекс  стандартов  на 

автоматизированные 

системы. 

Техническое 

задание 

на 

создание 

автоматизированной системы». 

ГОСТ  34601  -  92.  «Информационная  технология.  Виды  испытаний 

автоматизированных систем». 

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

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

разработках 

целесообразно 

использовать 

современные 

международные стандарты. 

В соответствии с ISO/IEC 12207: 1995  все процессы ЖЦ ПО разделены на три 

группы: 

Основные процессы:  

 

приобретение; 

 

поставка; 

 

разработка; 

 

эксплуатация; 

 

сопровождение. 

Вспомогательные процессы

 

документирование; 

 

управление конфигурацией; 

 

обеспечение качества; 

 

верификация; 

 

аттестация; 

 

совместная оценка; 

 

аудит; 

 

разрешение проблем. 

Организационные процессы

 

управление; 

 

усовершенствование; 

 

создание инфраструктуры; 

 

обучение. 

ОСНОВНЫЕ ПРОЦЕССЫ 

 

Процесс приобретения состоит из действий и задач заказчика: 
Действие - инициирование приобретения - включает задачи: 


background image

 

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

 

анализ требований к системе; 

 

принятие решения относительно приобретения; 

 

проверку 

наличия 

необходимой 

документации, 

гарантий, 

сертификатов, лицензий и поддержки в случае приобретения ПО; 

 

подготовку  и  утверждение  плана  приобретения,  включающего 

требования к системе, тип договора, ответственность сторон. 
Действие – подготовка заявочных  предложений. Заявочные предложения  

должны содержать: 

 

требования к системе; 

 

перечень программных продуктов; 

 

условия и соглашения; 

 

технические  ограничения  (например,  среда  функционирования 

системы). 

Заявочные предложения направляются выбранному поставщику. Поставщик – 

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

Действие - подготовка и корректировка договора - включает задачи: 

 

определение заказчиком процедуры выбора поставщика, включающей 

критерии оценки предложений возможных поставщиков; 

 

выбор конкретного поставщика на основе анализа предложений.; 

 

подготовку и заключение договора с поставщиком; 

 

внесение  изменений  (при  необходимости)  в  договор  в  процессе  его 

выполнения. 
Действие  -  надзор  за  деятельностью  поставщика  -  осуществляется  в 

соответствии с действиями, предусмотренными в процессах совместной оценки и 
аудита. 

 В  процессе  приемки  подготавливаются  и  выполняются  необходимые  тесты. 

Завершение  работ  по  договору  осуществляется  в  случае  удовлетворения  всех 
условий приемки.   

Процесс поставки охватывает действия и задачи, выполняемые поставщиком, 

который  снабжает  заказчика  программным  продуктом  или  услугой.  Данный 
процесс включает действия: 

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

 

принятие  решения  поставщиком  относительно  выполнения  работ 

своими силами или с привлечением субподрядчика; 

 

разработку  поставщиком  плана  управления  проектом,  содержащего 

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


background image

разработчиком, и включает следующие действия:  

Подготовительная  работа  начинается  с  выбора  модели  ЖЦ  ПО, 

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

 Анализ 

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

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

Проектирование архитектуры системы на высоком уровне заключается в 

определении  компонентов  ее  оборудования,  ПО  и  операций,  выполняемых 
эксплуатирующим  систему  персоналом.  Архитектура  системы  должна 
соответствовать  требованиям,  предъявляемым  к  системе,  а  также  принятым 
проектным стандартам и методам. 

Анализ  требований  к  ПО  предполагает    определение  следующих 

характеристик для каждого компонента ПО: 

 

функциональных 

возможностей, 

включая 

характеристики 

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

 

внешних интерфейсов; 

 

спецификаций надежности и безопасности; 

 

эргономических требований; 

 

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

 

требований к установке и приемке; 

 

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

 

требований к эксплуатации и сопровождению. 

Требования к ПО оцениваются исходя из критериев соответствия требованиям 

к системе, реализуемости и возможности проверки при тестировании. 

Проектирование  архитектуры  ПО  включает  задачи  (для  каждого 

компонента ПО): 

 

трансформацию  требований  к  ПО  в  архитектуру,  определяющую  на 

высоком уровне структуру ПО и состав ее компонентов; 

 

разработку и документирование программных интерфейсов ПО и баз 

данных; 

 

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

 

разработку  и  документирование  предварительных  требований  к 

тестам и планам интеграции ПО. 
Архитектура  компонентов  ПО  должна  соответствовать  требованиям, 

предъявляемым к ним, а также принятым проектным стандартам и методам. 

Детальное проектирование ПО включает следующие задачи:  

 

описание  компонентов и  интерфейсов  между  ними  на  более низком 

уровне, достаточном для их последующего  самостоятельного  кодирования и