рефераты конспекты курсовые дипломные лекции шпоры

Реферат Курсовая Конспект

CASE - системы

Работа сделанна в 2001 году

CASE - системы - Реферат, раздел Программирование, - 2001 год - Эволюция языков программирования Case - Системы. Представление О Case - Комплексах Связано В Нашем Сознании С ...

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

Мощный толчок CASE - средства получили в пору внедрения объекто - ориентированной технологии разработки ПО, когда старого, проверенного временем метода проектирования сверху вниз стало явно недостаточно. К тому же появились технологии объектного моделирования Booch, OMT, UML, сами по себе весьма сложные для привязки к языкам программирования, чтобы оперировать ими вручную.

Сегодня лидирующей в мире CASE-системой считается Rational Rose корпорации Rational Software. Система Rational Rose нацелена на создание модулей с использованием языка Unified Modeling Language UML. Кстати, UML стал стандартным языком объектно-ориентированно разработки не без подачи Rational Software, которая не только выпускает программные продукты, где используются UML, но и активно принимает участие в организации Object Management Group OMG, занятой созданием и обновлением спецификаций языка UML, технологии распределенных вычислений CORBA и т.д. в компании Rational работают три создателя и евангелиста объектно-ориентированной разработки и языка UML. Это Гради Буч, Айвар Джекобсон и Джим Рамбаух. Последняя версия CASE-системы компании Rational Software Rational Rose 98 уже вовсю применяется для создания коммерческого ПО и поддерживает популярные языки программирования Java, Cu, Смолток, Ада, Visual Basic, Power Builder и Forte. Кроме того, пакет Rose 98 способен генерировать описания на языках Interface Definition Language IDL для приложений CORBA и Data Definition Language DDL для приложений доступа к базам данных, в том числе и Oracle 8. Разумеется, поддержка того или иного языка программирования зависит от того, о какой редакции пакета Rational Rose 98 идет речь. К примеру, нельзя требовать многого от самого простого варианта пакета - Rose 98 Modeler Edition.

Зато Rose 98 Enterprise Edition оснащен от души. Нельзя не отметить, что система Rose - признанный лидер среди средств визуального моделирования, и, мспользуя ее, можно интерактивно разрабатывать архитектуру создаваемого приложения, генерировать его исходные тексты и параллельно работать над документированием разрабатываемой системы.

С помощью Rational Rose можно создавать новые модели на базе обратного разбора двоичных com модулей или исходные тексты прикладных программ и библиотек классов.

Преимущества от применения Rational Rose 98 значительны 1. Сокращение цикла разработки приложения. 2. Увеличение продуктивности работы программистов. 3. Улучшение потребительских качеств создаваемых программ за счет ориентации на пользователей и бизнес. 4. Способность вести большие проекты и группы проектов. 5. Возможность повторного использования уже созданного ПО за счет упора на разбор их архитектуры и компонентов. 6. Язык UML служит универсальным мостиком между разработчиками из разных отделов. 5. Технологическая схема решения задач.

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

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

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

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

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

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

Но таких специалистов не много, так как овладеть двумя совершенно разными профессиями - дело нелегкое. И, как правило, в одно из них человек остается все-таки полупрофессионалом. Есть ещ один путь приобщения специалиста к современной вычислительной технике - это повышение возможностей самих ЭВМ, повышение уровня их интеллекта. Программиста можно убрать из технологической цепи решения задачи лишь тогда, когда в самой ЭВМ появиться автоматический программист, который будет взаимодействовать с пользователем, и помогать ему составлять программы. Так возникает идея ЭВМ нового - пятого поколения.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

При этом каждая гипотеза может оцениваться некоторым весом достоверности. Например, ответ может иметь вид Данный объект относится к периоду А с достоверностью 15 и к периоду В с достоверностью 85. Если при дальнейших раскопках будет обнаружен другой предмет, то он датируется периодом В как наиболее вероятным. Для каждого вновь найденного предмета могут быть получены вероятности датировки, а затем все результаты могут быть проанализированы совместно. Информация в базе знаний не хранится, как зерно в элеваторе, просто сваленное в бункер.

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

Всеми этими процедурами заведует система поддержки базы знаний. Система объяснения - важнейшая отличительная компонента экспертных систем. К ней пользователь может обращаться с вопросами типа Что есть Х, Как получен У, Почему получен У, а не Z и Зачем нужен Х. За каждым таким вопросом скрывается свой комплекс процедур, выполнение которых позволяет дать пользователю интересующий его ответ. Вопрос Что есть Х требует выдачи пользователю всей информации о Х, которой система располагает, что может потребовать весьма непростых поисковых процедур в базе знаний. Эти процедуры реализуются в решателе, так как во многих случаях для ответа на вопрос пользователя надо из исходных фактов, хранящихся в базе, получить логическим путем новые производные факты.

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

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

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

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

– Конец работы –

Эта тема принадлежит разделу:

Эволюция языков программирования

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

Если Вам нужно дополнительный материал на эту тему, или Вы не нашли то, что искали, рекомендуем воспользоваться поиском по нашей базе работ: CASE - системы

Что будем делать с полученным материалом:

Если этот материал оказался полезным ля Вас, Вы можете сохранить его на свою страничку в социальных сетях:

Все темы данного раздела:

Описание ЯП
Описание ЯП. ЯзыкОсновное использованиеОписаниеАда В оборонеВысокого уровняАссемблерРаботы, требующие детального контроля за аппаратным обеспечением, быстрого исполнения и программ малого размераБы

Хотите получать на электронную почту самые свежие новости?
Education Insider Sample
Подпишитесь на Нашу рассылку
Наша политика приватности обеспечивает 100% безопасность и анонимность Ваших E-Mail
Реклама
Соответствующий теме материал
  • Похожее
  • Популярное
  • Облако тегов
  • Здесь
  • Временно
  • Пусто
Теги