Разработка технологии и программной системы автоматизированной трансформации диаграмм функционального проектирования в диаграммы UML тема диссертации и автореферата по ВАК РФ 05.13.11, кандидат технических наук Атисков, Алексей Юрьевич
- Специальность ВАК РФ05.13.11
- Количество страниц 128
Заключение диссертации по теме «Математическое и программное обеспечение вычислительных машин, комплексов и компьютерных сетей», Атисков, Алексей Юрьевич
Основные результаты диссертационной работы состоят в следующем:
1. Разработаны модели нотаций проектирования IDEF0 и UML (классы) в виде OWL-описания и программные алгоритмы записи диаграмм проектирования в виде RDF-файлов;
2. Создан алгоритм трансформации функциональной модели в объектно-ориентированные модели с возможностью применения правил трансформации на основе SPARQL-запросов;
3. Разработана гибридная технология, связывающая процесс проектирования IDEFO-диаграмм информационных систем с их реализацией в виде программного кода;
4. Реализовано инструментальное средство на языке Java, обеспечивающее поддержку компонент гибридной технологии на основе IDEFO, UML, OWL, RDF, XML, XSLT для автоматизации процесса проектирования;
5. Разработанная система трансформации диаграмм проектирования была успешно задействована в ряде проектов, основанных на использовании функциональных описаний при создании программного обеспечения. Данная система зарегистрирована в Отраслевом фонде алгоритмов и программ.
Использование разработанного программного средства трансформации диаграмм приводит к уменьшению времени выполнения трансформации IDEFO-диаграмм в UML-диаграммы классов, увеличению количества сохраненных связей и элементов исходных диаграмм.
В диссертационной работе изложены научно-обоснованные технологические разработки для автоматизированной трансформации диаграмм при переходе от функционального моделирования к проектированию программного обеспечения, имеющие существенной значение для развития средств проектирования программного обеспечения и информатики в целом.
Автоматизированная ' трансформация диаграмм позволяет: избежать синтаксических ошибок, уменьшить-время, затраченное на создание объектно-ориентированных диаграмм на основе диаграмм бизнес-процессов, управлять сложностью? результирующих диаграмм. Из этого следует, что на ранних, стадиях проектирования появляется возможность сравнения моделей ¡классов и модели процессов- (что; помогает уточнять названия; методов (процессов), требования к данным; управлению, проверять согласованность-, неизбыточность контроля и. данных) и создания требований на изменение (которые были сделаны; в одном средстве) в терминах и, моделях другого средства-проектирования: Существенным преимуществом, созданной технологии трансформации диаграмм является то, что 0\УЕ,-описание можно построить к современным методикам проектирования программного обеспечения (например, ВРЕЬ, А111 Б), что. расширяет интеллектуальные возможности компьютеров и компьютерных систем.
Гибридная технология трансформации диаграмм- также может быть применена для автоматизации: согласования «разнородных моделей, полученных в результате как формальной, так и неформальной декомпозиции решаемыхзадач создания информационных систем» [41]:
Стоит, отметить, что построенные О'МЪ-описания для нотаций не являются полными, (описаны, не все элементы и связи); что не • позволяет, говорить о полной семантической корректности данных описаний^ что, однако, преодолимо- в перспективе развития технологии. В планах на будущее работа по; применению технологии к современным нотациям проектирования и создание визуального представления правил трансформации и 8РАЫ0Ь-запросов.
25. Киселев С. ВРМ: Как выбрать систему бизнес-моделирования в России // CNews Analytics. 2008. http://www.cnews.ru/reviews/free/2008/articles/BPM. shtml>.
26. Козодаев A.A. AllFusion Component Modeler (ранее Paradigm Plus) - UML модели на все сто! // 2003. http://www.interface.ru/fset.asp?UrI=/ca/allsto.htm>.
27. Колесов A. Borland совершенствует средства визуального проектирования ПО // PC Week (458)44^2004. http://www.pcweek.ru/themes/detaiI.php?ID=69061>.
28. Кузнецов M. Б. Трансформация программных моделей и ее применение в технологии MDA // Дис. канд. физ.-мат. наук: Институт Системного Программирования РАН, Москва, 2005. 136 с. <http://www.ispras.ru/ru/preprints/docs/prep52005.pdf>
29. Леоненков A.B. Нотация и семантика языка UML // Электронная книга. 2003. <http://www.intuit.ru/department/pl/umlbasics>.
30. Маклаков С. В. Инструментальная поддержка разработки и внедрения корпоративных информационных систем И КомпьютерПресс №9-2001. <http://www.compress.ru/article.aspx?id=l 1752&iid=458>
31. Маклаков С. В. Инструментальные средства создания корпоративных информационных систем // КомпьютерПресс №7-№9-1998. <http://dit.isuct.ru/ivt/books/CASE/case7/casealll.htm>
32. Маклаков С. В. Интеграция Paradigm Plus 3.7 с BPwin и ERwin // КомпьютерПресс №3-2001. http://www.compress.ru/article.aspx?id=10032&iid=418>
33. Маклаков С. В. Новые возможности BPwin 4.0 // КомпьютерПресс №32001. <http://www.compress.ru/article.aspx?id=10008&iid=418>
34. Маклаков С. В. Связывание модели данных и модели процессов BPwin и ERwin. CASE-средства разработки информационных систем. 2-е изд., испр. и дополн. Диалог-МИФИ, 1999. 306 с.
35. Маклаков С. В. Моделирование бизнес-процессов с AllFusion // M.: Диалог-Мифи, 2003. 224 с.
36. Марка Д., Макгоуэн К. Методология структурного анализа и проектирования SADT // М.: МетаТехнология, 1993. <http://or-rsv.narod.ru/Links.htm>.
37. Михеев А., Орлов М. Война стандартов в мире workflow // ФинЭксперт, 2007. <http://wf.runa.ni/images/c/ce/Statya2.pdf>.
38. Михеев А., Орлов М. Перспективы WorkFlow-систем // PC Week (437)23л2004. <http://wf.runa.ni/images/c/cl/Statya4.pdf>.
39. Новиков М. В. IDEF0 в моделировании бизнес-процессов управления // УГТУ-УПИ. 2003. <http://www.interface.ru/fset.asp7UrWcase/idf.htm>.
40. Орлов С. А. Технологии разработки программного обеспечения. СПб.: Питер, 2003. 528 с.
41. Охтилев М. Ю., Соколов Б. В., Юсупов Р. М. Интеллектуальные технологии мониторинга и управления структурной динамикой сложных технических объектов. - М.:Наука, 2006. - 410 с.
42. Павлов В. Методы оптимизации процесса создания ПО // Открытые системы/СУБД. №Ю. 2007. <http://www.osp.ru/os/2007/10/4706118>
43. Подъячев А. Ю., Атисков А. Ю., Перминов С. В. Тестирование процесса трансформации функциональных моделей на основе гибридных методов // Известия вузов. Приборостроение. №11/2008, С. 36-41.
44. Притыкин Д. A. BPwin 4.0: пришел, увидел, реорганизовал // 2001. <http://www.interface.ru/fset.asp7UrH/ca/bpwin4us.htm>.
45. Прошин А. Бизнес-моделирование: задачи и инструменты // Финансовая газета. N21,2006 http://www.fors.ru/pls/portaI/docs/PAGE/FDCRU/NEWS/NEWSMATERI ALS/CASEWISEPROSHINFINGAZETA.PDF>.
46. Рамбо Д., Якобсон А., Буч Г. UML. Специальный справочник. // СПб.: Питер, 2002, 656 с.
47. Репин В. В. Сравнительный анализ нотаций ARIS еЕРС / IDEFO, IDEF3 и продуктов, их поддерживающих (ARIS Toolset / BPvvin) // ФинЭксперт, 2001. <http://www.interface.ru/fset.asp7UrWca/an/danarisl .htm>.
48. Репин В. В., Сооляттэ А. Ю. Оптимизация бизнес-процессов - способ выживания и развития бизнеса в условиях кризиса // <http://www.finexpert-training.ru/printversion.php?ID=l 52&aid=3 52>.
49. Романовский К. Ю, Кузнецов С. В., Кознов Д. В. Объектно-ориентированная подход и диаграммы классов в UML // Объектно-ориентированное визуальное моделирование/Под ред. Проф. Терехова A.FI. - СПб: Издательство С.-Петербургского университета, 1999. С. 21-56.
50. Сафонов Р. Новый менеджмент, или зачем нужен системный анализ на основе Bpwin // Финансовая Академия при Правительстве РФ, 2001. <http://www.interface.ru/fset.asp7UrWca/newman.htm>.
51. Серенков П. С., Курьян А. Г. Использование IDEF0 для описания и классификации процессов в рамках системы качества МС ИСО семейства 9000 версии 2000 // 2001. http://www.interface.ru/fset.asp7UrWarticles/iso0100.htm>.
52. Смирнова О. М. От модели объектов - к модели классов // Объектно-ориентированное визуальное моделирование / Под ред. Проф. Терехова А.Н. — СПб: Издательство С.-Петербургского университета, 1999г. С.123-128.
53. Соколов Б. В., Юсупов Р. М. Комплексное моделирование информационных процессов и систем. 2005. <http://www.spiiras.nw.ru/files/lectures/lect-l.ppt>.
54. Точилкина Т. Е. Обмен моделями данных между AllFusion ERwin Data Modeler (ранее ERwin) и другими CASE-средствами // 2005. <http://www.interface.ru/ca/datamodelsexchange.htm>.
55. Трушин H. А., Тупчиенко С. В. Технология структурирования требований к ПО с помощью AllFusion Process Modeler (ранее: BPwin) и
AllFusion ERwin Data Modeler (ранее: ERwin) // 2005. <http://www.interface.ru/liome.asp?artId=325>.
56. Фанг Дж. Введение в IBM Rational Application Developer: учебное руководство // M.: КУДИЦ-ПРЕСС. - 2006. - 592 с.
57. Федотова Д. Э., Семенов Ю. Д., Чижик К. Н. CASE-технологии. Практикум // Издательство: Горячая Линия - Телеком, 2005 г. 160 с.
58. Черняк JL Адаптируемость и адаптивность // Мир ПК. Платформы - №09, 2004. <http://www.osp.ru/text/prini/article/l 84560.html>.
59. Юдицкий С. А., Кутанов А. Т. Методология структурного анализа и логического проектирования сложных информационно-управляющих систем // Приборы и системы управления, № 4. 1994, С. 15-25.
60. Юсупов Р. М., Заболотский В. П. Научно-методологические основы информатизацию. - М.:Наука, 2000 г. - 455 с.
61. AGG. The Attributed Graph Grammar System // 2010. <http://tfs.cs.tu-berlin.de/agg4>.
62. Agrawal A., Karsai G., Shi F. Graph Transformations on Domain-Specific Models // Under consideration for publication in the Journal on Software and Systems Modeling, 2003. http://atlanmod.emn.fr/www/papers/ext/AgrawalAl l02003GraphTran. pdf>
63. AlOWin 10 // Knowledge Based Systems, Inc. (KBSI) <http://www.kbsi.com/COTS/AIOWIN.htm>.
64. Akehurst D. H., Kent S. A Relational Approach to Defining Transformations in a Metamodel // J.-M. Jezequel, H. Hussmann, S. Cook (Eds.): UML 2002 -The Unified Modeling Language 5th International Conference, Dresden, Germany, September 30 - October 4, 2002. Proceedings, LNCS 2460, pp. 243258, 2002.
65. AllFusion ERwin Data Modeler // http ://erwin. conVproducts/detail/caerwinprocessmodeler>.
66. Andries M., Engels G., Habel A., Hoffmann B., Kreowski H.-J., Kuske S., Kuske D., Plump D., Schiirr A., Taentzer G. Graph Transformation for Specification and Programming // Technical Report 7/96, Universität Bremen, 1996, <http://citeseer.nj .nec.com/article/andries96graph.html>.
67. AndroMDA 2.0.3 // July 2003 < http://www.andromda.org>.
68. ANGIE Frame Processor // Delta Software Technology. <http://www.d-s-1-g.com/neu/pages/pageseng/et/common/technangiefirmset.htm>.
69. ArcStyler // 4.0, September 2004, <http://www.arcstyler.com>.
70. ArgoUML 0.32 II CollabNet <http://argouml.tigris.org>.
71. AST+ Alcatel, Softeam, Thaies, TNI-Valiosys, Codagen Corporation // MOF Query/Views/Transformations, Revised Submission. OMG Document: ad/0308-05. <http://www.omg.org/cgi-bin/doc7ad/03-08-05>
72. ATOM3 A Tool for Multi-Paradigm modeling // <http://atom3.cs.mcgill.ca>.
73. b+m Architecture Ware, Generator Framework // OOP SLA'03 Workshop on Generative Techniques in the Context of Model-Driven Architecture. http ://wvvw. architecture ware. de>.
74. Barreto C., Bullard V., Erl T., Evdemon J., Jordan D. Web Services Business Process Execution Language Version 2.0. // Primer, 2007. <http://www.oasis-open.org/committees/download.php/23964/wsbpel-v2.0-primer.htm>.
75. Bassett P.G. Framing Software Reuse: Lessons from the Real World // Prentice Hall, Inc., 1997, 384 p. <http://www.amazon.com/Framing-Software-Reuse-Lessons-World/dp/013327859X>.
76. Bednarz A. Transformation of Rational Unified Process analysis model to design model according to architectural patterns // School of Engineering, Blekinge Institute of Technology. Sweden. 2005. http://www.bth.se/fou/cuppsats.nsfall/74885e000c6dell5cl257141006af414/ $file/masterthesis-AndrzejBednarz.pd£>.
77. Berners-Lee T., Hendler J., Lassila О. The Semantic Web. A new form of Web content that is meaningful to computers will unleash a revolution of new possibilities // Scientific American. 2001. № 5. pp. 34-^-3.
78. Bézivin J., Dupé G., Jouault F., Rougui J. E. First experiments with the ATL model transformation language: Transforming XSLT into XQuery // In the online proceedings of the OOPSLA'03 Workshop on Generative Techniques in the Context of the MDA, <http://www.softmetaware.com/oopsla2003/mda-workshop.html>.
79. Borland. Together // <http://www.borland.com/us/products/together>.
80. BPMN. Documents Associated With Business Process Model And Notation // Version 2.0. January 2011. <http://www.omg.org/spec/BPMN/2.0>.
81. BPwin CA, Inc. // <http ://erwin.com>.
82. Braun P., Marschall F. The Bi-directional Object-Oriented Transformation Language // Technical Report, Technische Universität München, TUM-I0307, May 2003. <http://wwwbroy.in.tum.de/publ/papers/TUM-I0307.pdf>.
83. Business Studio // Современные технологии управления. <http://www.businessstudio.ru>.
84. CDI СВОР, DSTC, and IBM // MOF Query/Views/Transformations, Revised Submission. OMG Document: ad/03-08-03, <http://www.omg.org/cgi-bin/doc?ad/03-08-03>
85. Chang W. A discussion of the relationship between RDFS and UML // 1998. <http://www.w3.org/TR/1998/NOTE-rdf-uml-19980804>.
86. Cleaveland C. Program Generators with XML and Java // Prentice-Hall, 2001, <http://www.craigc.com/pg>.
87. Codagen Architect // 3.0, <http://www.codagen.com/products/architect/default.htm>.
88. Colyer A. AspectT // <http://www.eclipse.org/aspectj>.
89. Cretu G. Enterprise Engineering: The Power of Standards // Managing Information in the Digital Economy: Issues & Solutions - Proceedings of the 6th rdfs:subClassOf> owl:Class rdf:about="http://wvvw.spiiras.nw.m/transform#Aj-rowEnd"/> </rdfs:subClassOf> </owl:Class> owl:Class rdf:about="http://www.spiiras.nw.ru/transform#Control"> <rdfs:subClassOf> <owl:Class rdf:about="http://vvww.spiiras.nw.ru/transform#ArrowEnd"/> </rdfs:subClassO£> </owl:Class> owl:Class rdf:about="http://www.spiiras.nw.ru/transform#Mechanism"> <rdfs:subClassO£> <owl:Class rdf:about="http://www.spiiras.nw.ru/transforni#ArrovvEnd"/> </rdfs:subClassOf> </owl:Class> owl:Class rdf:about="http://www.spiiras.nw.ru/transform#Parameter"> <rdfs:subClassOf> <owl:Class rdf:about^Mhttp://www.spiiras.nw.iWtransform#ObjectOrientedApproach"/> </rdfs:subClassOf> <rdfs:subClassOf> <owl:Restriction> <owl:onProperty> owl:ObjectProperty rdf:about="http://www.spiiras.nw.ru/transform#type </owl:onProperty> owl:cardinality rdf:datatype="http://vvw\v.w3.org/2001/XMLSchema#int" > 1 </owl: cardinality> </ owl :Restriction> </rdfs:subClassO£> </owl:Class> owl:Class rdf:about=''http://www.spiiras.nw.ru/transform#Class"> <rdfs:subClassOfi> <owl: Class rdf: about="http ://www. spiiras.nw.ru/transform#Type "/> </rdfs:subClassOf> </owl:Class> owl:Class rdf:about="http://www.spiiras.nw.ru/transform#Output"> <rdfs:subClassOf> owl:Class rdf:about="http://www.spiiras.nw.ru/transform#ArrowEnd"/> </rdfs:subClassO£> </owl:Class> owl:Class rdf:about==,lhttp://www.spiiras.nw.ru/transform#Type"> <rdfs:subClassOfi> <owl:Class rdf:about="http://w\vw.spiiras.nw.ru/transform#ObjectOrientedApproach"/> </rdfs:subClassOf> owl:Class> owl : Class rdf:about="http ://www. spiiras.nw.ru/transform#PrimitiveType"> rdfs:subClassOf rdf:resource="http://www.spiiras.nw.ru/transform#Typc"/> </owl:Class> owl:Class rdf:about="http://www.spiiras.nw.ru/transform#ArrowEnd"> <rdfs:subClassOf rdf:resource="http://www.spiiras.nw.ru/'transfomi#FunctionalApproach"/> <rdfs:subClassO£> <owl:Restriction> <owl:onProperty> <owl:Obj ectProperty rdf:about=,Ъttp://www.spiiras.nw.ru/transform#atBlock,,/> </owl:onProperty> owl:cardinality rdf:datatype="http://www.w3.org/2001/XMLSchema#int"
1 </o wl : cardinality> </owl:Restriction> rdfs:subClassOf> </owl:Class> <owl:Class rdf:about='Ъttp://w\v^v.spiiras.nw.ш/transform#ObjectOrientedApproach',> <rdfs:subClassOf rdf:resource="http://wvvw.w3.org/2002/07/owl#Thing"/> <rdfs:subClassOf> <owl:Restriction> <owl:onProperty> <owl:DatatypeProperty rdr:about="http://www.spiiras.nw.ru/transform#name"/> </owl :onProperty> owl:cardinality rdf:datatype="http://w\vw.w3.org/2001/XMLSchema#int"
1 </owl:cardinality> </owl :Restriction> rdfs :subClassOf> </owl:Class> owl : Obj ectProperty rdf:about-'http ://vvww.spiiras.nw.ru/transform#links"> <rdfs:range rdf:resource:="http://www.spiiras.nw.ru/transform#Class"/> <rdfs:domain rdf:resource="http://www.spiiras.nw.ru/transform#Class"/> </owl: Obj ectProperty> owl:ObjectProperty rdf:about="http://www.spiiras.nw.ru/transform#composes"> <rdfs:subPropertyOf rdf:resource=''http://w\vw.spiiras.n\v.ru/transform#links'7> </owl:ObjectProperty> owI:ObjectProperty rdf:about="http://w^v.spiiras.nw.ru/transform#inherits"> <rdfs:subPropertyOf rdf:resource="http://w\vw.spiiras.nw.ru/transform#links'7> </owl: Obj ectProperty> owl:ObjectProperty rdf:about="http://www.spiiras.nw.ru/transform#delegates"> <rdfs:subPropertyOf rdf:resource="http://www.spiiras.nw.ru/transform#links"/>
ЗАКЛЮЧЕНИЕ