![]() | |
![]() |
Электронные компоненты Мануалы предисловие Автор книги преследует несколько целей: 1. Дать широкой читательской аудитории построенное по ние-ходящему принципу вводное описание средств языка Ада, ориентированных на проектирование систем. 2. Показать и проиллюстрировать конкретными примерами полезную в практическом смысле графическую символику проектов, выполняемых средствами языка Ада, с тем чтобы она могла использоваться на различных уровнях системного проектирования: • для концептуального представления принципов организации систем; • как средство взаимного общения разработчиков в процессе неформального представления проектных решений и выбора подходов к проектированию; • как возможную основу средств автоматизированного проектирования систем, для описания и реализации которых применяется язык Ада. 3. Вооружить разработчиков систем, не обладающих большим практическим опытом, определенным «мировоззрением» в этой области, конкретными стратегическими принципами, тактическими приемами и методами эффективного выполнения процесса проектирования в рамках концепции жизненного цикла. Эта книга должна оказаться особенно полезной тем относи тельно неопытным разработчикам, которые уже сталкиваются или столкнутся в скором времени с проблемой создания систем на основе микропроцессоров. Она даст им в руки необходимые инструментальные средства, методы и представления, которые способны обеспечить коллективу, работающему над общим проектом, должный уровень качества разработок. Последние доч стижения в области микропроцессорной техники и технологии, имеющие взрывной характер, привели к резкому удешевлению изделий микроэлектроники и вызвали острую нехватку опытных специалистов, умеющих конструировать микропроцессорные си* стемы и обладающих необходимыми для этого навыками. Си* туация складывается таким образом, что ответственность за создание подобных систем ложится на плечи неопытных инже? неров-электриков и специалистов по вычислительной технике, а они не имеют надлежащей профессиональной подготовки или достаточных знаний для того, чтобы сразу принимать правильные решения. Участниками проектов систем становятся специалисты в совсем иных областях, хотя и имеющие большой практический опыт работы. Эта книга призвана помочь им в новой сфере деятельности. Большая часть книги доступна каждому, кто хотя бы немного знаком с вычислительными машинами и умеет программировать на таких языках, как Паскаль, ПЛ/М или Си. При этом знакомство с вычислительной техникой предполагает не столько использование ЭВМ как средства реализации прикладных программ, написанных на языках высокого уровня, сколько умение применять ЭВМ в качестве структурных компонентов создаваемых систем. Книга доступна студентам второго и третьего года обучения, специализирующимся в области вычислительной техники и конструирования вычислительных систем, а также большинству студентов третьего и четвертого курсов электротехнических специальностей с факультативным преподаванием основ вычислительной техники или специализирующихся в области обработки данных. Аспиранты и все те, для кого разработка систем является частью их профессиональной деятельности, тоже найдут эту книгу полезной для себя, так как она поможет им приобрести недостающие знания в результате освоения развитых в книге единых в концептуальном плане подходов к решению задач, с которыми этой группе читателей уже приходилось сталкиваться на практике. Особый интерес для них должны представить помещенные в конце книги практические примеры применения излагаемых методов проектирования систем. Можно сказать, что эта книга нацелена на будущее усовершенствование методологии создания систем, так как в ней используется новый язык программирования Ада, предоставляющий широкий набор абстрактных конструкций и инструментальных средств для описания модульных систем. Книга знакомит читателя и с самим языком Ада, однако излагаемый в ней материал отнюдь не требует детальных знаний этого языка, которые легче будет приобрести уже после прочтения этой книги. Такой подход к изучению языка Ада может оказаться даже более эффективным, поскольку в данном случае формированию навыков программирования будет предшествовать развитие необходимых концептуальных представлений. Язык Ада рассматривается по большей части как некоторая версия Паскаля, дополненная базовыми концепциями пакетов и задач, а новые понятия, присущие именно языку Ада, вводятся всюду посте- пенно и сопровождаются необходимыми пояснениями. Благодаря этому при чтении книги нет необходимости обращаться к какой-либо другой литературе. Программы на языке Ада могут использоваться просто в качестве спецификаций целевых систем, не обязательно реализуемых в среде Ада-программ, и поэтому излагаемые в книге методы никак не связаны с использованием языка Ада как средства реализации систем. Разумеется, в мире программного обеспечения этот язык в конечном итоге может бказаться доминирующим благодаря той ключевой роли, которая отводится ему в настоящее время министерством обороны США. Кроме того, существует по крайней мере одна фирма - изготовитель микропроцессоров, которая обеспечивает аппаратную поддержку языка Ада на уровне кристаллов. Однако целесообразность использования его в качестве языка проектирова-йия систем определяется отнюдь не «модой», а тем фактом, что в языке Ада имеются мощные выразительные средства, позволяющие описывать модульные системы с параллельными про-йессами в терминах, точно соответствующих процедурам конструирования систем. Богатые выразительные средства языка Ада при неумелом их использовании таят в себе для непосвященных разработчиков множество «подводных камней», в связи с чем использова-йие языка Ада в книге сознательно ограничено. Это сделано, во-первых, с целью обеспечения доступности материала книги широкому кругу читателей и, во-вторых, с намерением вооружить их такими принципами проектирования систем, которые позволили бы избежать большинства скрытых опасностей, свойственных языку Ада. Автор постоянно стремится к максимальному упрощению изложения рассматриваемых в книге концепций в соответствии с известным «кисс-принципом»). Подход к процессу проектирования, развиваемый автором, был подсказан работами Э. Иодана, Л. Константина и Дж. Майерса в области структурного проектирования. Что же касается графической символики для систем, проектируемых средствами языка Ада, то она возникла естественным образом как результат попыток применения и доходчивого объяснения понятий этого языка. В таких случаях всегда оказывалось, что обсуждение удобнее всего было проводить на основе рисунков, изображаемых на доске или бумаге. Детали предложенной символики разработаны автором этой книги, но основной принцип условных обозначений подсказан в какой-то мере нотацией, которая используется фирмой Intel для описа- ) Термин «кисс-принцип» (KlSS-principle) представляет собой аббревиатуру английских слов Keep It Simple Stupid (Делай проще, глупец!), - Прим ред. 0 [ 1 ] 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 изготовление вывесок |