Функциональная архитектура

На этапе проектирования система разбивается на компоненты, каждый из которых должен выполнять определенную функцию. Целью проектирования является преобразование спецификации в систему компонентов, которые могут быть реализованы либо непосредственно, либо после повторения процесса проектирования на следующем, более низком, уровне. Проектирование САПР, как и любое другое проектирование (см. гл. 3), всегда является рекурсивным процессом. В результате составляются спецификации компонентов системы, которые в свою очередь пройдут через соответствующий этап проектирования. Такая схема типична для рекурсивного характера проектирования. Для каждого подлежащего реализации модуля должны быть описаны следующие моменты: интерфейс (процедура или макрооператоры, входные или выходные данные); среда обработки (состояние процесса, который может считаться не требующим доказательств, или должен быть проверен); среда программирования (язык программирования, ресурсы и т. д.); функция, которую должен выполнять модуль. Как указывалось в, разработка программного обеспечения отличается от обычной разработки тем, что здесь нет четкой границы между проектированием и изготовлением. Результатом проектирования программы является программа, которую посредством формальных действий можно привести к виду, пригодному для компиляции. Наиболее существенными этапами реализации программы являются программирование и тестирование. Объем тестирования, являющегося непроизводительным этапом, должен быть сведен к минимуму. Затраты на тестирование вполне могут составить от 20 до 40 % всех затрат на разработку программы. (В затраты на разработку программы не включены затраты на сопровождение или дальнейшее ее совершенствование после внедрения) Следовательно, применительно к разработке САПР основной целью «технологии программирования» является исключение ошибок, а не их поиск. В соответствии с следует рассмотреть два основных типа ошибок: ошибки реализации — ошибки, возникающие в процессе конструирования, составления спецификации, при проектировании и при запросе ресурсов; логические ошибки — отсутствие некоторых сегментов в потоке управления; ошибочные условия; ошибочные функции или отсутствие некоторых из них.

Releated Post

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

Этот сайт использует Akismet для борьбы со спамом. Узнайте как обрабатываются ваши данные комментариев.