Yaz m Konfigürasyon Yönetimi Örüntüleri Aras nda Otomatik Geçi

Benzer belgeler
Sürekli Entegrasyon ve STM deki Uygulamalar

1 letme Dönü ümü ve Planlamas Hizmetleri

AMEL YATHANEDE KULLANILAN HASSAS C HAZ VE CERRAH ALETLER N

Mali Yönetim ve Denetim Dergisinin May s-haziran 2008 tarihli 50. say nda yay nlanm r.

Corafi Daıtık Yazılım Gelitirme Ortamında Yazılım Konfigürasyon Yönetimi

Tangram Etkinlii ile Çevre ve Alan Hesab *

Görsel Tasar m. KaliteOfisi.com

Bileenler arasndaki iletiim ise iletiim yollar ad verilen kanallar yardm ile gerçekleir: 1 Veri Yollar 2 Adres Yollar 3 Kontrol Yollar

Online Bilimsel Program Yönetici K lavuzu

Yaz m Testi Sürecine TEC in (Test Expert Committee) Katk lar TEC Contributions to the Software Testing Process

Proje Döngüsünde Bilgi ve. Turkey - EuropeAid/126747/D/SV/TR_ Alina Maric, Hifab 1

Yaz m Do rulama Sürecinde Gereksinim Yönetim Arac Kullan

Matematiksel denklemlerin çözüm yöntemlerini ara t r n z. 9. FORMÜLLER

ÖRETM UYGULAMASI. Ardk Doal Saylardan Pisagor Üçlülerine

Bölüm 8 Ön Ürün ve Hzl Uygulama Gelitirme. 8lk Kullanc Tepkileri. Dört Çeit Ön Ürün. Ana Konular. Yamal Ön Ürün. Ön Ürün Gelitirme

Türkiye - EuropeAid/126747/D/SV/TR_ Alina Maric, Hifab 1

Süreci Modellerinden Kalite El Kitab Üretmek çin Bir Araç

T.C. YALOVA ÜNİVERSİTESİ Strateji Geliştirme Daire Başkanlığı. İÇ KONTROL ve RİSK YÖNETİMİ 1 İÇ İÇ KONTROL

Simülasyon Modellemesi

TR YAJ (SEÇMEK/AYIRMAK)

novasyon KalDer zmir ubesi 8. Mükemmellii Aray Sempozyomu zmir, 18 Nisan 2007 irin Elçi Technopolis Türkiye Direktörü Teknoloji Yönetim Dernei Bakan

BÖLÜM 3. A. Deneyin Amac

T.C KÜLTÜR VE TURZM BAKANLII Strateji Gelitirme Bakanl!"! (1. sayfa) ZEYLNAME

DOKUZ EYLÜL ÜNVERSTES MÜHENDSLK FAKÜLTES METALURJ VE MALZEME MÜHENDSL BÖLÜMÜ BTRME PROJES YÜRÜTME YÖNERGES

KURUMSAL T BAR YÖNET M PROF. DR. HALUK GÜRGEN

EKG Sinyallerinde Gürültü Gidermede Ayrk Dalgack Dönüümünde Farkl Ana Dalgacklarn Ve Ayrtrma Seviyelerinin Karlatrlmas

BÖLÜM 5. Gerilim Azaltan Dönü türücünün Kal Durum Devre Analizi

BÖLÜM 2 D YOTLU DO RULTUCULAR

2. Senkron motorla ayn milde bulunan uyart m dinamosunu motor olarak çal rarak yol vermek.

Belirli Gerilim Snrlar Dahilinde Kullanlmak Üzere Tasarlanm Elektrikli Teçhizat ile lgili Yönetmelik (73/23/AT)

1. Sabit Noktal Say Sistemleri

GENEL BAKI 1. Doç. Dr. Serdar ÖZKAN

RKÜLER ( ) Konu: Sigortal lar n Eksik Gün ile ten Ç Nedenlerinin Bildirilmesiyle lgili Sosyal Güvenlik Kurumunda Yay mlanan Tebli Hakk nda.

SOSYAL GÜVENLK KURMUNUN YAPISI VE LEY. Sosyal Güvenlik Kurumu Bakanl Strateji Gelitirme Bakan Ahmet AÇIKGÖZ

ASMOLEN UYGULAMALARI

Uygulama Geli tirmede Verimlilik için Entegre Uygulama Ya am Döngüsü Yönetimi ve Dinamik Kalite Kontrolü

,$( -./(,$( 0$0$ (,$(

Terapötik ileti imin bile enleri;

OKUL ÖNCES E M KURUMLARINDA ÇALI AN ANASINIFI ÖZET

2 400 TL tutarndaki 1 yllk kredi, aylk taksitler halinde aadaki iki opsiyondan biri ile geri ödenebilmektedir:

BAYINDIRLIK LER BRM FYAT ANALZLERNDEK GÜCÜ VERMLLKLERNN RDELENMES. M.Emin ÖCAL, Ali TAT ve Ercan ERD Ç.Ü., naat Mühendislii Bölümü, Adana / Türkiye

Bileen Tümletirmesine Dayalı Otomatik Uygulama Gelitirimi

Sosyal Değişime Destek: Yeni Kitle Kaynak Araçları Anketi

Homojen Sonlu evlerde Kritik Güvenlik Say s n n Pratik Ba nt larla Tahmin Edilmesi

VB de Veri Türleri 1

MÜZ K Ö RETMENL PROGRAMLARININ KPSS SONUÇLARI

Konya 2-3. Organize Sanayi Bölgesi Elektrik Da m ebekesindeki Harmonik Seviyelerinin ncelenmesi

Cebir II 2008 Bahar

Simülasyon Modellemesi

Yavuz HEKM. Egekons Prefabrike Metal Yap San. Tic. Ltd.!ti. ve. Hekim Gemi n$a A.!. Firmalarnn Kurucusu ve Yönetim Kurulu Ba$kan.

MER A YLETRME ve EROZYON ÖNLEME ENTEGRE PROJES (YENMEHMETL- POLATLI)

T.C. YALOVA ÜNİVERSİTESİ Strateji Geliştirme Daire Başkanlığı. İÇ KONTROL ve RİSK YÖNETİMİ 2 İÇ RİSK YÖNETİMİ

Simülasyon Modelleme. Contents. 1 Çe³itli Araçlar. Doç. Dr. Mustafa Yüzükrmz myuzukirmizi@meliksah.edu.tr. Ders -4: Yerle³im Diyagramlar ve Analizler

TED ANKARA KOLEJ VAKFI ÖZEL ANAOKULU E M Ö RET M YILI 1. DÖNEM SU KONULU EKO OKULLAR RAPORU

Ölçek Geli,tirme Çal.,malar.nda Kapsam Geçerlii için Kapsam Geçerlik &ndekslerinin Kullan.lmas.

#$% &'#(# Konular. Bits of Information. Binary Özellikler Superimposed Coding Signature Formation Deerlendirme

Rüzgâr Fotovoltaik Otonom Hibrid Güç Sistemlerinin Optimum Maliyetle Boyutland lmas Üzerine Paket Bir Yaz m

ÇELK KUMA PANELLERNN ISINMA DAVRANILARI

Döküm Yöntemleri. Dr.-Ing. Rahmi Ünal

TÜRK DEN Z KUVVETLER DEN ZALTILARININ

Bağımlılık Yapı Matrisleri ile Yazılım Mimarisi İncelenmesi

RAY-KÖPRÜ ETK LE VE UYGULAMASI TRACK BRIDGE INTERACTION IN HIGH-SPEED RAILWAY BRIDGES AND ITS APPLICATION

T.C. BABAKANLIK HAZNE MÜSTEARLII 2009 YILI AKTÜERLK SINAVLARI BAVURU VE UYGULAMA KILAVUZU

Sigorta irketlerinin Yaps ve Aktüerin Rolü. Aktüerler Derneği Nisan 2010

HAREKETL BASINÇ YÜKLEMES ALTINDAK HDROLK SLNDRN DNAMK ANALZ

lkö retim Matematik Ö retmen Adaylar n Hacim Ölçmede Birim Kullanmaya Yönelik Kavray lar

Marmara Üniversitesi Fen Bilimleri Enstitüsü Elektrik E itimi A.B.D., Kad köy- stanbul, *nonat@marmara.edu.tr **sedatersoz1@gmail.

5. Öneri ve Tedbirler


Kullanım kılavuzunuz SHARP AR

Elektrik Enerjisinde Piyasa Kaosu ve Üç Ku ak Özelle tirmeler

Bir torbada 6 beyaz 5 krmz ve 4 siyah bilye vardr. Torbadan rastgele çekilen 3 bilyenin a) Üçünün de beyaz olma olasl" b) Üçünün de ayn renkte olma

Femsoft, kolay kullanımı ve genileyebilen esnek yapısı ile ilerinizi çok kolaylatıracak!

Sa lk Ekonomisi. Berk KÜSBEC Bozok Üniversitesi Berk KÜSBEC (BOZOK) KT / 18

Electronic ledger management for Turkey 1.0

SIEMENS Siemens Sanayi ve Ticaret A..

Dokuz Eylül Üniversitesi Sosyal Bilimler Enstitüsü Dergisi Cilt 8, Say: 3, 2006 OYLAMA YÖNTEMNE DAYALI AIRLIKLANDIRMA LE GRUP KARARININ OLUTURULMASI

References. 2 Sistem Kavram. 2.1 Tanmlar. Ders Kitab

H20 PANEL S STEM Her tür projeye uygun, güvenilir, sa lam ekonomik kolon ve perde kal b

Ders sorumlusu - Yrd.Doç.Dr.Hilmi Ku çu. Çevre Ak mlar - 1

E DAYALI DL ÖRETM MALZEMELERNN TÜRKÇE NN YABANCI DL OLARAK ÖRETMNDE UYGULANMASI

V.A.D. Yaklamnn avantajlar. Ünite 9 Veri Ak Diagramlarnn Kullanm. Ana Konular. Temel semboller. Harici Varlklar. Veri Ak Diagramlar

Onüçüncü Bölüm Zaman Serisi Analizi

TEKSTLDE KULLANILAN SUYUN ÖNEM VE ÖRNEK BR LETMEDE YAPILAN SU ANALZ ÇALIMALARI

ÖLÇME ARACI ÖRNE. itimde di er alanlarda oldu u gibi performans e itiminde de ö rencilere

RÜZGÂR ENERJ S NDE KULLANILAN JENERATÖRLER N

leri Excel E itim Notlar

çindekiler DIŞ ÜNİTELER / 3 ORV-X FULL DC INVERTER VRF DIŞ ÜNİTE / 4 İÇ ÜNİTELER / 37 KUMANDALAR VE OTOMASYON / 61 ORV-X TEMEL MODÜLLER / 26-27

Note: If you want to validate a page containing frames, be sure the DTD is set to "Frameset DTD". Read more about XHTML Validation.

CHERMK: OTEL OTOMASYON SSTEM

Phoenix Contact'ta veri koruma

BÖLÜM 7. SMB0 Durum bitleri : Özel haf za bayt' 0 (SM0.0...SM0.7) programlarda kolayl k sa layacak 8 bit' e

Ders sorumlusu - Yrd.Doç.Dr.Hilmi Ku. Çevre Ak mlar - 1

Hem ire Ça Sistemlerinde Yaz m Gözlemcisi Uygulamas

zmir Büyük ehir Belediyesi Ba kanl k Makam na ve belediyemizi ziyarete gelen yabanc ülke temsilcilerine gerekti inde tercümanl k hizmeti vermek.

WEB TABANLI YAPAY ZEKA TEKN KLER (PROJE NO : FEN-E )

ENERJ LET M HATLARINDA MODÜLER YAPAY

Transkript:

Yazm Konfigürasyon Yönetimi Örüntüleri Arasnda Otomatik Geçi Automatic Transition Between Software Configuration Management Patterns Fatma Gülah Kandemir Yazm Test ve Yönetim Birimi ASELSAN MGEO, Ankara kandemir@mgeo.aselsan.com.tr Özet Bu bildirinin amac irketlerin yazm konfigürasyon yönetimi uzmanlarn karla bir problemi anlatp, çözüm önerisi sunmaktr. Ayn anda birden fazla ya da art arda birbiri ile alakal proje yöneten irketlerin deen proje ilikilerine göre yazm gelitirme yönetim yaplar detirmesi gerekmektedir. Yazm konfigürasyon yönetimi de deen yönetim yapna göre demelidir. Amacz var olan yazm yönetim yaplarna uyarlanm konfigürasyon yönetimi örüntüleri arasndaki geçileri, kullanlan konfigürasyon yönetimi arac üzerinde elle yapmak yerine otomatikletirmektir. Abstract This paper s aim is to address a problem which is commonly faced by software configuration management specialists of the companies. Companies developing multiple projects at a time or one after another, usually need to change their software governance structures according to the changing interactions between ongoing projects. Since software configuration management is one of the most important activities done in software governance, transition between management patterns must be handled carefully and efficiently. Our proposal is to do the transition among configuration management patterns automatically using a configuration management tool.. Giri Yazm gelitirme süreci birçok önemli aktivitenin koordine edilmesini gerektirir ve bu sebeple yazm gelitirme yönetiminin projelere uygun bir ekilde titizlikle yaplmas gerekmektedir. Yazm konfigürasyon yönetimi de bu önemli aktivitelerden biridir ve uygun yazm gelitirme yönetim yapyla çalldnda verimli sonuçlar alnmas salar. Yazm gelitirme yönetim yap ile elenmi bir konfigürasyon yönetimi sistemi, deen yönetim yapna da adapte olmalr... Yazm Gelitirme Yönetimi Yaplar Yazm ürünleri gelitirilen irketlerde igücünün verimli bir ekilde kullanlmas amacyla projelerin öngörülen gidiatlarna göre yazm gelitirme yönetim yaplar kullanlmaktadr. Bu yönetim yaplar TCE(Transaction Cost Economics - Maliyet Ekonomisi) konusu altnda daha ayrnt bir biçimde lenmitir[]. Yazm Mühendislii ilemlerinin yürütülmesi için TCE bak aç uyarlandnda ortaya 3 ana yazm gelitirme yönetim yap yakla kmr[]. Bunlar srasyla; yukardan ya(planl), tabandan tepeye(uyarlamal) ve yazm yeniden kullan(piyasa) yönetim yaklamlarr. Yukardan aya ayrm, bir projenin nasl yaplaca önceden tahmin ediliyorsa yani projenin alt birimlerini nelerin oluturaca ve bu birimlere nasl ayrlaca biliniyorsa uygulanan, uygulanrsa verimli olan bir proje yönetim eklidir. Tabandan tepeye ina, alt birimlerin projenin tasarm sürecinde tam olarak belirlenemedii durumlarda uygulanan ve deime kar toleransl olan bir proje yönetim eklidir. Eer yaplacak projenin nasl gelitirilecei konusunda deneyim yoksa ve daha çok deneme-yanlma yöntemi ile gelitirme devam edecekse, tasarm aamasnda belirlenen alt birimler ya da bileenler projenin gidiatna göre deebilir. Böyle durumlarda tabandan-tepeye ina yönetim ekli uygundur. Yazm yeniden kullan ise yeniden kullanlacak alt birimlerin bir ksm ya da hepsi hazr bir ekilde bulunduu zaman veya daha önce yürütülmü bir projeden tedarik edilebilecei zaman rahatça uygulanabilecek bir yönetim eklidir. Yazm yeniden kullan ilemlerin maliyetlerini oldukça düürür.

.. Yazm Konfigürasyon Yönetimi Örüntüleri Yazm gelitirme yönetim yaplarn uygulama baar, her türlü yazm ileminin/aktivitesinin verimli bir ekilde yaplmas için yazm gelitirme araçlarn projeye uygun bir ekilde kullanlmas ile dorudan ilgilidir. Yazm konfigürasyon yönetimi de yazm gelitirme sürecinin önemli aktivitelerinden biridir. Yazm konfigürasyon yönetimi iki önemli amaca hizmet eder: Biri yazm gelitirme süresince gelitiricilerin birbirleri ile kod entegrasyonunu salamak dieri de yazm ürününde yaplan deikliklerin kontrol mekanizmas salamak[]. Yazm konfigürasyon yönetimi doru strateji ile uygulandnda projelerde ilem verimliliini ciddi bir ekilde arttrmaktadr. [] de hangi konfigürasyon yönetimi örüntüsünün hangi yazm gelitirme yönetimi yap ile ilikilendirilebilecei üzerine bir çalma sunulmutur. Yukarda bahsedilen 3 yönetim yap için 3 deik konfigürasyon örüntüsü üzerinde durulmutur. Bu örüntüler srasyla: Tek-dizi, ana-dizi ve üretici-tüketici örüntüleridir. Tek-dizi örüntüsü bir tane projenin tek bir dal(branch) üzerinde her bir yazm gelitiricisinin ayr gelitirme dallarn olduu, bu sayede gelitiricilerin hem birbirinden izole olarak çal hem de istedikleri zaman ilerini dier gelitiricilere teslim edip dier gelitiricilerin yaptklar alabildii bir ortam sunar. Uygulamas en basit olan örüntülerden biri olduu ve tek bir proje yönetiminde ortak kullanlan alt birimlerin(bileenlerin) olmamas sebebiyle tabandan tepeye ina yönetim ekli için uygun bir örüntü durumundadr. Ana-dizi örüntüsü birden fazla benzer projenin gelitirilmesi srasnda projelerin ortak alt birimlere eriimlerinin kolay olmas salamaktadr. Bu alt birimler tek bir proje tarafndan gelitirilip dierleri tarafndan sadece kullanyor olmak zorunda deildir. Aksine her proje ortak alt birimlerin gelitirilmesine katkda bulunuyor olabilir. Böyle projelerde yaplan deikliklerin karklk çkarmamas için ana-dizi örüntüsü kullanlmaktadr. Bu örüntü yukardan- ya yönetim ekli için uygun bir örüntüdür. Üretici-tüketici örüntüsü ise sadece üretici projenin ortak alt birimi/birimleri gelitirdii, tüketici projenin/projelerin ise sadece kullanma yetkisinin olduu bir yazm konfigürasyon yönetim örüntüsüdür. Böylelikle sadece bir projenin gelitiricileri ortak birimlerde deiklik yapaca için dier proje ile aralarnda deiklik karklklar çkmas engellenir. Bu özellikleri ile yazm yeniden kullan yönetim ekli ile birebir ilikilendirilebilen bir örüntüdür.. Araç Üzerinde Yazm Konfigürasyon Yönetimi Örüntülerinin Uygulanmas ASELSAN MGEO grubu bünyesinde yazm konfigürasyon yönetimi arac olarak IBM Rational ClearCase UCM(Unified Change Management) arac kullanlmaktadr[5]. Giri ksmnda belirtilen konfigürasyon örüntülerinin daha iyi anlalmas için ClearCase UCM arac üzerinde örnek uygulan biçimi bu kmda anlatlmaktadr. Öncesinde ClearCase UCM aracn bu bildiride de kullanacaz terminolojisinden ksaca bahsedelim. VOB (Versioned Object Base): Konfigürasyon birimlerinin sürümlerinin tutulduu yazm havuzu Proje VOB u: Projelerin, bileenlerin ve etiketlerin meta bilgilerinin tutulduu proje havuzu Bileen (Component): Birbirileriyle anlamsal olarak bütünlemi, versiyonlar birlikte tutulan, belirli bir amaca hizmet eden konfigürasyon birimleri topluluudur. Etiketler bileenler üzerinde alr. Etiket (Baseline): Bir bileenin belirli zamanlarda ald sürüm isimleri UCM Projesi: Yazm projesi Dizgi (Stream): Entegrasyon ve gelitirme dizgisi olmak üzere tür kullanlabilir. Gelitiriciler için, kendilerine ait dier gelitirenlerden izole edilmi kod gelitirme ortam etmek (Deliver): Gelitiricilerin konfigürasyon birimlerine yaptklar deiklikleri ortak havuza teslim etmesi/göndermesi Çalma alan güncellemek (Rebase): Gelitiricilerin kendi çalma alanlar belirli etiketlerdeki bileenlere güncellemesi [3] te ClearCase aracn kulland terminolojinin genel yazm konfigürasyon yönetimi terminolojisindeki eletirmesi ayrnt bir ekilde verilmitir... Tek-Dizi Örüntüsü Tek-dizi örüntüsü, dier projelerden bamsz çalan projelerde kullanld için ClearCase aracndaki

uygulamasnda tek bir UCM projesi yaratlmas yeterlidir. ekil de tek-dizi örüntüsü uygulanan bir projenin gelitirilmekte olan bir bileeninin deiklik aç yap verilmitir. ekildeki her bir daire bileenin alm olduu sürümleri belirtmektedir. Krm oklar entegrasyon dizgisine yaplan versiyon teslimlerini ya da entegrasyon dizgisinden yaplan güncellemeleri göstermektedir. Bu yapda yazmclarn yaptklar lerin birletirildii bir entegrasyon dizgisi ve her gelitiriciye ait gelitirme dizgisi mevcuttur. Yazmclar konfigürasyon birimlerine yaptklar deiklikleri entegrasyon dizgisine teslim ederek birletirirler. birden fazla projenin paralel yürütülmesi için kullanlmas mümkün deildir. Ortak_VOB Ortak_Bileen Ana_Proje Bu örüntü daha önce de bahsettiimiz gibi irketin ilk kez tecrübe edecei proje türleri için, henüz dier projelerle ortak kullanlmas düünülmeyen bileenlerin gelitirilmesinin hzl bir ekilde ilerlemesini salar. Gelitiricilerin çalmalar birletirmesi, entegrasyon dizgisine çalmalar teslim etmeleri ve daha sonra güncellemeleri ile kolay bir ekilde mümkündür. Proje Güncelle Proje Tek-Dizi Proje Güncelle Gelitirici 3 4 Güncelle ekil Tek-dizi örüntüsü uygulanan projenin birletirme ve gelitirme dizgilerinin teslim-güncelle yap.. Ana-Dizi Örüntüsü 3 Gelitirici Ana-dizi örüntüsü paralel yürütülen projelerin ortak bileen kullanmas durumunda kullanr. Ortak bileen üzerinde her bir projenin yapt deikliklerin birbirleri ile karmamas ve olas karklklarn giderilmesi için harcanacak zamann en aza indirilmesi ancak ana-dizi örüntüsü ile salanr. Tek-dizi örüntüsü sadece tek bir projenin konfigürasyonu salad için ekil Ana-dizi örüntüsü uygulanan projenin ortak kullandklar bileenin deiklik birletirme yap ekil de görüldüü üzere iki proje tarafndan gelitirilmekte olan Ortak_Bileen in konfigürasyon birimlerine deiklii dorudan yapan tek proje Anadizi projesi olan Ana_Proje dir. Proje ve Proje nin Ortak_Bileen e dorudan müdahale etmesi deikliklerin birletirilmesini çok karr ve deikliklerin kontrolünü çok zorlard. Bu sebeple, her bir proje yapt deiklikleri önce Ana_Proje ye gönderiyor, deiklikler orada birletiriliyor, daha sonra da dier proje bileenin son halini Ana_Proje den alyor..3. Üretici-Tüketici Örüntüsü Üretici-tüketici örüntüsünde ortak kullanlan bileen sadece onun üretici projesi tarafndan gelitirilip dier projeler tarafndan kullanld için, Ana-dizi örüntüsünde olduu gibi tepede baka bir projeye gerek yoktur. Sadece kullan olan projenin belirli zamanlarda üretici olan projenin yapt deiklikleri alabilmesi için entegrasyon dizgisini güncellemesi gerekmektedir. Daha sonra tüketici projenin gelitiricileri, entegrasyon dizgisinden son güncellemeleri alabilirler.

Tüketici_Proje Üretici_Proje ekil 3 Üretici-Tüketici örüntüsünde tüketici projelerin ortak bileene tek yönlü eriimleri ekil 3 te bu örüntünün projelerin entegrasyon dizgileri üzerinden nasl uygulanabilecei sembolik olarak gösterilmitir. 3. Yazm Gelitirme Yönetim Yaplar ve Konfigürasyon Örüntüleri Arasndaki Geçi 3 4 5 6 Tüketici_Proje Birçok projeyi e zamanl ya da artarda yürüten irketlerde daha önce de bahsedildii gibi baz bileenlerin ortak kullanlmas gerekmektedir. Ya da dan-yukarya ina ile yönetilmekte olan bir projenin alt birimleri ekillenmeye balayp yeni bileenlere ayryor olabilir. Bu yeni bileenler veya var olan bileenler de baka bir proje ile ortak yürütülmeye balayabilir. Bu durum irketin ihtiyacna ya da projelerin durumlarna göre bir yazm yönetim yapndan dier bir yazm yönetim yapna geçii gerektirmektedir. Çünkü daha önce yürütülen projenin dier bir proje ile paralel gitmek durumunda olmas, o projenin yönetim yapn detirilmesine sebep olur. Ayn ekilde, yazm yönetim yapn demesi konfigürasyon yönetimi örüntüsünün de demesi demektir. Çok da kolay olmayan bu geçileri gerçekletirmek konfigürasyon yönetimi sorumlularna aittir. Biz bu bildiride, bir yönetim yapndan dier yönetim yapna geçii farkl taraftan ele alyoruz. Birincisi, daha çok yazm tasar çat altna giren, var olan bileenlerin daha alt bileenlere ayrlmas ilemidir. Bir bileenin baka bileenlere ayrp ayramayaca veya hangi bileenlere ayracana karar vermek gözle yaplacak kadar basit bir ilem deildir. Bu ilemin baz yazm tasarna yardmc olabilecek araçlarla yaplmas, çkacak sonucun da güvenilirliini artr. kincisi ise, deen bileen yapna ve ortaklna göre uygulanmakta olan yazm konfigürasyon yönetimi örüntüsünün detirilme ilemidir. Bizim önerimiz bu iki ilemin yazm gelitirme ve yönetme araçlar ile otomatik bir ekilde yaplmas salamaktr. 3.. Yazm Gelitirme Yönetim Yaplar Arasnda Geçi Yazm yönetim yaplar arasnda bir geçi yaanmasn en önemli nedenlerinden biri bileen yaplarn deip yeniden kullanma uygun hale getirme amacr. Bir bileenin ise baka bileenlere ayrp ayrmayaca belirlemek çok kolay bir süreç deildir. Bir bileen birbirlerine ba birçok kod parçasndan yani konfigürasyon biriminden olumaktadr. Bu baklarn analiz edilerek bileenlerin nasl ayraca belirlemek gerekmektedir. Bamlk yap matrisleri(bym) (Dependency Structure Matrix- DSM)[4] kod bamlklar analiz etmek için kullanlabilir. Bamlk yap matrisleri kullanlarak bir yazm bileeninin kark olan bamlklar düzenlenebilir ve daha önce fark edilmemi, kendi aralarnda gruplanabilir olan alt-bileenler ortaya çkabilir. 3 4 Kod A. X X Kod B. X Kod C 3 X. X Kod D 4. Tablo Basit bir BYM 3 4 Kod D. Kod A X. X Kod C 3 X X. Kod B 4 X. Tablo Bölmeden sonra oluan blok üçgen BYM 3 Kod D. Kod A-C X.

Kod B 3 X. Tablo 3 Alt üçgen matris BYM basit bit komuluk matrisidir ve amaç bu matrisi alt üçgen matris haline getirerek kodlarn bileen parçalarn birbirine baml en düzenli hale getirmektir. Bu amaç için gelitirilmi bölme algoritmalar ve yazm araçlar bulunmaktadr. Lattix LDM bu araçlardan bir tanesidir[6]. Tablo BYM nin basit bir örneini göstermektedir. Tabloda X ile gösterilen hücreler kodlarn birbirlerine baml göstermektedir. Örnein Tablo in ilk sat, A kodunun C ve D kodlarna baml bulunduunu göstermektedir. Tablo ise ilk matrise bölme algoritmas uygulandktan sonra ortaya çkan blok haline getirilmi üçgen matrisi göstermektedir. Bölme algoritmas, BYM deki birbirine baml kodlarn grup haline getirilerek kodlar arasndaki kark bamlklarn çözümlenmesini salar. Kod A ve C nin bir araya getirilmesinden oluan ve istenen düzeye getirilen alt üçgen matris ise Tablo 3 te verilmitir[4]. ancak otomatik geçiini hedeflediimiz sisteminin yapmas gerekenleri anlatmak için öncelikle ilk projenin ClearCase de nasl tutulduunu görelim. ekil 4 te ilk sistemin ClearCase aracndaki yap gösterilmitir. Önemli olan noktalar sras ile:. Proje_PVOB; Proje in tutulduu Proje VOB udur.. Proje_VOB; Bileen ve Bileen nin tutulduu VOB dur. 3. Admin_PVOB; Proje_PVOB ve Proje_VOB un yöneticiliini yapan proje VOB udur. 4. Bileen ve Bileen; Proje tarafndan gelitirilmekte olan bileenlerdir. Admin_PVOB Böylece BYM kullanlarak, tabandan tepeye yönetim yap ile yönetilen projenin kulland bir bileenin baka bir proje ile ortak kullanlabilecek baka bileenlere dönütürülmesi ilemi gerçekletirilebilir. Tabandan-tepeye yönetim yapndan yukardan- ya yönetim yapna geçilebilecei gibi yeniden kullanm yönetim yapna da geçite de bileenler bu ekilde oluturulabilir. Proje_PVOB Bileen Proje_VOB Bileen 3.. Yazm Konfigürasyon Yönetimi Örüntüleri Arasnda Geçi Projenin ya da projelerin yeni yönetim yapn belirlenmesinin ardndan hangi konfigürasyon yönetimi örüntüsünün uygulanmas gerektii bellidir. Önemli olan var olan örüntüden dier örüntüye geçite gereksinimlerin ne olduu ve bu gereksinimlerin nasl karlanabileceidir. Daha önce de belirttiimiz gibi Aselsan MGEO grubu bünyesinde konfigürasyon yönetimi arac olarak IBM Rational ClearCase arac kullandz için hedeflediimiz otomatik geçi sisteminin de bu araç üzerinde yaplmas istiyoruz. Bunu da aracn kullanya salad cleartool ad verilen komut sat betikleri(command line scripts) ile baaraca düünüyoruz. Tabandan tepeye ina ile yönetilmekte olan projenin bir bileeninin yeni balayacak olan bir proje ile ezamanl gelitirilecei senaryosunu ele alalm. Basit olmas açndan da bileenin alt bileenlere ayrmayaca varsayalm. Tabandan tepeye inadan yukardan ya ayrma geçite, normalde el ile yaptz Proje ekil 4lk projenin ClearCase aracndaki yap Bileen ikinci projede de ortak olarak kullanlmaya balad zaman ana-dizi örüntüsüne geçiten sonra olumas gereken ClearCase yapekil 5 teki gibidir. ClearCase de bu yap kurmak için sras ile:. Ana-dizi projesi olan Ana_Proje si için öncelikle Ana_PVOB un yaratlmas. Bundan sonra ortak kullanlmaya balayacak Bileen in tutulaca Ana_VOB un yaratlmas 3. kinci proje için Proje_PVOB un yaratlmas

4. Proje nin sadece kendi gelitirecei Bileen3 ün tutulaca Proje_VOB un yaratlmas 5. Ana_Proje nin yaratlmas 6. Proje nin yaratlmas 7. Bileen in Proje_VOB dan silinip Ana_VOB a kopyalanmas 8. Yeni Bileen in Ana_Proje nin, Proje in ve Proje nin konfigürasyonuna eklenmesi 9. Bileen3 ün yaratlmas ve Proje nin konfigürasyonuna eklenmesi gerekmektedir. Biz bu admlarn el ile yaplmas yerine, ClearCase aracna tasarladz betiklerle müdahale edip otomatik hale getirmek istiyoruz. Bu admlar el ile takip etmesi vakit ald gibi, baz gerçeklemesini istemediimiz sonuçlar da kabullenmek zorunda kalyoruz. Örnein 7. ve 8. admlardaki, eski projedeki Bileen in bir VOB dan dier VOB a aktarlmas aslnda istemediimiz bir durum olan versiyon geçmiini kaybetmemize neden oluyor. Bir bileeni bir VOB dan silip dierine el ile kopyalamak u an ClearCase de geçmiin kaybedilmesine sebep olurken, araca betiklerle müdahale edersek bu kayb ortadan kaldrabilme ihtimalimiz oluur. Proje_PVOB Proje_VOB Bileen Admin_PVOB Ana_PVOB Ana_VOB Proje_PVOB Proje_VOB Yeni_Bileen Bileen3 bir araç, insandan kaynaklanabilecek geri dönülemez hatalarn engellenmesini salar. 4. Sonuç irketlerin yürütülmekte olan projelerine uygun yönetim yaplar seçmek ve uygulamak alnacak verimi büyük ölçüde etkilemektedir. Uygun yazm konfigürasyon yönetimi örüntüsünü kullanmak ise yazm yönetimi aktivitelerinin en önemlilerinden biridir. Projeler detikçe yazm yönetim yapn demesi ve ayn ekilde konfigürasyon yönetimi örüntüsünün demesi gerektii için bu deimlerin otomatik olarak gerçeklemesi hem vakit hem de geçiin güvenilirlii açndan çok faydal olacaktr. Otomatik geçi önerimizi uygulamak için çalmalara balam durumdayz ve uyguland takdirde çok verim alacaz düünüyoruz. Aselsan MGEO grubu bünyesinde konfigürasyon yönetimi arac olarak IBM Rational ClearCase kullandz için önceliimiz bu araç üzerinde uygulamam gelitirmek, ancak gerekirse u an dünyada kullanlmakta olan dier yazm konfigürasyon yönetimi araçlar üzerinde de çalmaya balayabiliriz. 5. Kaynaklar [] Erbas, C., and Erbas, B.C. 009. Software Development under Bounded Rationality and Opportunism. Software Development Governance Workshop (Vancouver, Canada, May 7, 009). ICSE 09. [] Pala Er, N., Erba, C. 00. Aligning Software Configuration Management with Governance Structures. Workshop on Software Development Governance. ICSE 00 [3] Berczuk, S. P., and Appleton, B. 00. Software Configuration Management Patterns: Effective Teamwork, Practical Integration. Addison Wesley (Nov. 00). [4] Sangal, N., Jordan, E., Sinha, V., Jackson, D. 005. Using Dependency Models to Manage Complex Software Architecture. OOPSLA 05 [5] IBM Rational ClearCase, http://www- 0.ibm.com/software/awdtools/clearcase/index.html [6] Lattix LDM, http://www.lattix.com/ Proje Ana_Proj Proje ekil 5 Yeni eklenen proje ile ana-dizi örüntüsünün yap Ayrca otomatik geçi ile insan hatalarn en aza ineceini düünüyoruz. Güvenilirlii test edilmi olan