UML design pattern metamodel-level constraints for the maintenance of software evolution

SUMMARYSoftware maintenance including design is difficult because it is usually performed on someone else's work over a period of time. Maintaining a pattern‐based design is especially much more difficult when the information on specific patterns that have been used are not available in the cor...

Ausführliche Beschreibung

Gespeichert in:
Bibliographische Detailangaben
Veröffentlicht in:Software, practice & experience practice & experience, 2013-07, Vol.43 (7), p.835-866
Hauptverfasser: Park, Jaeyong, Lee, Seok-Won, Rine, David C.
Format: Artikel
Sprache:eng
Schlagworte:
Online-Zugang:Volltext
Tags: Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
container_end_page 866
container_issue 7
container_start_page 835
container_title Software, practice & experience
container_volume 43
creator Park, Jaeyong
Lee, Seok-Won
Rine, David C.
description SUMMARYSoftware maintenance including design is difficult because it is usually performed on someone else's work over a period of time. Maintaining a pattern‐based design is especially much more difficult when the information on specific patterns that have been used are not available in the corresponding design documents. Also, finding a maintainer who has a similar level of knowledge on specific patterns that the initial designer had is not easy. Pattern‐based design, the use of design patterns during the software design process, has become widely used in the object‐oriented community because of its many benefits such as its reuse. However, the defects in pattern‐based design can be introduced during the design maintenance phase when the changes are made to the requirements and the initial design, but the conformance to the original patterns is neglected. This conformance process is laborious and time consuming; no systematic process exists to guide the defects discovery and maintenance. Also, deep and correct knowledge of design patterns and their characteristics are required because this process is conducted by human experts. Failure to follow this conformance process and to maintain correct designs during software design evolution may cause serious problems in later software development and maintenance stages by not providing the benefits of pattern‐based design that would have been possible if followed correctly. There is a strong need of a systematic design and maintenance method for preventing defects in design patterns introduced during the evolution of pattern‐based software design and its maintenance. Because conventional UML design methods do not provide such systematic ways of assessing pattern‐based design conformance to the evolutionary changes, we have developed the pattern instance changes with UML profiles (PICUP) design method, which is an improved design method for perfective and corrective UML pattern‐based design maintenance and assessment. Design pattern in UML profiles (DPUP) is developed for the use of instantiation, maintenance, and assessment of UML pattern‐based designs to support the formal specification of a design pattern. DPUPs, as the main part of the PICUP design method, provide metamodel‐level UML design constraints using UML stereotype notations and metamodel‐level Object Constraint Language design constraints. Assessment of pattern‐based designs in UML class diagram with the corresponding DPUPs enforces maintainers to ma
doi_str_mv 10.1002/spe.1116
format Article
fullrecord <record><control><sourceid>proquest_cross</sourceid><recordid>TN_cdi_proquest_miscellaneous_1439727616</recordid><sourceformat>XML</sourceformat><sourcesystem>PC</sourcesystem><sourcerecordid>1439727616</sourcerecordid><originalsourceid>FETCH-LOGICAL-c3646-2a6458b2a66b226db89f4debedff7c99e5e92ebff877cd910ce9227b5a2dac923</originalsourceid><addsrcrecordid>eNp1kF1LwzAYhYMoOD_AnxDwxpvOJG2T9lKGTmF-oaJ4E9L0jXa2yUwydf_ejomi4NXhwMPh8CC0R8mQEsIOwwyGlFK-hgaUlCIhLHtYRwNC0iIhPMs20VYIU0IozRkfoIe78wmuITRPFs9UjOAt7iCqztXQJi28QYu1syF61dgYsHEex2fA3bKCVVYDdgYHZ-K78oDhzbXz2Di7gzaMagPsfuU2ujs5vh2dJpPL8dnoaJLolGc8YYpneVH1wSvGeF0VpclqqKA2RuiyhBxKBpUxhRC6LinRfWeiyhWrlS5Zuo0OVrsz717nEKLsmqChbZUFNw-SZmkpmOCU9-j-H3Tq5t727yTtzwhaFCT7GdTeheDByJlvOuUXkhK5VCx7xXKpuEeTFfretLD4l5M3V8e_-SZE-PjmlX-RXKQil_cXY8lPr0_SYvQoJ-kntWeNPA</addsrcrecordid><sourcetype>Aggregation Database</sourcetype><iscdi>true</iscdi><recordtype>article</recordtype><pqid>1364718804</pqid></control><display><type>article</type><title>UML design pattern metamodel-level constraints for the maintenance of software evolution</title><source>Wiley Online Library All Journals</source><creator>Park, Jaeyong ; Lee, Seok-Won ; Rine, David C.</creator><creatorcontrib>Park, Jaeyong ; Lee, Seok-Won ; Rine, David C.</creatorcontrib><description>SUMMARYSoftware maintenance including design is difficult because it is usually performed on someone else's work over a period of time. Maintaining a pattern‐based design is especially much more difficult when the information on specific patterns that have been used are not available in the corresponding design documents. Also, finding a maintainer who has a similar level of knowledge on specific patterns that the initial designer had is not easy. Pattern‐based design, the use of design patterns during the software design process, has become widely used in the object‐oriented community because of its many benefits such as its reuse. However, the defects in pattern‐based design can be introduced during the design maintenance phase when the changes are made to the requirements and the initial design, but the conformance to the original patterns is neglected. This conformance process is laborious and time consuming; no systematic process exists to guide the defects discovery and maintenance. Also, deep and correct knowledge of design patterns and their characteristics are required because this process is conducted by human experts. Failure to follow this conformance process and to maintain correct designs during software design evolution may cause serious problems in later software development and maintenance stages by not providing the benefits of pattern‐based design that would have been possible if followed correctly. There is a strong need of a systematic design and maintenance method for preventing defects in design patterns introduced during the evolution of pattern‐based software design and its maintenance. Because conventional UML design methods do not provide such systematic ways of assessing pattern‐based design conformance to the evolutionary changes, we have developed the pattern instance changes with UML profiles (PICUP) design method, which is an improved design method for perfective and corrective UML pattern‐based design maintenance and assessment. Design pattern in UML profiles (DPUP) is developed for the use of instantiation, maintenance, and assessment of UML pattern‐based designs to support the formal specification of a design pattern. DPUPs, as the main part of the PICUP design method, provide metamodel‐level UML design constraints using UML stereotype notations and metamodel‐level Object Constraint Language design constraints. Assessment of pattern‐based designs in UML class diagram with the corresponding DPUPs enforces maintainers to make necessary and correct changes to keep the principles of the original designs. Pattern‐related information is annotated using stereotype notations to help assess pattern‐based designs when changes are made. Furthermore, the structural conformance checking of a given UML pattern‐based design can be automated by using the assessment tool. The major contributions of this paper are: (i) specifying design patterns using extended UML profile; (ii) providing a means of how to instantiate pattern‐based designs from DPUPs with naming conventions; and (iii) providing design constraints for maintaining pattern‐based design to guide correct changes of a given design in PICUP method. Explanatory type case studies were performed to better understand and evaluate the effectiveness of the PICUP design method with DPUPs. Answers to the case study questionnaires and the pattern defects discovered from the case studies support the hypothesis that the PICUP method is an improved design method that ensures structural conformance of UML pattern‐based designs to the corresponding design patterns during perfective and corrective design maintenance for software systems. Copyright © 2011 John Wiley &amp; Sons, Ltd.</description><identifier>ISSN: 0038-0644</identifier><identifier>EISSN: 1097-024X</identifier><identifier>DOI: 10.1002/spe.1116</identifier><language>eng</language><publisher>Bognor Regis: Blackwell Publishing Ltd</publisher><subject>Assessments ; Computer programs ; Defects ; Design engineering ; design pattern ; Evolution ; Maintenance ; Software ; software maintenance ; UML ; Unified Modeling Language</subject><ispartof>Software, practice &amp; experience, 2013-07, Vol.43 (7), p.835-866</ispartof><rights>Copyright © 2011 John Wiley &amp; Sons, Ltd.</rights><rights>Copyright © 2013 John Wiley &amp; Sons, Ltd.</rights><lds50>peer_reviewed</lds50><woscitedreferencessubscribed>false</woscitedreferencessubscribed><citedby>FETCH-LOGICAL-c3646-2a6458b2a66b226db89f4debedff7c99e5e92ebff877cd910ce9227b5a2dac923</citedby><cites>FETCH-LOGICAL-c3646-2a6458b2a66b226db89f4debedff7c99e5e92ebff877cd910ce9227b5a2dac923</cites></display><links><openurl>$$Topenurl_article</openurl><openurlfulltext>$$Topenurlfull_article</openurlfulltext><thumbnail>$$Tsyndetics_thumb_exl</thumbnail><linktopdf>$$Uhttps://onlinelibrary.wiley.com/doi/pdf/10.1002%2Fspe.1116$$EPDF$$P50$$Gwiley$$H</linktopdf><linktohtml>$$Uhttps://onlinelibrary.wiley.com/doi/full/10.1002%2Fspe.1116$$EHTML$$P50$$Gwiley$$H</linktohtml><link.rule.ids>315,781,785,1418,27929,27930,45579,45580</link.rule.ids></links><search><creatorcontrib>Park, Jaeyong</creatorcontrib><creatorcontrib>Lee, Seok-Won</creatorcontrib><creatorcontrib>Rine, David C.</creatorcontrib><title>UML design pattern metamodel-level constraints for the maintenance of software evolution</title><title>Software, practice &amp; experience</title><addtitle>Softw. Pract. Exper</addtitle><description>SUMMARYSoftware maintenance including design is difficult because it is usually performed on someone else's work over a period of time. Maintaining a pattern‐based design is especially much more difficult when the information on specific patterns that have been used are not available in the corresponding design documents. Also, finding a maintainer who has a similar level of knowledge on specific patterns that the initial designer had is not easy. Pattern‐based design, the use of design patterns during the software design process, has become widely used in the object‐oriented community because of its many benefits such as its reuse. However, the defects in pattern‐based design can be introduced during the design maintenance phase when the changes are made to the requirements and the initial design, but the conformance to the original patterns is neglected. This conformance process is laborious and time consuming; no systematic process exists to guide the defects discovery and maintenance. Also, deep and correct knowledge of design patterns and their characteristics are required because this process is conducted by human experts. Failure to follow this conformance process and to maintain correct designs during software design evolution may cause serious problems in later software development and maintenance stages by not providing the benefits of pattern‐based design that would have been possible if followed correctly. There is a strong need of a systematic design and maintenance method for preventing defects in design patterns introduced during the evolution of pattern‐based software design and its maintenance. Because conventional UML design methods do not provide such systematic ways of assessing pattern‐based design conformance to the evolutionary changes, we have developed the pattern instance changes with UML profiles (PICUP) design method, which is an improved design method for perfective and corrective UML pattern‐based design maintenance and assessment. Design pattern in UML profiles (DPUP) is developed for the use of instantiation, maintenance, and assessment of UML pattern‐based designs to support the formal specification of a design pattern. DPUPs, as the main part of the PICUP design method, provide metamodel‐level UML design constraints using UML stereotype notations and metamodel‐level Object Constraint Language design constraints. Assessment of pattern‐based designs in UML class diagram with the corresponding DPUPs enforces maintainers to make necessary and correct changes to keep the principles of the original designs. Pattern‐related information is annotated using stereotype notations to help assess pattern‐based designs when changes are made. Furthermore, the structural conformance checking of a given UML pattern‐based design can be automated by using the assessment tool. The major contributions of this paper are: (i) specifying design patterns using extended UML profile; (ii) providing a means of how to instantiate pattern‐based designs from DPUPs with naming conventions; and (iii) providing design constraints for maintaining pattern‐based design to guide correct changes of a given design in PICUP method. Explanatory type case studies were performed to better understand and evaluate the effectiveness of the PICUP design method with DPUPs. Answers to the case study questionnaires and the pattern defects discovered from the case studies support the hypothesis that the PICUP method is an improved design method that ensures structural conformance of UML pattern‐based designs to the corresponding design patterns during perfective and corrective design maintenance for software systems. Copyright © 2011 John Wiley &amp; Sons, Ltd.</description><subject>Assessments</subject><subject>Computer programs</subject><subject>Defects</subject><subject>Design engineering</subject><subject>design pattern</subject><subject>Evolution</subject><subject>Maintenance</subject><subject>Software</subject><subject>software maintenance</subject><subject>UML</subject><subject>Unified Modeling Language</subject><issn>0038-0644</issn><issn>1097-024X</issn><fulltext>true</fulltext><rsrctype>article</rsrctype><creationdate>2013</creationdate><recordtype>article</recordtype><recordid>eNp1kF1LwzAYhYMoOD_AnxDwxpvOJG2T9lKGTmF-oaJ4E9L0jXa2yUwydf_ejomi4NXhwMPh8CC0R8mQEsIOwwyGlFK-hgaUlCIhLHtYRwNC0iIhPMs20VYIU0IozRkfoIe78wmuITRPFs9UjOAt7iCqztXQJi28QYu1syF61dgYsHEex2fA3bKCVVYDdgYHZ-K78oDhzbXz2Di7gzaMagPsfuU2ujs5vh2dJpPL8dnoaJLolGc8YYpneVH1wSvGeF0VpclqqKA2RuiyhBxKBpUxhRC6LinRfWeiyhWrlS5Zuo0OVrsz717nEKLsmqChbZUFNw-SZmkpmOCU9-j-H3Tq5t727yTtzwhaFCT7GdTeheDByJlvOuUXkhK5VCx7xXKpuEeTFfretLD4l5M3V8e_-SZE-PjmlX-RXKQil_cXY8lPr0_SYvQoJ-kntWeNPA</recordid><startdate>201307</startdate><enddate>201307</enddate><creator>Park, Jaeyong</creator><creator>Lee, Seok-Won</creator><creator>Rine, David C.</creator><general>Blackwell Publishing Ltd</general><general>Wiley Subscription Services, Inc</general><scope>BSCLL</scope><scope>AAYXX</scope><scope>CITATION</scope><scope>7SC</scope><scope>8FD</scope><scope>F28</scope><scope>FR3</scope><scope>JQ2</scope><scope>L7M</scope><scope>L~C</scope><scope>L~D</scope></search><sort><creationdate>201307</creationdate><title>UML design pattern metamodel-level constraints for the maintenance of software evolution</title><author>Park, Jaeyong ; Lee, Seok-Won ; Rine, David C.</author></sort><facets><frbrtype>5</frbrtype><frbrgroupid>cdi_FETCH-LOGICAL-c3646-2a6458b2a66b226db89f4debedff7c99e5e92ebff877cd910ce9227b5a2dac923</frbrgroupid><rsrctype>articles</rsrctype><prefilter>articles</prefilter><language>eng</language><creationdate>2013</creationdate><topic>Assessments</topic><topic>Computer programs</topic><topic>Defects</topic><topic>Design engineering</topic><topic>design pattern</topic><topic>Evolution</topic><topic>Maintenance</topic><topic>Software</topic><topic>software maintenance</topic><topic>UML</topic><topic>Unified Modeling Language</topic><toplevel>peer_reviewed</toplevel><toplevel>online_resources</toplevel><creatorcontrib>Park, Jaeyong</creatorcontrib><creatorcontrib>Lee, Seok-Won</creatorcontrib><creatorcontrib>Rine, David C.</creatorcontrib><collection>Istex</collection><collection>CrossRef</collection><collection>Computer and Information Systems Abstracts</collection><collection>Technology Research Database</collection><collection>ANTE: Abstracts in New Technology &amp; Engineering</collection><collection>Engineering Research Database</collection><collection>ProQuest Computer Science Collection</collection><collection>Advanced Technologies Database with Aerospace</collection><collection>Computer and Information Systems Abstracts – Academic</collection><collection>Computer and Information Systems Abstracts Professional</collection><jtitle>Software, practice &amp; experience</jtitle></facets><delivery><delcategory>Remote Search Resource</delcategory><fulltext>fulltext</fulltext></delivery><addata><au>Park, Jaeyong</au><au>Lee, Seok-Won</au><au>Rine, David C.</au><format>journal</format><genre>article</genre><ristype>JOUR</ristype><atitle>UML design pattern metamodel-level constraints for the maintenance of software evolution</atitle><jtitle>Software, practice &amp; experience</jtitle><addtitle>Softw. Pract. Exper</addtitle><date>2013-07</date><risdate>2013</risdate><volume>43</volume><issue>7</issue><spage>835</spage><epage>866</epage><pages>835-866</pages><issn>0038-0644</issn><eissn>1097-024X</eissn><abstract>SUMMARYSoftware maintenance including design is difficult because it is usually performed on someone else's work over a period of time. Maintaining a pattern‐based design is especially much more difficult when the information on specific patterns that have been used are not available in the corresponding design documents. Also, finding a maintainer who has a similar level of knowledge on specific patterns that the initial designer had is not easy. Pattern‐based design, the use of design patterns during the software design process, has become widely used in the object‐oriented community because of its many benefits such as its reuse. However, the defects in pattern‐based design can be introduced during the design maintenance phase when the changes are made to the requirements and the initial design, but the conformance to the original patterns is neglected. This conformance process is laborious and time consuming; no systematic process exists to guide the defects discovery and maintenance. Also, deep and correct knowledge of design patterns and their characteristics are required because this process is conducted by human experts. Failure to follow this conformance process and to maintain correct designs during software design evolution may cause serious problems in later software development and maintenance stages by not providing the benefits of pattern‐based design that would have been possible if followed correctly. There is a strong need of a systematic design and maintenance method for preventing defects in design patterns introduced during the evolution of pattern‐based software design and its maintenance. Because conventional UML design methods do not provide such systematic ways of assessing pattern‐based design conformance to the evolutionary changes, we have developed the pattern instance changes with UML profiles (PICUP) design method, which is an improved design method for perfective and corrective UML pattern‐based design maintenance and assessment. Design pattern in UML profiles (DPUP) is developed for the use of instantiation, maintenance, and assessment of UML pattern‐based designs to support the formal specification of a design pattern. DPUPs, as the main part of the PICUP design method, provide metamodel‐level UML design constraints using UML stereotype notations and metamodel‐level Object Constraint Language design constraints. Assessment of pattern‐based designs in UML class diagram with the corresponding DPUPs enforces maintainers to make necessary and correct changes to keep the principles of the original designs. Pattern‐related information is annotated using stereotype notations to help assess pattern‐based designs when changes are made. Furthermore, the structural conformance checking of a given UML pattern‐based design can be automated by using the assessment tool. The major contributions of this paper are: (i) specifying design patterns using extended UML profile; (ii) providing a means of how to instantiate pattern‐based designs from DPUPs with naming conventions; and (iii) providing design constraints for maintaining pattern‐based design to guide correct changes of a given design in PICUP method. Explanatory type case studies were performed to better understand and evaluate the effectiveness of the PICUP design method with DPUPs. Answers to the case study questionnaires and the pattern defects discovered from the case studies support the hypothesis that the PICUP method is an improved design method that ensures structural conformance of UML pattern‐based designs to the corresponding design patterns during perfective and corrective design maintenance for software systems. Copyright © 2011 John Wiley &amp; Sons, Ltd.</abstract><cop>Bognor Regis</cop><pub>Blackwell Publishing Ltd</pub><doi>10.1002/spe.1116</doi><tpages>32</tpages></addata></record>
fulltext fulltext
identifier ISSN: 0038-0644
ispartof Software, practice & experience, 2013-07, Vol.43 (7), p.835-866
issn 0038-0644
1097-024X
language eng
recordid cdi_proquest_miscellaneous_1439727616
source Wiley Online Library All Journals
subjects Assessments
Computer programs
Defects
Design engineering
design pattern
Evolution
Maintenance
Software
software maintenance
UML
Unified Modeling Language
title UML design pattern metamodel-level constraints for the maintenance of software evolution
url https://sfx.bib-bvb.de/sfx_tum?ctx_ver=Z39.88-2004&ctx_enc=info:ofi/enc:UTF-8&ctx_tim=2024-12-15T14%3A43%3A39IST&url_ver=Z39.88-2004&url_ctx_fmt=infofi/fmt:kev:mtx:ctx&rfr_id=info:sid/primo.exlibrisgroup.com:primo3-Article-proquest_cross&rft_val_fmt=info:ofi/fmt:kev:mtx:journal&rft.genre=article&rft.atitle=UML%20design%20pattern%20metamodel-level%20constraints%20for%20the%20maintenance%20of%20software%20evolution&rft.jtitle=Software,%20practice%20&%20experience&rft.au=Park,%20Jaeyong&rft.date=2013-07&rft.volume=43&rft.issue=7&rft.spage=835&rft.epage=866&rft.pages=835-866&rft.issn=0038-0644&rft.eissn=1097-024X&rft_id=info:doi/10.1002/spe.1116&rft_dat=%3Cproquest_cross%3E1439727616%3C/proquest_cross%3E%3Curl%3E%3C/url%3E&disable_directlink=true&sfx.directlink=off&sfx.report_link=0&rft_id=info:oai/&rft_pqid=1364718804&rft_id=info:pmid/&rfr_iscdi=true