5.1. ОБЩИЕ СВЕДЕНИЯ О ПРОЕКТНОЙ ПРОЦЕДУРЕ
5.1. ОБЩИЕ СВЕДЕНИЯ О ПРОЕКТНОЙ ПРОЦЕДУРЕ
Развитие отдельных направлений программирования, филологии, психологии, теории проектирования и искусственного интеллекта подошло к точке, когда ощущается настоятельная необходимость интеграции накопленных результатов. Попытка такой интеграции воплотилась в излагаемой далее проектной процедуре (методике), которая может быть применена для составления функциональных описаний (структурированных описаний процессов). Инструкция пользования каким-либо устройством, инструкция вообще или алгоритм программы являются описаниями функционирования. Описания функционирования могут быть как структурированными в соответствии с излагаемым подходом к структурированию, так и неструктурированными. Таким образом, в данной главе рассматривается именно проектная процедура (методика) разработки функциональных описаний функционирования систем, отличающаяся использованием особого структурирования.
Программисты могут применять проектную процедуру при написании:
— документальных описаний вычислительных и иных алгоритмов, предназначенных для тиражирования;
— инструкций работы пользователя в системе организации (учреждения) с использованием ЭВМ и разрабатываемой программы;
— описаний внешнего функционирования программы в форме сценария работы программы (такие описания предшествуют внутреннему проектированию программы);
— внутренних спецификаций функционирования программы (метода решения задачи, алгоритма программы в целом);
— исходных текстов модулей программы при использовании технологии структурного программирования;
— кода методов объектов при использовании технологии объектно-ориентированного программирования;
— текстов помощи по использованию программы.
Умение применять проектную процедуру полезно и непрограммистам. При помощи данной проектной процедуры можно составлять:
• короткие и понятные описания любых процессов;
• приказы и распоряжения на выполнение работ;
• инструкции пользования изделиями;
• описания принципов функционирования изделий;
• описания бизнес-процессов;
• бухгалтерские инструкции по проведению расчетов;
• тексты должностных инструкций организационного обеспечения.
Данный список не является исчерпывающим и возможны все новые применения.
Более подробно актуальность разработки функциональных описаний вне сферы программирования характеризуется следующими примерами.
"Копать траншею от забора до обеда" — неудачное распоряжение (недостаточно полно выявлена и указана входная и выходная информация, а также отсутствует цель).
Предположим, что в конце июня некий отечественный бухгалтер обратился с просьбой об отпуске. Главный бухгалтер, вероятнее всего, даст примерно такой ответ: "Не дам никакого отпуска до сдачи полугодового отчета". Представим себе, что имеется набор ежедневных детально исчерпывающих инструкций по работе данного бухгалтера. Набор таких инструкций называется описанием бизнес-процессов. В этом случае да и в случае болезни работа бухгалтера передается резервному специалисту. Предположим, что сверху спущен какой-то документ, согласно которому надо представить какие-то ранее не рассчитываемые данные. Скорее всего, данный документ представляет собой запутанную инструкцию, допускающую разночтение или даже содержащую ошибки для применения в некоторых особых случаях. Источником таких ошибок может являться не злой умысел составителя инструкции, а неспособность ее составителя охватить все особые случаи в силу огромного (астрономического!) количества путей выполнения инструкции, разработанной по традиционной операционной методике. Теперь главный бухгалтер начинает обзванивать коллег и инстанции в надежде получить разъяснения. Пусть он разобрался в инструкции. Теперь перед ним встает задача по отдаче распоряжений работникам бухгалтерии как работать при изменившихся условиях. Многие бухгалтеры, не зная основ современной алгоритмизации, скорее всего, обратятся к хорошо оплачиваемым программистам для избежания затруднений в отдаче распоряжений.
В отличие от бухгалтера, документально фиксирующего все свои действия, прораб на стройке свои распоряжения по производству работ готовит и отдает устно. Это объясняется традиционным уходом от ответственности в случае травматизма рабочих. Устная подготовка распоряжений приводит к таким ошибкам, как что-то не удается разместить в уже построенной части здания. Таким образом, строительство ведется циклическим процессом: строить — ломать — строить и т. д., что ведет к удорожанию строительства.
Продажа и даже перепродажа готовых технических изделий по действующему законодательству предполагает наличие инструкции пользования изделия на русском языке. Однако часто оказывается, что инженеры составляют такие длинные и запутанные инструкции пользования объектами техники, что потребители начинают эксплуатацию изделия с недопустимых действий, которые могут привести изделие даже к неремонтно-пригодному состоянию.
Помимо апробации в области программирования авторы учебника провели апробацию изложенных в нем методик при обучении непрограммирующих специальностей. Оказалось, что обучение методике разработки функциональных описаний (на примерах составления инструкций вообще, описаний бизнес-процессов) вполне доступно студентам второго курса специальности бухгалтерский учет, даже если они не изучали эту методику в курсе программирования. Более того, половина учеников девятого класса обычной школы вполне способна полностью освоить данный материал. Следует отметить такой факт: до обучения лишь несколько учеников класса реально могли написать план, а потом сочинение. После обучения практически три четверти обучаемых могли написать план, а затем его развить в сочинение, т. е. школьники реально освоили элементы дедуктивного мышления! Затраты на освоение материала составили 8 ч лекционных и 16 ч практических занятий. Таким образом, у обучаемых всего за 24 ч учебных занятий удается развить первичные навыки дедуктивного мышления и владение начальными методами системного подхода.
Написание технической документации — особый жанр писательского искусства. В настоящее время в развитых странах появляется новая специальность Technical Writer — технический писатель. Вероятно, одна из сфер применения проектной процедуры заключается в ее использовании такими специалистами.
Хорошим функциональным описанием является описание безошибочное, однозначное для читателя, краткое, суть которого понимается быстро. Согласно проектной процедуре хорошее функциональное описание составляется от общего к частному с использованием особых конструкций предложений — типовых элементов (типовых структур или просто структур), составляющих семантический скелет будущих инструкций.
Обычно человек мыслит предложениями естественного языка. Если научиться упорядочивать мысли в процессе мышления, то можно научиться получать алгоритмы и иные функциональные описания со скоростью не только не меньшей, чем до обучения, но даже большей. Опытный программист пишет текст на языке программирования со скоростью, с которой он думает, а в случае простых алгоритмов — со скоростью набора текста на клавиатуре. Инструкции, предназначенные для исполнения людьми, могут содержать как алгоритмы, так и эвроритмы.
Одно из преимуществ применения проектной процедуры заключается в снижении умственной усталости программиста или составителя инструкций за счет исключения необходимости неоднократного повторения мыслительного процесса для получения одной и той же забываемой идеи.
Главное преимущество состоит в однозначности соответствия функционального описания замыслу, что достигается исчерпывающим тестированием. При операционном подходе к составлению описаний функционирования исчерпывающее тестирование принципиально невозможно в силу сложности решаемой задачи (требуется сразу оттестировать большую и сложную структуру — всю программу или инструкцию).
Еще одно преимущество состоит в получении самодокументированных текстов программ. Самодокументированные программы получаются путем применения особого стандартизированного способа оформления текстов программ с использования комментариев и стандартных типовых структур кодирования.
Использование стандартных типовых структур предполагает особую декомпозицию алгоритма программы или эвроритма инструкции по принципу "от общего к частному", что требует от разработчика владения дедуктивным мышлением.
Более 800 000 книг и аудиокниг! 📚
Получи 2 месяца Литрес Подписки в подарок и наслаждайся неограниченным чтением
ПОЛУЧИТЬ ПОДАРОКЧитайте также
5.3 Общие сведения о «ГИМП»
5.3 Общие сведения о «ГИМП» GNU Image Manipulation Program (Программа ГНУ для манипуляции изображениями), или сокращенно GIMP – потомок курсового проекта двух студентов, Питера Маттаса и Спенсера Кимболла (1985-86 гг.).За восемь лет и при участии десятков программистов «ГИМП» вырос в один из
Общие сведения
Общие сведения Для чего же оно вообще нужно, это дистанционное обучение? Кому оно может понадобиться? Оказывается, многим.– Наибольшее количество удаленно обучающихся составляют пользователи в возрасте от 25 до 30 лет. Для них обучение в классическом виде невозможно из-за
Общие сведения
Общие сведения По своей сути группы новостей (телеконференции) представляют собой обмен письмами не с одним пользователем, а сразу с группой с помощью специальной программы. Впрочем, мы ничего специального искать не будем, так как работать с группами новостей нам поможет
Глава 1 Общие сведения
Глава 1 Общие сведения 1.1. Гонки на выживание: Windows XP, Windows Vista и Windows 71.2. Новое в Windows 71.3. Версии операционной системы1.4. Системные требования1.5. Проверка на совместимостьПоявления новой операционной системы Windows 7, автором которой является корпорация Microsoft, ждали многие,
1.1. Общие сведения об оформлении
1.1. Общие сведения об оформлении Объем работы обычно либо оговорен руководителем, либо задан соответствующими методическими указаниями. Чаще всего реферат не должен превышать 15–20 страниц, курсовая работа – 25–30, а дипломная – 90-100.Документ оформляют в текстовом
5.3 Общие сведения о «ГИМП»
5.3 Общие сведения о «ГИМП» GNU Image Manipulation Program (Программа ГНУ для манипуляции изображениями), или сокращенно GIMP — потомок курсового проекта двух студентов, Питера Маттаса и Спенсера Кимболла (1985-86 гг.).За восемь лет и при участии десятков программистов «ГИМП» вырос в один из
Общие сведения
Общие сведения Одним из достоинств модуля buZZ.Pro является возможность использования нескольких фильтров одновременно и гибкое управление их настройками. При выборе строки плагина из меню Filters (Фильтры) появляется так называемый стек – окно Custom (Настройка), в котором
2.1.2. Общие сведения о сокетах
2.1.2. Общие сведения о сокетах Сокетом (от англ. socket — гнездо, розетка) называется специальный объект, создаваемый для отправки и получения данных через сеть. Отметим, что под термином "объект" в данном случае подразумевается не объект в терминах объектно-ориентированного
1. Общие сведения о Windows
1. Общие сведения о Windows Прежде чем приступать к установке Windows XP, вспомним, что подразумевается под словосочетанием «операционная система», что такое файл и папка. Не стоит пугаться умных слов, которые будут встречаться ниже. Если вы до конца не сможете понять разницу
Общие сведения об освещении
Общие сведения об освещении Освещение интерьера – не такая простая задача, поскольку в реальном мире источники света работают совсем не так, как в виртуальном. Например, в 3ds Max свет по умолчанию не отражается от поверхностей объектов, то есть если в реальной жизни
7.1. Общие сведения о динамике в 3ds Max
7.1. Общие сведения о динамике в 3ds Max Когда мы говорим о динамике, то в первую очередь представляем себе движущиеся объекты. Наверное, многие из вас помнят из школьной программы, что динамика является одним из разделов механики и изучает движение различных объектов под
Общие сведения
Общие сведения Главная страница, посвященная .NET Compact Framework, находится по адресу http://msdn.microsoft.com/netframework/programming/netcf/default.aspx. Там можно найти все последние новости о рассматриваемой технологии, обновления программ, ссылки на другие полезные сайты, примеры.Технология .NET Compact
Общие сведения
Общие сведения Во-первых, рассмотрим ключевые понятия. Архивация (запаковка) – это сжатие файлов. Для окончательного усваивания этого понятия представьте себе поролоновую губку – она с виду большая, но ее можно сжать и запихнуть в емкость гораздо меньшего объема. Архив
Общие сведения
Общие сведения Система PascalABC.NET PascalABC.NET – это система программирования и язык Pascal нового поколения для платформы Microsoft .NET. Язык PascalABC.NET содержит все основные элементы современных языков программирования: модули, классы, перегрузку операций, интерфейсы, исключения,
Общие сведения
Общие сведения Электронная почта (E-mail) – один из первых сервисов Интернета, который до сих пор является самым популярным.Пользователи электронной почты могут обмениваться между собой письмами. Каждое письмо пользователь создает на своем компьютере, после чего
Общие сведения
Общие сведения Макрос – это программа, написанная на некотором языке, которая используется обычно для автоматизации определенных процессов внутри приложений. В данном случае разговор пойдет о языках Visual Basic for Applications (VBA) и WordBasic (WB), которые Microsoft использует в своих