Bridging the Gap Between Modeling and Programming Languages. Gu�h�neuc, Y., Albin-Amiot, H., Douence, R., & Cointe, P. Technical Report 02/09/INFO, Computer Science Department, �cole des Mines de Nantes, July, 2002. 56 pages.
Paper abstract bibtex A discontinuity exists between modeling languages and object-oriented programming languages. This discontinuity is a consequence of ambiguous notions in modeling languages and lack of corresponding notions in object-oriented programming languages. It hinders the transition between a software design and its implementation, and vice versa. Thus, it hampers the implementation and the maintenance processes. This discontinuity is particularly acute for binary class relationships, which describe, at the design level, notions such as association, aggregation, and composition. From the current state of the art, we propose synthetic definitions for the binary class relationships at the design level and corresponding definitions at the implementation level. We express the latter definitions in terms of common properties. We present algorithms to synthesize code for these properties and to detect these properties in code. These algorithms allow us to generate and to detect binary class relationships. We verify the detection algorithms on several well-known frameworks. The definitions and algorithms bring continuity between modeling languages and object-oriented programming languages.
@TECHREPORT{Gueheneuc02-TR-GapLanguages,
AUTHOR = {Yann-Ga�l Gu�h�neuc and Herv� Albin-Amiot and
R�mi Douence and Pierre Cointe},
INSTITUTION = {Computer Science Department, �cole des Mines de Nantes},
TITLE = {Bridging the Gap Between Modeling and Programming
Languages},
YEAR = {2002},
OPTADDRESS = {},
MONTH = {July},
NOTE = {56 pages.},
NUMBER = {02/09/INFO},
OPTTYPE = {},
KEYWORDS = {Topic: <b>Binary class relations</b>},
URL = {http://www.ptidej.net/publications/documents/Research+report+AAC+July02.doc.pdf},
ABSTRACT = {A discontinuity exists between modeling languages and
ob\-ject-oriented programming languages. This discontinuity is a
consequence of ambiguous notions in modeling languages and lack of
corresponding notions in object-oriented programming languages. It
hinders the transition between a software design and its
implementation, and vice versa. Thus, it hampers the implementation
and the maintenance processes. This discontinuity is particularly
acute for binary class relationships, which describe, at the design
level, notions such as association, aggregation, and composition.
From the current state of the art, we propose synthetic definitions
for the binary class relationships at the design level and
corresponding definitions at the implementation level. We express the
latter definitions in terms of common properties. We present
algorithms to synthesize code for these properties and to detect
these properties in code. These algorithms allow us to generate and
to detect binary class relationships. We verify the detection
algorithms on several well-known frameworks. The definitions and
algorithms bring continuity between modeling languages and
object-oriented programming languages.}
}
Downloads: 0
{"_id":"ua88deP24BeWrd4T2","bibbaseid":"guhneuc-albinamiot-douence-cointe-bridgingthegapbetweenmodelingandprogramminglanguages-2002","downloads":0,"creationDate":"2018-01-17T20:29:42.616Z","title":"Bridging the Gap Between Modeling and Programming Languages","author_short":["Gu�h�neuc, Y.","Albin-Amiot, H.","Douence, R.","Cointe, P."],"year":2002,"bibtype":"techreport","biburl":"http://www.yann-gael.gueheneuc.net/Work/Publications/Biblio/complete-bibliography.bib","bibdata":{"bibtype":"techreport","type":"techreport","author":[{"firstnames":["Yann-Ga�l"],"propositions":[],"lastnames":["Gu�h�neuc"],"suffixes":[]},{"firstnames":["Herv�"],"propositions":[],"lastnames":["Albin-Amiot"],"suffixes":[]},{"firstnames":["R�mi"],"propositions":[],"lastnames":["Douence"],"suffixes":[]},{"firstnames":["Pierre"],"propositions":[],"lastnames":["Cointe"],"suffixes":[]}],"institution":"Computer Science Department, �cole des Mines de Nantes","title":"Bridging the Gap Between Modeling and Programming Languages","year":"2002","optaddress":"","month":"July","note":"56 pages.","number":"02/09/INFO","opttype":"","keywords":"Topic: <b>Binary class relations</b>","url":"http://www.ptidej.net/publications/documents/Research+report+AAC+July02.doc.pdf","abstract":"A discontinuity exists between modeling languages and object-oriented programming languages. This discontinuity is a consequence of ambiguous notions in modeling languages and lack of corresponding notions in object-oriented programming languages. It hinders the transition between a software design and its implementation, and vice versa. Thus, it hampers the implementation and the maintenance processes. This discontinuity is particularly acute for binary class relationships, which describe, at the design level, notions such as association, aggregation, and composition. From the current state of the art, we propose synthetic definitions for the binary class relationships at the design level and corresponding definitions at the implementation level. We express the latter definitions in terms of common properties. We present algorithms to synthesize code for these properties and to detect these properties in code. These algorithms allow us to generate and to detect binary class relationships. We verify the detection algorithms on several well-known frameworks. The definitions and algorithms bring continuity between modeling languages and object-oriented programming languages.","bibtex":"@TECHREPORT{Gueheneuc02-TR-GapLanguages,\r\n AUTHOR = {Yann-Ga�l Gu�h�neuc and Herv� Albin-Amiot and \r\n R�mi Douence and Pierre Cointe},\r\n INSTITUTION = {Computer Science Department, �cole des Mines de Nantes},\r\n TITLE = {Bridging the Gap Between Modeling and Programming \r\n Languages},\r\n YEAR = {2002},\r\n OPTADDRESS = {},\r\n MONTH = {July},\r\n NOTE = {56 pages.},\r\n NUMBER = {02/09/INFO},\r\n OPTTYPE = {},\r\n KEYWORDS = {Topic: <b>Binary class relations</b>},\r\n URL = {http://www.ptidej.net/publications/documents/Research+report+AAC+July02.doc.pdf},\r\n ABSTRACT = {A discontinuity exists between modeling languages and \r\n ob\\-ject-oriented programming languages. This discontinuity is a \r\n consequence of ambiguous notions in modeling languages and lack of \r\n corresponding notions in object-oriented programming languages. It \r\n hinders the transition between a software design and its \r\n implementation, and vice versa. Thus, it hampers the implementation \r\n and the maintenance processes. This discontinuity is particularly \r\n acute for binary class relationships, which describe, at the design \r\n level, notions such as association, aggregation, and composition. \r\n From the current state of the art, we propose synthetic definitions \r\n for the binary class relationships at the design level and \r\n corresponding definitions at the implementation level. We express the \r\n latter definitions in terms of common properties. We present \r\n algorithms to synthesize code for these properties and to detect \r\n these properties in code. These algorithms allow us to generate and \r\n to detect binary class relationships. We verify the detection \r\n algorithms on several well-known frameworks. The definitions and \r\n algorithms bring continuity between modeling languages and \r\n object-oriented programming languages.}\r\n}\r\n\r\n","author_short":["Gu�h�neuc, Y.","Albin-Amiot, H.","Douence, R.","Cointe, P."],"key":"Gueheneuc02-TR-GapLanguages","id":"Gueheneuc02-TR-GapLanguages","bibbaseid":"guhneuc-albinamiot-douence-cointe-bridgingthegapbetweenmodelingandprogramminglanguages-2002","role":"author","urls":{"Paper":"http://www.ptidej.net/publications/documents/Research+report+AAC+July02.doc.pdf"},"keyword":["Topic: <b>Binary class relations</b>"],"metadata":{"authorlinks":{"gu�h�neuc, y":"https://bibbase.org/show?bib=http%3A%2F%2Fwww.yann-gael.gueheneuc.net%2FWork%2FPublications%2FBiblio%2Fcomplete-bibliography.bib&msg=embed","guéhéneuc, y":"https://bibbase.org/show?bib=http://www.yann-gael.gueheneuc.net/Work/BibBase/guehene%20(automatically%20cleaned).bib"}},"downloads":0},"search_terms":["bridging","gap","between","modeling","programming","languages","gu�h�neuc","albin-amiot","douence","cointe"],"keywords":["topic: <b>binary class relations</b>"],"authorIDs":["2tFXMaTSHJKEB5ebi","2wY5eBcsYmbPNfmMS","36dm7jaw5EK5Wrr4D","3NxaNKic3nkXi568L","3S5Dkpx7DNefzJrnf","3afmfmoPr4SHa8B5F","3wmHB7JoQbQz2ujun","4YBWWbao6RKgiyGJE","4jZj9tB4SJ8zEEgHk","5CvA2hsaib2bPMaef","5TFJbxqRDGFj2P8Rg","5a5fb236a39f2c3645000032","5a8f17e006df23bc34000020","5cx79LBmaWcihgM4J","5de9a6425b51bcde01000042","5dee1197584fb4df010000fc","5df228a41e4fe9df0100012c","5df617f72b34d0de0100008b","5dfa14782e791dde010000ea","5dfe3d5e68d95dde01000080","5e02525b6ffa15df0100009f","5e0662c07da1d1de0100021a","5e093e8b934cacdf0100008b","5e0a61673eccf6e001000016","5e0b75b7e73cd6de010000f9","5e0d4ca6ae5827df0100007f","5e0ddf08552b25df01000137","5e0e5c41ac7d11df010000a3","5e1268e7a4cabfdf0100002c","5e12c45a70e2c4f201000043","5e157809f1f31adf01000006","5e162ca1df1bb4de01000123","5e185cff809b84f201000091","5e1a6c39b16ec5df0100000f","5e21b27e96aea7de01000084","5e22c57e49e2b4df0100000f","5e23c2aeb93b51de01000030","5e245835079bb2df0100007d","5e24fa3e2e79a1f201000027","5e26252f408641df01000161","5e26bfbd8535cedf0100005c","5e280fd1f860fcde0100006a","5e2a827f881468de01000080","5e2eb321b84405df01000128","5e2ef635e374eede0100001a","5e2fd6a74e91a9df01000010","5e3266bb5633c9de01000068","5e32ab0ee17accde0100012a","5e32bdec466076df010000d9","5e32d603150c84df01000068","5e34fb145978bef2010000a6","5e36bc8e7b975dde0100009a","5e389940030bcadf010001b4","5e39dd9a3687dddf010000a4","5e3ad173f2a00cdf01000206","5e3dcd50d51253de0100003d","5e3e8713666d79df010000a6","5e3ed80986a596de010000b9","5e3fefe1add5fbde01000087","5e409c79d668c6de010000c7","5e41795ed9f47bee01000194","5e41cd5be7c67ade010000eb","5e42ef1ca6f4a6f2010001eb","5e46dcb342fb31df01000113","5e46f12c461d04f201000078","5e478c9e27a0c8de010000ef","5e47fb06385298df010000b2","5e4add1941072bdf01000011","5e4c1c792dc400de0100011a","5e4c6262271596df010001b9","5e4f0360338acfde01000156","5e4f11b0e5389bde0100007e","5e530b976d68b8df010000a5","5e54ad6d929495df0100007c","5e57161b429006de0100005a","5e57839fcef9b7de0100003c","5e580f5a6a456fde0100004f","5e5afa78038583de010000f7","5e5b477174a3e7df010000b7","5e5d370173eb2edf01000038","5e5fca336b32b0f20100011b","5e60e7f0839e59df010000e8","5e6377cfae1c4dde0100011e","5e657007de41b9df0100017a","5e676f0910be53de0100001a","5gPbX6aQJFjpv2Na9","6eE2yRdMDQr2WGXuA","6iHE5tuM7yTfLd2pA","7BPWyvMr5e6bzbk7T","7RFwhpGkpZRsLwnmB","7amRA4ALcR2mksheF","7mkQL8eiftj5bGMzB","8jPjKehCMsj7ncvxN","8peLXfWtCSic5n7oz","95eRgTcabnJwF46f3","9Ba9JxkjQBCeGBZKg","9DjgvzQrx27uxbyJj","9HD56d3k5yrB9H9oq","9RtPuXNyeS3k8LM9J","9diLYpd8cMmjBh54T","9nx6Yv3XREwJDyRms","AfJhKcg96muyPdu7S","BGvchZsjW7Wejj9Cz","BYwdHpGr6xT5vmE5C","Bah6LM7GXdXTy8GGA","BmH2ytt7sXwPHcrse","CqJYxtqe6qBbtd5yz","D4kEZ2JcWCoMvRPy7","DFWW7D6Y7X57n4cbM","DSorPqHDfrFiNM5Ew","DWXisKXaQArvre3QL","DwBm6isMpKSHHkhAd","E88raoktD8ANF92Yu","EAjLox7ycbofcCXce","F8rzFhY9yWA7pBX4j","G3iynDKjz9BHJbrdg","GJw6mQETXADSCZuuk","GWK5669HLqPyYMQ5J","GibAXjj4xXdFT8qWh","HzFZpgGcfabjAp9x6","KJ4eYziy6hanF9kr9","Kcyu7uncEFiYzYP2D","N4zzhqcywSzDDYsdh","NCDg3xE2mPcNAu7LX","NvgbTAz3hZ9SevZvd","QbcDS3wK43sRASvgu","S3b7Bb9wwfpByQgbo","SXJaeFCgBDJ5HAHtj","T5nL8TGrggoLAF8Dj","W9vT8YcCNFEcp9mWQ","WZ5CpBEFNsb2ivfah","XxviSwRxhwgNwsraH","Z2Zs662GpXqKBEAMc","ZKYFgjHGm7PE4Y2kv","a5qpGirN3B5BLKdMh","ahGA65oGDChNYp7Mb","bA7pGCMS9AB2RBo2p","bTQb3TcrbBShtqFPS","cYnqisf4wzBsM7MF5","cjHpaYiWD5eX7btH4","ckrbesqi3pWqfF2nP","dH8EsWHZtCFuQk5bq","dS5kvBMnk3LMQe56w","eXsFRMzE7WfbHbBL4","fmmsBu4m6ayKtuopf","hdXr3PD8cHNWyAdCe","hgZxckC87u2A57teF","juvCjffHJaPQf44im","keQBT2Apb9yaev8AH","myHdF8zARwW5uGmFs","nJLfaznnYgFqWQQrv","onghitNWSvN2FpCaN","osgPwDW2y5KDXRa2i","pAWFMDHu5dNixqPAq","pLvmgrCjMeDYJiJxB","q4azvWakEjp2TQM7S","qBee6Md9YwRKwkeW3","qQky2Csek4mroLn2P","tJz4YBCqAzZAzek5d","tLtjttw8dEqF6YQ4s","uQ6jCrPijzAmZyfXz","vGEaFNt7mm92Z7GXc","vRkMmE65HSFpCk6FW","vsEsf8FR3Fxb6z7fJ","x5ejzvDeXCc89Dukv","xEQyC5shxpYySSJJm","xhwDdvQ7MYxa6keXm","xkviMnkrGBneANvMr","y64rFMcyp7tDsBrJQ","yBYJWSShoKkMG8aPE","yQPghCwQv22kf6dFq","yd5sCxaEiu5vWizTq"],"dataSources":["Sed98LbBeGaXxenrM","8vn5MSGYWB4fAx9Z4"]}