Araştırma Makalesi
BibTex RIS Kaynak Göster

Bilimsel Yazılım Geliştirme Süreçleri için bir Yazılım Mühendisliği Yetkinlik Envanteri

Yıl 2023, Cilt: 16 Sayı: 2, 170 - 176, 20.11.2023
https://doi.org/10.54525/tbbmd.1159443

Öz

Araştırma amaçlı bilimsel yazılım geliştirme süreçleri, yazılım yaşam döngüsü açısından hem süreç hem girdi ve çıktılar bakımından iş veya endüstri amaçlı yazılımlardan bazı farklılıklar göstermektedir. Bilimsel yazılım geliştiricilerin, kod yazma deneyimi olsa da yapısal ve güncel yazılım mühendisliği yetkinliklerinin olmama olasılığı, bilimsel yazılımların gereksinimleri karşılaması ve sürdürülebilirliği açısından sorun yaratabilmektedir. Bu çalışmada literatürde bilimsel yazılım geliştirme alanında gereksinim duyulduğu belirtilen pratikler ile temelde IEEE Yazılım Mühendisliği Yetkinlik Modeli’nin (IEEE’s Software Engineering Competency Model -SWECOM) yetkinlikleri eşleştirilmiş; ve bilimsel yazılım geliştirme açısından en gereksinim duyulan yazılım mühendisliği pratikleri belirlenmiştir. Yapılan sıklık analiziyle özellikle yazılım tasarımı ve yapımı sırasındaki detaylı tasarım ve planlama yetkinliklerine ihtiyaç duyulduğu belirlenmiştir. Üretilen envanter, Ar-Ge destekleri çerçevesinde eğitim programları geliştirmek ve iyileştirmek için kullanılabilecektir.

Teşekkür

Atılım Üniversitesi Yazılım Mühendisliği Bölümü öğretim üyeleri Prof. Dr. Ali Yazıcı, Doç. Dr. Çiğdem Turhan ve Bilişim Sistemleri Mühendisliği Bölümü öğretim üyesi Dr. Öğr. Üyesi Tuna Hacaloğlu’na çalışmaya yaptıkları katkı için teşekkür ederim.

Kaynakça

  • Johanson, A., & Hasselbring, W. (2018). Software Engineering for Computational Science: Past, Present, Future. Computing in Science and Engineering.doi:10.1109/MCSE.2018.108162940
  • Taatgen, N. A., Vugt, M. K. van, Borst, J. P., & Mehlhorn, K. (2016). Cognitive modeling at ICCM: state of the art and future directions. Topics in Cognitive Science. 8(1), 259-263. doi:10.1111/tops.12185.
  • Arvanitou, E. M., Ampatzoglou, A., Chatzigeorgiou, A., & Carver, J. C. (2021). Software engineering practices for scientific software development: A systematic mapping study. Journal of Systems and Software, 172. doi:10.1016/j.jss.2020.110848
  • Heaton D., & Carver, J. (2015). Claims about the use of software engineering practices in science: A systematic literature review. Information and Software Technology, 67, 207-219. doi:10.1016/j.infsof.2015.07.011.
  • Storer, T. (2017). Bridging the chasm: a survey of software engineering practice in scientific programming. ACM Computing Surveys, 50(4), 1-32. doi:10.1145/3084225.
  • Segal, J., & Morris, C. (2008). Developing scientific software. IEEE software, 25(4), 18-20. doi:10.1109/MS.2008.85
  • IEEE. (2014). A Software Engineering Competency Model (SWECOM). Version 1.0. IEEE Computer Society Press.
  • Kurtaran, F. (2018). “An Evaluation of the Use of Software Engineering Practices by Cognitive Modeling Researchers.” MSc Thesis. Department of Computer Engineering. Atilim University, Turkey. https://tez.yok.gov.tr/UlusalTezMerkezi/
  • Wagner S., Pflüger, D., & Mehl, M. (2015). Simulation software engineering: experiences and challenges. Proceedings of the 3rd International Workshop on Software Engineering for High Performance Computing in Computational Science and Engineering - SE-HPCCSE '15, 1-4. doi:10.1145/2830168.2830171.
  • AlNoamany Y, Borghi JA. (2018). Towards computational reproducibility: researcher perspectives on the use and sharing of software. PeerJ Computer Science 4:e163. doi:10.7717/peerj-cs.163
  • Wiese, I., Polato I. & Pinto, G. (2020). Naming the Pain in Developing Scientific Software. IEEE Software, 37(4), 75-82, July-Aug. 2020, doi:10.1109/ms.2019.2899838.
  • Hermann, S., Fehr, J. (2022). Documenting research software in engineering science. Scientific Reports, 12 (6567). doi:10.1038/s41598-022-10376-9
  • Sanders, R. & Kelly, D., 2008. Dealing with Risk in Scientific Software Development. IEEE Software, 25(4), pp.21–28. doi:10.1109/ms.2008.84. Bilgisayar Bilimleri ve Mühendisliği Dergisi (2023 Cilt: 16 - Sayı:2) - 175
  • Software Carpentry. https://software-carpentry.org/. Erişim Tarihi: Haziran, 2022.
  • Code Refinery. https://coderefinery.org/ . Erişim Tarihi: Haziran, 2022.
  • Say, B. Bilimsel Yazılım Geliştirme Yetkinlik Envanteri Çalışması Tabloları https://drive.google.com/drive/folders/10SP32GlOXTNXKBxstVBhme1XkfWJXwwm?usp=sharing . Erişim Tarihi: Kasım, 2022.
  • CC2020 Task Force. (2020). Computing Curricula 2020: Paradigms for Global Computing Education. Computing Curricula 2020. ACM. doi:10.1145/3467967
  • Bourque P. & Fairley, R. E. (Ed.) (2014). Guide to the Software Engineering Body of Knowledge (SWEBOK), Version 3.0. Retrieved from https://www.computer.org/education/bodies-of-knowledge/software-engineering
  • Carver JC, Weber N, Ram K, Gesing S, Katz DS. (2022). A survey of the state of the practice for research software in the United States. PeerJ Computer Science, doi:10.7717/peerj-cs.963
  • The jamovi project (2022). jamovi. (Version 2.3) [Yazılım]. https://www.jamovi.org.
  • Balcı, S. (2022). ClinicoPath jamovi Module doi:10.5281/zenodo.3997188. [R package]. https://github.com/sbalci/ClinicoPathJamoviModule.

A Software Engineering Competency Inventory for Scientific Software Development Processes

Yıl 2023, Cilt: 16 Sayı: 2, 170 - 176, 20.11.2023
https://doi.org/10.54525/tbbmd.1159443

Öz

Scientific software development processes display some differences from business/industry-aimed software in terms of both processes and input/outputs. Although scientific software developers might have some coding experience, the fact that they may not possess formal and up-to-date software engineering competencies can affect negatively the
scientific software produced in terms of meeting the requirements and sustainability. A matching inventory has been created in the current work, pairing requirements for software engineering practices documented in scientific software development literature with competencies mostly from IEEE’s Software Engineering Competency Model (SWECOM). Frequencies of the pairings have shown especially a need for software engineering competencies in software design and construction including detailed design and planning. The inventory may be used to generate and improve training programs within research and development support.

Kaynakça

  • Johanson, A., & Hasselbring, W. (2018). Software Engineering for Computational Science: Past, Present, Future. Computing in Science and Engineering.doi:10.1109/MCSE.2018.108162940
  • Taatgen, N. A., Vugt, M. K. van, Borst, J. P., & Mehlhorn, K. (2016). Cognitive modeling at ICCM: state of the art and future directions. Topics in Cognitive Science. 8(1), 259-263. doi:10.1111/tops.12185.
  • Arvanitou, E. M., Ampatzoglou, A., Chatzigeorgiou, A., & Carver, J. C. (2021). Software engineering practices for scientific software development: A systematic mapping study. Journal of Systems and Software, 172. doi:10.1016/j.jss.2020.110848
  • Heaton D., & Carver, J. (2015). Claims about the use of software engineering practices in science: A systematic literature review. Information and Software Technology, 67, 207-219. doi:10.1016/j.infsof.2015.07.011.
  • Storer, T. (2017). Bridging the chasm: a survey of software engineering practice in scientific programming. ACM Computing Surveys, 50(4), 1-32. doi:10.1145/3084225.
  • Segal, J., & Morris, C. (2008). Developing scientific software. IEEE software, 25(4), 18-20. doi:10.1109/MS.2008.85
  • IEEE. (2014). A Software Engineering Competency Model (SWECOM). Version 1.0. IEEE Computer Society Press.
  • Kurtaran, F. (2018). “An Evaluation of the Use of Software Engineering Practices by Cognitive Modeling Researchers.” MSc Thesis. Department of Computer Engineering. Atilim University, Turkey. https://tez.yok.gov.tr/UlusalTezMerkezi/
  • Wagner S., Pflüger, D., & Mehl, M. (2015). Simulation software engineering: experiences and challenges. Proceedings of the 3rd International Workshop on Software Engineering for High Performance Computing in Computational Science and Engineering - SE-HPCCSE '15, 1-4. doi:10.1145/2830168.2830171.
  • AlNoamany Y, Borghi JA. (2018). Towards computational reproducibility: researcher perspectives on the use and sharing of software. PeerJ Computer Science 4:e163. doi:10.7717/peerj-cs.163
  • Wiese, I., Polato I. & Pinto, G. (2020). Naming the Pain in Developing Scientific Software. IEEE Software, 37(4), 75-82, July-Aug. 2020, doi:10.1109/ms.2019.2899838.
  • Hermann, S., Fehr, J. (2022). Documenting research software in engineering science. Scientific Reports, 12 (6567). doi:10.1038/s41598-022-10376-9
  • Sanders, R. & Kelly, D., 2008. Dealing with Risk in Scientific Software Development. IEEE Software, 25(4), pp.21–28. doi:10.1109/ms.2008.84. Bilgisayar Bilimleri ve Mühendisliği Dergisi (2023 Cilt: 16 - Sayı:2) - 175
  • Software Carpentry. https://software-carpentry.org/. Erişim Tarihi: Haziran, 2022.
  • Code Refinery. https://coderefinery.org/ . Erişim Tarihi: Haziran, 2022.
  • Say, B. Bilimsel Yazılım Geliştirme Yetkinlik Envanteri Çalışması Tabloları https://drive.google.com/drive/folders/10SP32GlOXTNXKBxstVBhme1XkfWJXwwm?usp=sharing . Erişim Tarihi: Kasım, 2022.
  • CC2020 Task Force. (2020). Computing Curricula 2020: Paradigms for Global Computing Education. Computing Curricula 2020. ACM. doi:10.1145/3467967
  • Bourque P. & Fairley, R. E. (Ed.) (2014). Guide to the Software Engineering Body of Knowledge (SWEBOK), Version 3.0. Retrieved from https://www.computer.org/education/bodies-of-knowledge/software-engineering
  • Carver JC, Weber N, Ram K, Gesing S, Katz DS. (2022). A survey of the state of the practice for research software in the United States. PeerJ Computer Science, doi:10.7717/peerj-cs.963
  • The jamovi project (2022). jamovi. (Version 2.3) [Yazılım]. https://www.jamovi.org.
  • Balcı, S. (2022). ClinicoPath jamovi Module doi:10.5281/zenodo.3997188. [R package]. https://github.com/sbalci/ClinicoPathJamoviModule.
Toplam 21 adet kaynakça vardır.

Ayrıntılar

Birincil Dil Türkçe
Konular Mühendislik
Bölüm Makaleler(Araştırma)
Yazarlar

Bilge Say 0000-0001-9276-729X

Erken Görünüm Tarihi 22 Ekim 2023
Yayımlanma Tarihi 20 Kasım 2023
Yayımlandığı Sayı Yıl 2023 Cilt: 16 Sayı: 2

Kaynak Göster

APA Say, B. (2023). Bilimsel Yazılım Geliştirme Süreçleri için bir Yazılım Mühendisliği Yetkinlik Envanteri. Türkiye Bilişim Vakfı Bilgisayar Bilimleri Ve Mühendisliği Dergisi, 16(2), 170-176. https://doi.org/10.54525/tbbmd.1159443
AMA Say B. Bilimsel Yazılım Geliştirme Süreçleri için bir Yazılım Mühendisliği Yetkinlik Envanteri. TBV-BBMD. Kasım 2023;16(2):170-176. doi:10.54525/tbbmd.1159443
Chicago Say, Bilge. “Bilimsel Yazılım Geliştirme Süreçleri için Bir Yazılım Mühendisliği Yetkinlik Envanteri”. Türkiye Bilişim Vakfı Bilgisayar Bilimleri Ve Mühendisliği Dergisi 16, sy. 2 (Kasım 2023): 170-76. https://doi.org/10.54525/tbbmd.1159443.
EndNote Say B (01 Kasım 2023) Bilimsel Yazılım Geliştirme Süreçleri için bir Yazılım Mühendisliği Yetkinlik Envanteri. Türkiye Bilişim Vakfı Bilgisayar Bilimleri ve Mühendisliği Dergisi 16 2 170–176.
IEEE B. Say, “Bilimsel Yazılım Geliştirme Süreçleri için bir Yazılım Mühendisliği Yetkinlik Envanteri”, TBV-BBMD, c. 16, sy. 2, ss. 170–176, 2023, doi: 10.54525/tbbmd.1159443.
ISNAD Say, Bilge. “Bilimsel Yazılım Geliştirme Süreçleri için Bir Yazılım Mühendisliği Yetkinlik Envanteri”. Türkiye Bilişim Vakfı Bilgisayar Bilimleri ve Mühendisliği Dergisi 16/2 (Kasım 2023), 170-176. https://doi.org/10.54525/tbbmd.1159443.
JAMA Say B. Bilimsel Yazılım Geliştirme Süreçleri için bir Yazılım Mühendisliği Yetkinlik Envanteri. TBV-BBMD. 2023;16:170–176.
MLA Say, Bilge. “Bilimsel Yazılım Geliştirme Süreçleri için Bir Yazılım Mühendisliği Yetkinlik Envanteri”. Türkiye Bilişim Vakfı Bilgisayar Bilimleri Ve Mühendisliği Dergisi, c. 16, sy. 2, 2023, ss. 170-6, doi:10.54525/tbbmd.1159443.
Vancouver Say B. Bilimsel Yazılım Geliştirme Süreçleri için bir Yazılım Mühendisliği Yetkinlik Envanteri. TBV-BBMD. 2023;16(2):170-6.

https://i.creativecommons.org/l/by-nc/4.0Makale Kabulü

 

Çevrimiçi makale yüklemesi yapmak için kullanıcı kayıt/girişini kullanınız.

Dergiye gönderilen makalelerin kabul süreci şu aşamalardan oluşmaktadır:

1.       Gönderilen her makale ilk aşamada en az iki hakeme gönderilmektedir.

2.       Hakem ataması, dergi editörleri tarafından yapılmaktadır. Derginin hakem havuzunda yaklaşık 200 hakem bulunmaktadır ve bu hakemler ilgi alanlarına göre sınıflandırılmıştır. Her hakeme ilgilendiği konuda makale gönderilmektedir. Hakem seçimi menfaat çatışmasına neden olmayacak biçimde yapılmaktadır.

3.       Hakemlere gönderilen makalelerde yazar adları kapatılmaktadır.

4.       Hakemlere bir makalenin nasıl değerlendirileceği açıklanmaktadır ve aşağıda görülen değerlendirme formunu doldurmaları istenmektedir.

5.       İki hakemin olumlu görüş bildirdiği makaleler editörler tarafından benzerlik incelemesinden geçirilir. Makalelerdeki benzerliğin %25’ten küçük olması beklenir.

6.       Tüm aşamaları geçmiş olan bir bildiri dil ve sunuş açısından editör tarafından incelenir ve gerekli düzeltme ve iyileştirmeler yapılır. Gerekirse yazarlara durum bildirilir.

 88x31.png   Bu eser Creative Commons Atıf-GayriTicari 4.0 Uluslararası Lisansı ile lisanslanmıştır.