Yazılım Yeniden Yapılamaya Yönelik Bir Kurumsal Mimari: Model Güdümlü ve Ontoloji Tabanlı Bir Yaklaşım

Tekrar kullanılabilirlik, bütünleştirme, anlamsal iletişim ve birlikte çalışabilirlik Yazılım Yeniden Yapılama (YYY) projelerinde karşılaşılabilen ana sorunlar arasındadır. Bu kapsamda çalışmamızda, YYY yönelik bir Kurumsal Mimari (KM) geliştirilmiş, ontolojik yöntemlerle test ve değerlendirilmiştir. Tasarım Bilimi Araştırma Yöntemi doğrultusunda yürütülen araştırmanın ana bileşenleri ve teorik temellerini YYY, Model Güdümlü Mimari, Kurumsal Mimari ve Ontoloji bilgi alanları oluşturmuştur. Çalışmanın yazılım mühendisliği alanına olan katkılarını, (a) YYY sürecine KM ile bütüncül yaklaşılması ile (b) KM ve YYY süreçlerinin anlamsal yapılarının ontolojik yöntemlerle iyileştirilmesi olarak göstermek mümkündür. İlk izlenimlerimiz, düzeylerindeki YYY problemlerine farklı bakış açılarını kazandırarak yazılımla ilgili paydaşların görüş ve ihtiyaçlarını karşılayabileceği yönündedir

An Enterprise Architecture for Software Re-Engineering: A Model-Driven and Ontology-Based Approach

Reusability, semantic communication, interoperability may be the major problems during Software Re-engineering (SRE) projects. In this study, therefore, we design and develop a SRE Enterprise Architecture (EA) and evaluate it using ontological methods and techniques. The study is conducted according to the guidelines and principles of Design Science Research Method. The SRE, Model-Driven Architecture and Ontology knowledge domains formed the theoretical foundations of our research. The contributions of the study to Software Engineering Research Domain could be (a) the holistic and enterprise architectural approach adopted for SRE and (b) improving the sematic architecture of SRE processes using ontological evaluation methods and techniques. Our first impression is as it can provide different views to SRE issues at various abstraction levels while it can represent the requirements of various stakeholders in a SRE project.

Kaynakça

[1]Editorial, 2011. A retrospective view of software maintenance and reengineering research-a selection of papers from 2010 European Conference on Software Maintenance and Reengineering. Journal of Software Maintenance and Evolution, DOI: 10.1002/smr.548.

[2]Tahvildari, L., Kontogiannis, K. & Mylopoulos J.2003.Quality-driven software reengineering, The Journal of Systems and Software, 66, s.225-239.

[3]Uysal, M.P. ve Mergen, 2013. E. A Quality-oriented approach to software reengineering, The Northeast Decision Sciences 2013 Annual Conference, Brooklyn, NY, USA, April 5-7, s.971-979.

[4]Wagner C. 2014. Model-driven software migration: a methodology, reengineering, recovery and modernization of legacy system, USA, Springer Vieweg.

[5]Swithinbank, P., Chessell, M., Gardner, T., Griffin,C., Man, J., Wylie, H. & Yusuf, L. 2005. Patterns: Model-driven development using ıbm rational software architect, USA, Redbooks.

[6]Beydeda, S.,·Book M., Gruhn, V. 2004.. Model-driven software development, USA, Springer-Verlag Berlin Heidelberg.

[7]Hevner, A.& Chatterjee S. 2010.Design Research in information systems, Integrated Series in Information Systems, 22, DOI 10.1007/978-1.

[8]Vaishnavi, V.K. & Kuechler W.J. 2008. Design Science Research methods and patterns: innovating ınformationand communication technology, USA, Auerbach Publications, Taylor & Francis Group.

[9]Elliot, J. Chikofsky and James H. C. 1990. Reverse engineering and design recovery: a taxonomy, IEEE Software, Cilt. 7, No.1, s.13-17.

[10]Object Management Group2003. MDA Guide Version 1.0.1. Technical Reportomg/2003-06-01, OMG.

[11]McCall, J. A., Richards, P. K., Walters, G. F. 1977. Factors in software quality, Nat'l Tech. Information Service, Cilt. 1, No.2 ve 3.

[12]Lankhorst, M. 2009.Enterprise architecture at work: modelling, communication, and analysis,Springer-Verlag Berlin Heidelberg.

[13]TOGAF2011.TOGAF Version 9.1, Open Group Standard,The Open Group.

[14]Uysal, M.P, Mergen E.A. 2015. Yazılım yeniden yapılamaya yönelik model güdümlü ve kaliteye yönelimli süreç modeli, 9. UlusalYazılım Mühendisliği Sempozyumu.

[15]Boehm, B. W., Brown, J. R., Kaspar, H., Lipow, M., McLeod, G., Merritt2016. M.ISO/IEC 2501n. Quality model division.http://www.iso.org.Erişim Tarihi: 28.05.2016.

[16]Antunes, G., Bakhshandeh, M., Mayer, Rudolf, Borbinha, J. Caetano,.A.2013.Using ontologies for enterprise architecture analysis, 17th IEEE International EDOCW, Vancouver, BC.

[17]Green, P., Rosemann M. 2005.Business systems analysis with ontologies, USA, Idea Group Publishing.

[18]Szwed P. 2016. Plugin for transforming Archimate files into OWL, [http://home.agh.edu.pl/ ~pszwed /en/doku.php? id=archi_to_owl],Erişim Tarihi: 12.03.2016.

[19]Pérez A.G., López, M.F., Corcho, O. 2004.Ontological engineering: with examples from the areas of knowledge management, e-Commerce and the semantic web, Springer-Verlag London Limited.

[20]Daconta, M.C., Smith, K.T., Obrst, L.J., 2003. The Semantic Web: A guide to the future of XML, web services, andknowledge management, John Wiley & SonsInc..

[21]Giray, G. ve Ünalır, M.O.2007. Yazılım mühendisliğinde ontolojilerin kullanımı, III.Ulusal Yazılım Mühendisliği Sempozyumu -UYMS 2007, Ankara, s.69-76.

[22]Hannay, J.E., Sjøberg, D.I.K., Dybå, T. 2007. A systematic review of theory use in software engineering experiments, IEEE Transactions on Software Engineering, Cilt 33(2), s. 87-107.

[23]Shull F., Singer, J., Sjøberg, D.I.K. 2008.Guide to advanced empirical software engineering, Springer-Verlag London Limited, USA.

[24]Woods, S.G., Quilici, A.E., Yang, Q. 2012.Constraint-based design recovery for software reengineering: theory and experiments, Springer, USA,

[25]Miller H. 1997.Reengineering legacy software systems, Digital Press, USA,

[26]Sage A.P. 1995.Systems Engineering and systems management for reengineering, Journalof Systems Software, Cilt 30, s.3-25,

[27]Birchall C. 2016.Re-engineering legacy software, Manning Publications,

[28]Seacord R.C., Plakosh D., Lewis G.A. 2003.Modernizing legacy systems: software technologies, engineering processes, and business practices, Addison-Wesley, USA.

[29]Frakes W.B., Kulczycki G., Moodliar N. 2008.An empirical comparison of methods for reengineering procedural software systems to object-oriented systems, Springer-Verlag, USA.

[30]Serge D., Ducasse S., Nierstrasz, O. 2002.Object-oriented reengineering patterns (the morgan kaufmann series in software engineering and programming), Morgan Kaufmann, USA.

[31]Rada, R. 2005.Reengineering Software: How to reuse programming to build new, state-of-the-art software, Glenlake Publishing Co.

[32]Valenti, S. 2002. Successful software reengineering, IGI Global, USA.

[33]Happel, H.J., Seedorf, S. 2006. Applications of ontologies in software engineering, 2nd International Workshop on Semantic Web Enabled Software Engineering (SWESE 2006),Athens, GA, U.S.A..

[34]Yang, H., Cui, Z. ve OBrien, P. 1999. Extracting ontologies from legacy systems for understanding and re-engineering, Computer Software and Applications Conference.

[35]Bringuente, A.C.O., FalboR.A., Guizzardi, G. 2011. Using a foundational ontology for reengineerıng a software process ontology, Journal of Information and Data Management, Vol 2, No 3, s.511-526.

[36]Katasonov, A. 2012.Ontology-driven software engineering: beyond model checking and transformations, International Journal of Semantic Computing, Vol. 6, No: 2, s.205-242.

Kaynak Göster