Yazılım Geliştirme Sürecinde Nesne Yönelimli Görsel Yazılım Testi ve Yazılım Projelerine Entegrasyon

Yazılım geliştirme sürecinde birçok mimari yapı teknolojisi ile karşılaşan yazılımcılar projelerinde bu mimari yapıya uygun veri tabanını kullanarak projenin alt yapısını güçlendirmektedir. Geliştiricilerin uzun zamandır yaptığı çalışmalar sonucunda elde edilen bazı sonuçlara göre çeşitli yazılım projelerinde veri toplama ve veri birleştirme zorluğunun projeye uygun mimari yapının yanlış seçiminden olduğunu ortaya koymaktadır. Mimari modelleme yazılım projeleri gün geçtikçe yüksek teknoloji ile kedini yenilemekte ve yeni mimari yapı teknolojiler üretilmektedir. Dünyanın en büyük endüstrilerinden biri hiç şüphesiz yazılım endüstrisidir.

Geliştirilen ürünlerin büyüklüğü ve insan yaşamının her alanında yer alması bu endüstrinin önemini daha da arttırmaktadır. Yazılım endüstrisi tarafından üretilen yazılımlar cep telefonlarımızdan bilgisayarlara, vatandaşlık işlemlerinden sağlık sektörüne, askeriyeden enerjiye hem üretim hem de tüketim alanında kullanılmaktadır. Bu kapsamda akla gelen her alanla ilgili ihtiyaçların karşılanması için de projeler hazırlanmaktadır. Bu projelerde başarılı yazılımlar geliştirmenin temel yolu bu konudaki standartların ve belirlenmiş süreçlerin en iyi şekilde uygulanması ve daha önceki projelerdeki hatalardan en iyi şekilde ders alınmasından geçmektedir. Yazılım dünyasının gelişimine bakıldığında, yıllar geçtikçe geliştirilen yazılımların büyüklüğünün ve karmaşıklığının arttığı görülmektedir. Bu büyüme ve karmaşıklıkta, yazılımlarda hataların çok olması, güvenirlilik ve güvenliğin tam sağlanamaması gibi problemleri beraberinde getirmiştir.

Entity Framework gibi Model tasarımı için kullanılan yazılım projelerinde veri odaklı yazılım üretimi projenin kaliteli ve maliyetli olmasını sağlamaktadır. Hali hazırda olan az maliyetli .Net Framework teknolojisini barındıran LightSwich veri tabanı için oluşturulan mimarinin model denetimi ve test aşaması editörün belirlediği operatör tarafından yapılır. Nesne yönelimli görsel yazılım testi projelerde kaliteli yazılım geliştirmeyi sağlamanın tek etkili yolu yazılan gereksinimlerin ve kodların proje dışı kaynaklar tarafından teste tabi tutulmalarıdır. Ancak, test aşaması yazılım projelerinde geliştirmeden sonra gerek duyulan insan kaynağı nedeni ile yüksek maliyetlere katlanılmayı gerektiren bir aşamadır.

Testleri daha az kaynak ile yapmak amacıyla otomatikleştirme ihtiyacı doğmaktadır. Bu alanda umut vaat edici gelişmelerden biri olarak model denetleme araçları ile yapılan analiz ve üretilen test durumlarının uygulanması gibi tekniklerden bahsedebiliriz. ABD’de farklı sektörlere farklı ölçeklerde yazılım geliştiren firmaların gerçekleştirdikleri 30000 yazılım projesi incelenerek 2004 yılı rakamlarına göre oluşturulan raporda, yazılım projelerinin sadece %34’ünün başarılı bir şekilde sonuçlandığı, %15’inin başladıktan sonra iptal edildiği; %51’inin ise tartışmalı, yani zamanında bitirilememiş veya gereksinimleri karşılamamış şekilde bitirilen projeler olduğu görülmektedir. Bu rakamlar farklı bir şekilde ifade edilirse yazılım sektöründe yapılan gemilerin %15’inin daha suya indirilmeden battığı sonucuna ulaşılır. Ayrıca rapora göre yazılım projelerindeki hatalar ABD ekonomisine yılda 60 milyar $’a mal olmaktadır. Bu rakam yazılım hatalarının ne kadar önemli bir kayba neden olduğunun açık ve çarpıcı bir göstergesidir. Model denetleyiciler tarafından üretilen çıktılar doğrudan test durumu olarak kullanılmaya uygundurlar. Kullanımda olan yazılım testleri otomasyonu yapıla bilinmekte olsa da bu durum tüm projeler üzerinden bakıldığında oldukça ufak bir kesime hitap etmekte, projelerdeki girdi çeşitliliği nedeniyle tam anlamıyla endüstriyel bir seçenek haline gelememektedir. Model denetleyici temelli testlerin uygulanmasındaki en büyük kısıt kullanımda olan araç gerecin çıktılarının mevcut performansının yeterli olmayışıdır. Performans kısıtlarının bu denli fazla olmasının sebebi ise genellikle projelerde çok fazla test durumu tanımı oluşturulmasıdır. Gereksinimler bu araçlara aktarıldığında, genellikle mükerrer test durumları oluştuğu gibi bazı durumlarda ise tamamen gereksiz test durumları oluşturulmasında söz konusu olmaktadır.

 


[1] Brooks, F. P. (1995). The Mythical Man-Month, Anniversary Edition, AddisonWesley Publishing Company.
[2] Pfleeger, S. L. (1998). Software Engineering: Theory and Practice. Upper Saddle River, NJ, Prentice Hall.
[3] Gibbs, W. W. (1994). Software’s Chronic Crisis. Scientific American: 86-95.
[4] CSAB (1997). “Defining the Computing Sciences Professions.” http://www.csab.org/comp_sci_profession.html.
[5] Baber, R. L. (1997). “Comparison of Electrical “Engineering” of Heaviside’s Times and Software “Engineering” of our Times.” IEEE Annals of the History of Computing
[6] ACM/IEEE-CS Joint Task Force on Software Engineering, “Software Engineering Code of Ethics and Professional Practice.”
[7] IEEE (1990). IEEE Standard 610.12-1990, IEEE Standard Glossary of Software Engineering Terminology.
[8] Boehm, B. (May 1988). “A Spiral Model for Software Development and Enhancement.” Computer 21(5): 61-72.
[9] Boehm, B. and R. Turner (2003). Balancing Agility and Discipline: A Guide for the Perplexed. Boston, MA, Addison Wesley.
[10] Boehm, B. (2002). “Get Ready for Agile Methods, with Care.” IEEE Computer 35(1): 64-69.
[11] Boehm, B. W. (1981). Software Engineering Economics. Englewood Cliffs, NJ, PrenticeHall, Inc.
[12] Humphrey, W. S. (1995). A Discipline for Software Engineering. Reading, MA, Addison Wesley.
[13] Jacobson, I., G. Booch, et al. (1999). The Unified Software Development Process. Reading, Massachusetts, Addison-Wesley.
[14] Mills, H. D., R. C. Linger, et al. (1987). “Box Structured Information Systems.” IBM Systems Journal 26(4): 395-413.
[15] Beck, K. (2000). Extreme Programming Explained: Embrace Change. Reading, Massachusetts, Addison-Wesley.
[16] Schwaber, K. and M. Beedle (2002). Agile Software Development with SCRUM, Prentice-Hall.
[17] Cockburn, A. (2001). Agile Software Development. Reading, Massachusetts, Addison Wesley Longman.
[18] Coad, P., E. LeFebvre, et al. (1999). Java Modeling in Color with UML, Prentice Hall.
[19] Stapleton, J. (1997). DSDM: The Method in Practice, Addison Wesley Longman.
[20] Technopedia definition. Data Integration.
https://www.techopedia.com/ definition/28290/data-integration. Accessed on 2 Aug. 2015.
[21] Data Integration Info. Data Integration. http://www.dataintegration.info/dataintegration. Accessed on 14 Aug. 2015.
[22]  Most, .M.M., Craddick, S., Crawford, S., Redican, S., Rhodes, D., Rukenbrod, F., Laws, R. (2003). Dietary quality assurance processes of the DASH-Sodium controlled diet study. Journal of the American Dietetic Association, 103(10): 1339-1346.
[23] Whitney, C.W., Lind, B.K., Wahl, P.W. (1998). Quality assurance and quality control in longitudinal studies.Epidemiologic Reviews, 20(1): 71-80.
[24] Knatterud.,G.L., Rockhold, F.W., George, S.L., Barton, F.B., Davis, C.E., Fairweather, W.R., Honohan, T., Mowery, R, O’Neill, R. (1998). Guidelines for quality assurance in multicenter trials: a position paper. Controlled Clinical Trials, 19:477-493.
[25] Technopedia definitions. http://www.techopedia.com/definition/25328/dataextraction. Accessed on 11 Sep. 2015.
[26] Social Care Institute for Excellence (2006). The conduct of systematic research reviews for SCIE knowledge reviews http://www.scie.org.uk/  publications/researchresources/rr01.pdf
[27] What is open source? https://opensource.com/resources/what-open-source. Accessed on 28 Sep. 2015.
[28] A survey on automated server monitoring. Retrieved October 5,2015, from http://rphp.weebly.com/uploads/2/4/8/0/24803087/[31]_survey_on_automated.pdf
[29] Introduction to Project Management: Principles, Techniques and Tools 2013. Retrieved October 10, 2015, from
http://oe.ucdavis.edu/local_resources/docs/ projectmanagementtraining.pdf.
[30] Project Management using OpenProj. Retrieved October 15, 2015, from http://plaistowe.co.nz/main/wp-content/uploads/PMexercise_1.pdf.
[31] Project Management Software / OPENPROJ. Retrieved October 15, 2015, from http://www.projectmanagesoft.com/software/openproj.
[32] G. Roderick Singleton2005. Project-Management with Gantt-Charts. Retrieved October 18, 2015, from
http://www.openoffice.org/ documentation/HOW_TO/ spreadsheet/gantt_pm.odt.
[33] Is there any truth in “projectlibre the open source replacement of microsoft project”? Retrieved October 20, 2015, from
http://www.tsi.lv/sites/default/files/editor/science/Research_journals/Computer/2013/V2 /08_konstantin_stoychev_tsvetkov_mariana_mateeva_petrova.pdf.
[34] Kit, E. (1995), Software Testing in the Real World: Improving the Process, Reading, MA, Addison-Wesley.
[35] Kaner, C. (1999), Testing Computer Software, John Wiley and Sons, NY.
[36] Fewster, M., Graham, D. (1999) Software Test Automation: Effective use of test execution tools, ACM Press, New York.
[37] DeMillo, R.A., McCracken, W.M., Martin, R.J. (1987), Software testing and evaluation, Banjamin/Kummings Publishing Company, Inc., California.
[38] Chillarege, R. (1999), Software Testing Best Practices, IBM Research.
[39] IEEE/ANSI (1987), IEEE Standard for Software Unit Testing, 1008-1987.
[40] Michael, C., Radosevich, W. (2009), Black Box Security Testing Tools, Cigital Inc.
[41] Myers, G. J. (2004), The Art of Software Testing, Second Edition, John Wiley & Sons, NY.
[42] Offutt, A., Abdurazik, A. and Alexander R. (2000), An Analysis Tool for Coupling-based Integration Testing, The Sixth IEEE International Conference on Engineering of Complex Computer Systems (ICECCS ’00), pp. 172–178
[43] Taipale, O. (2007), Observations on software Testing Practice; Doctor of science thesis; Lappeenranta University of Technology.
[44] Introduction to Eclipse. Retrieved October 25, 2015, from http://www.csee.umbc.edu/courses/undergraduate/341/fall08/Lectures/Eclipse/intro-toeclipse.pdf.
[45]  JUnit Recipes. Practical Methods for Programmer Testing, Manning. J.B. Rainsberg. July 2004. Retrieved November 13, 2015. http://iie.fing.edu.uy/~elopez/biblio/bibliografia/libros/software/java/junit/Manning.JUn it.Recipes.Practical.Methods.for.Programmer.Testing.pdf
[46]  Java Extreme Programming Cookbook. Eric M. Burke & Brian M. Coyner. March 2003. Retrieved November 16, 2015.
http://dbmanagement.info/Books/MIX /Java_Extreme_Programming_Cookbook.pdf
[47] Simplicity Survival Handbook. Bill Jensen. Retrieved November 23, 2015. http://104.155.28.208/the-simplicity-survival-handbook-32-ways-to-do-less-andaccomplish-more.doc.
[48] What is Twitter, a Social Network or a News Media? – Haewoon Kwak, Changhyun Lee, Hosung Park, and Sue Moon. Retrieved November 25, 2015.  http://www.eecs.wsu.edu/~assefaw/CptS580-06/papers/2010-www-twitter.pdf.
[49] Glynis M. Breakwell (2004). Introduction: Approaches to Data Collection and Data Analysis.
[50] C.J. Date. (Aug 1, 2003). An Introduction to Database Systems.
[51] Ross Mistry —Stacia Misner 2014. Introducing Microsoft SQL Server 2014.
[52] AnHai Doan, Alon Halevy, Zachary G. Ives (2012).  Principles of Data Integration.
[53] Database Report. https://www.techopedia.com/definition/24439/database-report. Accessed on 28 Nov. 2015.
[54] Report Builder Guide to Creating Reports. (2007). Retrieved November 28, 2015. http://support.guptatechnologies.com/Docs/ReportBuilder/WhitePapers/ReportBuilderG uideToCreatingReports.pdf.
[55] Semantic Integration of Heterogeneous Data Sources for Monitoring FrequentRelease Software Projects. (2010). Retrieved November 30, 2015.  http://publik.tuwien.ac.at/files/PubDat_185318.pdf.
Sara Baase (2008)  A Gift of Fire. ABD: Pearson Prentice Hall.
Bogdan Korel (1990) Automated Software Test Data Generation. ABD: IEEE Trans. Softw.
Glenford J. Myers (1979) The Art of Software Testing. ABD: John Wiley & Sons, Inc.
Alain Abran ve James W. Moore (2004) SWEBOK Guide to the Software Engineering Body of Knowledge ABD: IEEE Computer Society
Mats Grindal ve Brigitta Lindström (2002) Challenges in Testing Real-Time Systems. İSKOÇYA: EuroSTAR
John B. Goodenough ve Susan L. Gerhart (1975) Toward a theory of test data selection. ABD: Uluslararası Güvenilir Yazılım Konferansı
Boris Beizer (1990) Software testing techniques  ABD:Van Nostrand Reinhold Co.
Richard A. DeMillo, Richard J. Lipton, ve Frederick G. Sayward (1978) Hints on Test Data Selection: Help for the Practicing Programmer. ABD: Computer Dergisi
A.Jefferson Offut (1995) A Practical System for Mutation Testing: Help for the Common Programmer ABD: ISSE Department George Mason University
P. G. Frankl, S. N. Weiss, ve C. Hu. (1997) All-uses versus mutation testing: An experimental comparison of effectiveness. ABD: Journal of Systems and Software, Sayı 38:235–253
Timothy A. Budd and Dana Angluin (1982) Two notions of correctness and their relation to testing. ABD: Acta Informatica Sayı 18
Jan Tretmans (1999) Testing Concurrent Systems: A Formal Approach. ABD:ConCUR 1999
Marie-Claude Gaudel (1995) Testing Can Be Formal, Too. ABD: TAPSOFT
Jan Tretmans (1996) Conformance Testing with Labelled Transition Systems: Implementation Relations and Test Generation ABD:Computer Networks and ISDN Systems
B.A. Myers (2001) Using Hand-Held Devices and PCs Together ABD:Communications of the ACM Cilt 44, Sayı 11, s. 34 – 41.
Alessandro Cimatti, Edmund M. Clarke, Fausto Giunchiglia, ve  Marco Roveri (1999) NUSMV: A New Symbolic Model Verifier. İNGİLTERE: 11. Uluslarası Bilgisayar Destekli doğrulama Konferansı , ISBN 3-540-66202-2 Sayfa 495
H. Gümüşkaya ve M.V. Nural (2008) Service-Oriented Context-Awareness and Context-Aware Services ABD: Advances in Computer and Information Sciences and Engineering
Edmund M. Clarke ve E. Allen Emerson (1982) Design and synthesis of synchronization skeletons using branching-time temporal logic. İNGİLTERE: Programların mantığı atölye çalışmaları Springer-Verlag.
E. Allen Emerson ve Joseph Y. Halpern (1982) Decision procedures and expressiveness in the temporal logic of branching time. ABD: 14. Bilgisayar teorisi ACM sempozyumu ACM Press.
Matthew Hennessy ve  Robin Milner (1985) Algebraic laws for nondeterminism and concurrency. ABD: ACM
Dexter Kozen (1983) Results on the propositional mu-calculus. ABD: Teorik Bilgisayar Bilimleri sayı 27
Edmund M. Clarke, E. Allen. Emerson ve A.P. Sistla (1986) Automatic verification of finite-state concurrent systems using temporal logic specifications. ABD: ACM Trans. Program. Lang. Syst. 8, 2, 244–263.
A. Gargantini ve C. Heitmeyer (1999) Using Model Checking to Generate Test from Requirements Specifications Fransa:7. Avrupa Yazılım Mühendisliği Konferansı
P. Ammann ve P.E. Black (1999) Abstracting Formal Specifications to Generate Software Tests via Model Checking ABD:IEEE, sayı 2, sayfa 10.A.6.1-10
W. Lui ve P. Dasiewicz (2000) Component Interaction Testing Using ModelChecking ABD: CSMR
[1] International Standard ISO/IEC 9126-1:2001, “Software Engineering – Product Quality – Part 1: Quality Model”.
[2] McCall, J., Richards, P., Walters, G., “Factors in Software Quality, Volume I”, NTIS Springfield, 1977.
[3] Tian, Y., Chen, C., Zhang, C., “AODE for Source Code Metrics for Improved Software Maintainability”, Fourth International Conference on Semantics, Knowledge and Grid, 2008.
[4] Elish, M. O., Elish, K. O., “Application of TreeNet in Predicting ObjectOriented Software Maintainability: A Comparative Study”, European Conference on Software Maintenance and Reengineering, 2009.
[5] Zhou, Y., Leung, H., “Predicting Object-Oriented Software Maintainability Using Multivariate Adaptive Regression Splines”, Journal of Systems and Software, 2007.
[6] Henry, S., Humphrey, M., Lewis, J., “Evaluation of the Maintainability of Object-Oriented Software”, IEEE Region 10 Conference on Computer and Communication Systems, 1990.
[7] Unhelkar, B., “Practical Object Oriented Design”, Cengage Learning Australia, 2005.
[8] Shalloway, A., Trott, J., “Design Patterns Explained: A New Perspective on Object-Oriented Design”, Addison-Wesley, 2002.
66
[9] Abreu, F., Melo, W., “Evaluating the Impact of Object-Oriented Design on Software Quality”, Proceedings of the 3rd International Software Metrics Symposium, 1996.
[10] Chidamber, S., Kemerer, C., “A Metrics Suite for Object-Oriented Design”, IEEE Transactions on Software Engineering, Volume 20, No 6, June 1994.
[11] “Patterns and Software: Essential Concepts and Terminology”, http://www.cmcrossroads.com/bradapp/docs/patterns-intro.html, Access date: 05/08/2009.
[12] Schmidt, D., Stal, M., Rohnert, H., Buschmann, F., “Pattern-Oriented Software Architecture Volume 2: Patterns for Concurrent and Networked Objects”, Wiley, 2000.
[13] Douglass, B. P., “Real-Time Design Patterns: Robust Scalable Architecture for Real-Time Systems”, Addison-Wesley, 2002.
[14] Schmidt, D., Stal, M., Rohnert, H., Buschmann, F., “Pattern-Oriented Software Architecture Volume 1: A System of Patterns”, Wiley, 1996.
[15] Gamma, E., Helm, R., Johnson, R., Vlissides, J., “Design Patterns: Elements of Reusable Object-Oriented Software”, Addison-Wesley, 1998.
[16] Mitchell, A., Power, J. F., “Toward a Definition of Run-Time ObjectOriented Metrics”, 7th ECOOP Workshop on Quantitative Approaches in Object-Oriented Software Engineering, 2003.
[17] “ISO 9126 Software Quality Characteristics, An Overview of the ISO 9126–1 Software Quality Model Definition“, www.sqa.net/iso9126.html, Access date: 05/08/2009.
Gürbüz, A., “Yazılım Test Mühendisliği”, Papatya Yayıncılık Eğitim, İstanbul, 31,34 (2010).
Tiftik, N., Öztarak, H., Ercek, G. ve Özgün, S., “Sistem/yazılım geliştirme sürecinde doğrulama faaliyetleri”, III.Ulusal Yazılım Mühendisliği Sempozyumu, Ankara, 1-2 (2007).
Ertemel, H.Ö., Selçuk, Y.E, Kalıpsız O., “Nesneye yönelik sistemler için bir uyum ölçütü önerisi: Comıas”, IV. Ulusal Yazılım Mühendisliği Sempozyumu, Ankara, 1 (2009).
Mustafa, K. ve Khan, R.A., “Software Testing: Concept and Practices”, India, Lucknow, 5-21, 227-228  (2007).
Naik, K. ve Tripathy, P., “Software Testing and Quality Assurance”, New Jersey, USA, 7-10 (2008)
Demir, D., “Endüstride yazılım testi ve kalite güvencesi etkinlikleri”, I. Ulusal Yazılım Mühendisliği Sempozyumu, İzmir, 23-25 Ekim (2003).
Tuna, O., “Yazılım geliştirme süreci ve mimari gösterime dayalı yazılım testi”, Yüksek Lisans Tezi, Dokuz Eylül Üniversitesi Fen Bilimleri Enstitüsü, İzmir, 1 (2005).
İnternet: IEEE Standards Associatiın, “Glossary of Software Engineering Terminology”, http://standards.ieee.org/findstds/standard/610.12-1990.html, (1990).
Smith, M.D., Robson, D.J, “Object oriented programming the problems of validation”, Software Maintenance, 1990. (ICSM ’90) Proceedings. IEEE International Conference,  CH2921-5/90/0000/0272, (1990).
ANSI Std-1991, “Standart glossary of software engineering terminology (ANSI)”, The institute of electrical and electronics engineers inc., (1991).
Myers, G., “The Art of Software Testing”, Wiley Interscience, ISBN: 471043281, (1979).
Gill, A., ”Debugging haskell by observing intermediate data structures”, In Proceedings of the 4th Haskell Workshop, Technical Report of the University of Nottingham, (2000).
Lewis,  E. W., “Software Testing and Continuous Quality Improvement, 2nd ed.”, A CRC Pres Company, USA, 10, 60, 117-127, 129-155, 183-185, 230-256 (2005).
Bourque, P. ve Dupuis, R., “Guide To The Software Engineering Body Of Knowledge”, The Institute of Electrical and Electronics Engineers, USA, 5 (2004).
Davis, S. ve arkadaşları, “Software Testing Engineering With IBM Rational Functional Tester”, Pearson Plc, USA, 54 (2010).
Muller, T., Graham, D., Friedenberg, D. ve Veendendal, E., “International Software Testing Qualifications Board (ISTQB)”, Foundation Level Syllabus, USA, 10 (2007).
Sommerville, I., “Software Engineering”, ISBN:0-201-39815-X, Addison Wesley, (2001).
Garrido, J.M., “Object Oriented Programming: From Problem Solving to Java”, Charles River Media, USA, 19-23, 240-241 (2003).
Güngören, B., “UML ile Nesne Tabanlı Çözümleme ve Tasarım”, Seçkin Yayıncılık, Ankara, 87(2005).
Goodman, P., “The Practical Implementation of Software Metrics”, McGrawHill, New York, USA, 136 (1993).
Schulmeyer, G. G. ve McManus I., J., “The Handbook of Software Quality Assurance, 3rd Edition”, Prentice Hall PTR, USA, 404 (1998).
Pressman, R. S., “Software Engineering: A Practitioner’s Approach”, 6th Ed., Mc Graw Hill, Singapore, 480-481, 492 (2005).
Pusala, R., “Operational Excellence Through Efficient Software Testing
Metrics”, EuroSTAR 2005: European Conference on Software Testing İnfosys, Denmark, 2-3 (2005).
Yurga, T., “Nesne Yönelimli Yazılım Tasarımının Testedilebilirliğini Ölçmeye Yönelik Bir Model”, II.Ulusal Yazılım Mühendisliği Sempozyumu, Ankara, 3 (2005).
Xie T., Huang H., Chen X., Mei H. and Yang F., “Object Oriented Software Metrics Technology – Technical Report”, Peking University, (2001).
Binder V. R., “Software Testing, Verification and Reliability”, Vol. 6, RBSC Corporation, USA, 125-252 (1996).
İnternet: Testingfaqs.org “Defect Tracking Tools” http://www.testingfaqs.org/ttrack.html (2010).
İnternet: SourceForge.net, “FindBugs™ – Find Bugs in Java Programs” http://findbugs.sourceforge.net/index.html (2008).
İnternet: Yıldız Teknik Üniversitesi Bilgisayar Mühendisliği, “Ölçüm Programı ve Kullanımı-Metrics”, http://www.ce.yildiz.edu.tr/myindex.php?id=63 (2009).
İnternet: SourceForge.net, “PMD” http://pmd.sourceforge.net/ (2002).
İnternet: Coverlipse, http://coverlipse.sourceforge.net/index.php (2005).
İnternet: Checksytle, http://checkstyle.sourceforge.net/ (2001).
İnternet: SDMetrics, http://www.sdmetrics.com/ (2009).
İnternet: Coverity, “Coverity Analysis” http://www.coverity.com/ (2009).
Kung D. ve arkadaşları, “Developing an Object-Oriented Software Testing and Maintenance Environment”, Communications of the ACM – Special issue on object-oriented experiences and future trends , Newyork USA, Vol:38, Issuse:10 (1995).
Pezz, M., Young, M., “Testing Object Oriented Software,” icse, pp.739-740, 26th International Conference on Software Engineering (ICSE’04), (2004).
Bahsir, İ. ve Goel, A.L, “Testing Object Oriented Software”, NewYork, USA, 21 (2000).
Berard, E.V., “Essays on Object-Oriented Software Engineering”, Volume 1, Prentice Hall, Englewood Cliffs, New Jersey, (1993).
Daşdemir, Y., “Delphi 2006 Programlama”, Türkmen Kitabevi, İstanbul, 256 (2006).
Pacheco, X., “Herkes için Delphi 8”, Alfa Basım Yayın Dağıtım, İstanbul, 93,111 (2004).
Booch, G., “Object-Oriented Analysis and Design With Applications”, Second Edition, Benjamin/Cummings Publishing Company, Redwood City,
California, (1994).
Hitz, M., and Montazeri, B., “Chidamber and Kemerer’s metric suite: A measurement theory perspective”, IEEE Transactions on Software Engineering, Vol. 4, pp.267-271, (1996).
O’regan, G., “A Pratical Approach to Software Quality”, Maple-Vail Book Manufacturing Group, Newyork, 71-77 (2002).
Kızılören, T., “Java ve Java Teknolojileri”, KODLAB Yayın Dağıtım Yazılım ve Eğitim Hizmetleri San. ve Tic. Ltd. Şti, İstanbul, 128-130 (2010).
Kalıpsız, O. ve arkadaşları, “Sistem Analizi ve Tasarımı: Nesneye Yönelik Modelleme”, Altan Matbaacılık Toros Dağıtım, İstanbul, 107 (2006).
McGregor, J. D., and Harrold, M. J., “Toward a Testing Methodology for Objectoriented Software Systems.” Proc. Workshop on Object Oriented Software Engineering Practice, February (1992).
Amstel, M.,v., Brand, M., v.,d., and Lange, C., “Metrics For Analyzing The Quality Of Model Transformations”, In Falcone, G., Gu´eh´eneuc, Y., Lange, C., Porkol´ab, Z., Sahraoui, H., eds.: Proceedings of the 12th ECOOP Workshop on Quantitative Approaches in Object-Oriented Software Engineering, Paphos, Cyprus, pp.41–51, (2008).
Thirugnanam, M. and Swathi J.N., “Quality Metrics Tool for Object Oriented Programming”, International Journal of Computer Theory and Engineering, Vol. 2, No. 5, pp.1793-8201, (2010).
Kaur, J., P.,, Verma A. and Thapar, S., “Software Quality Metrics for ObjectOriented Environments”, Proceedings of National Conference on Challenges ve Opportunities in Information Technology (COIT-2007), RIMT-IET, Mandi Gobindgarh, pp.13-16, (2007).
Mosley, D.J. ve Posey B.A., “Just Enough Software Test Automation”, Prentice Hall PTR, USA, 10 (2002).
Naish, L., “A Declarative Debugging Scheme”, Journal of Functional and Logic Programming, 44 (1997).
Wallace, M., Chitil, O., Brehm, T., Runciman, C., “Multiple-view Tracing for Haskell: A New Hat”, In Preliminary Proceedings of the 2001 ACM Sıgplan Haskell Workshop, Frenze, Italy, 151 (2001).
Mary Jean Harrold, John D. McGregor, Kevin J. Fitzpatrick: “Incremental Testing of Object-Oriented Class Structures”, Proc. Of 14th International Conference on Software Engineering, USA, May 11-15,  68-80 (1992).
Kung, D., Gao, J., Hsia, P., Toyoshima, Y., and Chen, C., “A Test Strategy for Object-Oriented Systems”, Proc. of Computer Software and Applications Conference, pp. 239 – 244, Dallas Texas, August 9-11, IEEE Computer Society, (1995).
Şimşek, H.,  Özdemir, N., “Güvenlik-Kritik Sistemlerde Yazılım Birim Testleri”, III.Ulusal Yazılım Mühendisliği Sempozyumu, Ankara, 27-30 Eylül (2007).
Wu, Y., “Software Design”, Fall 2000 Lecture Notes, George Mason
University, (2001).
Kılıç, E. ve Öztürk, S., “Büyük Ölçekli Yazılım Projelerinde Entegrasyon Testleri”, Yazılım Kalitesi ve Yazılım Geliştirme Araçları Sempozyumu (YKGS10), İstanbul, 5.Oturum (2010).
Rogers, R. O., “Acceptance testing vz. unit testing: A developer’s perspective, XP/Agile Universe”, Lecture Notes in computer Science, ISSN 0302-9743 (Print) 1611-3349 (Online) V.3134 (2004).
Canna, J., “Testing Fun? Really?”, IBM developer Works Java Zone, (2001).
Miller, R., Collins, C., “Accepting Testing”, XP Universe Conference, July, (2001).
İnternet: Software Testing, “Yazılımda Test Süreçleri”, http://softwaretestingtr.blogspot.com/ (2011).
IEEE 729/610.12- 1990: IEEE Std 610.12-1990 IEEE Standart Glossary of Software Engineering Terminology – Description, (1990).
Beizer, B., “Software Testing Techniques”, 2nd Ed. Itp Media, New York, Van Nostrand Reinhold, (1990).
Raishe, T., “Black Box Testing”, Lecture Notes of College of Engineering and Computer Science, Florida Atlantic University, (1999).
Keytorc, “Certified Tester Foundation Level Syllabus”, International Software Testing Qualifications Board (ISTQB), ISTQB Report Versiyon 2010, 40
(2010).
İnternet: Buzzle.com, “Software Testing Technique” http://www.buzzle.com/articles/software-testing-techniques.html (2011).
Fagan, M. E, “Advanced in software inspection”, IEEE Transactions on Software Engineering, Vol. SE-12, No.7, July (1986).
Midtgaard, J., “Control-Flow Analysis of Functional Programs”, BRICS Report Series: RS-07-18, ISSN 0909-0878, December (2007).
Kaveh, P., “A framework of the use of information in software testing”, The Faculty Of The School Of Engineering and Applied Science Of The George Washington University in Partial Satisfaction of The Requirements for The Degree of Doctor of Science, May 16, (2010).
Ertemel, H.Ö., “Nesneye yönelik yazılım geliştirmede kalite ölçütlerinin incelenmesi”, Yüksek Lisans Tezi, Yıldız Teknik Üniversitesi Fen Bilimleri Enstitüsü, İstanbul, 1 (2009).
Kitchenham, B. ve Pfleeger, S.L., “Software Quality: The Elusive Target”, IEEE Software, vol. 13, no. 1, pp.12-21, January (1996).
Baldassari, B., Robach, C. ve du Bosquet, L., “Early Metrics for Object Oriented Designs”, IEEE Testability Assessment, 2004. IWoTA 2004. Proceedings. First International Workshop, p.62-69, (2004).
Jorgensen M, “Software Quality Measurement” Department of Informatics, University of Oslo, Oslo, Norway, Vol:30, Issue:12, 907-912, September (1999).
Carey, D., “Software Quality Intrinsic, Subjective or Relational”, Software Engineering Notes, 21(1):74–75 (1996).
Lanubile F, Visaggio, G., “Evaluating predicting quality models derived from software measures: Lessons learned”, Technical report CS-TR- 3606, Department of Computer Science, University of Maryland, (1996).
Jetter, A., “Assessing Software Quality Attributes with Source Code Metrics”, Diploma Tezi, University of Zurich Department of Informatics, Zurih, 13 (2006).
McCall, J. A., Richards, P. K., and Walters, G. F., “Factors in software quality”, Nat’l Tech.Information Service, 1,2 and 3, (1977).
Boehm, B. W., Brown, J. R., Kapsar, H., Lipow, M., McLeod, G., and Merritt, M., “Characteristics of software quality”, Vol 1 of TRW series on softwaretechnology, North-Holland, Amsterdam, Netherlands (1978).
Dromey, R. G., “A model for software product quality”, Software Engineering, IEEE Transactions on, 21(2):146 – 162, (1995).
Bansiya, J. ve Davis, C. G., “A hierarchical model for object-oriented design quality assessment”, IEEE Transactions on Software Engineering, vol. 28, no. 1, pp.4-17, January (2002).
Beklen, A., “İleri yazılım mühendisliği (ISO/IEC 9126)”, Maltepe Üniversitesi Fen Bilimleri Enstitüsü, Ders Notu, 1-11 (2008).
Erdemir, U., Tekin, U. ve Buzluca, F. “Nesneye dayalı yazılım metrikleri ve yazılım kalitesi”, Yazılım Kalitesi ve Yazılım Geliştirme Araçları Sempozyumu (YKGS08), İstanbul, 4 (2008).
İnternet: RUP (2007). Rational Unified Process., “Types of Test”,  http://rup.hops-fp6.org/process/workflow/test/co_tytst.htm, June 17, (2007).
Amstel, V., M.F., Lange, C.F.J., Brand, M.G.J., “Metrics for analyzing the quality of model transformations”, In Falcone, G., Gu´eh´eneuc, Y., Lange, C., Porkol´ab, Z., Sahraoui, H., eds.: Proceedings of the 12th ECOOP Workshop on Quantitative Approaches in Object-Oriented Software Engineering, Paphos, Cyprus, 41–51 (2008).
Çatal, Ç. ve Diri, B., “Yazılım metriklerini kullanarak düşük kaliteli/yüksek kaliteli modüllerin otomatik tespiti”, Yazılım Kalitesi ve Yazılım Geliştirme Araçları Sempozyumu (YKGS08), İstanbul, 1, 8-9 (2008).
Briand, L. C., Morasca, S., and Basili, V. R., “Property- Based Software Engineering Measurement,” IEEE Transactions on Software Engineering, vol. 22 (1), (1996).
Çatal, Ç. ve Diri, B., “Software fault prediction with object oriented metrics based artifical immune recognition system”, Lecture notes in computer science 4589, Springer-Verlag, 300-314 (2007).
Çatal, Ç. ve Diri, B., “A fault prediction model with limited fault data to improve test process”, Lecture notes in computer science 5089, Springer-Verlag, 244257 (2008).
Chidamber, S.R. ve Kemerer, C.F., “A metrics suite for object-oriented design,” IEEE Transactions on Software Engineering, Vol. 20, No. 6, 482-491 (1994).
Brito e Abreu, F., Pereira, G., and Soursa, P., “Coupling Guided Cluster Analysis Approach to Reengineer the Modularity of Object-Oriented Systems,” Proc Euromicro Conference Software Maintenance and Reeng., pp.13-22, (2000).
İnternet: McCabe Software “Using Code Quality Metrics in Management of
Outsourced  Development  and  Maintenance”
http://www.mccabe.com/pdf/McCabeCodeQualityMetrics-OutsourcedDev.pdf (2010).
Chidamber, S.R, ve Kemerer, C.F., “Towards A Metric Suite For Object-Oriented Design”, Proceedings : OOPSLA ’91, Phoenix, AZ, pp.197-211, (1991).
Nabiyev, V.V., “Yapay Zeka”, Seçkin Yayıncılık, Ankara, 445 (2005).
Allahverdi, N., “Uzman Sistemler: Bir Yapay Zeka Uygulaması”, Atlas Yayıncılık, İstanbul, 16-20 (2002).
Muratore, J. F. and DeMasie, M. P. “Artificial intelligence and expert systems inflight software testing”,  Digital Avionics Systems Conference, 1991.
Proceedings.,  IEEE/AIAA  10th,  Digital  Object  Identifier:
10.1109/DASC.1991.177202, Los Angeles, CA , USA, 416-419 (1991).
Xu, Z., Khoshgoftaar, T. M., Gao, K., “Application of fuzzy expert system ın test case selection for system regression test” In Proceedings of IEEE International Conference on Information Reuse and Integration, IEEE Computer Society, Las Vegas, NV, August (2005).
Xu, Z., Khoshgoftaar, T. M., Allen, E. B., “Application of fuzzy expert systems in assessing operational risk of software”, Information ve Software Technology, 45(7): 373-388 (2003).
Ramsey, C. L. ve Basili, V. R., “An evaluation of expert systems for software engineering management,“ Departmant Computer Science University Maryland College Park. Tech. Rep. TR 1708,  IEEE Transactions on Software Engineering, pp. 747–759, September (1986).
Tao, Y., “ Using Expert Systems to Understand Object-Oriented Behaviour”, The 26th SISCSE Technical Symposium on Computer Science Education, (1995).

About the author: Abdurrahman Kasım TÖK

#Bisiklet #Teknoloji #Yazılım #Researcher #Insider #Mkutup #UTM

You must be logged in to post a comment.