Реферат: Понятие об алгоритмах

МОСКОВСКИЙ ЭКСТЕРНЫЙГУМАНИТАРНЫЙ УНИВЕРСИТЕТ

АКАДЕМИЯ ПЕДАГОГИКИ

ПЕДАГОГИЧЕСКИЙ ФАКУЛЬТЕТ

КАФЕДРАПСИХОЛОГИИ И ПСИХОЛОГИЧЕСКОГО КОНСУЛЬТИРОВАНИЯ

«Понятие об алгоритмах»

Авторизованный реферат по курсу

«Математика и информатика»

Фамилия,имя, отчество студента

Номерзачетной книжки       

Руководитель(преподаватель) проф. Мирзоян Д.В.

Рецензент                    ____________________________

З/О

МОСКВА — 2001год

Содержание

 TOC o «1-3» h z Содержание. PAGEREF _Toc530889324 h 2

Определениеалгоритма. PAGEREF _Toc530889325 h 3

Свойстваалгоритмов. PAGEREF _Toc530889326 h 4

Виды алгоритмов иих реализация. PAGEREF _Toc530889327 h 6

Методыизображение алгоритмов. PAGEREF _Toc530889328 h 8

Словесное описание алгоритма. PAGEREF _Toc530889329 h 8

Блок-схема алгоритма. PAGEREF _Toc530889330 h 8

Псевдокод. PAGEREF _Toc530889331 h 11

Программное представление алгоритма. PAGEREF _Toc530889332 h 12

Порядокразработки иерархической схемы реализации алгоритмов. PAGEREF _Toc530889333 h 13

Автоматизациядеятельности человека на основе алгоритмизации. PAGEREF _Toc530889334 h 15

Значениеалгоритмов при решении повседневных задач. PAGEREF _Toc530889335 h 18

Рольинформационных технологий сегодня. PAGEREF _Toc530889336 h 20

Литература:PAGEREF _Toc530889337 h 23

Определениеалгоритма

Слово «Алгоритм» происходит от algorithmi — латинскогонаписания имени аль-Хорезми, под которым в средневековой Европе зналивеличайшего математика из Хорезма (город в современном Узбекистане) Мухаммедабен Мусу, жившего в 783-850 гг. В своей книге «Об индийском счете» онсформулировал правила записи натуральных чисел с помощью арабских цифр иправила действий над ними столбиком. В дальнейшем алгоритмом стали называтьточное предписание, определяющее последовательность действий, обеспечивающуюполучение требуемого результата из исходных данных. Алгоритм может бытьпредназначен для выполнения его человеком или автоматическим устройством.Создание алгоритма, пусть даже самого простого, — процесс творческий. Он доступенисключительно живым существам, а долгое время считалось, что только человеку.Другое дело — реализация уже имеющегося алгоритма. Ее можно поручить субъектуили объекту, который не обязан вникать в существо дела, а возможно, и неспособен его понять. Такой субъект или объект принято называть формальнымисполнителем. Примером формального исполнителя может служить стиральнаямашина-автомат, которая неукоснительно исполняет предписанные ей действия, дажеесли вы забыли положить в нее порошок. Человек тоже может выступать в ролиформального исполнителя, но в первую очередь формальными исполнителями являютсяразличные автоматические устройства, и компьютер в том числе. Каждый алгоритмсоздается в расчете на вполне конкретного исполнителя. Те действия, которые можетсовершать исполнитель, называются его его допустимыми действиями. Совокупностьдопустимых действий образует систему команд исполнителя. Алгоритм долженсодержать только те действия, которые допустимы для данного исполнителя.

Свойства алгоритмов

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

Такими свойствами являются:

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

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

Результативность (конечность) — алгоритм долженприводить к решению задачи за конечное число шагов.

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

Правила выполнения арифметических операций илигеометрических построений представляют собой алгоритмы. При этом остается безответа вопрос, чем же отличается понятие алгоритма от таких понятий, как«метод», «способ», «правило». Можно даже встретить утверждение, что слова «алгоритм»,«способ», «правило» выражают одно и то же ( т.е. являются синонимами ), хотятакое утверждение, очевидно, противоречит “свойствам алгоритма”.

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

Первое правило – при построении алгоритма прежде всегонеобходимо задать мно-жество объектов, с которыми будет работать алгоритм.Формализованное ( закодирован-ное ) представление этих объектов носит названиеданных. Алгоритм приступает к работе с некоторым набором данных, которыеназываются входными, и в результате своей рабо-ты выдает данные, которыеназываются выходными. Таким образом, алгоритм пре-образует входные данные ввыходные.

Это правило позволяет сразу отделить алгоритмы от“методов” и “способов”. Пока мы не имеем формализованных входных данных, мы неможем построить алгоритм.

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

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

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

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

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

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

Виды алгоритмов и их реализация

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

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

Механические алгоритмы, или иначедетерминированные, жесткие (например алгоритм работы машины, двигателя и т.п.);

Гибкие алгоритмы, например стохастические, т.е.вероятностные и эвристические.

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

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

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

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

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

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

Цикл программы – последовательность команд (серия, телоцикла), которая может выполняться многократно (для новых исходных данных) доудовлетворения некоторого условия.

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

Методы изображение алгоритмов

На практике наиболее распространены следующие формыпредставления алгоритмов:

словесная (записи на естественном языке);

графическая (изображения из графических символов);

псевдокоды (полуформализованные описания алгоритмов наусловном алгоритмическом языке, включающие в себя как элементы языкапрограммирования, так и фразы естественного языка, общепринятые математическиеобозначения и др.);

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

Словесное описание алгоритма

Данный способ получил значительно меньшее распространениеиз-за его многословности и отсутствия наглядности.

Рассмотрим пример на алгоритме нахождение максимальногоиз двух значений:

Определим форматы переменных X, Y, M, где X иY – значения для сравнения, M – переменная для хранения максимального значения;

получим два значения чисел X и Y для сравнения;

сравним Xи Y.

если Xменьше Y, значитбольшее число Y.

Поместим в переменную M значение Y.

Если Xне меньше (больше) Y,значит большее число X.

Поместим в переменную M значение X.

Словесный способ не имеет широкого распространения последующим причинам:

такие описания строго не формализуемы;

страдают многословностью записей;

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

Блок-схема алгоритма

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

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

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

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

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

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

В таблице приведены наиболее часто употребляемые символы.

Название символа

Обозначение и пример заполнения

Пояснение

Процесс

<img src="/cache/referats/8332/image001.gif" v:shapes="_x0000_i1025">

Вычислительное действие или последовательность действий

Решение

<img src="/cache/referats/8332/image002.gif" v:shapes="_x0000_i1026">

Проверка условий

Модификация

<img src="/cache/referats/8332/image003.gif" v:shapes="_x0000_i1027">

Начало цикла

Предопределенный процесс

<img src="/cache/referats/8332/image004.gif" v:shapes="_x0000_i1028">

Вычисления по подпрограмме, стандартной подпрограмме

Ввод-вывод

<img src="/cache/referats/8332/image005.gif" v:shapes="_x0000_i1029">

Ввод-вывод в общем виде

Пуск-останов

<img src="/cache/referats/8332/image006.gif" v:shapes="_x0000_i1030">

Начало, конец алгоритма, вход и выход в подпрограмму

Документ

<img src="/cache/referats/8332/image007.gif" v:shapes="_x0000_i1031">

Вывод результатов на печать

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

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

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

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

<img src="/cache/referats/8332/image009.gif" v:shapes="_x0000_i1032">

Рисунок. Пример блок — схемы алгоритма нахождения максимального из двухзначений.

Псевдокод

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

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

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

Примером псевдокода является школьный алгоритмическийязык в русской нотации, описанный в учебнике А.Г. Кушниренко и др. «Основыинформатики и вычислительной техники».

Пример записи алгоритма на школьном алгоритмическомязыке:

алг Сумма квадратов (арг цел n, рез цел S)

дано | n > 0

надо | S = 1*1 + 2*2 + 3*3 +… + n*n

нач цел i

  ввод n;S:=0

  нц для iот 1 до n

    S:=S+i*i

  кц

  вывод «S= », S

кон

Программное представление алгоритма

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

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

Следовательно, язык для записи алгоритмов должен бытьформализован. Такой язык принято называть языком программирования, а записьалгоритма на этом языке — программой для компьютера.

Порядок разработки иерархической схемы реализацииалгоритмов

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

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

<img src="/cache/referats/8332/image010.gif" v:shapes="_x0000_s1125 _x0000_s1126 _x0000_s1127 _x0000_s1128">
1. Функциональный блок, который на блок-схеме изображается в видепрямоугольников с одним входом и одним выходом:

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

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

2. Условная конструкция. Этот блок включает проверкунекоторого логического условия (P), в зависимости от которого выполняется либоодин (S1), либо другой (S2) операторы:

P

S1

S2

<img src="/cache/referats/8332/image011.gif" v:shapes="_x0000_s1129 _x0000_s1130 _x0000_s1131 _x0000_s1132 _x0000_s1133 _x0000_s1134 _x0000_s1135 _x0000_s1136 _x0000_s1137 _x0000_s1138 _x0000_s1139 _x0000_s1140 _x0000_s1141 _x0000_s1142 _x0000_s1143 _x0000_s1144">

P

S

<img src="/cache/referats/8332/image012.gif" v:shapes="_x0000_s1145 _x0000_s1146 _x0000_s1147 _x0000_s1148 _x0000_s1149 _x0000_s1150 _x0000_s1151 _x0000_s1152 _x0000_s1153 _x0000_s1154 _x0000_s1155 _x0000_s1156 _x0000_s1157 _x0000_s1158 _x0000_s1159">
3. Блок обобщенного цикла. Этот блок обеспечивает многократное повторениевыполнения оператора S пока выполнено логическое условие P:

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

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

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

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

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

Автоматизация деятельности человека на основеалгоритмизации

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

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

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

Многие компании верят в то, что одна только автоматизацияприведет к улучшению финансово-экономической ситуации, и начинают усилия по реализацииинформационных систем непосредственно с автоматизации, пропуская критическиешаги понимания и упрощения своих бизнес процессов. Но нередко эти процессынастолько неупорядочены, что в общем создают впечатление хаоса на предприятии.Как известно, автоматизировать хаос далеко не просто, если невозможно. Поэтомупрежде чем создавать информационную систему следует пересмотреть системууправления в организации. Изменение бизнес процессов называют реинжинирингом(business processes reengineering). Так, для начала нужно упорядочить схемубизнес процессов и систему управления организации в целом:

определиться с организационной штатной структурой,

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

произвести выделение основных технологических потоков(процессов),

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

на основании созданных механизмов управлениясформировать технологию финансового анализа и управления деятельностьютехнологических потоков.

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

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

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

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

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

1.    Проведениеобследования с целью описания бизнес процессов организации.

2.    Разработкатехнического задания на систему автоматизации.

3.    Разработкатехнического проекта системы.

4.    Разработкасистемы (иногда называемая настройкой).

5.    Различныестадии и этапы внедрения, опытной и промышленной эксплуатации.

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

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

Значение алгоритмов при решении повседневных задач

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

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

Пусть надо запрограммировать запись на видеомагнитофоне — на 4 канале с 10.00 утра до 11.25. Это программа в голове у человека кодируетсяпримерно так:

ПОКА НЕ 10.00 — НИЧЕГО НЕ ДЕЛАТЬ

УСТАНОВИТЬ КАНАЛ НОМЕР 4

ВКЛЮЧИТЬ ЗАПИСЬ

ПОКА НЕ 11.25 — НИЧЕГО НЕ ДЕЛАТЬ

ВЫКЛЮЧИТЬ ЗАПИСЬ

Далее эта программа должна быть перекодирована на языквидеомагнитофона:

ВЫБРАТЬ СВОБОДНОЕ МЕСТО

УСТАНОВИТЬ «ДАТА ЗАПИСИ» = СЕГОДНЯ

УСТАНОВИТЬ «НАЧАЛО ЗАПИСИ» = 10:00

УСТАНОВИТЬ «ОКОНЧАНИЕ ЗАПИСИ» = 11:25

УСТАНОВИТЬ «НОМЕР ТЕЛЕКАНАЛА» = 4

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

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

Может ли человек, не прошедший никакого курса информатикив школе, разобраться с этим набором современных домашних помощников? Это оченьтрудный вопрос. На него нельзя ответить однозначно. Известно, что люди старшегопоколения сталкиваются с определенными трудностями при проведении дажеэлементарных действий по программированию современной домашней техники.Конечно, проще всего это объяснить старческим маразмом или отсутствиемсовременной техники в домах «пожилых родителей». Но это не так — программированию можно учить. А когда вокруг все техническое окружениестановится программируемым — нужно учить!

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

Программы из двух-трех шагов можно просто запомнить исчитать своими рефлексами: «хочу кушать — жму кнопку два, когда загоритсялампочка — можно кушать». Но жить, зазубривая все нужные программы, — неполучится. Программируемых приборов так много, инструкции к ним так объемны,требуемые программы так длинны, запоминать команды на языках приборов так лень.Для телевизора, например, нельзя благоприобрести рефлекс: НАЖАТЬ КНОПКУ ОДИН,ДОКРУТИТЬ РУЧКУ ДВА, ПОВТОРИТЬ ВСЕ СНАЧАЛА ДЛЯ КАНАЛОВ 1-32, ЕСЛИ ТЕЛЕКАНАЛЫУЖЕ НАСТРОЕНЫ, НИЧЕГО НЕ ДЕЛАТЬ. Как минимум в данной инструкции нужнопонимать, как менять номера каналов.

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

Роль информационных технологий сегодня

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

еще рефераты
Еще работы по теории систем управления