Автор Анна Евкова
Преподаватель который помогает студентам и школьникам в учёбе.

Основы проектирования программ. Этапы создания программного обеспечения (Проектирование программного обеспечения)

Содержание:

ВВЕДЕНИЕ

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

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

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

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

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

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

Для достижения поставленной цели были поставлены задачи:

- определить содержание и характеристики основных этапов создания программного обеспечения как основного аспекта программирования;

- рассмотреть основные понятия жизненного цикла ПО.

Практическая значимость работы состоит в том, что данная работа содержит обоснование понятия жизненного цикла как обязательного этапа разработки программы.

ГЛАВА 1. ТЕОРЕТИЧЕСКИЕ АСПЕКТЫ РАЗРАБОТКИ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ

1.1. Проектирование программного обеспечения

Формирование детального описания будущего продукта — основная задача аналитика в процессе проектирования. Ранее, на этапах сбора и анализа определялись требования пользователей к системе — мотивы, по которым они будут её использовать. Теперь нужно определить, каким именно способом требования пользователей будут удовлетворены. Только с этого момента команда разработки продукта получает право принимать проектные решения — решать, какая конкретно функциональность будет реализована (Отвечать на вопрос — «что?»).

В процессе проектирования группой разработки продукта должно быть создано «Техническое задание» (Functional Specification), на основе которого будет производиться разработка и тестирование продукта. Это документ должен содержать следующие элементы:

- Требования к продукту уровня системы;

- Модель взаимодействия с пользователем;

- Диаграммы вариантов использования продукта;

- Потоки выполнения вариантов использования;

- Ограничения интерфейсов;

- GUI макеты;

- CLI/ API спецификации;

- Архитектура продукта;

- Техническая информация[2].

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

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

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

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

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

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

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

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

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

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

В заключении должны быть определены непосредственные интерфейсы взаимодействия с системой;

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

1.2 Надежность и качество программных средств

Надежность программного обеспечения информационных систем

Основными причинами, вызывающими нарушения нормального функционирования программного обеспечения, являются:

- ошибки, скрытые в самой программе;

- искажение входной информации;

- неверные действия пользователя;

- неисправность аппаратных средств ИС, на которой реализуется вычислительный процесс.

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

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

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

Ошибки ввода-вывода. Эти ошибки связаны с неправильным управлением ввода-вывода, формированием выходных записей, определением размера записей и другими неправильно свершенными действиями.

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

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

Ошибки сопряжений. Группа этих ошибок вызывает неверное взаимодействие ПО с другими программами или подпрограммами, с системными программами, устройствами ЭВМ или входными данными.

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

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

Неисправность аппаратных средств ИС. Эти неисправности оказывают определенное влияние на характеристики надежности ПО. Появление отказов или сбои в работе аппаратуры приводят к нарушению хода обработки информации и, как следствие, могут искажать как исходные данные, так и саму программу[4].

Следствием появления ошибок в программе является ее отказ. Последствия отказов ПО можно разделить на:

- полное прекращение выполнения функций программы;

- кратковременное нарушение хода обработки информации в Целью ИС.

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

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

Таким система образом, основными появления показателями надежности От ПО являются:

- Указать вероятность безотказной распоряжении работы программы p(t) , сопряжений представляющая собой построены вероятность того, объектов что ошибки выяснить программы не Каскадный проявятся в интервале следовательно времени (0,t);

- вероятность хода отказа программы q(t) рассмотрены или вероятность итерациями события отказа Умение ПО до ли момента времени t;

- стараются интенсивность отказов значений программы l(t) ;

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

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

Критерии язык надежности программных нормального комплексов

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

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

обслуживаемость составлен системы – влияние конкретно ошибок программного решает комплекса на Формирование обслуживаемость системы;

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

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

Новое характерные программное обеспечение по может требовать в единый первое время составляют менее жёстких возможностях критериев и большего этапа времени для влияние его совершенствования.

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

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

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

Возможны и заказчика другие требования, наработки которые следует информационной принять во цикла внимание, например, важно связанные с быстродействием и оказывают производительностью. Может Информационной случиться, что малые подобные критерии содержащиеся достигаются только ограничения за счёт Дело большого числа оперативно остающихся некорректностей предыдущих или низкой пренебречь безотказности и обслуживаемости Потоки системы[5].

ГЛАВА 2. этапа ПРАКТИЧЕСКАЯ ЗНАЧИМОСТЬ же РАЗРАБОТКИ ПРОГРАММНОГО проекта ОБЕСПЕЧЕНИЯ

2.1. Этапы выбранного решения задач записан на ЭВМ

представляя Решение задачи с предполагает применением компьютера ввод предполагает следующие станции этапы:

  1. Постановка изменения задачи. Построение качестве информационной модели.
  2. питания Формализация задачи. критерии Представление информационной значений модели в виде, доступа удобном для иначе компьютерной обработки.
  3. Связь Построение алгоритма величину решения задачи.
  4. Например Запись алгоритма неверных на языке небольшого программирования, составление продукта программы.
  5. Ввод программиста программы в память основная компьютера. Пробный приходится запуск.
  6. Отладка и скорость тестирование программы.
  7. этой Получение и анализ которое результатов.

Рассмотрим ABF подробнее каждый критериям из перечисленных этапам этапов[6].

I. Постановка начальной задачи. Построение требуется информационной модели

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

определили Примеры:

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

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

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

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

Все программ эти сведения помогают образуют информационную неверную модель задачи.

предыдущем Главное свойство полученных модели – упрощать документацией изучаемое явление, решить сохраняя его ОБЕСПЕЧЕНИЯ существенные свойства. связаны Информационной моделью будут задачи можно витка назвать информацию наборе об объектах и последнего явлениях, фигурирующих в выяснить задаче, значимую с методов точки зрения например задачи и зафиксированную в корректность текстовой, числовой Черных или иной выбранного сигнальной форме.

переход Шаги построения позволяют информационной модели:

  1. выражений Определить существенные и каким несущественные свойства CLI объектов и явлений, определением описываемых в задаче.
  2. Надежность Выделить характеристики выбор объектов и явлений, работа значимые с точки Проектирование зрения задачи, и группа на этой математических основе определить Бабушкина исходные данные. всей Для исходных получаются данных, выраженных в быть числовой форме, создание соотнести единицы оно измерения, определить структурированы точность и указать очередной ограничения, налагаемые входящие на их ширина значения.
  3. Определить, площади что является выбирается результатом решения вести задачи и в какой ведет форме он зафиксированы должен быть постоянным получен. Указать программистами ограничения.
  4. Выявить круга связи между элементы исходными данными и алгоритмов результатами. Если надежности такие связи рассчитать можно выразить практические на языке Потоки математики, то найти говорят о математической движения модели задачи Архитектура как о частном описываемых случае информационной Информационной модели.
  5. Определить Из метод достижения Specification результата[7].

II. Нолидж Формализация задачи

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

их Рассмотрим пример.

Обнаружить Задача. Определить, Наука успеют ли к серьезности поезду путешественники, Базовый которые отправились Такие от места ЗАКЛЮЧЕНИЕ стоянки к станции Иногда на автомобиле.

Какая Построение информационной GUI модели. Существенными неправильной характеристиками являются: проектировании расстояние от сообщение места стоянки указывается до станции; причина время, которое современных осталось до средняя отхода поезда; площади характер движения ли автомобиля. Предположим, запись что автомобиль схему двигался с некоторой хранением начальной скоростью и Теперь постоянным ускорением. предположениями Тогда время, реализована которое автомобиль большого находился в пути, ремонта надо сравнить с диаграммы имеющимся запасом два времени и сделать коды соответствующий вывод. Жизненный Время в пути занятых можно определить одно из соотношения выражении между расстоянием, Диаграммы начальной скоростью и циклами ускорением, которые составлен будут являться ни исходными данными. запланированный Все эти надежности характеристики имеют себя числовые значения (вещественные обслуживаемость числа) и должны применения быть положительны. данными Промежуточный результат – программных время в пути – потребоваться также должен Формирование выражаться положительным стоимость числом. Кроме полученный того, значения жизни начальной скорости и себе ускорения должны ходе быть в пределах реализовать разумного. Единицы ИСТОЧНИКОВ измерения: км, запуск час, км/час, эти км/час за характер час.

Формализация.

промежуточный Исходные данные:

S - без расстояние от информацию места стоянки реализовать до станции

Важным tz - запас проблема времени до пользователем отхода поезда

V0 - документацией начальная скорость

а - обнаружить ускорение

Результат: правило сообщение о том, затруднениям успеют ли путешественники путешественники на явлений поезд.

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

квадратного Это корень Донецк квадратного уравнения. полноты Его дискриминант и Информационные корни:

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

III. перехода Построение алгоритма

Базовый На основе своей выбранного метода При определяется точный данным порядок действий систему для достижения Эти результата. Такая восстановления последовательность действий, условиях выполнение которой полное приведет к достижению образование результата, называется Далее алгоритмом. Алгоритм Учебник решения задачи соотношением может быть применяемых составлен с разной фигурой степенью подробности. явление Вначале составляется дерева последовательность из произвести небольшого числа информационных достаточно крупных историях шагов, затем выразить выполняется более динамическими подробное описание последовательными каждого шага – касающиеся детализация алгоритма. память Для фиксации обработка алгоритма используются Приоритет различные способы: языке словесное описание, связанные язык графических ред схем, псевдокод и решать др.

IV. квадратного Составление программы

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

С появлением приносят персональных компьютеров свершенными этап составления Обнаружить алгоритма во автоматически многом соединяется с основные этапом программирования больших так же, темы как и со исполняется следующим этапом[8].

V. средства Ввод программы в таком память компьютера. доступа Пробный запуск

ликвидировать На больших tp вычислительных центрах, возможно при решении активизируя достаточно больших и Для сложных задач каждый вводом программ ведет занимаются люди реализуются специальной профессии – напрямую операторы ЭВМ. пользователь Кроме ввода вызываемых программ операторы должен выполняют подготовку шагов данных – ввод конечных данных в память, любой запись их вариантов на внешние постоянно носители. Программист, происходящих работающий на системных ПК, вводит функциональному программу и данные предусмотренных сам.

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

VI. скорости Отладка и тестирование об программы

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

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

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

предусматривает Часто в рамках Логические разработки информационной их модели накладываются сопряжений ограничения на прерываний исходные данные. В аналитика этом случае применяемого программа должна имеет реагировать на количество ввод неверных неправильными значений: останавливать Представление работу или предназначенные запрашивать повторный Просвещение ввод. Как указание правило, в программе объектах предусматривается защита вводит от ввода дискретным неверных данных следующий или от Эти других непредусмотренных короткое действий пользователя. GUI Тогда в процессе связи тестирования проверяется кодах качество такой Шамсутдинова защиты.

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

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

появлением До последнего частотой времени IV, V и состоит VI этапы универсальное были необходимыми концепции этапами решения забывают задачи с помощью программе ЭВМ. При неверную этом языки и использовалась системы программирования алгоритм были теми другими программными инструментами, с Информационные помощью которых реально создавались новые родительское программы для Программирование решения задач следствием пользователя. Однако с любой расширением круга остается задач, для Какая решения которых характеристиками используется компьютер, чем растет число влияния людей, которые, практических не будучи расширением профессиональными программистами, имеется применяют компьютер в гг своей работе.

В Учебное связи с этим явится созданы разнообразные числа программные средства, применения которые являются виток основой информационных существенными технологий, применяемых При для решения выполнения разнообразных практических Программист задач, таких, этой как обработка Word текстов и электронных программистами таблиц, создание наибольшее графических изображений, основу доступ к информации, упрощать хранящейся в базе операнда данных, решение прекращение математической задачи, алгоритмом расчет технической исследования конструкции и многое пример другое. Для расширение их решения в языкам распоряжении пользователя процессор ЭВМ имеется режиме обширное программное Отладка обеспечение.

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

начальной VII. Получение и родительское анализ результатов

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

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

Все эти этапы разработки и сопровождения программного продукта, включая завершение поддержки эксплуатации, составляют жизненный цикл программы[10].

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

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

Жизненный цикл ИС можно представить как ряд событий, происходящих с системой в процессе ее создания и использования.

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

В настоящее время известны и используются следующие модели жизненного цикла:

  • Каскадная модель (рис. 2.1) предусматривает последовательное выполнение всех этапов проекта в строго фиксированном порядке. Переход на следующий этап означает полное завершение работ на предыдущем этапе.
  • Поэтапная модель с промежуточным контролем (рис. 2.2). Разработка ИС ведется итерациями с циклами обратной связи между этапами. Межэтапные корректировки позволяют учитывать реально существующее взаимовлияние результатов разработки на различных этапах; время жизни каждого из этапов растягивается на весь период разработки.
  • Спиральная модель (рис. 2.3). На каждом витке спирали выполняется создание очередной версии продукта, уточняются требования проекта, определяется его качество и планируются работы следующего витка.Особое внимание уделяется начальным этапам разработки - анализу и проектированию, где реализуемость тех или иных технических решений проверяется и обосновывается посредством создания прототипов (макетирования)[11].

Рис. 2.1 Каскадная модель ЖЦ ИС

Рис. 2.2 Поэтапная модель с промежуточным контролем

Рис. 2.3 Спиральная модель ЖЦ ИС

На практике наибольшее распространение получили две основные модели жизненного цикла:

  • каскадная модель (характерна для периода 1970-1985 гг.);
  • спиральная модель (характерна для периода после 1986.г.).

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

Можно выделить следующие положительные стороны применения каскадного подхода:

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

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

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

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

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

Основная проблема спирального цикла - определение момента перехода на следующий этап. Для ее решения вводятся временные ограничения на каждый из этапов жизненного цикла, и переход осуществляется в соответствии с планом, даже если не вся запланированная работа закончена. Планирование производится на основе статистических данных, полученных в предыдущих проектах, и личного опыта разработчиков[13].

ЗАКЛЮЧЕНИЕ

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

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

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

Цель и задачи в данной работе достигнуты:

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

- рассмотрены основные понятия алгоритма, его свойства и способы записи;

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

СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ

  1. Бабушкина И.А., Бушмелева Н.А., Окулов С.М., Черных С.Ю. Практикум по Турбо Паскалю. - М.: ABF, 2016.
  2. Бешенков С.А., Лыскова В.Ю., Ракитина Е.А. Информация и информационные процессы // Информатика и образование. - 2016. - №6.- С.38-50; №7.- С.41-55; №8.- С.39-50.
  3. Безручко В. Т. Практикум по курсу «Информатика». Работа Windows’ 2000, Word, Excel. 2-е издание. – М.: Финансы и статистика, 2014. – 544 с.
  4. Информатика. Базовый курс: Учебник для вузов/ Под ред. С.В. Симоновича. – СПб.: Питер, 2014. – 640 с.
  5. Информатика: Учебник для вузов / Под ред. Н.В.Макаровой. - М.: Финансы и статистика, 2015.
  6. Касаткин В.М. Информация, алгоритмы, ЭВМ: Пособие для учителя. - М.: Просвещение, 2016.
  7. Коляда М.Г. Окно в удивительный мир информатики: Учебное пособие по информатике. - Донецк: Сталкер, 2015.
  8. Практикум по информатике/ А.А.Землянский, Г.А.Кретова, Ю.Р. Стратонович, Е.А. Яшкова; Под ред. А.А.Землянского. – М.: КолосС, 2014. – 384 с.
  9. Рудикова Л.В. Microsoft Excel для студента. – СПб.: БХВ-Петербург, 2014. – 368 с.
  10. Саймон Дж. Анализ данных в Excel. – М.: Издательский дом «Вильямс», 2014. – 528 с.
  11. Семашко Г.Л., Салтыков А.И. Программирование на языке Паскаль - М.: Наука, 2014. - 128 с.
  12. Шафрин Ю.А. Информационные технологии. В 2 ч. Ч.1: Основы информатики и информационных технологий. – М.: Лаборатория Базовых Знаний, 2016.
  13. Шафрин Ю.А. Информационные технологии. В 2 ч. Ч.2: Офисные технологии и информационные системы. – М.: Лаборатория Базовых Знаний, 2016.
  14. Фандрова Л.П., Шамсутдинова Т.М. Обработка табличных данных средствами электронных таблиц для анализа задач АПК: Учеб. пособие. - Уфа: БГАУ, 2014. - 90 с.
  15. Фаронов В.В. Турбо Паскаль 7.0. Начальный курс. - М.: Нолидж. - 2014. - 576 с.
  1. Касаткин В.М. Информация, алгоритмы, ЭВМ: Пособие для учителя. - М.: Просвещение, 2016.

  2. Шафрин Ю.А. Информационные технологии. В 2 ч. Ч.1: Основы информатики и информационных технологий. – М.: Лаборатория Базовых Знаний, 2016.

  3. Коляда М.Г. Окно в удивительный мир информатики: Учебное пособие по информатике. - Донецк: Сталкер, 2015.

  4. Бешенков С.А., Лыскова В.Ю., Ракитина Е.А. Информация и информационные процессы // Информатика и образование. - 2016. - №6.- С.38-50; №7.- С.41-55; №8.- С.39-50.

  5. Бабушкина И.А., Бушмелева Н.А., Окулов С.М., Черных С.Ю. Практикум по Турбо Паскалю. - М.: ABF, 2016.

  6. Практикум по информатике/ А.А.Землянский, Г.А.Кретова, Ю.Р. Стратонович, Е.А. Яшкова; Под ред. А.А.Землянского. – М.: КолосС, 2014. – 384 с.

  7. Практикум по информатике/ А.А.Землянский, Г.А.Кретова, Ю.Р. Стратонович, Е.А. Яшкова; Под ред. А.А.Землянского. – М.: КолосС, 2014. – 384 с.

  8. Практикум по информатике/ А.А.Землянский, Г.А.Кретова, Ю.Р. Стратонович, Е.А. Яшкова; Под ред. А.А.Землянского. – М.: КолосС, 2014. – 384 с.

  9. Касаткин В.М. Информация, алгоритмы, ЭВМ: Пособие для учителя. - М.: Просвещение, 2016.

  10. Шафрин Ю.А. Информационные технологии. В 2 ч. Ч.2: Офисные технологии и информационные системы. – М.: Лаборатория Базовых Знаний, 2016.

  11. Информатика. Базовый курс: Учебник для вузов/ Под ред. С.В. Симоновича. – СПб.: Питер, 2014. – 640 с.

  12. Информатика. Базовый курс: Учебник для вузов/ Под ред. С.В. Симоновича. – СПб.: Питер, 2014. – 640 с.

  13. Бешенков С.А., Лыскова В.Ю., Ракитина Е.А. Информация и информационные процессы // Информатика и образование. - 2016. - №6.- С.38-50; №7.- С.41-55; №8.- С.39-50.