<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Archiving and Interchange DTD v1.0 20120330//EN" "JATS-archivearticle1.dtd">
<article xmlns:xlink="http://www.w3.org/1999/xlink">
  <front>
    <journal-meta />
    <article-meta>
      <title-group>
        <article-title>Yazılım Mühendisliği Araştırmalarına Öz Çerçeve Yaklaşımı</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Murat Paşa Uysal</string-name>
          <email>muysal@baskent.edu.tr</email>
          <xref ref-type="aff" rid="aff0">0</xref>
          <xref ref-type="aff" rid="aff2">2</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Görkem Giray</string-name>
          <email>gorkemgiray@gmail.com</email>
          <xref ref-type="aff" rid="aff0">0</xref>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Anahtar Kelimeler: Yazılım mühendisliği</institution>
          ,
          <addr-line>Araştırma yöntemi, Öz Çerçeve, Essence Framework</addr-line>
        </aff>
        <aff id="aff1">
          <label>1</label>
          <institution>Bağımsız Araştırmacı</institution>
          ,
          <addr-line>İzmir</addr-line>
          ,
          <country country="TR">Türkiye</country>
        </aff>
        <aff id="aff2">
          <label>2</label>
          <institution>Yönetim Bilişim Sistemleri Bölümü, Başkent Üniversitesi</institution>
          ,
          <addr-line>Ankara</addr-line>
          ,
          <country country="TR">Türkiye</country>
        </aff>
      </contrib-group>
      <fpage>504</fpage>
      <lpage>515</lpage>
      <abstract>
        <p>Özet. Yazılım Mühendisliği (YM) alanında tasarlanan ya da gerçekleştirilen bilimsel çalışmaların çeşitli boyutlar ve değişkenler açısından ortak bir temelde karşılaştırılmalarının, bilimsel alana olduğu kadar endüstriye de önemli katkıları olabileceği düşünülmektedir. Çalışmamızda, Öz Çerçeve (ÖÇ) (Essence Framework) Tabanlı Araştırma Tasarımı ve Değerlendirme Modeli (ÖÇTATDM) geliştirilmiş ve bu model YM'deki deneysel bir araştırmanın çözümlemesinde kullanılmıştır. Araştırmamız, Sistematik Tarama (ST) ve Nitel Araştırma Yöntemleri kullanılarak aşamalı olarak yürütülmüştür. Birinci aşamada, ST ile YM alanındaki bilimsel çalışmalara ulaşılmış ve ikinci aşamada ÖÇTATDM geliştirilmiştir. Üçüncü aşamada, geliştirilen model kullanılarak çevik yazılım geliştirmeyle ilgili deneysel bir YM araştırması modellenmiştir. Yer ve kapsam sınırlılığından dolayı bazı çözümlemeler çalışma dışında tutulmuş ve gelecekteki çalışmalara bırakılmıştır. İlk izlenimlerimiz, ÖÇ'nin YM araştırma alanı ve endüstri arasında bir köprü görevini görebileceği gibi aynı zamanda öteden beri dile getirilen kuram ve uygulama arasındaki temel sorunlara da ışık tutabileceği yönündedir.</p>
      </abstract>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>-</title>
      <p>literature, and then develop the EFBRDEM. Finally, an empirical research on
agile SE methods is modeled using the EFBRDEM. The first impressions are
such that the proposed model can serve as a bridge between the research field and
the industry as well as it can shed light on long-standing fundamental problems
between the theory and SE practices.
1</p>
    </sec>
    <sec id="sec-2">
      <title>Giriş</title>
      <p>
        Yapılan araştırmalar, yeni ve özgün bir yazılım ürününün yaygın olarak kullanımı ve
kabulü için kavramsal tasarım, daha sonra temel araştırma, ürün geliştirme vb. bir dizi
aşamalardan geçirilmesi gerektiğini göstermekte ve süreç uzun yıllara
yayılabilmektedir [
        <xref ref-type="bibr" rid="ref1 ref2">1, 2</xref>
        ]. Bu kapsamda, yazılım mühendisliği (YM) araştırmaları ile endüstrideki
uygulamalar arasındaki bağın güçlendirilmesi amacıyla çeşitli çalışmalar ortaya
konulmuştur [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ]. Çalışmalarda, YM alanındaki araştırmacılar ve uygulayıcılar ortak bir
çerçevede bir araya getirilmeye çalışılarak yazılım geliştirme süreçlerindeki verimliliğin
ve etkinliğin artırılması hedeflenmektedir [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ]. Bu sürecin önemli bir boyutunu doğal
olarak YM araştırma alanı oluşturmaktadır. Konuyla ilgili yapılan literatür araştırmaları
ve çeşitli çalışmalar [
        <xref ref-type="bibr" rid="ref5 ref6">5, 6</xref>
        ], YM endüstri uygulamaları ile bilimsel araştırma projelerinin
bütünleştirilmesi ve işbirliğinin sağlanabilmesi için her iki alanda önemli mesafelerin
kat edilmesi gerektiğini göstermektedir [
        <xref ref-type="bibr" rid="ref7">7</xref>
        ].
      </p>
      <p>
        Yazılım, hem süreç hem de ürün kapsamında ele alındığında insan, teknoloji ve
süreç bileşenlerinden oluşan sosyo-teknik bir yapıdır. Diğer mühendislik disiplinlerinin
aksine aynı takım, aynı yazılım geliştirme yöntemi, araç ve teknikler kullanarak aynı
sonucu almak her zaman mümkün olmayabilmektedir. Çeşitli nedenlerden dolayı
(projenin iptali, gecikmesi, bütçe aşımı vb.) her yıl çok sayıda yazılım projesi başarısızlıkla
sonuçlanırken büyük kaynaklar israf edilmekte ve bu konuya çeşitli raporlarda
değinilmektedir [
        <xref ref-type="bibr" rid="ref14">14</xref>
        ]. Ancak, söz konusu duruma kalıcı çözümler getirebilmek, endüstri ve
araştırma alanını bütünleştirebilmek yine kaliteli bilimsel çalışmalarla mümkün
olabilecektir. Ayrıca, YM alanındaki bilimsel çalışmalara ait sonuçların mümkün olduğu
kadar genellemesi ve araştırma problemlerinin de gerçek hayat yazılım problemleriyle
örtüşmesi beklenmektedir. Bunun ise YM’deki bilimsel çalışmaların, (a) birbirlerini
tamamlaması ve (b) bu araştırmaların içerdikleri yazılım geliştirme yöntemleri,
uygulamalar, araçlar, olgunluk düzeyi vb. değişkenler açısından karşılaştırılmasıyla mümkün
olacağı düşünülmektedir. Bu durum, özellikle yazılım geliştirme problemlerini içeren
bilimsel araştırmaların, ortak bir temelde formal yöntemler kullanılarak gösterimini,
modellenmesini ve çözümlemesini sağlayacak yeni yaklaşımları gerektirmektedir.
      </p>
      <p>
        Söz konusu probleme çözüm olarak önerilen çalışmalardan birisi de SEMAT
(Software Engineering Method and Theory) girişimi ve organizasyonu tarafından
geliştirilen Öz Çerçeve’dir (ÖÇ) (Essence Framework) [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ]. YM literatürü incelendiğinde,
ÖÇ ile YM’deki araştırma yaklaşımlarıyla ilişkili ve yukarıda bahsedilen problemlere
çözüm arayan çalışmaların sınırlı olduğu gözlenmektedir [
        <xref ref-type="bibr" rid="ref15">15</xref>
        ]. Bu amaçla
çalışmamızda, Öz Çerçeve Tabanlı Araştırma Tasarımı ve Değerlendirme Modeli
(ÖÇTATDM) geliştirilmiş ve bu model YM’deki deneysel bir araştırmanın
modellenmesinde kullanılmıştır. Çalışmamızın YM araştırma alanına olan katkılarını aşağıdaki
gibi sıralamak mümkündür:
      </p>
      <p>(a) YM alanındaki bilimsel çalışmaların ortak bir çerçevede modellenmesine,
tasarımına ve değerlendirilmesine olanak tanıyacak bir modelin geliştirilmesi,
(b) Söz konusu modelin, deneysel ve özellikle çevik yazılım geliştirmeyi içeren
araştırmalara uygulanması sonucunda, gelecekteki YM bilimsel araştırmalarının çok
boyutlu çözümlemesini sağlayacak bir girişimi başlatmasıdır.</p>
      <p>Bildirinin sonraki bölümlerini, çalışmanın kuramsal temeli, araştırma yöntemi ve
geliştirilen modele ilişkin uygulama oluşturmaktadır.
2</p>
      <p>
        Öz Çerçeve (Essence Framework)
ÖÇ ile yazılım geliştirmede kullanılan yöntemler ve uygulamalar, kavramsal olarak bir
çekirdek içerisinde formal biçimde ele alınmakta, kendine özgü alan bağımlı görsel ve
metin tipi bir dil ve kavramsal yapılarla ortak bir temelde bütünleştirilmektedir [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ].
Böylece, (a) YM çalışma alanındaki araştırmalar ve endüstri uygulamaları arasındaki
uyumsuzluğun giderilmesi, (b) çevik yaklaşım doğrultusunda yazılım geliştirme
yöntemlerinin ve uygulamalarının dinamik yapıda oluşturulması, (c) yazılım süreçlerinin
sağlıklı bir şekilde izlenmesi ve (d) YM yöntemlerinin ve uygulamalarının ortak bir
temelde bütünleştirilmesine olanak tanınması hedeflenmektedir [
        <xref ref-type="bibr" rid="ref18">18</xref>
        ].
e
d
      </p>
      <p>Fırsat (F)
İhtiyaçlar (İH)
İş (İŞ)
&lt; sağlar
&lt; karşılar
&lt; planlar ve gerçekleştirir
İş Yapma
Biçimi (İYB)</p>
      <sec id="sec-2-1">
        <title>Paydaşlar (P)</title>
      </sec>
      <sec id="sec-2-2">
        <title>Yazılım Sistemi (YS) Takım (T)</title>
        <p>
          Yeterlilik (Y)
k
u
ll
a
n
ır
&gt;
&gt;
itilirr
ş
e
g
Şekil 1. Öz Çerçeve Çekirdeğindeki Alfa’lar ([
          <xref ref-type="bibr" rid="ref3">3</xref>
          ]’ten uyarlanmıştır)
Şekil 1’de görüldüğü gibi YM bilgi alanı, Çekirdek (Kernel) olarak ifade edilen,
Müşteri (Customer), Çözüm (Solution) ve Çaba’dan (Endeavor) oluşan üç ayrı ilgi alanı
biçiminde organize edilmiştir. Çekirdek’in ana bileşenleri olan Alfa’lar (Alphas),
Etkinlik Uzayları (Activity Spaces) ve Yetkinlikler (Competencies) bu ilgi alanları
içerisinde yapılandırılmaktadır. Alfa’lar, her yazılım geliştirme projesinde ele alınması
gereken önemli boyutları temsil etmektedir (fırsat, paydaşlar, ihtiyaçlar, yazılım sistemi,
takım, iş yapma biçimi, iş). Alfa’lar aynı zamanda yazılım geliştirme süresince projenin
ilerleme ve gelişimini gösteren faklı seviyedeki durumları (state) içermektedir. Etkinlik
Uzayları ise YM’nin faaliyet tabanlı bir görünümünü sağlayarak yazılım geliştirme
etkinliklerini ilgi alanlarına göre gruplayarak kümelere ayırmaktadır. Yeterlilikler, YM
etkinliklerinin yerine getirilebilmesi için edinilmesi gereken yetenekleri
göstermektedir. Çekirdeği oluşturan Alfa’lar, Etkinlik Uzayları ve Yetkinlikler üç ayrı ilgi alanına
göre sınıflandırılmıştır. ÖÇ ile ilgili detaylı açıklamalar yer kısıtlamasından dolayı bu
bildiride verilememiştir (Bakınız [
          <xref ref-type="bibr" rid="ref3">3</xref>
          ]).
3
        </p>
      </sec>
    </sec>
    <sec id="sec-3">
      <title>Yöntem</title>
      <p>
        Bu çalışmanın amacı, YM araştırma alanına yönelik bir Öz Çerçeve Tabanlı Araştırma
Tasarımı ve Değerlendirme Modeli (ÖÇTATDM) geliştirmektir. Bu amaç
doğrultusunda araştırmamız, Sistematik Tarama (ST) ve Nitel Araştırma Yöntemleri
kullanılarak aşamalı olarak yürütülmüştür. Birinci aşamada, ST ile YM alanındaki bilimsel
çalışmalara ulaşılmış, ikinci aşamada ÖÇTATDM geliştirilmiştir. Üçüncü aşamada
geliştirilen model kullanılarak çevik yazılım geliştirmeyle ilgili deneysel bir çalışma
modellenmiştir. Araştırma soruları ve yöntemini içeren araştırmamızın deseni tasarlanırken
Shaw’un [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ] YM araştırmaları için önerdiği ölçütler dikkate alınmıştır. Çalışmamızın;
(a) SCI’de taranan makalelere ait çözümleme bilgisini sunması ile (b) ÖÇTATDM
olmak üzere iki ana çıktısını bulunmaktadır. Bunlara yönelik araştırma soruları aşağıdaki
gibidir:
      </p>
      <p>AS-1: YM alanında yazılım geliştirme ve değerlendirmesiyle ilgili en çok atıf alan
çalışmalar nelerdir?</p>
      <p>AS-2: YM alanındaki bilimsel çalışmalar ortak bir çerçevede nasıl modellenebilir ve
değerlendirilebilir?</p>
      <p>Bildirinin bundan sonraki bölümlerini oluşturan birinci ve ikinci aşama AS-1’i,
üçüncü aşama ise AS-2’i cevaplamaya yöneliktir.
3.1</p>
      <sec id="sec-3-1">
        <title>Birinci Aşama: Sistematik Tarama</title>
        <p>
          Veri Toplama. Araştırmaya başlamadan önce çalışmanın sistematikliğini, yansızlığını,
geçerlik ve güvenirliğini sağlamak amacıyla bir tarama protokolü geliştirilmiştir. Bu
protokol, Sistematik Literatür Taramasında (SLT) olduğu gibi detaylı olmasa da
araştırma sorularına yönelik arama deyimlerini, yayınların seçim ölçütleri ile bunların
ulaşılan kaynaklara nasıl uygulanacağını, veri depolama ve tasnif yöntemini, kaynaklardan
hangi veri ve bulguların alınacağı ve çalışma takvimini içermiştir [
          <xref ref-type="bibr" rid="ref16">16</xref>
          ]. YM ile ilgili
birincil kaynaklara ulaşılmadan önce daha önce gerçekleştirilen benzer tarama
çalışmalarındaki araştırma konusu ve sorularıyla ile ilgili konular incelenmiştir.
Veri Sorgulama ve Kaynaklar. Taranacak veritabanları belirlenirken çalışmanın
amacı, araştırma soruları ve sınırlılıklar dikkate alınmıştır. Buna göre ana kaynak olarak
elektronik veritabanları ve arama motoru olarak Scopus’un kullanılması
kararlaştırılmıştır. Araştırmacıların daha önceki deneyimleri, diğer arama motorlarıyla uyumlu
sonuçlar vermesi ve makalelerdeki atıf sayısını güncel olarak sunması bu arama
motorunun seçilmesinde dikkate alınan önemli ölçütlerdir. Tarama deyimleri ve operatörleri
kullanılarak oluşturulan tarama cümleleri Tablo 1’de gösterilmiştir.
        </p>
        <p>Tablo 1. Tarama cümleleri
Yazılım Çalışma Alanı Tarama Deyimleri ve Operatörleri
lCizüim)le-1 (Yazılım Ana- (TA"INSTODLFE(TLWIMA("IRSTEO-T"F)OTAW(NLADARNE(GLUIMAAGINTEA-,TL"OYEnS(gISlSi"sU)hB"J)AA)RNEDA,"CSORMCPTI"T L)E)
Cümle-2 (Yazılım
Geliştirme)</p>
        <p>TITLE ("SOFTWARE DEVELOPMENT") AND SRCTITLE
("SOFTWARE") AND ( LIMIT-TO (SUBJAREA,"COMP " ) )</p>
        <p>AND ( LIMIT-TO ( LANGUAGE, "English " ) )
ltCiirzümimvele)ey-a3 Y(YaazzılıılmımGAenliaş--
(TAA"IBNSTOSDL-FEK(T-ELAWIYBMASIR-(TKE-ET"")SYOOA((F"NLTSDAWONFA(TGRLWUEIAMAGRAITEEN-,TAD"OELEnYVg(SEliISLsSUhO""BP)JM)AERANENTAD",)"COSORRMCTTPIIT"TLL)EE)</p>
        <p>Birinci tarama cümlesi kullanılarak en çok atıf alan “Yazılım Analizi” ile ilgili 35
çalışma, ikinci tarama cümlesiyle “Yazılım Geliştirme” ile ilgili 200 çalışma
belirlenmiştir. Her iki sorgu sonucunda bazı çalışmaların örtüşmesinin görülmesi üzerine
üçüncü tarama cümlesi kullanılmış, ulaşılan 9835 makale, Şekil 1’de gösterildiği gibi
atıf sayısına göre en yüksekten en düşüğe göre sıralanmıştır.</p>
        <p>
          Şekil 2. Tarama çıktısı ekran görüntüsü
Çalışmaların Seçim Ölçütleri ve Sınıflanması. Tarama sonucunda elde edilen
çalışmalardan ilgili olanlarının araştırmaya dâhil edilmesi veya dışarıda bırakılmasına
yönelik ölçütler belirlenmiş, sınıflamalar bunlara göre gerçekleştirilerek yazılım
geliştirme ile ilgili çalışmalar iki ana başlık altında toplanmıştır. Birinci gruptakiler,
çalışmaların nitelikleri, kullanılan araştırma yöntemleri ve yaklaşımlara göre
oluşturulmuştur. İkinci gruptaki çalışmalar ise anahtar kelimeler, dayandıkları kuramlar, yazılım
yöntemi, teknik, teknoloji, model vb. yapıları içermiştir. İncelenen çalışmaların,
araştırma sorularıyla ilgi düzeyi, çalışma çıktıları, alana katkısı vb. faktörler birincil
çalışmaların seçimlerine yönelik kararları desteklemiştir. İki araştırmacı toplanan
çalışmaları incelemiş, araştırmaya dâhil edilip edilmeyeceklerini belirtilen bu ölçütlere göre
karar vermiştir. Buna göre atıf sayısına göre sıralanan ilk 200 çalışma içerisinde, en
yüksek atıf alan (a) “Deneysel Yazılım Geliştirme” ile ilgili 10, (b) “Yazılım Geliştirme
Yöntemi” ile ilgili 5, (c) “Çevik Yazılım Geliştirme “ ile ilgili olarak 25 makale
belirlenmiştir. Son olarak bu üç ölçütü aynı anda içeren ve en çok atıf alan bir makale [
          <xref ref-type="bibr" rid="ref17">17</xref>
          ]
belirlenmiş ve ÖÇTATDM’nin uygulanmasında kullanılmıştır (Tablo 2).
        </p>
        <p>
          Tablo 2. En çok atıf alan makale
Kaynakça
Numarası
Pikkarainen, M., Haikara, J., Salo, O., Abrahamsson, P., Still, J, “The
impact of agile practices on communication in software development”,
Empirical Software Engineering, 13 (3), 303-337, 2008.
3.2
İkinci Aşama: ÖÇ Tabanlı Bilimsel Araştırma Değerlendirme Çerçevesinin
Geliştirilmesi
ÖÇTATDM geliştirilmeden önce yazarlar, ilk olarak YM araştırma alanındaki yazılım
geliştirme yöntemleri ile bunları incelemede kullanılan araştırma yöntemleri, teknikleri
ve araçlarıyla ilgili konuları belirlemeye çalışmışlardır [
          <xref ref-type="bibr" rid="ref4">4</xref>
          ]. Bu çalışmaların bir kısmını
deneysel araştırmalar [
          <xref ref-type="bibr" rid="ref8 ref9">8, 9</xref>
          ], bir bölümünü saha/alan çalışmaları [
          <xref ref-type="bibr" rid="ref10">10</xref>
          ], önemli bir
grubunu örnek olay yönteminin kullanıldığı araştırmalar [
          <xref ref-type="bibr" rid="ref11">11</xref>
          ] ve geri kalanını YM ile ilgili
kuramsal çalışmalar oluşturmaktadır [
          <xref ref-type="bibr" rid="ref12">12</xref>
          ]. Bunlar arasında YM araştırmaları ile ilgili
önemli problem sahalarına değinen araştırmalar da ön plana çıkmaktadır. Örneğin
Glass vd., YM araştırma alanının araştırma stratejileri ve yöntemleri açısından dar
kapsamlı olduğunu belirtmekte [
          <xref ref-type="bibr" rid="ref13">13</xref>
          ], Stol vd. YM araştırma yöntemleriyle ilgili terminoloji
birliğinin olmadığını ve bu konuda görüş ayrılıklarının bulunduğunu ifade etmektedir
[
          <xref ref-type="bibr" rid="ref4">4</xref>
          ]. Örnek Olay Yöntemi, bazı araştırmacılarca araştırma stratejisi olarak ele alınırken
bazıları ise onu araştırma yöntemi olarak nitelemektedir [
          <xref ref-type="bibr" rid="ref4">4</xref>
          ]. Kimi çalışmalarda nitel
araştırma yöntemi olarak ele alınırken deneysel yöntem olarak kullanıldığı çalışmaların
da olduğu gözlenmektedir [
          <xref ref-type="bibr" rid="ref9">9</xref>
          ]. Dolayısıyla araştırma stratejileri, yöntemleri ve
teknikleri ile ilgili kavramlar, YM alanında birbirlerinin yerine yanlış kullanılabilen
kavramlar olarak karşımıza çıkmaktadır.
        </p>
        <p>Yazılım Mühendisliği Alanındaki Çalışmalar</p>
        <p>Bilimsel Araştırma Stratejileri (Nicel, Nitel, Karma), Yöntemler, Teknikler</p>
        <sec id="sec-3-1-1">
          <title>Diğer Çalışmalar</title>
        </sec>
        <sec id="sec-3-1-2">
          <title>Bilimsel Araştırmalar</title>
        </sec>
        <sec id="sec-3-1-3">
          <title>Endüstri Uygulamaları Çalışmanın ÖÇ Tabanlı Olarak Kavramsal Modellenmesi ÖÇ Tabanlı Yazılım Geliştirme ve İyileştirme Bilgi Alanı Alfa’lar</title>
        </sec>
        <sec id="sec-3-1-4">
          <title>Etkinlik Uzayları</title>
          <p>•
Engi</p>
          <p>Yetkinlikler
•
ÖÇ Tanımlamaları
ÖÇ Çekirdeği
ÖÇ Dili
ÖÇ İlkeleri
Şekil 3. Öz Çerçeve Tabanlı Araştırma Tasarımı ve Değerlendirme Modeli</p>
          <p>
            i
Çalışmamızın bu aşamasında ilk olarak [
            <xref ref-type="bibr" rid="ref4">4</xref>
            ], [
            <xref ref-type="bibr" rid="ref6">6</xref>
            ], [
            <xref ref-type="bibr" rid="ref8">8</xref>
            ] ve [
            <xref ref-type="bibr" rid="ref9">9</xref>
            ] kaynakları incelenmiştir.
Şekil 3’te gösterildiği gibi YM ile ilgili stratejiler, yöntem ve teknikler, bilimsel
araştırmalar ve çalışmalar, ÖÇ’de yer alan kavramlar ve bileşenler kullanılarak
modellenmektedir. Bundaki ana amaç, yazılım endüstrisindeki uygulamaları, akademik ve
bilimsel çalışmaları ortak bir temel üstünde bütünleştirmektir. İlk olarak YM çalışmaları,
Bilimsel Araştırmalar, Endüstri Uygulamaları ve Diğer Çalışmalar olmak üzere üç ana
grupta toplanmaktadır. Daha sonraki katmanda söz konusu yazılım geliştirme
problemlerini inceleyen çalışmalar ÖÇ doğrultusunda modellenmektedir. En alt katmanda ise
ÖÇ kendisi ile onu oluşturan temel yapılar ve kavramlar bulunmaktadır. Ayrıca,
literatürdeki çalışmalardan hareket edilerek bir Deneysel YM Araştırmasında bulunması
gereken temel etkinlikler şu şekilde belirlenmiştir: (a) Araştırmanın Tanımlanması, (b)
Araştırmanın Tasarımı, (c) Araştırmanın Yürütülmesi ve Veri Toplama, (d) Analiz, (e)
Bulgular ve Yorumlamadır. Sadece (a), (b) ve (c) etkinlikleri ile bunların içerdiği
kavramlar bildirinin sonraki bölümünde incelenmiş, araştırmanın sınırlılıkları dolayısıyla
diğer araştırma etkinlikleri ise sonraki çalışmalara bırakılmıştır.
3.3
          </p>
          <p>
            Üçüncü Aşama: YM Alanında Deneysel Bir Çalışmanın Değerlendirilmesi
[
            <xref ref-type="bibr" rid="ref17">17</xref>
            ]’deki çalışmaya ait araştırmanın ÖÇ tabanlı olarak tanımlanması, tasarımı ve
yürütülmesine ait modelleme aşağıdaki bölümlerde açıklanmıştır.
          </p>
          <p>
            Araştırmanın Tanımlanması ve Tasarımının ÖÇ ile Gösterilmesi. Bu çalışma
kapsamında incelenen araştırma [
            <xref ref-type="bibr" rid="ref17">17</xref>
            ], Finlandiya’da güvenlik yazılımları geliştiren
F-Secure şirketindeki bir örnek olay uygulamasını içermektedir. Şirket, geleneksel yazılım
geliştirme yöntemlerini bırakarak çevik yöntemlere geçmek, performans ve verimliliği
artırmak ve rekabet avantajını sağlamayı amaçlamaktadır. Söz konusu deneysel
çalışmada [
            <xref ref-type="bibr" rid="ref17">17</xref>
            ], SCRUM ve XP (eXtreme Programming) çevik yazılım geliştirme
uygulamaları kullanılmış farklı iki yazılım geliştirme takımının kendi içindeki iletişimi ile
şirketin diğer paydaşları (müşteri, test takımı vd.) arasındaki iletişimi nasıl etkilediği
araştırılmıştır. İç iletişim ve dış iletişim çalışmanın bağımsız değişkenlerini oluşturmuştur.
Çevik uygulamaların bilgi transferini olumlu yönde etkilediği ve bunun da yazılım
geliştirme süreçlerine katkıda bulunacağı araştırmanın temel kabulünü oluşturmaktadır.
Çok popüler olmalarının yanında, XP’nin yazılım geliştirici, SCRUM’ın ise proje
odaklı olması, yazılım geliştirme sürecine farklı yaklaşımlar benimsemeleri bu
yöntemlerin araştırma için seçimindeki önemli ölçütlerdir. Yazarlar ayrıca, araştırmanın
tasarımına temel teşkil eden Koordinasyon Kuramı, Çevik Uygulama vb. konularla ilgili
kuramsal yapılara ait kavramları sunmuş ve bunların araştırma ile olan bağlantılarını
ortaya koymuşlardır.
          </p>
          <p>
            Şekil 4’te söz konusu araştırmada yer alan yazılım geliştirme süreciyle ilgili Alfa
bileşenleri, ÖÇ Dilinin grafik söz dizim bileşenleri ile gösterilmiştir. Kullanılan grafik
sembollerin çeşitli dil bilimsel ve kavramsal anlamları olup açıklamalar bu çalışmanın
kapsamı dışında bırakılmıştır. Şekil 4’ü şu şekilde yorumlamak mümkündür: F:
Teknolojik gelişmeler ve rekabet ortamı, güvenlik yazılımları geliştiren şirketin çevik
yöntemlere geçişi için gereken durumları oluşturmuş ve fırsatları yaratmıştır. P: Şirket
yöneticileri ve diğer aktörler bu fırsatı yaratan paydaşlar arasındadır. İH: Yazılım
ürünlerinin yanında ihtiyaç duyulan diğer bir konu ise seçilecek çevik yöntemlerin takım içi
iç iletişim ve diğer paydaşlar arasındaki dış iletişimi nasıl etkilediğinin belirlenmesidir.
YS-1: Güvenlik Sistemleri Yönetim Yazılımı ile YS-2: Mobil Güvenlik Yazılımı
araştırma kapsamında geliştirilecek iki yazılım sistemini oluşturmaktadır. T-1: Birinci
yazılım takımını ve T-2: İkinci yazılım takımını temsil etmektedir. Çalışmada iş yapma
biçimi (İYB) olarak farklı iki yazılım geliştirme yöntemi benimsenmiştir. Birinci takım
yazılım geliştirirken Scrum’ı, ikinci takım ise Scrum ve XP’nin kendilerine uyarlanmış
biçimini kullanmışlardır. Y: Liderlik ve Yönetim konularında her iki yazılım takımının
sahip olmaları gereken yeterlilikler bulunmaktadır. Ancak, bu durum ilgili makalede
[
            <xref ref-type="bibr" rid="ref17">17</xref>
            ] belirtilmemiş olup bu bildirinin yazarları tarafından modele eklenmiştir. İŞ: Her
iki yazılım takımının kullanmış oldukları yönteme göre yapacakları işlerin detaylarıdır.
Araştırmanın Yürütülmesinin ÖÇ ile Gösterilmesi. ÖÇ Tanımlama Dokümanından
[
            <xref ref-type="bibr" rid="ref18">18</xref>
            ] faydalanılarak birinci proje takımının kullandığı Scrum etkinlikleri ve bileşenleri
Şekil 5’te örnek olarak gösterilmiştir. Kesikli çizgilerle gösterimi yapılan simgeler
bildirinin önceki bölümlerinde bahsedilen ÖÇ Çekirdeğinde bulunan Etkilik Uzaylarını
temsil etmektedir. Yazılım sistemleri bu uzaylarda (müşteri, çözüm ve çaba) yer alan
ÖÇ etkinlikleri ile geliştirilmektedir. Çözüm ilgi alanında sistem geliştirme etkinlikleri
bulunurken, Çaba ilgi alanında ise Scrum’a ait etkinlikler yer almaktadır. Birinci
yazılım sistemini YS-1’in sahip olması gereken özellik ve işlevlere ait bilgiler, Alfa İH’nin
bir türü olan “Product Backlog”larda tutulmaktadır. YS-1’in gelişimi her bir “Sprint”
sonunda “Increment” olarak gerçekleştirilmektedir. Çaba ilgi alanındaki Alfa İŞ ise
birden çok “sprint”ten oluşmakta ve bunlara ait bilgiler “Sprint Backlog”da
bulunmaktadır. Alfa T-1 takımının gerçekleştirdiği etkinlikler (“Sprint Planning Meeting”, “Daily
Scrum”, “Sprint Review”, Sprint Retrospective”), “İşe Hazırlık”, “İlerlemeyi İzle”
Takımı Destekle” Alfalarından türetilmiştir (“extend” edilmiştir). Öte yandan, ÖÇ’nin
gösterim gücü hakkında fikir vermek amacıyla da Şekil 5’te yer alan alfa T-1 ile bir
          </p>
        </sec>
        <sec id="sec-3-1-5">
          <title>Sistemi işlet</title>
          <p>T-1</p>
        </sec>
        <sec id="sec-3-1-6">
          <title>Scrum takımı</title>
          <p>Takımı
destekle</p>
        </sec>
        <sec id="sec-3-1-7">
          <title>Sprint Retrospective 1</title>
        </sec>
        <sec id="sec-3-1-8">
          <title>Product backlog</title>
        </sec>
        <sec id="sec-3-1-9">
          <title>Increment 1..*</title>
          <p>YS-1</p>
        </sec>
        <sec id="sec-3-1-10">
          <title>Sistemi şe</title>
          <p>killendir</p>
        </sec>
        <sec id="sec-3-1-11">
          <title>Sistemi geliştir</title>
        </sec>
        <sec id="sec-3-1-12">
          <title>Sistemi test et</title>
        </sec>
        <sec id="sec-3-1-13">
          <title>Sistemi kullanıma koy</title>
          <p>
            Scrum etkinliği, ÖÇ Dilinin Metin Tipi Söz Dizim Kuralları kullanılarak Şekil 6’da
gösterilmiştir.
Şekil 5 ve Şekil 6’da görüldüğü gibi önceden gerçekleştirilen deneysel bir araştırma
[
            <xref ref-type="bibr" rid="ref17">17</xref>
            ], ÖÇ Yaklaşımının içerdiği kavramsal yapı, bileşenler, grafik dili ve söz dizim dili
araçları kullanılarak modellenebilmiştir. Buradan hareketle, ÖÇ’nin sadece YM
endüstrisi uygulamaları için değil aynı zamanda YM araştırma alanına da katkı
sağlayacak önemli bir potansiyeli olduğunu söylemek mümkündür.
// Birinci proje takımının alfa olarak tanımlanması
--------------------------------------------alpha T1_ScrumTakimi:
          </p>
          <p>“1nci yazılım takımı olan Scrum Takımı 6 kişiden oluşmaktadır. 1 Scrum master, 4 yazılımcı
ve 1 kalite mühendisi bulunmaktadır. Diğer paydaşları yöneticiler, ürünün sahibi, müşteriler, test
ekibi, dökümantasyon ekibi vb. aktörler oluşturmuştur.”
with states {
state Olusturuldu {
“ Yazılım takımı oluşturulmuştur.”
checks {
checkpoint c1 {“Ürünün sahibi belirlendi”}
checkpoint c2 {“Yazılımcılar T-1 takımına atandı”}
checkpoint c3 {“Scrum master belirlendi”}
……………….{……………………...}
}</p>
          <p>}
}
// Bir Scrum etkinliğin tanımlanması
------------------------------------------------------------------------activity SprintPlanningMeeting:
“ Sprint’de yapılacak işler bu toplantıda belirlenmiştir. Her bir sprint 1 ay
olarak planlanmış, proje toplam 18 ayda bitirilmesi hedeflenmiştir. Bu toplantı
araştırmada formal iletişim yöntemlerinden birisi olarak kabul edilmiştir”.
targets Sprint.Planned
SprintPlanningMeeting -- part of --&gt; ESSENCE_kernel.IseHazirlik
Şekil 6. Metin tipi söz dizim kuralları ile modelleme
4</p>
        </sec>
      </sec>
    </sec>
    <sec id="sec-4">
      <title>Sonuç ve Öneriler</title>
      <p>Günümüzde YM araştırmaları ile yazılım endüstrisindeki uygulamalar arasındaki
kopukluğun giderilmesi yönündeki çalışmalar artarak devam etmektedir. Öte yandan
YM’nin, araştırma stratejileri ve yöntemleri açısından diğer disiplinlere kıyasla
göreceli olarak daha dar kapsamlı olması, araştırma yöntemleriyle ilgili terminoloji
birliğinin bulunmaması ve görüş ayrılıkları göze çarpan önemli problemler arasındadır. YM
alanındaki bilimsel çalışmaların çeşitli ölçütler açısından ortak bir temelde
karşılaştırılabilmeleri ise yine farklı yaklaşım ve yöntemleri gerektirmektedir. ÖÇ yaklaşımının,
yazılım geliştirme araştırmaları ve endüstri uygulamalarını bütünleşik olarak ele
alabilecek yapıda ve nitelikte olduğu düşünülmektedir.</p>
      <p>Bu bildiride, YM’ne yönelik ÖÇ tabanlı tasarım ve değerlendirme modeli
geliştirilmiş, ÖÇ’nin kavramsal yapısı ile alan bağımlı grafik ve metin dilleri kullanılarak
YM’de deneysel bir araştırma modellenmiştir. Yer ve kapsam sınırlılığından dolayı
kimi konular çalışma dışında tutulurken bir bölümü ise gelecek çalışmalara
bırakılmıştır. Örneğin bunlardan birisi, literatürdeki önemli kabül edilen YM araştırmalarının ÖÇ
kullanılarak yapısal, nicel ve nitel açıdan çözümlenmeleri, formal yöntemlerle
karşılaştırılarak YM alanına olan katkılarının somut olarak ortaya konulması konusudur. Bu
çalışmadaki ilk izlenimlerimiz, ÖÇ’nin YM araştırma alanı ve endüstri arasında bir</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          1.
          <string-name>
            <surname>Redwine</surname>
          </string-name>
          ,S. ve Riddle W. “
          <article-title>Software technology maturation”</article-title>
          .
          <source>Proceedings of the Eighth International Conference on Software Engineering</source>
          ,
          <fpage>189</fpage>
          -
          <lpage>200</lpage>
          , May
          <year>1985</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          2.
          <string-name>
            <surname>Balzer</surname>
            <given-names>B.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Litoiu</surname>
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Müller</surname>
            <given-names>H.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Smith</surname>
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Storey</surname>
            <given-names>M.A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Tilley</surname>
            <given-names>S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Wong</surname>
            <given-names>K.</given-names>
          </string-name>
          “4th International Workshop on Adoption-Centric Software Engineering,”,
          <source>in Proceedings of 26th International Conference Software Engineering (ICSE</source>
          <year>2004</year>
          ),
          <fpage>748</fpage>
          -
          <lpage>749</lpage>
          ,
          <year>2004</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          3.
          <string-name>
            <surname>SEMAT</surname>
          </string-name>
          (
          <article-title>Software Engineering Method</article-title>
          and Theory),”http:// www.semat.org”,
          <source>Son erişim tarihi: 16.04</source>
          .
          <year>2017</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          4.
          <string-name>
            <surname>Stol K. ve Fitzgerald</surname>
            <given-names>B.</given-names>
          </string-name>
          <year>2015</year>
          .
          <article-title>“A holistic overview of software engineering research strategies”</article-title>
          .
          <source>Proceedings of the 3rd International Workshop on Conducting Empirical Studies in Industry, co-located with ICSE '15</source>
          ,
          <string-name>
            <surname>Florence</surname>
          </string-name>
          , Italy,
          <year>2015</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          5.
          <string-name>
            <surname>Hannay</surname>
            <given-names>J.E.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Sjøberg</surname>
            <given-names>D.I.K.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Dybå</surname>
            <given-names>T.</given-names>
          </string-name>
          ,
          <article-title>“A systematic review of theory use in software engineering experiments”</article-title>
          ,
          <source>IEEE Transactions on Software Engineering</source>
          , vol.
          <volume>33</volume>
          (
          <issue>2</issue>
          ),
          <fpage>87</fpage>
          -
          <lpage>107</lpage>
          ,
          <year>2007</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          6.
          <string-name>
            <surname>Shaw</surname>
            <given-names>M.</given-names>
          </string-name>
          “What makes good research in software engineering?”
          <source>International Journal of Software Tools for Technology Transfer</source>
          ,
          <volume>4</volume>
          (
          <issue>1</issue>
          ),
          <fpage>1</fpage>
          -
          <lpage>7</lpage>
          ,
          <fpage>2002</fpage>
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          7.
          <string-name>
            <surname>Jacobson</surname>
            <given-names>I.</given-names>
          </string-name>
          , Meyer B., and
          <string-name>
            <surname>Soley</surname>
            <given-names>R.</given-names>
          </string-name>
          , “
          <article-title>The SEMAT initiative: A Call for Action”</article-title>
          ,
          <source>Dr Dobb's Journal</source>
          ,
          <volume>9</volume>
          ,
          <year>2009</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          8.
          <string-name>
            <surname>Kitchenham</surname>
            <given-names>B.A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Pfleeger</surname>
            ,
            <given-names>S.L.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Pickard</surname>
            <given-names>L.M.P.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Jones</surname>
            <given-names>P.W.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Hoaglin</surname>
            <given-names>D.C.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Emam</surname>
            <given-names>K.</given-names>
          </string-name>
          <string-name>
            <surname>El</surname>
          </string-name>
          , Rosenberg J., “
          <article-title>Preliminary guidelines for empirical research in software engineering,”</article-title>
          <source>IEEE Trans. Softw</source>
          . Eng., vol.
          <volume>28</volume>
          , no.
          <issue>2</issue>
          ,
          <fpage>721</fpage>
          -
          <lpage>734</lpage>
          ,
          <year>2002</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          9.
          <string-name>
            <surname>Malhotra</surname>
            <given-names>R.</given-names>
          </string-name>
          , “
          <article-title>Empirical research in software engineering: concepts, analysis, and applications”</article-title>
          , CRC Press, Taylor &amp; Francis Group, NW;
          <year>2016</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          10.
          <string-name>
            <surname>Klein</surname>
            <given-names>H</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Myers</surname>
            <given-names>M</given-names>
          </string-name>
          ,
          <article-title>“A set of principles for conducting and evaluating interpretive field studies in information systems”</article-title>
          ,
          <source>MIS Quarterly 23</source>
          <volume>(3)</volume>
          :
          <fpage>67</fpage>
          -
          <lpage>94</lpage>
          ,
          <year>1999</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          11.
          <string-name>
            <surname>Runeson</surname>
            ,
            <given-names>P.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Höst</surname>
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Rainer</surname>
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Regnell</surname>
            ,
            <given-names>B.</given-names>
          </string-name>
          , “
          <article-title>Case study research in software engineering: guidelines and examples”</article-title>
          ,Wiley,
          <year>2012</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          12.
          <string-name>
            <surname>Uysal</surname>
            <given-names>M.P. “</given-names>
          </string-name>
          <article-title>In search of software engineering foundations: a theoretical and trans-disciplinary perspective”</article-title>
          .
          <source>International Journal of Computer Theory and Engineering</source>
          ,
          <volume>8</volume>
          (
          <issue>4</issue>
          ),
          <fpage>328</fpage>
          -
          <lpage>332</lpage>
          ,
          <year>2016</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          13.
          <string-name>
            <surname>Glass</surname>
            <given-names>R.L.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Vessey</surname>
            <given-names>I.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Ramesh</surname>
            <given-names>V.</given-names>
          </string-name>
          , “
          <article-title>Research in software engineering: an analysis of the literature</article-title>
          ,
          <source>” Inform. Software Tech.</source>
          , vol.
          <volume>44</volume>
          ,
          <year>2002</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          14. SGR, “
          <source>Chaos report on software projects”</source>
          .
          <source>Project Smart</source>
          , The Standish Group, USA,
          <year>2014</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref15">
        <mixed-citation>
          15.
          <string-name>
            <surname>Ng</surname>
            <given-names>P.W.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Huang</surname>
            <given-names>S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Wu</surname>
            <given-names>Y</given-names>
          </string-name>
          .
          <article-title>On the value of Essence to software engineering research: a preliminary study”</article-title>
          ,
          <source>“Proceedings of GTSE</source>
          , San Francisco, CA, USA,
          <year>2013</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref16">
        <mixed-citation>
          16.
          <string-name>
            <surname>Kitchenham</surname>
            ,
            <given-names>B.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Charters</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          , “
          <article-title>Guidelines for performing systematic literature reviews in software engineering”</article-title>
          , Keele University and Durham University
          <source>Technical Report EBSE 2007-001</source>
          ,
          <year>2007</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref17">
        <mixed-citation>
          17.
          <string-name>
            <surname>Pikkarainen</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Haikara</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Salo</surname>
            ,
            <given-names>O.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Abrahamsson</surname>
            ,
            <given-names>P.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Still</surname>
            ,
            <given-names>J</given-names>
          </string-name>
          , “
          <article-title>The impact of agile practices on communication in software development”</article-title>
          ,
          <source>Empirical Software Engineering</source>
          ,
          <volume>13</volume>
          (
          <issue>3</issue>
          ),
          <fpage>303</fpage>
          -
          <lpage>337</lpage>
          ,
          <year>2008</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref18">
        <mixed-citation>
          18.
          <string-name>
            <surname>OMG</surname>
          </string-name>
          (Object Management Group), “
          <article-title>Essence-Kernel and language for software engineering methods</article-title>
          ,
          <source>Document ID: SMSC/15-12-02</source>
          ,
          <year>2015</year>
          .
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>