Скачать 427.97 Kb.
|
Министерство образования и науки Российской Федерации Федеральное агентство по образованию Государственное общеобразовательное учреждение Высшего профессионального образования «УдГУ» Факультет информационных технологий и вычислительной техники Кафедра информатики и математики Реферат по курсу «Проектирование Информационных систем» на тему: «UML: история развития, современное состояние и перспективы» Выполнил: студентка гр. 38-41 Иванова М.С. Проверил: Вотинцев А.А. Ижевск 2008 Содержание. Введение…………………………………………………………………….………………..3
Список литературы………………………………………………………………………....33 Введение. Унифицированный язык моделирования (Unified Modeling Language, UML) является одним из наиболее эффективных средств для решения проблемы моделирования. Это язык для визуализации, специфицирования, конструирования и документирования систем, в которых большая роль принадлежит, программному обеспечению. С помощью UML можно разработать детальный план создаваемой системы, содержащий не только ее концептуальные элементы, такие как системные функции и бизнес-процессы, но и конкретные особенности, например классы, написанные на специальных языках программирования, схемы баз данных и программные компоненты многократного использования. При проектировании таких систем ПО представляется в виде взаимодействующих между собой блоков, обладающих собственными данными и поведением. Например, при создании системы, поддерживающей расписание, может быть использован блок, поставляющий значения даты и времени, то есть совмещающий в себе поведение и данные. В этом, собственно, и состоит радикальное отличие от функционального программирования, где поведением обладали только программные модули, а данные находились во внешних по отношению к ним файлах. Дуализм новой технологии программирования стал причиной появления качественно иных способов моделирования; одним из них и стал UML. Данный реферат посвящен истории развития языка UML, его современному состоянию и перспективам дальнейшего развития и использования. Помимо этого в реферате представлены краткое описание основных релизов унифицированного языка моделирования, их отличительные особенности и недостатки.
Объектно-ориентированные языки моделирования появились в период с середины 70-х до конца 80-х годов, когда исследователи, поставленные перед необходимостью учитывать новые возможности объектно-ориентированных языков программирования и требования, предъявляемые все более сложными приложениями, вынуждены были начать разработку различных альтернативных подходов к анализу и проектированию. С 1989 по 1994 год число различных объектно-ориентированных методов возросло с десяти более чем до пятидесяти. Тем не менее многие пользователи испытывали затруднения при выборе языка моделирования, который бы полностью соответствовал их потребностям, что послужило причиной так называемой "войны методов". В результате этих войн появилось новое поколение методов, среди которых особое значение приобрели языки Booch, созданный Грейди Бучем (Grady Booch), OOSE (Object-Oriented Software Engineering), разработанный Айваром Джекобсоном (Ivar Jacobson) и ОМТ (Object Modeling Technique), автором которого является Джеймс Рамбо (James Rumbaugh). Кроме того, следует упомянуть языки Fusion, Шлаера-Меллора (Shlaer-Mellor) и Коада-Йордона (Coad-Yourdon). Каждый из этих методов можно считать вполне целостным и законченным, хотя любой из них имеет не только сильные, но и слабые стороны. Выразительные возможности метода Буча особенно важны на этапах проектирования и конструирования модели. OOSE великолепно приспособлен для анализа и формулирования требований, а также для высокоуровневого проектирования. ОМТ-2 оказался особенно полезным для анализа и разработки информационных систем, ориентированных на обработку больших объемов данных. Критическая масса новых идей начала формироваться к середине 90-х годов, когда Грейди Буч (компания Rational Software Corporation), Айвар Джекобсон (Objectory) и Джеймс Рамбо (General Electric) предприняли попытку объединить свои методы, уже получившие мировое признание как наиболее перспективные в данной области. Являясь основными авторами языков Booch, OOSE и ОМТ, партнеры попытались создать новый, унифицированный язык моделирования и руководствовались при этом тремя соображениями. Во-первых, все три метода, независимо от желания разработчиков, уже развивались во встречном направлении. Разумно было продолжать эту эволюцию вместе, а не по отдельности, что помогло бы в будущем устранить нежелательные различия и, как следствие, неудобства для пользователей. Во-вторых, унифицировав методы, проще было привнести стабильность на рынок инструментов объектно-ориентированного моделирования, что дало бы возможность положить в основу всех проектов единый зрелый язык, а создателям инструментальных средств позволило бы сосредоточиться на более продуктивной деятельности. Наконец, следовало полагать, что подобное сотрудничество приведет к усовершенствованию всех трех методов и обеспечит решение задач, для которых любой из них, взятый в отдельности, был не слишком пригоден. Начав унификацию, авторы поставили перед собой три главные цели:
Изобретение языка для объектно-ориентированного анализа и проектирования не слишком отличается от разработки языка программирования. Во-первых, требовалось ограничить задачу. Следует ли включать в язык возможность спецификации требований? Должен ли язык позволять визуальное программирование? Во-вторых, было необходимо найти точку равновесия между выразительной мощью и простотой. Слишком простой язык ограничил бы круг решаемых с его помощью задач, а слишком сложный мог ошеломить неискушенного разработчика. Кроме того, при объединении существующих методов приходилось учитывать наличие уже разработанных с их помощью продуктов. Внесение слишком большого числа изменений могло бы оттолкнуть уже имевшихся пользователей, а сопротивляясь развитию языка, авторы потеряли бы возможность привлекать новых пользователей и делать язык более простым и удобным для применения. Создавая UML, разработчики старались найти оптимальное решение этих проблем. Официально создание UML началось в октябре 1994 года, когда Рамбо перешел в компанию Rational Software, где работал Буч. Первоначальной целью было объединение методов Буча и ОМТ. Первая пробная версия 0.8 Унифицированного Метода (Unified Method), как его тогда называли, появилась в октябре 1995 года. Приблизительно в это же время в компанию Rational перешел Джекобсон, и проект UML был расширен с целью включить в него язык OOSE. В результате совместных усилий в июне 1996 года вышла версия 0.9 языка UML. На протяжении всего года создатели занимались сбором отзывов от основных компаний, работающих в области конструирования программного обеспечения. За это время стало ясно, что большинство таких компаний сочло UML языком, имеющим стратегическое значение для их бизнеса. В результате был основан консорциум UML, в который вошли организации, изъявившие желание предоставить ресурсы для работы, направленной на создание полного определения UML. Версия 1.0 языка появилась в результате совместных усилий компаний Digital Equipment Corporation, Hewlett Packard, I-Logix, Intellicprp, IBM, ICON Computing, MCI Systemhouse, Microsoft, Oracle, Rational, Texas Instruments и Unisys. UML 1.0 оказался хорошо определенным, выразительным, мощным языком, применимым для решения большого количества разнообразных задач. В январе 1997 года он был представлен Группе по управлению объектами (Object Management Group, OMG) на конкурс по созданию стандартного языка моделирования. Между январем и июнем 1997 года консорциум UML расширился, в него вошли практически все компании, откликнувшиеся на призыв OMG, а именно: Andersen Consulting, Ericsson, ObjecTime Limited, Platinum Technology, Ptech, Reich Technologies, Softeam, Sterling Software и Taskon. Чтобы формализовать спецификации UML и координировать работу с другими группами, занимающимися стандартизацией, под руководством Криса Кобрина (Cris Kobryn) из компании MCI Systemhouse и Эда Эйкхолта (Ed Eykholt) из Rational была организована семантическая группа. Пересмотренная версия UML (1.1) была снова представлена на рассмотрение OMG в июле 1997 года. В сентябре версия была утверждена на заседаниях Группы по анализу и проектированию и Комитета по архитектуре OMG, a 14 ноября 1997 года принята в качестве стандарта на общем собрании всех членов OMG. Дальнейшая работа по развитию UML проводилась Группой по усовершенствованию (Revision Task Force, RTF) OMG под руководством Криса Кобрина. В июне 1998 года вышла версия UML 1.2, а осенью 1999 - UML 1.3. Составные части языка UML можно посмотреть на рис.1. В дальнейшем UML претерпел ряд последовательных модернизаций: в сентябре 2003 г. появилась редакция UML 1.4, в марте 2003 г. -версии 1.5, после чего был принят новый стандарт: ISO/IEC 19501:2005 Information technology – Open Distributed Processing – Unified Modeling Language (UML) Version 1.4.2. И, наконец, последняя, значительно обновленная редакция UML 2.0 была опубликована в 2004 году, которая является действующий в настоящий момент. Этапы развития UML представлены на рис. 2. Рис. 1. Составные части языка UML. Рис. 2. Этапы развития UML.
2.1. Унифицированный метод, или UML 0.8 – 0.91. Как уже отмечалось, первой общедоступной версией языка UML был Унифицированный метод версии 0.8, который был представлен на конференции OOPSLA, состоявшейся в октябре 1995 года. Унифицированный метод был разработай Г. Бучем и Д. Рамбо (к этому моменту А. Джекобсон еще не был сотрудником компании Rational). В 1996 году компания Rational выпустила версии 0.9 и 0.91, в работе над которыми принимал участие Джекобсон. После выхода этой последней версии название метода изменилось на UML. Первые версии UML были разработаны с целью ускорения эволюции наиболее популярных в то время методологий в направлении сближения и обобщения накопленного опыта их использования, обеспечения стабильности проектов на основе единого развитого метода и возможностей использования разработчиками инструментальных средств для сосредоточения их усилий на предоставлении пользователям более полезных возможностей. С этой целью была разработана метамодель - модель, облегчающая описание синтаксиса и семантики языка средствами самого языка UML. Для полного представления проектируемой системы были предложены проекции этой системы - диаграммы с графами, отражающими ее специфические аспекты. На таких диаграммах, в частности, отображаются отношения включения и обобщения/специализации классов, видимость объектов друг другу и обмен, временная последовательность взаимодействия объектов, динамика поведения класса объектов, физическая взаимосвязь модулей проектируемой системы и их положение на определенной конфигурации аппаратуры. В версии 0.9 языка UML представлены средства расширения языка конструкциями, специфичными для отдельных приложений. Появилась возможность более точно описывать параллелизм в функционировании проектируемой системы и распределенность ее компонентов в сети. Авторы UML предложили также для широкого обсуждения ряд еще не апробированных возможностей языка, представили планы по его стандартизации и формализации. 2.2. Версии UML 1.0 – 1.1. В январе 1997 года компания Rational представила на рассмотрение инициативной группы анализа и проектирования из OMG версию 1.0 языка UML. В последующем компания Rational объединила эту версию UML с другими методами и в сентябре 1997 года предложила в качестве стандарта версию 1.1. В конце 1997 года версия была одобрена консорциумом OMG. Однако при невыясненных обстоятельствах консорциум OMG назвал этот стандарт языка UML версией 1.0. Таким образом, в то время существовали две версии языка UML: версия 1.0 консорциума OMG и версия 1.1 компании Rational, которые не следует путать с версией 1.0 компании Rational. На практике же все разработчики называли этот стандарт версией 1.1. Версия 1.1 языка UML имеет несколько незначительных отличий от версии 1.0. Тип и класс реализации В UML 1.1 утверждается (в отличие от версии 1.0), что все классы на диаграмме классов могут быть определены либо как типы, либо как классы реализации. Класс реализации соответствует некоторому классу в контексте программы, которая разрабатывается программистами. Тип является более расплывчатым понятием; он представляет некоторую абстракцию, которая в меньшей степени касается реализации. Это может быть тип CORBA, описание класса с точки зрения спецификации или некоторая концептуальная модель. Для отдельной диаграммы все классы обладают некоторым особым стереотипом. Если некоторый класс реализации реализует один или несколько типов, то это может быть показано с помощью отношения реализации. Между типом и интерфейсом существует различие. Предполагается, что некоторый интерфейс должен непосредственно соответствовать интерфейсу в стиле CORBA или СОМ. В этом случае интерфейсы имеют только операции и не имеют атрибутов. Для класса реализации может быть использована только единственная статическая классификация, однако для типов можно использовать множественную и динамическую классификацию. Ограничения полного и неполного обобщения В UML 1.0 ограничение {полный} ({complete}) для некоторого обобщения устанавливает, что все экземпляры супертипа должны быть также экземпляром некоторого подтипа в данном разбиении. Вместо этого в языке UML версии 1.1 определено ограничение {полный}, которое указывает лишь на то, что соответствующее разбиение отражает все подтипы. А это совсем не то же самое. Композиция Использование композиции в языке UML версии 1.0 означает, что эта связь неизменна (или постоянна) по крайней мере для однозначных компонентов. Это ограничение больше не является частью определения композиции. Неизменность и постоянство Язык UML определяет ограничение {постоянный} ({frozen}) для указания неизменяемости ролей ассоциации. Как определено в версии 1.1, это ограничение не может быть применено к атрибутам или классам. Обратные сообщения на диаграмме последовательности В языке UML версии 1.0 обратное сообщение или возврат на диаграмме последовательности вместо сплошной треугольной стрелки стало обозначаться обычной стрелкой. Язык UML версии 1.1 для изображения возвратов использует пунктирную линию со стрелкой. Использование термина «Роль» В языке UML версии 1.0 термин роль в основном указывал направление некоторой ассоциации. Язык UML версии 1.1 рассматривает данное определение как роль ассоциации. Помимо нее существует роль кооперации, то есть роль, которую исполняет некоторый экземпляр класса в кооперации. Стандарт UML версии 1.1содержит следующий набор диаграмм: |
Рабочая программа учебной дисциплины проектирование информационных... Целью дисциплины является: изучение методологии структурного анализа, моделирование информационных систем в стандарте idef, проектирование... | Реферат по дисциплине «Проектирование информационных систем» на тему:... Для того, чтобы реализовать составные компоненты системы, на рынке закупаются типовые проектные решения и затем настраиваются под... | ||
Рабочая программа учебной дисциплины проектирование автоматизированных информационных систем Курс «Проектирование автоматизированных информационных систем» направлен на изучение современных методов и средств проектирования... | Валентина Ширшова Екатерина Фомченко bazalt1@rambler ru Поли-пара-ксилилены. История разработки, современное состояние и перспективы развития технологии | ||
Программа дисциплины «Проектирование информационных систем» «Проектирование информационных систем» для направления 080700. 62 Бизнес-информатика подготовки бакалавра | Тулина Л. А. Использование аутентичных видеоматериалов в обучении... Тулина Л. А. Использование аутентичных видеоматериалов в обучении страноведению в вузе//Российское предпринимательство: современное... | ||
Примерные темы рефератов Современное состояние науки об организации производства и перспективы ее развития | Рабочая программа по курсу Проектирование информационных систем | ||
1. Современное состояние, проблемы диагностики и перспективы развития... Тема Современное состояние, проблемы диагностики и перспективы развития онкологии. Организация онкологической службы. Принципы лечения... | Реферат Направление подготовки «Экономика» Налог на доходы физических лиц в Российской Федерации: современное состояние, проблемы и перспективы реформирования | ||
Рефератов для студентов III курса Современное состояние и перспективы развития физической культуры и спорта в России | Темы рефератов для студентов III курса, временно Современное состояние и перспективы развития физической культуры и спорта в России | ||
Реферат на тему: Транспортная составляющая интеграции Украины в мировую экономику Экономическое состояние, проблемы и перспективы развития отдельных отраслей транспортной промышленности Украины: 5 | Реферат на тему: «Современное состояние гидро- и ветроэнергетики.... Современное состояние гидроэнергетики, её место в энергетике и влияние на окружающую среду | ||
Реферат на тему: «Вакансии по специальности экономическая кибернетика» Занимается в области применения информационных систем, решает функциональные задачи, а также управляет информационными, материальными... | Тумур бямбаа современное состояние и перспективы развития дактилоскопии... Человек, чья фамилия подчеркнута, отвечает за полученное задание и координирует работу группы |