Смекни!
smekni.com

Кондратьевские циклы и компьютерное моделирование экономических систем (стр. 4 из 5)

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

* программа работает, но не выдает всех запланированных результатов и не выходит на останов (происходит ее "зацикливание");

* программа выдает результаты и завершает свою работу, но они полностью или частично не совпадают с контрольными.

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

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

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

В настоящее время лидирующее положение на мировом рынке автоматизированных средств контроля качества ПО занимают три компании: Rational Software (27%), Intersolv (11%), Mercury Interactive (11%), тогда как на долю компании Microsoft приходится только 5% мирового рынка соответствующей продукции.

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

В качестве испытательных стендов при этом используются серверы и рабочие станции Hewlett-Packard, Sun, Compag, работающие под управлением Unix и Windows NT. На их платформах установлены СУБД Oracle, Microsoft SQL Server, Informix и Sybase. При этом клиентские места могут быть реализованы и на компьютерах отечественной сборки. В качестве основных инструментов тестирования работоспособности и производительности в Центре применяются программные продукты мирового лидера в этой сфере софтверного бизнеса - компании Rational Software Corp. Используемые передовые технологии обеспечивают автоматизированное тестирование приложений архитектуры клиент-сервер как в режиме стабильной, так и стрессовой нагрузки системы (эмулируя произвольное число ее пользователей).

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

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

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