Ebat: px
Şu sayfadan göstermeyi başlat:

Download ""

Transkript

1 ANKARA ÜNİVERSİTESİ FEN BİLİMLERİ ENSTİTÜSÜ YÜKSEK LİSANS TEZİ DOĞAL DİLDE YAZILMIŞ YAZILIM GEREKSİNİMLERİNİN KALİTELERİNİN DİLBİLİMSEL ANALİZ TEKNİKLERİYLE ARTTIRILMASI İbrahim Berk YILMAZ ELEKTRONİK MÜHENDİSLİĞİ ANABİLİM DALI ANKARA 2010 Her hakkı saklıdır

2 İbrahim Berk YILMAZ tarafından hazırlanan Doğal Dilde Yazılmış Yazılım Gereksinimlerinin Kalitelerinin Dilbilimsel Analiz Teknikleriyle Arttırılması adlı tez çalışması aşağıdaki jüri tarafından oy birliği ile Ankara Üniversitesi Fen Bilimleri Enstitüsü Elektronik Mühendisliği Anabilim Dalı nda YÜKSEK LİSANS TEZİ olarak kabul edilmiştir. Danışman : Yrd. Doç. Dr. Asım Egemen YILMAZ Jüri Üyeleri : Doç. Dr. Onur Demirörs Ortadoğu Teknik Üniversitesi Enformatik Enstitüsü Yrd. Doç. Dr. Murat Efe Ankara Üniversitesi Elektronik Mühendisliği Bölümü Yrd. Doç. Dr. Asım Egemen Yılmaz Ankara Üniversitesi Elektronik Mühendisliği Bölümü Yukarıdaki sonucu onaylarım. Prof. Dr.Orhan ATAKOL Enstitü Müdürü

3 ÖZET Yüksek Lisans Tezi DOĞAL DİLDE YAZILMIŞ YAZILIM GEREKSİNİMLERİNİN KALİTELERİNİN DİLBİLİMSEL ANALİZ TEKNİKLERİYLE ARTTIRILMASI İbrahim Berk YILMAZ Ankara Üniversitesi Fen Bilimleri Enstitüsü Elektronik Mühendisliği Anabilim Dalı Danışman: Yrd. Doç. Dr. Asım Egemen Yılmaz Günümüzde geliştirilen yazılım ürünlerindeki hataların %85 i başlangıçta yanlış tanımlanmış gereksinimlerden kaynaklanmaktadır. Bu kapsamda, Yazılım Gereksinim Mühendisliği faaliyetlerinde, tanımlanan isterlerin belirli bir kaliteye, doğruluğa ve tutarlılığa sahip olması, neticede ortaya çıkacak yazılım ürününün olgunluğu için vazgeçilmezdir. Bu bağlamda, bütün bu faaliyetleri yerine getirmeyi amaçlayan bir Gereksinim Kalite Yönetimi, daha etkin sonuçlar elde edebilmek için insan muhakemesini ve değerlendirmesini destekleyecek bir takım yardımcı yaklaşımlara ve bu yaklaşımlar neticesinde yapılacak bir gereksinim analizi de bu işlemi kolaylaştırıcı araçlara ihtiyaç duymaktadır. Bu doğrultuda bu çalışmada, doğal dilde yazılmış gereksinimlerin kalitesini arttırmaya yönelik üç aşamalı bir yaklaşım ve bu yaklaşım uyarınca gereksinim analizi yapan bir yazılım aracı geliştirilmiştir. Yaklaşımın birinci aşaması gereksinimlerdeki tutarsızlıkların, muğlaklıkların tespit edilmesini, ikinci aşaması gereksinimlerin işlevlerine göre sınıflandırılmasını ve üçüncü aşaması ise benzer gereksinimlerin tespit edilerek tekrarların ve çelişkilerin önüne geçilmesini içermektedir. Bu faaliyetleri desteklemek üzere geliştirilen yazılım aracı da üç temel fonksiyonu yerine getirmektedir. Bunlar, birinci olarak dilbilgisel analiz temelinde sözlüksel analiz yöntemleri kullanılarak hatalı ve muğlak gereksinimlerin tespit edilmesi, ikinci olarak sözlüksel analiz teknikleriyle işlevsel olan ve işlevsel olmayan gereksinimlerin tespit edilmesi ve işlevsel olmayan gereksinimlerin konularına göre sınıflandırılması ve üçüncü olarak, benzer gereksinimlerde, ihtiyaçları anlatmak üzere yazılmış tekrar edilen gereksinimlerin elenmesi ve çelişen benzer gereksinimlerin düzeltilmesi amacıyla benzer gereksinimlerin dilbilgisel ve anlambilimsel tekniklere başvurmadan istatistiksel metin analizi yöntemleriyle tespitidir. Yazılım, çalışma kapsamında Türkçe hazırlanmış bir gereksinim kümesi üzerinde denenerek başarılı sonuçlar alınmış ve bu sonuçlar yorumlanmıştır. Mart 2010, 67 sayfa Anahtar Kelimeler: Gereksinim Analizi, Benzerlik Analizi, İşlevsel Olmayan Gereksinimler, Doğal Dilde Yazılmış Gereksinimler, Gereksinim Kalite Yönetimi, Sözlüksel Metin Analizi i

4 ABSTRACT Master Thesis QUALITY IMPROVEMENT OF THE SOFTWARE REQUIREMENTS WRITTEN IN NATURAL LANGUAGE BY MEANS OF LINGUISTIC ANALYSIS TECHNIQUES İbrahim Berk YILMAZ Ankara University Graduate School of Natural and Applied Sciences Department of Electronic Engineering Supervisor: Asst. Prof. Dr. Asım Egemen Yılmaz In the recently developed software products, 85% of the defects are caused by the requirements defined at the beginning of the work. Hence, in the Software Requirement Engineering activities, it is indispensible to have a degree of quality, completeness and consistency for the maturity of all requirements. As a result, a Requirement Quality Management activity adressing these goals, needs some new approaches and tools, which will support human cognition and evaluation to get better results. For this purpose, in this study, a three-phase approach and a new software tool related with this approach is developed to improve the quality of the requirements written in natural language. In the first step of this approach, detection requirement defects due to inconsistencies and vaguenesses, in the second step the classification of the requirements according to functionality, and in the third and final step detection of the similar requirements to overcome redundancies and contradictions, are suggested. The software tool which is developed to support this approach, also has three basic functions: First, detection of the defective and vague requirements using linguistic lexical analysis techniques. Second, detection and classification of the non-functional requirements using linguistic lexical analysis techniques. Third, detection of the similar or identical requirements applying similarity analysis to eliminate the redundancy and contradictions in a requirement set using statistical similarity analysis approach. The new developed software tool is applied on the requirement sets written in Turkish natural language and successful results are obtained and evaluated in the scope of this study. March 2010, 67 pages Key Words: Requirement Analysis, Similarity Analysis, Non-Functional Requirements, Requirements Written in Natural Language, Requirement Quality Management, Lexical Text Analysis ii

5 TEŞEKKÜR Bu tez çalışmasının hazırlanması sırasında, bilgi ve tecrübesiyle bana her konuda yardımcı olan, değerli danışmanım Yrd. Doç. Dr. Asım Egemen YILMAZ a (Ankara Üniversitesi Elektronik Mühendisliği Anabilim Dalı), çalışmalar sırasında bana desteğini esirgemeyen değerli mesai arkadaşım Alpaslan TÜRKBOYLARI na, anne ve babama, ve kardeşlerim Burak ve Nur a sonsuz teşekkür ederim. İbrahim Berk YILMAZ Ankara, Mart 2010 iii

6 İÇİNDEKİLER ÖZET... i ABSTRACT... ii TEŞEKKÜR... iii SİMGELER DİZİNİ... v ŞEKİLLER DİZİNİ... vi ÇİZELGELER DİZİNİ... vii 1. GİRİŞ IT Proje Performansını Etkileyen Problemlerin Tespiti Yazılım Gereksinim Kalite Yönetimi KURAMSAL TEMELLER Doğal Dilde Hazırlanmış Gereksinim Metinlerinin Yapıları Gereksinim Kalite Öznitelikleri Gereksinim Hata Tipleri Gereksinim Hata Tipleri-Kalite Öznitelikleri İlişkileri Gereksinim Hatalarının Tespit Edilmesine Yönelik Yapılmış Çalışmalar Dilbilimsel analizler yaparak hatalı veya arızalı gereksinimleri belirlenmesine yönelik araçlar ARM (Automated Requirements Measurement) yazılımı QuARS (Quality Analyzer for Requirements Specifications) yazılımı RAST (Requirement Analysis Support Tool) yazılımı Tiger PRO yazılımı Türkçe için Kızılca ve Yılmaz (2008) tarafından yapılan çalışma Aynı veya benzer gereksinimlerin tespitine yönelik araçlar Gereksinimlerin türlerine ve alt türlerine ayrılarak sınıflandırılmasına yönelik araçlar MATERYAL VE YÖNTEM Materyal Yöntem Yazılımın fonksiyon ve kabiliyetleri: Yazılımın girdileri Muğlaklık hata tiplerinin analizi İşlevsellik analizi Benzerlik analizi ARAŞTIRMA BULGULARI VE TARTIŞMA SONUÇ Çalışmanın Kısıtları ve Geleceğe Yönelik Çalışma Önerisi EKLER EK 1 Literatürde İşlevsel Olmayan Gereksinim Türleri (Chung vd. 2000) EK 2 Hata Tipi Sözlükleri EK 3 İOG Alt Türü Sözlükleri EK 4 Türkçe Durak Kelimeler (Turkish Stopwords) EK 5 İngilizce Durak Kelimeler (English Stopwords) EK 6 Contract Weakness Analyser v1.0 Yazılımı (CD içeriğinde) ÖZGEÇMİŞ iv

7 SİMGELER DİZİNİ ARM İOG QuARS RAST TDK UML XML Automated Requirements Measurement İşlevsel Olmayan Gereksinimler Quality Analyzer for Requirements Specifications Requirement Analysis Support Tool Türk Dil Kurumu Unified Modeling Language Extensible Markup Language v

8 ŞEKİLLER DİZİNİ Şekil 1.1 Gereksinim Kalite Yönetimi Süreci... 5 Şekil 3.1 Yazılım Ana Sayfasının Örnek Görüntüsü Şekil 3.2 Dosya Seçim Menüsü Şekil 3.3 Örnek Şartname Dosyası Şekil 3.4 Örnek Hata Tipi Sözlüğü Şekil 3.5 Analiz sonucunda oluşan Analysis-Result.txt ve SRS.txt dosyaları Şekil 3.6 Dictionaries.txt dosyasında yer alan ve Hata Tipi analizinde kullanılacak sözlükler Şekil 3.7 Örnek İOG Alt Türü Sözlüğü Şekil 3.8 Dictionaries.txt dosyasında yer alan İOG Alt Türü Sözlükleri Şekil 3.9 İOG Alt Türü Analizi için Örnek Sonuç Ekranları Şekil 3.10 Otomatik benzerlik analizi algoritmasının gösterimi Şekil 3.11 % 75 eşik seviyesi için benzerlik katsayılarına göre yazılım çıktısı..44 Şekil 3.12 %65 eşik değeri için oluşturulan örnek Similarity_Results.txt dosyası...44 vi

9 ÇİZELGELER DİZİNİ Çizelge 1.1 Hatanın bulunduğu faz ile düzeltme maliyeti arasındaki ilişki... 3 Çizelge 2.1 DOD MIL-STD-490A ve IEEE Std a göre Kalite Öznitelikleri. 12 Çizelge 2.2 Gereksinim Hata Tipleri Çizelge 2.3 Gereksinim Hata Tipleri ve Bu Hatalar Dolayısıyla Etkilenen Kalite Öznitelikleri 14 Çizelge 2.4 Gereksinim Hata Tiplerine İlave Olarak Yapılan Hatalar ve Bu Hatalar Dolayısıyla Etkilenen Kalite Öznitelikleri.14 Çizelge 2.5 Hata Tipi Analizi Yapan Yazılımlar ve Kullandıkları Analiz Yöntemleri. 20 Çizelge 2.6 ISO 9126 dan Çıkarılan İşlevsel Olmayan Gereksinim Türleri Çizelge 4.1 İhtimal Tablosuna göre Değerlendirme Referansları (Natt och Dag vd., 2001) 46 Çizelge 4.2 İhtimal Tablosuna göre Değerlendirme 48 vii

10 1. GİRİŞ İleri Teknoloji Projeler ekonomik büyüme için vazgeçilmezdir. Örneğin, günümüzde dünyada parasal yatırımların önemli bir kısmı bilişim, elektronik ve haberleşme alanında yapılmaktadır. Bu yatırımlar projeler yoluyla teknolojiyi pratik uygulamalarda kullanarak değer oluşturmaktadır. Ancak, Standish Group tarafından Amerika Birleşik Devletlerinde yapılan bir araştırmaya göre ise yine ileri teknoloji IT alanındaki projelerin %28 i ve haberleşme alanındaki projelerin %25 i başarılı sonlanmakta diğer %75 i ise zaman ve bütçe aşımına uğramaktadır. Ayrıca, bu projelerin %53 ü teknik gereksinim dokümanındaki fonksiyonalitelerin yalnızca %60 ını karşılayabilmektedir (Biggs 2000). Yine bu alanda yürütülen benzer bir araştırmada, 2003 yılında İngiltere de ileri teknoloji içeren bilişim alanında 421 Proje incelenerek performansları değerlendirildiğinde, projelerin %9 u başarısızlıkla sonuçlanmış, %23 ü süresinde tamamlanamamış, %18 i bütçeyi aşmış, %7 si amaç ve hedeflerinin tamamına ulaşamamış, ancak %16 sı başarıyla tamamlanabilmiştir. Bu çalışmanın en anlamlı sonuçlarından birisi de başarısız olan projelerin %75 inde temel etkenin anlaşılamayan gereksinimler olmasıdır (Sauer ve Cuthbertson 2003). Şüphesiz ki bu sonuçlar proje performanslarının ve sonuç olarak projelerin başarılarının yükseltilmesi ve iyileştirilmesi için problemlerin kaynağının tespit edilmesine yönelik çalışmalar yapılmasını ve bu problemleri giderici yöntemler geliştirilmesini zorunlu kılmaktadır. 1.1 IT Proje Performansını Etkileyen Problemlerin Tespiti Sauer ve Cuthbertson (2003) tarafından İngiltere de 421 projede görev alan 1500 proje yöneticisinin katılımıyla gerçekleşen ve sonuçları yukarıda verilen anket çalışmasının verilerine göre sık karşılaşılan 21 adet proje riskinin proje başarısını etkilemedeki 1

11 etkinlik ve önem sırası incelenmiş, ve sonuçta Üst Yönetimin Projeye Destek Vermemesi nin ardından en etkili ikinci risk olarak Kapsam, Amaç ve İsterlerin Anlaşılamaması tespit edilmiştir. Buradan çıkan sonuç, sağlıklı bir IT projesi için kapsam, amaç ve isterlerin projenin başında tüm taraflarca anlaşılacak şekilde düzgün tanımlanması, kurumsal problemlerin dışında en etkin faktördür. Projelerin başlangıcında hazırlanan ve projenin amacını, kapsamını ve isterlerini tanımlayan doküman Proje Gereksinimleri Dokümanı dır. Gereksinim belirli bir alandaki ihtiyaç hakkında bilgi taşıyan ifade veya metnin adıdır. Young (2001) tarafından yürütülen bir başka çalışmanın sonucuna göre belirli bir proje kapsamında geliştirilmiş yazılım ürünlerindeki hataların %85 i başlangıçta yanlış tanımlanmış gereksinimlerden kaynaklanmaktadır. Burada gereksinimlerde ne tür hatalar yapıldığının tespit edilmesi önem kazanmaktadır. Hooks (1993) a göre gereksinimlerin yazılmasında sıklıkla görülen problemler aşağıdaki gibi sıralanmıştır: Kötü varsayımlar yapılması Gereksinimden (ne yapılacağı) ziyade uygulamaların (nasıl yapılacağı) belirtilmesi Gereksinimlerden ziyade faaliyetlerin açıklanması Yanlış terimlerin kullanılması Yanlış cümle yapısı ve kötü gramer kullanılması Gereksinimlerin eksik tanımlanması Maksadı aşma Yine Hooks ve Kristin (2001) in çalışmalarının sonuçlarına göre gereksinim hatalarının; %49 u yanlış bir takım varsayımlar ve gereksinimlerin yanlış yazılmasından; 2

12 %29 u gereksinimlerin unutulmuş veya atlanmış olmasından; %13 ü yazılan gereksinimlerin birbiriyle çelişiyor veya tutarsız olmasından; %5 i ise gereksinimlerin farklı yorumlanabilir, muğlâk ifadelerle yazılmış olmasından kaynaklanmaktadır. Bu aşamada, gereksinimlerin yanlış yazılması ya da eksik yazılması/atlanması daha ziyade gereksinimin içeriği ile ilgili olduğundan insan muhakemesi ile düzeltilmelidir. Ancak gereksinimlerdeki çelişkiler ve muğlaklıklar gereksinimlerin kalitesini artırmaya yönelik birtakım araçlar kullanılarak düzeltilebilmektedir. Boehm (1981) ün çalışmasına göre gereksinim ve tasarım aşamasında fark edilen hataların, gelecekteki olası düzeltme faaliyetlerini %40-50 oranında azalttığını ve yine Boehm (2001) ün sonuçlarına göre hataların ileri geliştirme evrelerinde tespit edilmesinin hata düzeltme maliyetlerini 5 katına çıkarttığı, sistemin sahadaki kullanımı esnasında tespit edilmesinin ise bu maliyetlerin zaman zaman 100 katına kadar çıkabildiği tespit edilmiş ve bu veriler doğrultusunda Gause ve Weinberg (1989) tarafından düzenlenen ve çizelge 1.1 de sunulan Göreceli Düzeltme Maliyetleri sıralanmıştır. Çizelge 1.1 Hatanın bulunduğu faz ile düzeltme maliyeti arasındaki ilişki (Gause ve Weinberg 1989) Hatanın Bulunduğu Faz Göreceli Düzeltme Maliyeti Gereksinim Analizi 1 Tasarım 3-6 Kodlama ve Birim Testi 10 Geliştirme Testi Kabul Testi İşletim Dolayısıyla, projelerin ilerleyen aşamalarında büyük sıkıntılar yaşamamak için herhangi bir yazılım projesinde daha başından itibaren bütün gereksinimlerin, ilerideki bölümlerde açıklanacak olan kalite kriterlerini sağladıklarının doğrulanması amacıyla mutlaka gözden geçirilmesi gerekmektedir. 3

13 1.2 Yazılım Gereksinim Kalite Yönetimi Yazılım projelerinde ihtiyaçları tanımlamak ve projenin temelinin oluşturmak amacıyla oluşturulan yazılım gereksinimlerinin ifade edilmesinde; genelde okuyucu kitlesinin geniş tutulabilmesi amacıyla doğal dil kullanılmakta, ancak söz konusu ifadelerde çoğu zaman bir takım hatalar yapılmaktadır. Bu kapsamda, ihtiyaçların açık olarak tanımlanmaması, gerekli performans kriterlerinin açıklanmaması, ucu açık ihtiyaçlar belirtilmesi ve bir ihtiyaç belirlenirken bunun ölçümü ile ilgili kıstasların tanımlanmaması gibi yapılan dilbilgisel hatalar, projenin ilerleyen safhalarında maliyetin artması, proje takviminin uzaması ve mevcut iş gücünün yetersiz kalması gibi olumsuzluklar doğurmaktadır. Proje yönetiminde yaşanan bu olumsuzlukları giderebilmek ve kaynakların etkin kullanımını sağlamak amacıyla, yazılım gereksinimlerinin yazılmasında yapılan hataları ayıklayacak araçların geliştirilmesine duyulan ihtiyaç artmaktadır. Bu aşamada, yazılım gereksinimlerinin kalitesini sağlamak için DOD MIL-STD-490A (1985), IEEE Std (1993) ve ISO 9126 (1991) gibi yazılım gereksinim kalite standartları geliştirilmiştir. Bu standartların kapsam ve detayı Bölüm 2 de açıklanmıştır. Bu anlamda, yazılım projelerindeki gereksinimlerin kontrolü incelenmesi ve iyileştirilmesi faaliyetine Yazılım Gereksinim Kalite Yönetimi denilebilir. Yılmaz ve Kızılca (2009) nın ifade ettiği gibi, Yazılım Gereksinim Kalite Yönetimi işlevsel olan/olmayan bütün gereksinimlerin doğal dilde ifade edilerek yazılmasının ardından öncelikle söz konusu gereksinimlerin dilbilimsel açıdan belirli koşulları sağlayıp sağlamadığının kontrol edilmesini ve gereksinimlerin belirli ölçütlere göre sınıflandırılmasını kapsar. Bu faaliyetlerin devamında, eğer gereksinimler birçok kişinin oluşturduğu teknik ve idari bir topluluk tarafından hazırlanmışsa, muhtemel benzer veya aynı gereksinimlerin ayıklanması için gereksinim kümesini gözden geçirilmesini de içerir. Bu süreçler şekil 1.1 de açıklanmaktadır. Yazılım Gereksinim Kalite Yönetimi, konu ile ilgili uzmanların ya da Gereksinim Dokümanı nı hazırlayan Gereksinim Mühendisleri tarafından gereksinimlerin yukarıda 4

14 ana hatları belirtilen kriterleri sağlayıp sağlamadığının değerlendirilmesidir. Bu değerlendirme herhangi bir araç kullanılmadan, dokümanın hazırlandıktan sonra alınıp incelenmesi şeklinde insan muhakemesi ile yapılabileceği gibi, bu amaca yönelik hazırlanmış veya hazırlanacak bir takım vasıtalar veya yazılımlarla da yapılabilir. Aday Gereksinim Dilbilgisel Olgunluk Analizi Kullanıcı Geribeslemesi İşlevsellik Analizi ve Önceliklendirme Analizi Benzerlik Analizi Hazır Gereksinim Kümesi Tasarım Modeline Geçiş Şekil 1.1 Gereksinim kalite yönetimi süreci (Yılmaz ve Yılmaz 2010) Birinci durumda, projenin önemli kaynaklarından Yazılım Sistem Mühendislerini oldukça külfetli bir işte ve daha projenin başında işba edilmektedir. Ayrıca Kızılca ve Yılmaz (2008) ın ifadesiyle zaten teknik ekipler tarafından bürokratik ve sıkıcı, yöneticiler tarafından ise projenin erken evresinde paydaşlar arasında problem çıkarabilecek ve iyi ilişkileri bozabilecek potansiyel bir tehlike olarak değerlendirilen bu gözden geçirme işlemi, çoğunlukla geliştirme takvimlerinin sıkışıklığı mazeret gösterilerek ihmal veya iptal edilmektedir. Bu durumda, yukarıda önemini ve yapılmaması halinde risklerini belirttiğimiz önemli bir kalite yaklaşımı ihmal edilmektedir. Yazılım Gereksinim Kalite Yönetimi için bir vasıta veya yazılım kullanılmasını içeren ikinci durumda ise, gereksinim olabilecek her türlü, doküman, ses kaydı, standart, toplantı notu vb. doküman ve kaynağın öncelikle üzerinde teknik araçlarla analiz yapılabilecek bir metin haline getirilmesi ve bu metin üzerinde Yazılım Gereksinim Kalite Yönetimi yaklaşımıyla kullanıcılara geri besleme ve öneri sağlayarak uygun olmayan gereksinimlerin daha baştan düzeltilmesi sağlanabilmektedir. 5

15 Bu amaçla, İngilizce de çeşitli seviyede dilbilimsel analizler yaparak gereksinim kalitesini artırmaya yönelik Wilson vd. (1997) tarafından geliştirilmiş olan ARM, Noh ve Gadia (2003) tarafından geliştirilmiş olan RAST, Fantechi vd. (1994) ve Lami (2005) tarafından geliştirilmiş olan QuARS ve Kasser (2002) tarafından geliştirilmiş olan Tiger PRO gibi yazılımları ortaya çıkmıştır. Bu yazılımlarla ilgili açıklamalar ve kısa bilgiler ikinci bölümde verilmiştir. Ancak Türkçe için benzer teknikler kullanarak analizler gerçekleştirebilen yazılımların mevcut olmaması, bu konu üzerine yapılacak bir çalışmanın önemini arttırmaktadır. Bu çalışmada, yazılım projelerinde gereksinimlerin iyi tanımlanmaması neticesinde yaşanan sıkıntıları azaltmaya katkı sağlamayı amaçlayan yeni bir yazılım ve düşünce yaklaşımı anlatılacaktır. Bu yaklaşımın ileri teknoloji içeren elektronik, haberleşme ve savunma alanındaki projelere de uygulanabileceği değerlendirilmektedir. Bu çalışmanın kapsamı ve amacı, doğal dilde yazılmış olan yazılım kümesinin kalitesinin arttırılmasına yardımcı olmak amacıyla dilbilimsel analiz teknikleri ve istatistiksel değerlendirme yaklaşımı uygulayan bir yazılım geliştirilmesi, söz konusu yazılım ile gerçek proje verilerinin incelenmesi ve iyileştirilmesidir. Bu amaçla, metin haline getirilmiş herhangi bir aday gereksinim kümesinden; Sözlüksel analizler yaparak yanlış anlamaya sebep olabilecek muğlak ifade edilmiş, hatalı veya arızalı gereksinimleri belirlenmesi, Birden fazla yazılmış aynı veya benzer gereksinimlerin istatistiksel değerlendirme yaklaşımı kullanılarak tespiti, Gereksinimlerin ileride test aşamasında kolaylık sağlamak amacıyla türlerine (işlevsel olan/olmayan vb.) ve alt türlerine (performans, kalite, güvenlik vb.) ayrılarak sınıflandırılması, Bütün bu işlemler esnasında kullanıcının müdahalesine imkân sağlanması, işlevlerini içeren bir yaklaşım önerilmesi, bu doğrultuda bir yazılımın geliştirilmesi söz konusu yazılım ile gerçek proje verilerinin incelenmesi ve iyileştirilmesi hedeflenmiştir. 6

16 Bu tez, Giriş, Kaynak Özetleri/Kuramsal Temeller, Materyal ve Yöntem, Araştırma Bulguları ve Tartışma, ve Sonuç ve Gelecek Çalışma Önerileri olmak üzere beş ana bölüme ayrılmaktadır. Konu ve amacı anlatan kısa bir girişin ardından, konuya yönelik Dünya da ve Türkiye de yapılmış benzer çalışmalar ve yaklaşımlar 2 nci bölüm olan Kaynak Özetleri/Kuramsal Temeller de anlatılmaktadır. Materyal ve Yöntem adındaki üçüncü bölümde yukarıda açıklanan yaklaşım ve yazılımın geliştirilmesinde faydalanılan fikir ve yöntemler açıklanmakta, 4 üncü bölüm olan Araştırma Bulguları ve Tartışma kısmında ise geliştirilmiş olan yazılımın gerçek projelere uygulanması neticesinde elde edilen sonuçlar ve bu sonuçların yorumları yer almaktadır. Son bölüm olan Sonuç ve Gelecek Çalışma Önerileri bölümünde ise bu çalışmanın neticesinde tarafımızdan elde edilen sonuçların açıklanması, çalışmada eksik kalan kısımların belirtilmesi ve bu doğrultuda çalışmanın geliştirilmesi için yapılabilecekler anlatılmaktadır. 7

17 2. KURAMSAL TEMELLER Yazılım projelerinde gereksinim ile ilgili faaliyetlere Gereksinim Mühendisliği denilmektedir. Somerville (1995), Gereksinim Mühendisliği ni bir sistemin sağlaması gereken hizmetlerin ve çalışabileceği koşulların şekillendirilmesi olarak tanımlamıştır. Yazılım Gereksinim Kalite Yönetimi kapsamında gereksinimlerin belirli kalite kriterlerini sağladığının kontrol ve garanti edilmesi de Gereksinim Mühendisliği nin görevlerinden birisidir. Bu bölümde, gereksinimlerin kalitesini değerlendirmedeki yaklaşımlar ve literatürde yer alan gereksinim mühendisliğinin gereksinimlerin kalitelerini ölçme ve kontrol etmede uyguladığı yöntemler ve kullandığı araçlar anlatılmıştır. Çalışmamızda doğal dilde yazılmış gereksinimler üzerine odaklanıldığından; öncelikle metin haline getirilmiş ve yapılandırılmış, doğal dildeki gereksinimlerin yapıları açıklanmıştır. 2.1 Doğal Dilde Hazırlanmış Gereksinim Metinlerinin Yapıları Bir eserin, bir yazının öz ibaresi; ileri sürülen fikri anlatmak için kullanılmış bulunan kelimelerin topluluğuna metin denir (TDK 2010). Metinler, tekrar, kafiye vb. belirli söz sanatlarını veya devrik cümle, mizah gibi ifade tekniklerini içeren edebi metinler, belirli resmi iletişim kurallarına uymayan gayrı resmi metinler ve belirli bir konudaki ihtiyacı ya da amacı ifade eden resmi, sade ve doğrudan metinler olarak gruplanabilir. Sade ve doğrudan metinler hazırlandığı alanla ilgili kişilerin okuduğunda aynı şeyi anlayacakları açıklıkta, resmi dili kullanacak ve amacı veya ihtiyacı doğrudan ifade edecek şekilde yazılmalıdır. Bu kapsamda, bu metinlerin, düzenli ve kısa cümleler kullanma, eşanlamlı sözcüklerden genelde sık kullanılanı tercih etme, imla hatası yapmama, gerektiğinde hukuki, teknik veya idari taslağa uyması için alan disiplinine uygun kelimeler seçme gibi belirli bir yapıda hazırlanması gerekir. Bu çalışmada, bu tür metinler Yapılandırılmış Metinler olarak isimlendirilmiştir. 8

18 Bu bağlamda herhangi bir yazılımın veya sistemin gereksinimlerini açıklamak amacıyla hazırlanan Gereksinim Dokümanları birer yapılandırılmış metindir. Yazılım veya Sistem gibi somut nesnelerin gereksinimlerini ve özelliklerini tanımlamakta ya gereksinimler arasındaki bağlantıları şekli olarak ifade eden Telelogic DOORS (Anonymous 2010a), Rational RequisitePro (Anonymous 2010b) ve Enterprise Architect (Anonymous 2010c) gibi gereksinim geliştirme yazılımları ve modelleme dili ya da yukarıda bildirilen üçüncü grup olan resmi, sade ve doğrudan metinler kullanılmaktadır. Bu tip metinlere doğal dilde yazılmış metinler de denmektedir. Lami (2005) nin tespitlerine göre piyasada gereksinim tanımlamak için yeterince araç olmasına rağmen, gereksinim kalitesini kontrol etmeye yönelik araçların sayısı azdır. Son yıllarda, Lami (2005) nin referanslarına göre gereksinim tanımlamalarındaki muğlaklıkları, tutarsızlıkları ve yanlışlıkları düzeltmek amacıyla birçok modelleme dili geliştirilmiştir. Unified Modeling Language (UML) gibi Görsel Nesne Modelleme (graphical object modeling) dilleri ya da Z Notation (Spivey 1992) ve B-Method (Abrial 1996) gibi modelleme dilleri, muğlaklıkları önlemek için kullanılmaktadır. Ancak bu dillerin dezavantajı, konunun uzmanı olmayan kişiler tarafından anlaşılmalarının ve kullanımlarının oldukça zor olması ve bu yüzden pratik olarak kullanılamamalarıdır. Ryan (1992) bunu müşterilerin bildikleri dışında bir dili (örneğin bir modelleme dili) öğrenmelerini beklemenin gerçekçi olmadığını, zira bu durumda müşterinin her aldığı ürün için yeni bir dil öğrenmesi gerektiğini ifade ederek açıklamıştır. Lui vd. (2004) nin açıkladığına göre günümüzde bilim camiası tarafından modelleme diline yönelik gereksinim teknikleri geliştirilmiştir; ancak, gereksinimleri dokümantasyonunda doğal dil hala yaygın olarak kullanılmaktadır. Mich vd. (2004) nin çalışmasının sonuçlarına göre gereksinim dokümanlarının %71,8 i doğal dilde yazılmaktadır. Ancak gereksinimlerin yazılmasında doğal dilin kullanılmasının getirdiği bazı mahsurlar da söz konusudur. Doğal dilin barındırdığı muğlâklıklardan dolayı (yazılı 9

19 resmi dokümanlar yaratılmış olsa bile) zaman zaman karşılıklı taraflarca farklı algılanmaya sebep olabilmektedir. Bu durum, özellikle gittikçe karmaşıklaşan teknik ihtiyaçların izah edilmesinde daha sık görülmektedir. Özellikle gereksinimlerin konun hâkimi olmayan ihtiyaç sahipleri tarafından tanımlandığı durumlarda bu husus daha belirgindir. Raffo vd. (2007) tarafından belirtildiği gibi, gereksinimlerin doğal dilde yazılması onları hataya açık hale getirmektedir. Bu kapsamda, bu gereksinimleri analiz etmek için tetkik tabanlı teknikler ve senaryo bazlı gözden geçirme teknikleri gibi birtakım insan yoğun hata ayıklama teknikleri mevcuttur. Bununla birlikte gereksinim analizinde kullanılan ve sözlüksel ve/ veya sözdizimsel analiz teknikleriyle analitik olarak gereksinimleri analiz edebilen yazılım tabanlı uygulamalar da mevcuttur. Bunların detayı, Bölüm 2.5 de açıklanmıştır. Lami (2005) ye göre, analitik yaklaşım ve teknikler büyük potansiyel vaat etmektedir. Örneğin, Raffo vd. (2007) tarafından yapılan araştırmaya göre 100,000 satır kod içeren bir yazılım geliştirme projesinde bu yaklaşımla geliştirilen bir gereksinim analiz yazılımı olan QuARS yazılımı ile gereksinim analizinin yapılması 5,000 adam-saatten fazla efor tasarrufu sağlamış; QuARS yazılımının proje süresini kısaltarak ve kalitesini arttırarak projeye ilave değer kattığı gözlemlenmiştir. Bu dezavantajına rağmen, doğal dilde yazılmış ve yapılandırılmış metinler, üzerinde herhangi bir yazılım aracı kullanılarak, dilbilimsel ve/veya istatistiksel tekniklerle analiz yapılabilecek metinlerdir. Günümüzde özellikle Yazılım Gereksinim Kalite Yönetimi nde, doğal dilde yazılmış ve yapılandırılmış gereksinim metinleri üzerinde dilbilimsel analizler yapabilecek bazı yaklaşımlar ve ilgili yazılımlar İngilizce için geliştirilmiştir. Bu yazılımların çoğu ticari ürünler olarak henüz yaygın olarak kullanılmasa da, ileriye yönelik olarak bu alanda uygulamaların artacağını ve gelişeceğini göstermektedir. 10

20 Bu analizler kapsamında bir gereksinim kümesinin sahip olması arzu edilen kalite öznitelikleri ve bu niteliklerin sağlanmasını zorlaştıran gereksinim hata tipleri belirlenmiştir. 2.2 Gereksinim Kalite Öznitelikleri Kalite öznitelikleri bir gereksinim kümesinin sahip olması arzu edilen niteliklerini açıklamakta olup bu niteliklerin belirlenmesinde gereksinimlerle ilgili standartlardan faydalanılabilmektedir. Bu alanda sık başvurulan standartlar olan DOD MIL-STD-490A ve IEEE Std standartları bu analizlerde öznitelik olarak kullanılabilecek özellikleri açıklamaktadır. Yılmaz ve Kızılca (2009) DOD MIL-STD-490A ve IEEE Std den faydalanarak 9 adet kalite özniteliği türeterek çizelge 2.1 deki gibi Türkçe leştirmiş ve her birinin ne anlama geldiğini açıklamıştır. Bu kriterler, gereksinim kalitesini artırmaya yönelik araçlarda birbirine çok yakın ifadelerle sıklıkla vurgulanmaktadır. Bu nitelikler bir yazılım gereksiniminin muğlak ifadelere yol açmaması ve karmaşıklık içermemesi için sahip olması gereken nitelikleri tanımlamaktadırlar. Bu kalite özniteliklerine ilave olarak bir gereksinim dokümanının okunabilirliği de bu metinlerin kalitesine katkıda bulunacak bir nitelik olarak ele alınabilir. Bu kapsamda dokümanın okunabilirliğini ölçmede Flesch Reading Ease index (Flesch 1948), Flesch- Kincaid Grade Level index (Kincaid vd 1975), Coleman-Liau Grade Level index (Coleman ve Liau 1975), Bormuth Grade Level index (Bormuth 1966) gibi İngilizce okuma indeksleri ve Türkçe için Ateşman Okunabilirlik İndeksi (Ateşman 1997) kullanılabilmektedir. 11

21 Çizelge 2.1 DOD MIL-STD-490A ve IEEE Std a göre kalite öznitelikleri (Yılmaz ve Kızılca 2009) Kalite Niteliği Bütünlük (Completeness) Tutarlılık (Consistency) Doğruluk (Correctness) Değiştirilebilirlik (Modifiability) Doğrulanabilirlik (Verifiability) İzlenebilirlik (Traceability) Mutlaklık (Unambigouity) Anlaşılabilirlik (Understandibility) Sıralandırılabilirlik (Rankedness) Açıklama Gereksinim kümesinin Daha sonra belirlenecektir gibi ifadeler içermiyor olması Gereksinim kümesinin birbirleriyle veya üst seviye gereksinimler ile çelişen ifadeler içermiyor olması Gereksinim kümesinin gerçek operasyon ortamını düzgün bir şekilde tarif ediyor olması Gereksinim kümesinin farklı/bağımsız konulardaki hususları tek bir gereksinim içerisinde ifade etmiyor olması Gereksinim kümesindeki ifadeler ile test adımı ve prosedürü yazılabiliyor olması Gereksinim kümesinin elemanlarının hem üst, hem de alt seviye gereksinim ve tasarım modülleri ile ilişkilendirilebilir olması Gereksinim kümesinde farklı şekilde yorumlanmaya müsait ifadeler olmaması Gereksinim kümesinin ifadelerin düzgün bir dilbilgisi ile yazılmış olması Gereksinim kümesindeki ifadelerin önem, aciliyet, değişkenlik, konu vb. ölçütlere göre sıralanabilir veya gruplanabilir olması 2.3 Gereksinim Hata Tipleri Konu ile ilgili standartlardan türetilen kalite öznitelikleri doğrultusunda bu kalite özniteliklerinin sağlanmasına engel olabilecek hatalar ve bunların tiplerinin belirlenmesi ihtiyacı ortaya çıkmıştır. Bu kapsamda kalite özniteliklerinden faydalanılarak bir gereksinim dokümanının sahip olmaması gereken hata tipleri ortaya çıkmıştır. Bu hata tiplerinden en sık kullanılanları kısaca çizelge 2.2 de açıklanmıştır. Bu hata tipleri genellikle gereksinim dokümanındaki her bir gereksinimin içerebileceği hataya odaklanmakla birlikte bazı hata tipleri dokümanın bütünü incelenerek ortaya çıkarılabilecek hatalardır. 12

22 Bununla birlikte gereksinim kalite özniteliklerini olumsuz etkileyebilecek diğer bazı hatalar da gereksinim dokümanında yapılabilmektedir. Bunlardan, literatürde üzerine çalışma yapılmış iki ana alan şu şekildedir: Birincisi, aynı ya da benzer gereksinimlerin doküman içerinde yer almasıdır. İkincisi, dokümanda, işlevsel olan ve işlevsel olmayan gereksinimlerin bulunması ve bunların sınıflandırılmamış olmasıdır. Bu iki alan hata tipi olarak adlandırılmaktan ziyade ayrı bir analiz alanı olarak karşımıza çıkmaktadır. Bu kapsamda, bu iki konu Bölüm ve Bölüm de ayrı olarak ele alınmıştır. Çizelge 2.2 Gereksinim hata tipleri (Yılmaz ve Kızılca 2009 dan uyarlanarak alınmıştır.) İfade Edicilik İle İlgili Hata Tipleri Belirsizlik (Vagueness) Açıklamaları Gereksinimde niceleyici ifadeler bulunmayıp, tartışma yaratacak hızlı, güçlü, kullanımı kolay vb. belirsiz niteleyici ifadeler bulunması Öznellik (Subjectivity) Gereksinimin kişisel algıyla değişebilecek, genellikle de başka bir kavram ile karşılaştırma yapılarak benzer, daha iyi, göz önüne alınacaktır, göz önünde bulundurulacaktır vb. ifadeler içeriyor olması. Seçeneklilik (Optionality) Üstü Kapalılık (Implicity) Gereksinimin okuyana kesin bir bilgi vermeyen, mümkün olduğunca vb. ifadeler içeriyor olması. Gereksinim üstü kapalı bir şekilde yukarıdaki, aşağıdaki, bütün bu vb. ifadeler ile başka gereksinimlere atıf yapıyor; tek başına ele alındığında anlamsız hale geliyor olması. Zayıflık (Weakness) Gereksinimin zorunluluk bildiren bir ifade içermiyor olması; örneğin - ecektir, -acaktır, -meli, -malı kiplerini içermemesi. Maksadını Aşma (Over-specification) Çokluk (Multiplicity) Eksiklik (Incompleteness) Gereksinimin, tasarımda ele alınması gereken hususları içeriyor olması. Gereksinimin aslında birden fazla gereksinim ifadesi içeriyor olması Gereksinimde daha sonra belirlenecek vb. ifadeler bulunması 13

23 2.4 Gereksinim Hata Tipleri-Kalite Öznitelikleri İlişkileri Gereksinim kalite öznitelikleri ve bu özniteliklerde bozulmaya yol açan hata tipleri arasındaki birbirini etkileyen bir ilişki mevcuttur. Bu ilişki temel olarak çizelge 2.3 de gösterildiği şekilde tanımlanmıştır. Bu ilişki sayesinde belirli bir kalite özniteliğini sağlamak için aranacak hata tipi ve bunun özellikleri belirlenebilmektedir. Çizelge 2.3 Gereksinim hata tipleri ve bu hatalar dolayısıyla etkilenen kalite öznitelikleri (Yılmaz ve Kızılca 2009 dan uyarlanarak alınmıştır.) Gereksinim Hata Tipleri Seçeneklilik Öznellik Belirsizlik Üstü Kapalılık Zayıflık Eksiklik Çokluk Maksadını Aşma Etkilenen Kalite Öznitelikleri Tutarlılık Değiştirilebilirlik Doğrulanabilirlik İzlenebilirlik Mutlaklık Bütünlük Anlaşılabilirlik Doğrulanabilirlik Bununla birlikte, gereksinim dokümanında aynı veya benzer ifadelerin yer alması dokümanın tutarlılığını etkilemektedir. Benzer şekilde, gereksinim dokümanında işlevsel olmayan gereksinimlerin belirlenmemiş olması da gereksinim dokümanının doğrulanabilirliğini ve doğruluğunu olumsuz etkilemektedir. Bu iki hatanın çizelge 2.3 deki literatürde yer alan hata tiplerine eklenmesinin faydalı olacağı değerlendirilmekte olup bu durumda çizelge 2.3 deki ilişkiye ilave olarak çizelge 2.4 de anlatılan hata-kalite özniteliği ilişkisi doğmaktadır. Çizelge 2.4 Gereksinim hata tiplerine ilave olarak yapılan hatalar ve bu hatalar dolayısıyla etkilenen kalite öznitelikleri Gereksinimde Yapılan Hata Etkilenen Kalite Öznitelikleri Benzer Gereksinimlerin Yer Alması Tutarlılık İşlevsel Olmayan Gereksinimlerin Belirlenmemesi Doğrulanabilirlik / Doğruluk 14

24 Gereksinim dokümanlarının analiz edilmesi ve kalitesinin arttırılması amacıyla yukarıda belirtilen hata tiplerinin bir doküman içerisinde tespit edilerek ayıklanmasına yönelik olarak yazılım destekli analiz ve yaklaşımlar mevcuttur. Literatürde, bu çalışmanın ilgi alanı kapsamında, metin haline getirilmiş herhangi bir aday gereksinim kümesinden; 1. Dilbilimsel analizler yaparak hatalı veya arızalı gereksinimleri belirlenmesi, 2. Birden fazla yazılmış aynı veya benzer gereksinimlerin tespiti, 3. Gereksinimlerin türlerine ve alt türlerine ayrılarak sınıflandırılması, 4. Bütün bu işlemler esnasında kullanıcının müdahalesine imkân sağlanmasına olanak veren yaklaşımlar ve bu doğrultuda geliştirilen yazılımlar mevcuttur. 2.5 Gereksinim Hatalarının Tespit Edilmesine Yönelik Yapılmış Çalışmalar Yukarıdaki tüm boyutları birden içermese bile, bu işlevlerden bazılarını İngilizce için yerine getirenleri Yılmaz ve Kızılca (2009) aşağıdaki gibi özetlemiştir: Dilbilimsel analizler ile gereksinimlerdeki hataların tespit edilmesi, gereksinim kalitesinin artırılması üzerine dört adet bağımsız çalışma: o Wilson vd. (1997), o Noh ve Godia (2003), o Fantechi vd. (1994), o Kasser vd. (2005); Birbirine anlamsal olarak yakın olan gereksinim ifadelerinin tespit edilmesi konusunda bir adet çalışma: (Natt och Dag vd. 2001); İşlevsel olmayan gereksinimlerin alt türlerine ayrıştırılması konusunda bir adet çalışma:( Cleland-Huang vd. 2007) Ayrıca Yılmaz ve Kızılca (2009) tarafından hata tiplerinin sözlüksel tekniklerle dilbilimsel analizine yönelik bir çalışma mevcuttur. Literatürdeki bu çalışmalar, yukarıda açıklanan dört boyuttan bir ya da ikisini karşılamakta ve hiçbiri dört adet boyutu karşılamamaktadır. Bu çalışmalar grup olarak aşağıda kısaca açıklanmıştır. 15

25 2.5.1 Dilbilimsel analizler yaparak hatalı veya arızalı gereksinimleri belirlenmesine yönelik araçlar Dilbilimsel yöntemler, sözcüklerin kullanımına dair analizlerin yapıldığı sözlüksel (lexical) yöntemler, sözcüklerin cümle içerisindeki dizilimlerine dayalı sözdizimsel (syntactic) yöntemler ve doğal dildeki ifadelerin anlamlarına dayalı anlambilimsel (semantic) yöntemler olarak üç ana dala ayrılır. Anlambilimsel yöntemler uygulanması en zor yöntemlerdir. Bu aşamada sözlüksel ve sözdizimsel yöntemlerle gereksinim analizi yapan yaklaşımlar, geliştirme neticesinde aşağıda sıralanan yazılımlara dönüşmüştür: Wilson vd. (1997) tarafından geliştirilmiş olan ARM, Noh ve Gadia (2003) tarafından geliştirilmiş olan RAST, Fantechi vd. (1994) ve Lami (2005) tarafından geliştirilmiş olan QuARS, Kasser (2002) tarafından geliştirilmiş olan Tiger PRO, Bu çalışmalardan hemen hemen hepsinin ana amacı ve çıkış noktası aynıdır; bunu Wilson vd. (1997) şöyle açıklamaktadır: modelleme dilinde gereksinim yaratmanın önemli avantajlarına rağmen bunların kullanımı yoğun ve yaygın değildir. Zira gereksinim aynı zamanda ihtiyaç sahibinin ihtiyacını kontratsal olarak sağlaması ve bunun tüm kontrat paydaşlarınca ortak şekilde anlaşılması için doğal dilde yazılmaktadır. Özellikle yazılım ihtiyaçları alanında doğal dilin kullanımı üç temel sahada problem yaratmaktadır: Muğlâklık, Yanlışlıklar, Tutarsızlık. Bunu sebebi doğal dilde bir kavramı tanımlamak için çoğu zaman birden fazla kelime bulunması veya bazı sıfatların nicel değil nitel anlamlar içermesi ya da bazı kavramların istenmeden yanlış kullanılması gibi hatalara müsait olmasıdır. 16

26 Yukarıda sözü edilen yazılımlar, İngilizce yazılmış gereksinimlerin kalitesini artırmaya yönelik olarak geliştirilmiştir. Bu yazılımların, sözlüksel yöntemlerin sözdizimsel yöntemlere kıyasla daha kolay gerçekleştirilebilir olmalarından dolayı, sözlüksel özellikleri de genellikle sözdizimsel özelliklerine göre daha güçlüdür (Kızılca ve Yılmaz 2008) ARM (Automated Requirements Measurement) yazılımı Bu yazılım NASA ya bağlı Goddard Uzay Uçuş Merkezi (GSFC) Yazılım Güvence Teknoloji Bölümü (SATC) tarafından doğal dilde hazırlanmış gereksinimler üzerine uygulanmak için geliştirilmiştir. Bu yazılım gereksinim dokümanını SATC uzmanlarınca daha önceden belirlenmiş kalite özniteliklerine (quality attributes) göre dilbilgisel olarak taramakta, analitik analiz yöntemleriyle muğlâklık, tutarsızlık ve yanlışlıkları gösteren bir rapor çıkarmaktadır. Bunun neticesinde sözlüksel ve cümle yapısı açısından dokümanın geliştirilmesi gereken kısımlarını kullanıcıya bildirmektedir (Wilson vd. 1997). Bu yapıya göre kalite öznitelikleri bir gereksinim kümesinin sahip olması arzu edilen niteliklerini açıklamakta olup, DOD MIL-STD-490A ve IEEE Std den alınan ve açıklamaları çizelge 2.1 de verilen öznitelikler kullanılmaktadır. Buna ilave olarak gereksinim kalitesinin ayrı bir boyutu olan Okunabilirliğin ölçülmesi için Bölüm 2.2 de açıklanan İngilizce okuma indekslerini kullanılarak dokümanın okunabilirliği ölçülmektedir QuARS (Quality Analyzer for Requirements Specifications) yazılımı QuARS yazılımını geliştiren ekibin bir üyesi olan Lami (2005) nin tarifine göre, yapılandırılmış gereksinim metninde QuARS, sözlüksel gereksinim hatalarını tespit ederek karmaşıklığa yol açan ifadeleri ayıklamaya yönelik bir araçtır. Bu yazılım, 17

27 dilbilgisel analiz tekniklerini kullanarak ve analitik yaklaşım ile gereksinim metinlerindeki muğlaklıkları yakalamayı amaçlamaktadır. Bu yazılımın temelinde, çizelge 2.1 deki yazılım gereksinim dokümanlarının sahip olması gereken temel kalite özniteliklerini üç grupta toplanmış ve bu üç grup kriter Lami (2005) tarafından şu şekilde açıklanmıştır: İfade edicilik (Expressiveness): Bu kriter gereksinimin anlamı hakkında yanlış anlamaya sebep verebilecek özelliklerle ilgilidir. Gereksinim dokümanındaki muğlaklıklar ve zor okunabilirlik genelde bu tip problemlerin kaynağıdır. Tutarlılık (Consistency): Bu kriter gereksinim dokümanında yer alabilecek anlambilimsel çelişkilerle ilgilidir. Bütünlük (Completeness): Bu kriter gereksinim dokümanının içerisinde gerekli bilgilerin yer alıp almadığıyla ilgilidir. Bu aşamada Lami (2005) ye göre Tutarlılık ve Bütünlük kriterleri ile ilgili analizler daha ziyade anlambilimsel analizler gerektirmekte, birinci grup olan İfade edicilik ile ilgili kriterler sözlüksel ve sözdizimsel yöntemlerle analiz edilebilmektedir. QuARS yazılımı birinci grup olan ifade ediciliği ölçmeye ve değerlendirmeye, ikinci ve üçüncü grup olan Tutarlılık ve Bütünlük analizlerine ise destek vermeye yönelik tasarlanmış bir yazılımdır. QuARS tarafından Tutarlılık ve Bütünlük konularındaki analizlere destek olabilmek amacıyla, benzer konudaki gereksinimler ve benzer nesnelerle alakalı gereksinimler belirlenmekte, daha sonra bunlar kullanıcıya bir fikir vermek amacıyla bir ekran altında gruplanmaktadır. Örneğin ürünün fonksiyonalitesi, kullanıcı ara yüzü vb. QuARS yazılımının kullanıcı tarafından sağlanacak girdileri: analizi yapılacak gereksinim dokümanı ve Sözlüksel analizleri oluşturabilmek için kullanılacak sözlüklerdir. Sözlükler de yine metin formatında olmalıdır. 18

28 RAST (Requirement Analysis Support Tool) yazılımı Diğer iki yazılım gibi RAST yazılımının da çıkış noktası gereksinim dokümanlarında zayıf ifadelerin ve hatalı cümle yapılanın daha sağlam ifadelere dönüştürülmesidir. Bu amaçla tutarsızlık ve yanlışlıkları gidermeye yönelik geliştirilmiş bir yazılımdır. Noh ve Gadia (2003) nın bildirdiğine göre bu yazılım gereksinim dokümanlarından isim ve yüklem (fiil) sözlükleri oluşturarak dilbilgisel veriler oluşturmaktadır. Zira bu yaklaşıma göre, bir gereksinimi tanımlayan elemanlar isimler ve yüklemlerdir. Oluşturulacak isim ve yüklem sözlüklerine göre kullanıcılara her isim ve yüklemi ifade edecek bir sembol yaratılmakta ve bu semboller mantıksal ifadelere çevrilmekte ve bu ifadeler gereksinim içinde veya gereksinimler arasında bir tutarsızlık varsa bunu yakalamakta kullanılmaktadır. Önceki iki yazılımın aksine, RAST muğlâklıkları gidermek için hata tipi sözlükleri kullanmamakta ve sözlüksel analiz yapmamaktadır. Bunun yerine cümlelerin sözdizimsel analizlerle isimlerini ve yüklemlerini sınıflandırmakta ve bu kapsamda isim ve yüklem sözlükleri oluşturmakta ve birbirleriyle ilişkilerini incelemektedir. Bu açıdan yalnızca sözdizimsel analiz yapan bir araçtır Tiger PRO yazılımı Tiger PRO yazılımı, Kasser (2005) tarafından bildirildiğine göre tıpkı ARM yazılımı gibi, çizelge 2.1 de sıralanan IEEE standardı gereği gereksinim dokümanlarının sahip olması gereken kalite özniteliklerine göre hata sözlükleri oluşturup sözlüksel analiz ve buna ilave olarak İngilizce için oluşturulmuş okunabilirlik indekslerine göre okunabilirlik analizi yapan daha basit ve pratik bir algoritmadır. Bu yazılımda sözdizimsel analiz bulunmamaktadır. 19

29 Türkçe için Kızılca ve Yılmaz (2008) tarafından yapılan çalışma Gereksinim analizine yönelik olarak Türkçe de dilbilgisel analiz yöntemlerini kullanan en kapsamlı çalışma Yılmaz ve Kızılca (2008, 2009) tarafından önerilmiştir. Gereksinimlerin doğal dilde düzgün bir şekilde ifade edilmesi için gereksinimlerden beklenen genel özellikleri ve kalite kriterlerini, Yılmaz ve Kızılca (2009) IEEE STD ve DOD MIL-STD-490A dan faydalanarak çizelge 2.1 deki gibi oluşturmuştur. Buna benzer bir yaklaşım ile Kızılca ve Yılmaz (2008) tarafından gereksinim dokümanında yapılan hata tipleri çizelge 2.2 deki şekilde belirlenmiştir. Bu kapsamda geliştirdikleri yazılım aracında temelde sözlüksel teknikler kullanarak gereksinim dokümanında yapılan hatalara odaklanarak yazılım yardımıyla bunu en aza indirmeye çalışmışlardır. Çizelge 2.5 Hata tipi analizi yapan yazılımlar ve kullandıkları analiz yöntemleri Analiz Yazılımı Kullanılan Analiz Yaklaşımı ARM QuARS RAST Tiger PRO Yılmaz ve Kızılca (2009) Sözlüksel Sözdizimsel Anlambilimsel 20

30 Bu kapsamda İngilizce de ve Türkçe de gereksinim hata tipi analizi yapan yazılımlar ve kullandıkları analiz yöntemleri çizelge 2.5 deki gibi listelenebilir Aynı veya benzer gereksinimlerin tespitine yönelik araçlar Benzerlik analizinin amacı, birbirine benzer ya da yanlışlıkla iki veya daha fazla kere yazılmış birbirinin aynı gereksinimleri tespit ederek ayıklamak ve benzer gereksinimleri tek gereksinim altında toplamaktır. Zira aynı yada benzer gereksinimlerin bir gereksinim dokümanında birden fazla kere yer alması gereksinim dokümanının Tutarlılığını (bir kalite özniteliği) ve dolayısıyla kalitesini düşüren bir faktördür. Ayrıca bu tip bir durum gereksiz işgücü kaybına ve ileride geliştirilecek yazılımın veya sistemin testleri esnasında karmaşıklığa yol açabilir. Bu amaçla gereksinim dokümanlarında benzerlik analizi yapan bir yazılım Natt och Dag vd. (2001) tarafından geliştirilmiş ve İngilizce gereksinim dokümanlarına uygulanmıştır. Natt och Dag vd. (2001) nin bildirdiğine göre, gereksinim dokümanlarının benzerlik analizinde kullanılabilecek iki metin işleme yöntemi vardır: 1. İstatistikî Yaklaşım, 2. Dilbilgisel Yaklaşım. Bunlardan istatistiksel yaklaşım Luhn (1957) tarafından önerilen ve iki cümledeki sözcüklerin benzerliğinin benzerlik katsayıları kullanarak ve belirli bir benzerlik eşik değeri atayarak ölçülmesi ve belirli bir eşik değerin üstünde olanları benzer olarak belirlenmesini içermektedir. Dilbilgisel yaklaşım ise, bir eşanlamlılar sözlüğü ve anlambilimsel (semantic) yöntemler kullanarak kelimeler ve cümleler arasındaki anlamsal benzerliklerin tespitine yönelik bir çalışmadır. Bu yaklaşım Yücesoy ve Öğüdücü (2007) nün ifade ettiği gibi iki terimin anlamca yakınlığını ilgilendirdiğinden çok kapsamlı bir eşanlamlılar sözlüğü ihtiyaç duymakta, ve Mitra vd. (1997) nin tespit ettiği gibi pahalı ve külfetli bir çalışma 21

31 gerektirmekte ve iyi uygulanmış bir istatistiksel yaklaşımdan daha iyi sonuçlar vermemektedir. Natt och Dag vd. (2001) tarafından üzerinde uygulama yaptıkları gereksinim metinlerinde, istatistiksel yaklaşım ile hazırladıkları yazılımın, gereksinim uzmanları (mühendisleri) tarafından aynı dokümanlarda İnsan muhakemesiyle bulunan benzerlikleri büyük oranda yakaladığı ifade edilmiştir. Bu çalışma istatistiksel yaklaşımın değerli bir yaklaşım olduğunu göstermektedir. Natt och Dag vd. (2001) tarafından hazırlanan yazılım istatistiksel yaklaşımı kullanmaktadır. Bu yazılım, istatistiksel yaklaşımın gerektirdiği gibi, gereksinim dokümanındaki gereksinimleri cümle cümle ayırmakta, daha sonra iki gereksinim cümlesi (X,Y) arasındaki benzerliği (S X,Y ) benzerlik katsayıları kullanarak ve belirli bir benzerlik eşik değeri atayarak ölçmekte ve belirli bir eşik değerin üstünde olanları benzer olarak belirlemektedir. Ancak bunun öncesinde cümlelerdeki benzerliğin ölçülebilir hale getirilmesi için sözcüklere ayırma, bağlaçları ve durak kelimeleri ayıklama ve ekleri ayıklama işlemlerinden geçirildikten sonra benzerlik hesaplanmaktadır. Burada, yazılım boşlukları ve noktalama işaretlerini algılayarak cümleleri öncelikle sözcüklere ayırmakta, daha sonra Durak Kelime (stop word) adı verilen ve bağlaçlardan, ayrık eklerden oluşan kelimeler ayıklanmakta, daha sonra kelimelerin başına ve sonuna temel ekler ve yapım ekleri ayıklanarak geriye kalan kelimelerin düğer cümledeki kelimelerle benzerlikleri istatistiksel olarak ölçülmektedir. Natt och Dag vd. (2001) tarafından hazırladıkları yazılımda benzerlik katsayıları için literatürdeki Dice, Jaccard ve Cosine (Pang-Ning vd., 2005) benzerlik katsayıları kullanılmaktadır. 22

32 2.5.3 Gereksinimlerin türlerine ve alt türlerine ayrılarak sınıflandırılmasına yönelik araçlar Gereksinimler bir ihtiyaç hakkında bilgi taşıyan metinlerdir. Natt och Dag vd. (2001) ne göre gereksinimin taşıdığı bilgi iki türlüdür; gereksinimin açıkladığı ihtiyaç konusundaki açık bilgi, gereksinimin ait olduğu alana ait tüm kabuller, kurallar ve standartları bünyesinde barındıran üstü kapalı bilgi. Burada açık bilgi gereksinimleri açıklamak için yazılan dokümanları, şekilleri ve diğer hazırlanmış nesneleri, üstü kapalı bilgi ise bir gereksinim konusunun alanındaki tüm varsayımlar, kurallar ve standartlardan oluşmaktadır. Bu kapsamda, açık bilgi içeren ve gereksinimde, ilgili yazılımın ne yapacağını anlatan ifadelere işlevsel (functional) gereksinimler; üstü kapalı bilgi içeren ve gereksinimde ilgili yazılımın nasıl çalışacağını anlatan ifadelere ise işlevsel olmayan (nonfunctional) gereksinimler adı verilmektedir. İşlevsel olmayan gereksinimler, işlevsel olanların aksine geliştirilen yazılım üzerinde uygulanacak bir işlevi açıklamaz. Tersine, işlevsel gereksinimlerin uyması gereken durumları ve kısıtlamaları tanımlar, bu açıdan işlevsel olmayan gereksinimler işlevsel olanlarla ilişkilidir. Kısaca işlevsel olmayan gereksinimleri işlevsel olanların uyması gereken kısıtlamalar ve kalite vasıfları olarak açıklanabilir (Cysnerios vd. 2001). Yazılım alanındaki bir gereksinim kümesinde işin doğası gereği hem işlevsel, hem de işlevsel olmayan gereksinimler bulunmalıdır. Zira hem yazılımın sahip olması gereken kabiliyet ve kapasite, hem de uyması gereken standartlar ve nasıl çalışması gerektiği anlatılmalıdır. Bu anlamada işlevsel olmayan gereksinimler istenilmeyen kötü bir şey değildir. Ancak, Duan vd. (2009) nin açıkladığı gibi, gereksinimler yazılırken çoğu zaman işlevsel ve işlevsel olmayan gereksinimler birbirine karıştırılmakta ve gereksinim dokümanında ürünün nasıl çalışacağı anlatılmakla birlikte, temel olarak ne yapacağı ve hangi fonksiyonları yerine getireceği genelde eksik belirtilmektedir. Bu durum, 23

33 gereksinim dokümanının Doğruluğuna (bir kalite özniteliği) zarar vermekte ve bu açıdan ilk bölümde açıklanan gereksinim kalitesini olumsuz etkilemektedir. Ya da, Cleland-Huang vd. (2007) nin ifade ettiği gibi, ürünün uyması gereken kurallar ve standartları ifade eden, ürünün yapısal tasarımını etkileyen ve ürünün sahip olması gereken çok önemli vasıfları tanımlayan işlevsel olmayan gereksinimler, başlangıçta tamamen unutulmakta, projede görevli insanların (tarafların) bunları zaten bilip kabul ettiği ve varsaydığı düşünülmekte ve ilerleyen süreçlerde plansız bir şekilde gereksinim dokümanına dahil edilmeye çalışılmaktadır. Yine bu durum da gereksinim dokümanının Doğruluğuna (bir kalite özniteliği)zarar vermektedir. Cleland-Huang vd. (2007) tarafından 15 yazılım projesine ait SRS (Yazılım Gereksinimleri Dokümanı) incelenmiş ve neredeyse tamamında işlevsel olmayan gereksinimlerin eksik olduğu bildirilmiştir. Örnek vermek gerekirse: simülatör yazılımı, öğrenci pilotların uçuş not puanlarını öğrencilerin bilgi dosyasına aktaracak bir veri girişi sağlayacaktır. ifadesi işlevsel bir gereksinim; öte yandan öğrenci pilotun not puan değerine göre, yalnızca bir öğretmen pilot öğrenci notunu öğrenci bilgi dosyasına aktarabilecektir. ifadesi ise yetki güvenliği ile ilgili bir işlevsel olmayan gereksinimidir. Eğer bu gereksinim ilave edilmez ise yazılımın yapısal tasarımında önemli bir hususu eksik kalmış olur ve ileride ilave etmek oldukça zor ve külfetli olacaktır. Blackburn vd. (2001) ne göre test faaliyetleri bir yazılım geliştirme çalışması maliyetinin %40-75 ine mal olmaktadır; ayrıca testlerdeki hataların %50 si gereksinimlerin hatalı veya yanlış adreslenmiş olmasından kaynaklanmaktadır. Bununla birlikte, genel olarak geliştirip biten bir yazılım ürününün testlerinde, işlevsel gereksinimler doğrudan test yöntemi ile, işlevsel olmayan gereksinimler ise gösterim (demonstration) veya sertifikasyon (certification) ile yapılmaktadır. Bu anlamda bu sınıflandırmayı daha baştan gereksinim aşamasında yapmamak gereksinim dokümanının Doğrulanabilirliğine (bir kalite özniteliği) zarar vermektedir. Bu durum ileride ürünün kabulünde test eforunu oldukça artıracak bir hatadır.. 24

34 Ayrıca işlevsel olmayan gereksinimler de kendi aralarında bir ürünün etkiledikleri özelliğine göre gruplara ayrılmaktadır. Bu anlamda işlevsel olmayan gereksinimleri de kendi içinde yazılımın yapısal tasarım aşamasında sıkıntı yaşamamak ve ilgili standartları tutturmak açısından önemlidir. Yazılımın işlevi ile ilgili olmayan ancak sağlaması gerekli standartları ve sahip olması gereken kalite vasıflarını açıklayan, yazılım gereksinimleri ile ilgili olarak, Chung vd. (2000), kapsamlı bir İşlevsel Olmayan Gereksinim (İOG) (Non-Functional Requirements) türleri listesi vermiştir. Bu liste, 65 tür işlevsel olmayan gereksinim türü içermekte olup, tamamı Ek 1 de yer almaktadır. Bu türler, literatürde işlevsel olmayan gereksinimleri sınıflandırmak için kullanılmaktadır. Buradaki türler üzerinde analiz yapılacak gereksinim kümesinin özelliklerine göre, analizlerde kullanılmak üzere eksiltilip artırılarak ihtiyaca göre uyarlanabilmektedir. Bununla birlikte, yazılım kalite standartlarından biri olan ISO-9126 bir yazılım ürününü sahip olması gereken kalite vasıflarını daha öz ve olgun bir şekilde içermektedir. ISO yazılım gereksinimlerinin sahip olması gereken çalışma koşullarını ve ürününün çalışmasında sahip olması gereken kalite vasıflarını çizelge 2.6 daki gibi sınıflandırmıştır. Bu türler, aynı zamanda işlevsel olmayan gereksinimlerin sınıflandırılmasında kullanılabilir. Zira bu özellikler yazılımın uyması gereken kısıtları ve kalite vasıflarını anlatmaktadır. Ayrıca, Cysnerios vd., (2001) çalışmalarında bu vasıflar işlevsel olmayan gereksinimleri sınıflandırmada kullanılmış ve etkin bir sınıflandırmaya imkan verdikleri görülmüştür. Burada, işlevsel olmayan gereksinimler 6 temel sınıfa ayrılmış ve bu altı temel sınıf da kendi içerisinde sınıflara ayrılmıştır. Bu sınıflar yazılım gereksinim dokümanında, yazılımın sağlaması gereke standartların ve çalışma şartlarının türlerini ifade etmektedir. Her sınıfın anlamı ve kapsadığı işlevsel olmayan gereksinim özellikleri çizelge 2.6 da sınıfların yanına yazılmıştır. Bu çizelgede, Sınıfların Türkçesi Aydın vd. (2006) çalışmasından alınmıştır. 25

35 Çizelge 2.6 ISO 9126 dan çıkarılan İşlevsel Olmayan Gereksinim türleri İOG Türleri İOG Alt Türleri Açıklama İşlevsellik Uygunluk (Suitability) Belirlenmiş fonksiyonlar setini yazılımın sahip olması ve buna (Functionality) fonksiyonlar etine uygunluk becerisine ilişkin gereksinimler. Güvenilirlik (Reliability) Kullanılabilirlik (Usability) Verimlilik (Efficiency) İdame Ettirilebilirlik (Maintainability) Doğruluk (Accurateness) Birlikte Çalışabilirlik (Interoperability) Uyumluluk (Compliance) Emniyet (Security) Olgunluk (Maturity) Hata Toleransı (Fault Tolerance) Düzeltilebilirlik (Recoverability) Anlaşılabilirlik (Understandability) Öğrenilebilirlik (Learnability) Çalıştırılabilirlik (Operability) Zamansal Davranış (Time Behaviour ) Kaynak Kullanımı (Resource behaviour) Analiz Edilebilirlik (Analyzability) Yazılımın üzerinde uzlaşıya varılmış veya doğru etkiyi veya sonucu doğurması becerisine ilişkin gereksinimler. Yazılımın belirlenmiş sistemlerle etkileşim içinde olabilme becerisine ilişkin gereksinimler. Yazılımın uygulama ile ilişkili standartlara, anlaşmalara veya kanuni düzenlemelere ve dengi talimatlara uygun olması becerisine ilişkin gereksinimler. Hatayla veya kasten programlara ve verilere yetkilendirilmemiş erişimi önleyebilme özelliğine ilişkin gereksinimler. Yazılımdaki hatalar nedeniyle yazılımın çökme frekans sıklığının düşük olması becerisine ilişkin gereksinimler. Yazılım hatalarında veya tanımlanmış ara yüzün ihlal edilmesi durumlarında yazılımın belirlenmiş performans seviyesini sürdürebilme becerisine ilişkin gereksinimler. Sistemin çökmesi durumunda doğrudan etkilenen verinin geri yüklenebilme ve performans seviyesinin yeniden oluşturulabilme becerisine ilişkin gereksinimler. Yazılımın mantıksal yapısının ve onun uygulanabilirliğinin kullanıcı tarafından tanınabilmesi için harcanması gereken kullanıcı çabasına ilişkin gereksinimler. Yazılım uygulamalarının kullanıcı tarafından öğrenilebilmesi için harcanması gereken kullanıcı çabasına ilişkin gereksinimler. İşlerlik: Operasyon ve operasyon kontrolü için gereken kullanıcı çabası ile ilgilenen yazılım becerisine ilişkin gereksinimler. Üretilen iş oranı ve işlem zamanları fonksiyonunu yerine getirirken talebin yanıtlaması ile ilgili yazılım becerisine ilişkin gereksinimler. Kaynak kullanımı ve kaynak kullanım süresinin fonksiyonları yerine getirirken kullanılan miktarına ilişkin gereksinimler. Tanı eksikliği ve çökme sebepleri veya düzenlenecek parçaların belirlenmesinde tanımlama için gereken çabaya ilişkin gereksinimler. Taşınabilirlik (Portability) Değiştirilebilirlik (Changeability) Hata giderme, uyarlama veya çevresel değişiklik için gereken çabaya ilişkin gereksinimler. Kararlılık (Stability) Modifikasyon sonucunda yazılımın beklenmeyen etki doğurması riskine ilişkin gereksinimler. Test Edilebilirlik Uyarlanan yazılımın onaylanması için gereken çabaya ilişkin (Testability) gereksinimler. Uyumlandırılabilirlik Göz önüne alınan yazılım için belirlenen amacın (Adaptability) sağlanabilmesinde değişiklik gerçekleştirmeden yazılımın belirli bir farklı çevrede adapte edilebilmesine ilişkin gereksinimler. Kurulum Kolaylığı (Installability) Standartlara Uygunluk (Conformance) Yer Değiştirilebilirlik (Replacability) Tanımlanmış çevrede yazılımın kurulumu için gereken çabaya ilişkin gereksinimler. Taşınabilirlik ile ilgili anlaşmalar veya standartlara bağlı yazılım geliştirilmesine ilişkin gereksinimler. yazılımın başka bir yazılım ortamında kullanılabilmesi için fırsat sağlama ve harcanması gereken çabaya ilişkin gereksinimler. 26

36 Bu sınıflandırma belirli bir çalışma standardı ile ilgili işlevsel olmayan gereksinimlerin sınıflandırılmasında ve birbirleriyle ilişkilendirilmesinde kullanılabilir. Cleland-Huang vd. (2007) tarafından, Chung vd. (2000) tarafından sıralanan İOG türleri kullanılarak, İOG lerin sınıflandırılmasına yönelik bir yaklaşım ve bu doğrultuda hazırlanan bir yazılım önerilmiştir. Bu yazılımda anahtar kelimelerden oluşan sözlükler oluşturularak her İOG türüne yönelik sınıflandırma yapılması amaçlanmıştır. Bu kapsamda, İOG türü sözlükleri oluşturulmuştur. Bu amaçla, hazırladıkları yazılım üzerinde iteratif bir öğrenme algoritması ile anahtar kelimeler tespit edilerek türüne göre her bir İOG sözlüğüne konulmuş ve daha sonra sözlüksel analiz yöntemi ile İOG ler tespit edilmeye çalışılmış ve başarılı sonuçlar elde edilmiştir. Bu çalışmadan çıkan sonuç şudur: doğru anahtar kelimelerle oluşturulacak sözlükler kullanılarak yapılacak bir sözlüksel analiz İOG lerin tespit edilerek sınıflandırılmasında kullanılabilmektedir. 27

37 3. MATERYAL VE YÖNTEM Bu çalışmada, Bölüm 1.2 de belirtildiği gibi Türkçe bir gereksinim kümesi üzerinde; Sözlüksel analizler yaparak yanlış anlamaya sebep olabilecek muğlak, hatalı veya arızalı gereksinimlerin belirlenmesi; birden fazla yazılmış aynı veya benzer gereksinimlerin istatistiksel değerlendirme yaklaşımı kullanılarak tespiti; gereksinimlerin ileride test aşamasında kolaylık sağlamak amacıyla türlerine (işlevsel olan/olmayan vb.) ve alt türlerine (performans, kalite, güvenlik vb.) ayrılarak sınıflandırılması; ve bütün bu işlemler esnasında kullanıcının müdahalesine imkân sağlanmasına yönelik analizlerin yapılması amaçlanmıştır. Ancak yazılım kalitesini artırmaya yönelik dört aşamalı analizimizde kullanmak üzere tüm bu boyutları içeren ve fonksiyonları yerine getiren bir araç/yazılım ve yöntem mevcut durumda literatürde bulunmamaktadır. Bu amaçla, bu fonksiyonları yerine getirmek üzere bir yazılım geliştirilerek bu çalışmada elde edilen bir gereksinim materyali üzerinde analiz yöntemi olarak kullanılmıştır. 3.1 Materyal Bu çalışmada, materyal olarak 203 yazılım gereksinimi içeren ve bir simülatörün kabiliyet gereksinimlerini açıklayan bir Türkçe gereksinim kümesi kullanılmıştır. Bu gereksinim kümesi her bir gereksinimi ayrı birer cümle olarak ifade eden ve arzu edilen nitelikleri açıklayan metin halindeki bir gereksinim dokümanından oluşmaktadır. Bu kapsamda çalışmamızda kullanılabilir hale getirmek üzere başlangıçta elde edilen dokümandaki her bir cümleye bir gereksinim numarası verilerek gereksinimler sıralanmıştır. Dağınık bir dokümanda gereksinim olabilecek cümleleri noktaları kullanarak tanımak da mümkün olabilecek bir yaklaşımdır; ancak bu aşamada yazılıma fazla karmaşa getireceğinden bu kabiliyet yazılıma eklenmemiş ve bunun yerine cümleler manuel olarak sıralanarak bir numara verilmiştir. 28

38 Materyal olarak kullandığımız gereksinim metni Windows ortamında word formatından alınarak yazılımımızın gerektirdiği ve analizlerde kolaylık sağlayan text formatına çevrilerek yazılımımızda kullanılmıştır. 3.2 Yöntem Gereksinim kümelerinin hata analizinde kullanılacak bir yazılım aracının sahip olması gereken iki ana amaç Kiyavitskaya vd. (2008) tarafından; Gereksinim kümesindeki hatalı gereksinim cümlelerinin bulunması ve, Hatalı olarak tespit edilen gereksinim cümlesinin neden hatalı olduğunun kullanıcıya açıklanarak, kullanıcı tarafından o hatanın düzeltilmesi ve gereksinim kalitesinin arttırılması olarak ifade edilmiştir. Bu çalışmada, yukarıda belirtilen bu iki amacı sağlamak için gereksinim hatalarını otomatik olarak tespit edecek bir yazılım geliştirilmiştir. Yine Kiyavitskaya vd. (2008) tarafından, gereksinim hata analizinde kullanılacak başarılı bir yazılımın: % 100 geriye alma, kullanıcıyı bu aracı kullanmaktan vazgeçirmemek için çok fazla hatalı tespit yapmama, yeterince hassasiyete sahip olma, ve kullanıcının hızlıca yorum çıkarabilmesi ve pratik olması için analizin sonucunu kısa ve öz olarak kullanıcıya gösterme özelliklerine sahip olması gerektiği bildirilmiştir. Bu amaçla hazırlanan yazılımda, hata analizinde hassasiyetin sağlanması ve sonuçların kısa ve anlaşılır olarak kullanıcıya gösterilmesi hedeflenmiştir. Bununla birlikte hazırlanan yazılım analizler sırasında kullanıcı müdahalesine izin vermektedir. Burada kullanıcı müdahalesine izin verilmesi ayrıca önemlidir. Zira bu imkan hem ihtiyaç sahibi, hem de geliştirmeyi yapacak grubun aynı anda programı 29

39 kullanabilmesi ve analizleri beraber yorumlamasını sağlayabilir. Aslan (2002) ın ifade ettiği gibi yazılım gereksinim geliştirmesi tedarikçiden çok yüklenicilerin görevi olarak algılanmakta ve mevcut durumda tedarikçinin bu aşamaya dahli genelde ihmal edilmektedir. Bu da, ikinci bölümde açıklandığı gibi gereksinimlerin analizinde bazı sıkıntılara yol açmaktadır. Bu çalışmada Bölüm 1.2 de anlatılan ve yazılım gereksinim kalitesini arttıracağı düşünülen dört (kullanıcı müdahalesi hariç üç) aşamalı süreci Türkçe için uygulamak üzere Microsoft.NET 2.0 ortamında C# programlama dili ile üç aşamalı çalışan bir yazılım geliştirilmiştir. Yazılımın ismi Contract Weakness Analyser v1.0 olarak belirlenmiş ve bu yazılımın bir kopyası Ek 6 daki CD içeriğinde sunulmuştur. Bu yazılım öncelikle yazılım gereksinim kalite yönteminin Gereksinimlerin dilbilimsel açıdan belirli koşulları sağlayıp sağlamadığının kontrol edilmesi ve bu doğrultuda ifadelerle muğlaklığa sebep olan hata tiplerinin analiz edilerek ayıklanmasını içermektedir. Yazılımın ikinci aşamasında gereksinimlerin işlevsel olan ve işlevsel olmayan gereksinimler şeklinde sınıflandırılmasını sağlayacak fonksiyonlar yer almaktadır. Yazılımın üçüncü kısmında ise birbirine benzer ya da aynı ifadelerin tespit edilmesi sağlanmaktadır Yazılımın fonksiyon ve kabiliyetleri: Yazılım ana ekranda yer alan menüler yardımıyla Hata Tipi, İşlevsellik ve Benzerlik Analizleri yapabilmektedir. Yazılımın ana girişinde kullanımını açıklamaya yardım etmek için bir Help butonu bulunmakta ve buna tıklandığında yazılım hakkında bilgi vermektedir. Ana sayfada analizi yapılacak gereksinim dokümanının diline göre Türkçe ve İngilizce seçenekleri bulunmaktadır. Hata Tipi ve İşlevsellik analizi için Analyse, Benzerlik analizi için Similarity Check butonu bulunmaktadır. Benzerlik analizinin 30

40 keskinliğini belirlemek için ana sayfada % cinsinden ifade edilen benzerlik eşik değeri (similarity treshold) nin girilebileceği bir hane bulunmaktadır. Burada bu değer minimum 0 maksimum 100 olmalıdır, aksi halde yazılım yanlış girildiğini anlamakta ve bu girişe izin vermeyerek kullanıcıyı en alt satırdaki bilgiyle uyarmaktadır. Yazılımda çıkış için Exit butonu yer almaktadır. Yazılım analiz sonuçlarını ana ekran üzerinde özet olarak göstermekte, detaylı sonuç dosyalarının isimlerini göstermektedir. Yazılım ana sayfasının örnek görüntüsü şekil 3.1 de yer almaktadır Yazılımın girdileri Yazılım Windows XP ve üstü işletim sisteminde çalışmaktadır. Yazılımın ilk aşamasında analizi yapılmak istenen gereksinim dokümanı ŞARTNAME isminde bir text dosyası oluşturularak içine kopyalanmalıdır. Bu doküman yazılım ana sayfasındaki Open butonu kullanılarak bilgisayardan şekil 3.2 deki gibi seçilmelidir. Gereksinim dokümanında analizin yapılabilmesi için her bir gereksinimin bir numarası olmalıdır. Çünkü yazılım, sonuçları bu numaralara göre göstermektedir. Türkçe yi desteklemesi için yazılımda text dosyaları UTF-8 formatında seçilmiştir. ŞARTNAME dosyası içine konulan, sıralandırılmış, örnek bir gereksinim dokümanı şekil 3.3 de gösterilmektedir. Bununla birlikte Hata Analizinde kullanılacak hata tipi sözlükleri ve İşlevsellik Analizinde kullanılacak İOG sözlüklerinin içerisi gereksinim dokümanının ait olduğu alana uygun olarak doldurulması yazılımın kabiliyetini artıracaktır. Eğer önerilen hata tipleri ve İOG tiplerine ilave edilecek varsa bu sözlükler de yeni baştan oluşturulmalıdır. Sözlükler ile ilgili ayrıntı ilerleyen bölümlerde verilmektedir. 31

41 Şekil 3.1 Yazılım ana sayfasının örnek görüntüsü Şekil 3.2 Dosya seçim menüsü 32

42 Şekil 3.3 Örnek şartname dosyası Muğlaklık hata tiplerinin analizi Yazılımın birinci kısmı olan ve muğlaklıklara sebep olan hata tipleri analizinde Kızılca ve Yılmaz (2008) ın çalışmasından alınan yazılımın birinci sürümü temel alınmıştır. Buna göre yazılım çizelge 2.2 de belirtilen 8 hata tipinden Zayıflık (Weakness) hariç diğer 7 sini yakalamak üzere yapılandırılmıştır. Bunlar: 1. Seçeneklilik (Optionality) 2. Öznellik (Subjectivity) 3. Belirsizlik (Vagueness) 4. Üstü Kapalılık (Implicity) 5. Çokluk (Multiplicity) 6. Maksadını Aşma (Over Specification) 7. Eksiklik (Incompleteness) olarak belirlenmiştir. Bu doğrultuda bu hata tiplerine ait metin formatında 7 adet hata sözlüğü oluşturulmuştur. Bu sözlüklerdeki kelimelerin 33

43 sözlüksel analizi gereksinim cümlesinde yapılarak şayet bu kelimelerden birisi gereksinim cümlesinde var ise, kelimenin ait olduğu hata tipinin o gereksinimde var olduğu analiz sonucunda bunu ŞARTNAME.txt dosyasının yer aldığı klasörde (bu klasörün ne olduğu önem taşımamaktadır.) yazılım tarafından oluşturulan Analysis_Results.txt ve SRS.txt dosyalarının içinde göstermektedir. Örnek bir hata sözlüğü (Vagueness-Belirsizlik hata tipi için) şekil 3.4 de gösterilmiştir. Hata sözlüklerinde birbirinden bağımsız olduğundan İngilizce ve Türkçe için hata tipine yol açan kelimeler birlikte konulmaktadır. Burada sözlüğe hata yaratacağı düşünülen ifadeler eklenebilmektedir. Analiz sonucunda oluşan örnek Analysis_Results.txt ve SRS.txt dosyaları şekil 3.5 de gösterilmiştir. SRS.txt dosyası Excel formatında da açılabilmekte ve sonuçları daha okunabilir göstermektedir. Bunun için Mouse üzerinden birlikte aç menüsünden Excel programının seçilmesi yeterli olmaktadır. Bu gösterim de yine şekil 3.5 de yer almaktadır. SRS.txt dosyasında bir gereksinim numarasında bir hata tipi için true yazıyorsa bu, söz konusu hata tipinin ilgili gereksinimde olduğu anlamına gelmektedir. Şekil 3.4 Örnek hata tipi sözlüğü 34

44 Şekil 3.5 Analiz sonucunda oluşan Analysis-Result.txt ve SRS.txt dosyaları Yazılımda ileriye yönelik olarak yeni oluşturulan bir hata tipine ait yeni bir sözlük kolayca ilave edilebilmektedir. Bunun için hata tiplerine ait tüm hata tipi sözlükleri dosyalarının adı Dictionaries.txt isimli bir dosyanın içine yazılmaktadır. Yazılım analizde kullanacağı hata tipi sözlüğü dosyalarını bu dosya içinden seçmektedir. Bu ayrıca, tüm bu hata tiplerine değil de sadece birkaç hata tipine özel sınırlı bir analiz yapılmak isteniyorsa ona da imkan tanımaktadır. Hata tipleri sözlüklerinin Dictionaries.txt dosyasının içine kaydedilişi şekil 3.6 da gösterilmiştir. Diğer hata tipi olan Zayıflık (Weakness) analizi İngilizce için gereksinim cümlesi içinde shall yardımcı fiilinin, Türkçe için gereksinim cümlesindeki yüklemin sonunda - ecektir, -acaktır eklerinin var olup olmadığına bakılarak, yazılım tarafından gömülü olarak yapılmaktadır. Yazılım burada İngilizce ya da Türkçe dilinden hangisi için analiz yapacağını yazılımın ana sayfasındaki menüde yer alan İngilizce ve Türkçe butonlarından hangisinin işaretlendiğine bakarak ayırt etmektedir. 35

DİKMEN BÖLGESİ STRETEJİK GELİŞİM PLANI 2012-2014

DİKMEN BÖLGESİ STRETEJİK GELİŞİM PLANI 2012-2014 DİKMEN BÖLGESİ STRETEJİK GELİŞİM PLANI 2012-2014 Eyül 2011 Bu yayın Avrupa Birliği nin yardımlarıyla üretilmiştir. Bu yayının içeriğinin sorumluluğu tamamen The Management Centre ve Dikmen Belediyesi ne

Detaylı

BÖLÜM 2 VERİ SETİNİN HAZIRLANMASI VE DÜZENLENMESİ

BÖLÜM 2 VERİ SETİNİN HAZIRLANMASI VE DÜZENLENMESİ 1 BÖLÜM 2 VERİ SETİNİN HAZIRLANMASI VE DÜZENLENMESİ Veri seti; satırlarında gözlem birimleri, sütunlarında ise değişkenler bulunan iki boyutlu bir matristir. Satır ve sütunların kesişim bölgelerine 'hücre

Detaylı

TÜİK e-vt Teknik Kılavuz

TÜİK e-vt Teknik Kılavuz TÜİK e-vt Teknik Kılavuz Genel Açıklamalar Mayıs 2015 ANKARA Versiyon: 1.1 1/6 Versiyon Yayım Tarihi Eklenen/Silinen/Değişen Bölüm Açıklama 1.0 20.02.2014 ---- Kılavuzun ilk sürümü. 1.1 04.05.2015 Sayfa

Detaylı

Yazılım Mühendisliği 1

Yazılım Mühendisliği 1 Yazılım Mühendisliği 1 HEDEFLER Yazılım, program ve algoritma kavramları anlar. Yazılım ve donanım maliyetlerinin zamansal değişimlerini ve nedenleri hakkında yorum yapar. Yazılım mühendisliği ile Bilgisayar

Detaylı

T. C. KAMU İHALE KURUMU

T. C. KAMU İHALE KURUMU T. C. KAMU İHALE KURUMU Elektronik İhale Dairesi KALİTE YÖNETİM SİSTEMİ BT Strateji Yönetimi BT Hizmet Yönetim Politikası Sürüm No: 6.0 Yayın Tarihi: 26.02.2015 444 0 545 2012 Kamu İhale Kurumu Tüm hakları

Detaylı

Yaz.Müh.Ders Notları #6 1

Yaz.Müh.Ders Notları #6 1 YAZILIM MÜHENDİSLİĞİ Prof.Dr. Oya Kalıpsız GİRİŞ 1 YAZILIM YETERLİLİK OLGUNLUK MODELİ Olgunluk Seviyeleri: Düzey 1. Başlangıç düzeyi: Yazılım gelişimi ile ilişkili süreçlerin tanımlanması için hiçbir sistematik

Detaylı

Doğal Dilde Yazılmış Gereksinimlerin Analiz Yöntemleri ve bu Yöntemlerin Türkçe için Uygulanabilirliği

Doğal Dilde Yazılmış Gereksinimlerin Analiz Yöntemleri ve bu Yöntemlerin Türkçe için Uygulanabilirliği Doğal Dilde Yazılmış Gereksinimlerin Analiz Yöntemleri ve bu Yöntemlerin Türkçe için Uygulanabilirliği Natural Language Requirement Analysis Methods and Their Applicability for Turkish Halil KIZILCA Barış

Detaylı

Bilişim Sistemleri. Modelleme, Analiz ve Tasarım. Yrd. Doç. Dr. Alper GÖKSU

Bilişim Sistemleri. Modelleme, Analiz ve Tasarım. Yrd. Doç. Dr. Alper GÖKSU Bilişim Sistemleri Modelleme, Analiz ve Tasarım Yrd. Doç. Dr. Alper GÖKSU Ders Akışı Hafta 5. İhtiyaç Analizi ve Modelleme II Haftanın Amacı Bilişim sistemleri ihtiyaç analizinin modeli oluşturulmasında,

Detaylı

2- PROJE YÖNETİMİ BİLGİ ALANLARI Y R D. D O Ç. D R. K E N A N G E N Ç O L

2- PROJE YÖNETİMİ BİLGİ ALANLARI Y R D. D O Ç. D R. K E N A N G E N Ç O L 2- PROJE YÖNETİMİ BİLGİ ALANLARI Y R D. D O Ç. D R. K E N A N G E N Ç O L 10 TEMEL BILGI ALANı (PMI YAKLAŞıMı) Proje Entegrasyon Yönetimi Proje Kapsam Yönetimi Proje Zaman Yönetimi Proje Maliyet Yönetimi

Detaylı

KALİTE KAVRAMI VE KALİTENİN BOYUTLARI

KALİTE KAVRAMI VE KALİTENİN BOYUTLARI KALİTE YÖNETİMİ KALİTE KAVRAMI VE KALİTENİN BOYUTLARI Hizmet veya üründe kalite kavramı için farklı tanımlar kullanılmaktadır. En genel hâliyle ihtiyaçlara uygunluk (Crosby), ürün veya hizmetin değeri

Detaylı

TOPLAM KALİTE YÖNETİMİ

TOPLAM KALİTE YÖNETİMİ SAKARYA ÜNİVERSİTESİ TOPLAM KALİTE YÖNETİMİ Hafta 13 Yrd. Doç. Dr. Semra BORAN Bu ders içeriğinin basım, yayım ve satış hakları Sakarya Üniversitesi ne aittir. "Uzaktan Öğretim" tekniğine uygun olarak

Detaylı

Ders Adı Kodu Yarıyılı T+U Saati Ulusal Kredisi AKTS

Ders Adı Kodu Yarıyılı T+U Saati Ulusal Kredisi AKTS DERS BİLGİLERİ Ders Adı Kodu Yarıyılı T+U Saati Ulusal Kredisi AKTS Teknik İngilizce II EEE112 2 3+0 3 4 Ön Koşul Dersleri Dersin Dili Dersin Seviyesi Dersin Türü İngilizce Lisans Zorunlu / Yüz Yüze Dersin

Detaylı

Eylül 2007 de v1.0 ı yayınlanan SysML sayesinde endüstri mühendislerinin de ihtiyacı karşılanmış oldu.

Eylül 2007 de v1.0 ı yayınlanan SysML sayesinde endüstri mühendislerinin de ihtiyacı karşılanmış oldu. 1 Yazılımcıların da endüstri mühendislerinin de en büyük ihtiyaçlarının başında ortak modelleme dili ihtiyacı gelir. UML nin (Unified Modeling Language) Kasım 1997 de OMG tarafından yayınlanmasıyla birlikte

Detaylı

Yazılım Mimari Tasarımından Yazılım Geliştirme Çatısının Üretilmesinde Model Güdümlü Bir Yaklaşım

Yazılım Mimari Tasarımından Yazılım Geliştirme Çatısının Üretilmesinde Model Güdümlü Bir Yaklaşım Yazılım Mimari Tasarımından Yazılım Geliştirme Çatısının Üretilmesinde Model Güdümlü Bir Yaklaşım İbrahim Onuralp Yiğit 1, Nafiye Kübra Turhan 2, Ahmet Erdinç Yılmaz 3, Bülent Durak 4 1,2,3,4 ASELSAN A.Ş.

Detaylı

PAÜ Kurum İç Değerlendirme Raporu Hazırlıkları-2018

PAÜ Kurum İç Değerlendirme Raporu Hazırlıkları-2018 PAÜ Kurum İç Değerlendirme Raporu Hazırlıkları-2018 Diler ASLAN PAÜ Kalite Komisyonu Üyesi Kalite Yönetimi ve Veri Değerlendirme Araştırma ve Uygulama Merkezi (KAVDEM) Müdürü Kurum Kalite Koordinatörü

Detaylı

Öğretim planındaki AKTS Ulusal Kredi

Öğretim planındaki AKTS Ulusal Kredi Ders Kodu Teorik Uygulama Lab. Yazılım Gereksinimleri Mühendisliği Ulusal Kredi Öğretim planındaki AKTS 481052000001303 3 0 0 3 5 Dersin Yürütülmesi Hakkında Bu ders gerçek dünya problemlerinin analiz

Detaylı

Kullanım Durumu Diyagramları (Use-case Diyagramları)

Kullanım Durumu Diyagramları (Use-case Diyagramları) Kullanım Durumu Diyagramları (Use-case Diyagramları) Analiz aşaması projeler için hayati önem taşır. İyi bir analizden geçmemiş projelerin başarı şansı azdır. Analiz ile birlikte kendimize Ne? sorusunu

Detaylı

5. PROGRAMLA DİLLERİ. 5.1 Giriş

5. PROGRAMLA DİLLERİ. 5.1 Giriş 5. PROGRAMLA DİLLERİ 8.1 Giriş 8.2 Yazılım Geliştirme Süreci 8.3 Yazılım Geliştirme Sürecinde Programlama Dilinin Önemi 8.4 Programlama Dillerinin Tarihçesi 8.5 Programlama Dillerinin Sınıflandırılması

Detaylı

Mantıksal Operatörlerin Semantiği (Anlambilimi)

Mantıksal Operatörlerin Semantiği (Anlambilimi) Mantıksal Operatörlerin Semantiği (Anlambilimi) Şimdi bu beş mantıksal operatörün nasıl yorumlanması gerektiğine (semantiğine) ilişkin kesin ve net kuralları belirleyeceğiz. Bir deyimin semantiği (anlambilimi),

Detaylı

TS EN ISO 14001: 2005 AC: Haziran 2010

TS EN ISO 14001: 2005 AC: Haziran 2010 TÜRK STANDARDI TURKISH STANDARD Sayfa 1/5 ICS 13.020.10 TS EN ISO 14001: 2005 AC: Haziran 2010 Bu ek, CEN tarafından kabul edilen EN ISO 14001: 2004/AC: 2009 eki esas alınarak TSE Çevre İhtisas Grubu nca

Detaylı

ANKARA ÜNİVERSİTESİ FEN BİLİMLERİ ENSTİTÜSÜ DÖNEM PROJESİ TAŞINMAZ DEĞERLEMEDE HEDONİK REGRESYON ÇÖZÜMLEMESİ. Duygu ÖZÇALIK

ANKARA ÜNİVERSİTESİ FEN BİLİMLERİ ENSTİTÜSÜ DÖNEM PROJESİ TAŞINMAZ DEĞERLEMEDE HEDONİK REGRESYON ÇÖZÜMLEMESİ. Duygu ÖZÇALIK ANKARA ÜNİVERSİTESİ FEN BİLİMLERİ ENSTİTÜSÜ DÖNEM PROJESİ TAŞINMAZ DEĞERLEMEDE HEDONİK REGRESYON ÇÖZÜMLEMESİ Duygu ÖZÇALIK GAYRİMENKUL GELİŞTİRME VE YÖNETİMİ ANABİLİM DALI ANKARA 2018 Her hakkı saklıdır

Detaylı

Yazılım Geliştirme Projelerinde Kontrolörlük / Müşavirlik Hizmetleri. Y.Müh. Kadriye ÖZBAŞ ÇAĞLAYAN, PMP Y.Müh. Ahmet DİKİCİ, PMP

Yazılım Geliştirme Projelerinde Kontrolörlük / Müşavirlik Hizmetleri. Y.Müh. Kadriye ÖZBAŞ ÇAĞLAYAN, PMP Y.Müh. Ahmet DİKİCİ, PMP Yazılım Geliştirme Projelerinde Kontrolörlük / Müşavirlik Hizmetleri Y.Müh. Kadriye ÖZBAŞ ÇAĞLAYAN, PMP Y.Müh. Ahmet DİKİCİ, PMP Sunum Planı Organizasyon Yapısı Yazılım Projelerinde Başarı Durumu Yazılım

Detaylı

CICS / CICP Sertifika Programları. Eğitim Kataloğu. Hazırlayan: İç Kontrol Enstitüsü

CICS / CICP Sertifika Programları. Eğitim Kataloğu. Hazırlayan: İç Kontrol Enstitüsü CICS / CICP Sertifika Programları Eğitim Kataloğu Hazırlayan: İç Kontrol Enstitüsü İÇİNDEKİLER İÇİNDEKİLER... 1 İÇ KONTROL ENSTİTÜSÜ NÜN CICS / CICP SERTİFİKA PROGRAMLARI EĞİTİMİ İÇERİĞİ... 3 BÖLÜM 1:

Detaylı

MONTE CARLO BENZETİMİ

MONTE CARLO BENZETİMİ MONTE CARLO BENZETİMİ U(0,1) rassal değişkenler kullanılarak (zamanın önemli bir rolü olmadığı) stokastik ya da deterministik problemlerin çözümünde kullanılan bir tekniktir. Monte Carlo simülasyonu, genellikle

Detaylı

SÜREÇ YÖNETİMİ KAPSAMINDA PROSEDÜR HAZIRLAMA

SÜREÇ YÖNETİMİ KAPSAMINDA PROSEDÜR HAZIRLAMA SÜREÇ YÖNETİMİ KAPSAMINDA PROSEDÜR HAZIRLAMA Hazırlayan: KALİTE GELİŞTİRME BİRİMİ ENDÜSTRİ YÜKSEK MÜHENDİSİ AYŞE HANDE EROL KALİTE ÇALIŞMALARI KAPSAMINDA SÜREÇLERİN BELİRLENMESİ, PROSEDÜRLERİN ve TALİMATLARIN

Detaylı

BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜM BAŞKANLIĞI DERS TANITIM BİLGİLERİ

BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜM BAŞKANLIĞI DERS TANITIM BİLGİLERİ BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜM BAŞKANLIĞI DERS TANITIM BİLGİLERİ Dersin Adı Kodu Sınıf / Y.Y. Ders Saati (T+U+L) Kredi AKTS PROGRAMLAMA DİLLERİ BG-324 3/2 3+0+0 3+0 4 Dersin Dili : TÜRKÇE Dersin Seviyesi

Detaylı

CICS / CICP Sertifika Programları İçin. Kurs Kataloğu

CICS / CICP Sertifika Programları İçin. Kurs Kataloğu CICS / CICP Sertifika Programları İçin Kurs Kataloğu Hazırlayan: İç Kontrol Enstitüsü İÇİNDEKİLER İÇ KONTROL ENSTİTÜSÜ NÜN CICS / CICP SERTİFİKA PROGRAMLARI BECERİ ALANLARI VE MESLEKİ İÇ KONTROL KURSLARI

Detaylı

BİÇİMSEL YÖNTEMLER (FORMAL METHODS) Betül AKTAŞ Suna AKMELEZ

BİÇİMSEL YÖNTEMLER (FORMAL METHODS) Betül AKTAŞ Suna AKMELEZ BİÇİMSEL YÖNTEMLER (FORMAL METHODS) Betül AKTAŞ 14011021 Suna AKMELEZ 14011050 Biçimsel Yöntemler Nedir? Nerede Kullanılır? Biçimsel Tasarım Biçimsel Yöntemlerin Yararları Biçimsel Yöntemlerin Zayıf Yönleri

Detaylı

1.1 Metodolojiyi Gerçeklemek Üzere Geliştirilen Altyapı

1.1 Metodolojiyi Gerçeklemek Üzere Geliştirilen Altyapı 1.1 Metodolojiyi Gerçeklemek Üzere Geliştirilen Altyapı Metodolojisi üzerinde durduğumuz çalışman Eğitim altyapısını gerçekleştirmek: Proje iki ana parçadan oluşacaktır. Merkezi Altyapı Kullanıcı Arabirimi

Detaylı

Proje DöngD. Deniz Gümüşel REC Türkiye. 2007,Ankara

Proje DöngD. Deniz Gümüşel REC Türkiye. 2007,Ankara Proje Yönetiminde Y Temel Kavramlar Proje DöngD ngüsü Yönetimi ve Mantıksal Çerçeve eve Yaklaşı şımı Deniz Gümüşel REC Türkiye 2007,Ankara TEMEL KAVRAMLAR Proje nedir? Proje Yönetimi nedir???? Proje Döngüsü

Detaylı

FIRAT ÜNİVERSİTESİ TEKNOLOJİ FAKÜLTESİ Yazılım Mühendisliği Bölümü

FIRAT ÜNİVERSİTESİ TEKNOLOJİ FAKÜLTESİ Yazılım Mühendisliği Bölümü FIRAT ÜNİVERSİTESİ TEKNOLOJİ FAKÜLTESİ Yazılım Mühendisliği Bölümü YMH114 - Yazılım Mühendisliğinin Temelleri Dersi Proje Uygulaması ve Dokümantasyonu AKILLI ŞEHİR UYGULAMALARININ İNCELENMESİ VE ÖRNEK

Detaylı

SÜREÇ YÖNETİMİ PROSEDÜRÜ

SÜREÇ YÖNETİMİ PROSEDÜRÜ 1.0 AMAÇ Ahi Evran Üniversitesi nde uygulanacak süreç yönetim sistemi ile ilgili temel esasları tanımlamaktır. 2.0 KAPSAM Ahi Evran Üniversitesi nde uygulanmakta olan tüm süreçleri kapsar. 3.0 TANIMLAR

Detaylı

XBRL. Şükrü ŞENALP Yeminli Mali Müşavir Sorumlu Ortak Baş Denetçi

XBRL. Şükrü ŞENALP Yeminli Mali Müşavir Sorumlu Ortak Baş Denetçi Şükrü ŞENALP Yeminli Mali Müşavir Sorumlu Ortak Baş Denetçi XBRL dünya çapında iş dünyasıyla finansal veriler arasında elektronik iletişimi sağlayan devrimsel nitelikte bir dildir. Hazırlık aşamasında,

Detaylı

DSK nın Ortaya Çıkışı ve Gelişimi

DSK nın Ortaya Çıkışı ve Gelişimi Balanced Scorecard DSK nın Ortaya Çıkışı ve Gelişimi Bu yöntemin ortaya çıkışı 1990 yılında Nolan Norton Enstitüsü sponsorluğunda gerçekleştirilen, bir yıl süren ve birçok şirketi kapsayan Measuring performance

Detaylı

Bilişim Sistemleri Değerlendirme Modeli ve Üç Örnek Olay İncelemesi

Bilişim Sistemleri Değerlendirme Modeli ve Üç Örnek Olay İncelemesi Bilişim Sistemleri Değerlendirme Modeli ve Üç Örnek Olay İncelemesi Özet Dr. Sevgi Özkan ve Prof. Dr Semih Bilgen Enformatik Enstitüsü, Orta Doğu Teknik Üniversitesi, Ankara Tel: (312) 210 3796 e-posta:

Detaylı

Kalite Kontrol Yenilikler

Kalite Kontrol Yenilikler Kalite Kontrol Yenilikler Amaç ve Fayda Kalite Kontrol modülünde ISO 2859 standardının desteklenmesine, kullanımın daha fonksiyonel ve rahat olabilmesine yönelik bazı iyileştirme çalışmaları yapılmıştır.

Detaylı

İç denetim birimleri, risk değerlendirme çalışmalarına ilişkin hususları bu rehbere uygun olarak kendi iç denetim birim yönergelerinde düzenlerler.

İç denetim birimleri, risk değerlendirme çalışmalarına ilişkin hususları bu rehbere uygun olarak kendi iç denetim birim yönergelerinde düzenlerler. KAMU İÇ DENETİMİNDE RİSK DEĞERLENDİRME REHBERİ I. GİRİŞ Bu rehber, iç denetim birimlerince hazırlanacak risk değerlendirme çalışmalarının temel esaslarını belirlemek üzere, İç Denetçilerin Çalışma Usul

Detaylı

MODELLEME VE BENZETİM

MODELLEME VE BENZETİM MODELLEME VE BENZETİM Hazırlayan: Özlem AYDIN Not: Bu sunumda Yrd. Doç. Dr. Yılmaz YÜCEL in Modelleme ve Benzetim dersi notlarından faydalanılmıştır. DERSE İLİŞKİN GENEL BİLGİLER Dersi veren: Özlem AYDIN

Detaylı

İnternet Destekli Temel Bilgisayar Bilimleri Dersinde Anket Uygulaması

İnternet Destekli Temel Bilgisayar Bilimleri Dersinde Anket Uygulaması İnternet Destekli Temel Bilgisayar Bilimleri Dersinde Anket Uygulaması Yalçın Ezginci Selçuk Üniversitesi Elk.-Elt.Mühendisliği Konya ANKET Anket, insanlardan fikirleri, duyguları, sağlıkları, planları,

Detaylı

ISO 9001:2015 GEÇİŞ KILAVUZU

ISO 9001:2015 GEÇİŞ KILAVUZU Kal ten z, denet m m z altında olsun Szutest Szutest Szutest Szutesttr 444 9 511 szutest.com.tr ISO 9001:2015 REVİZYONUN YAPISI Yeni Revizyon ile birlikte ISO ANNEX SL gereksinimleri doğrultusunda Yüksek

Detaylı

Amaç, BİLİMSEL ARASTIRMA YAPABİLME, HAKİM OLDUĞU BİR KONUYU BELİRLİ BİR FORMATTA HAZIRLAYIP SUNABİLME

Amaç, BİLİMSEL ARASTIRMA YAPABİLME, HAKİM OLDUĞU BİR KONUYU BELİRLİ BİR FORMATTA HAZIRLAYIP SUNABİLME SOSYAL BİLİMLER ENSTİTÜSÜ İŞ SAĞLIĞI VE GÜVENLİĞİ TEZLİ YÜKSEK LİSANS PROGRAMI İSG 203-SEMİNER DERSİ V Dönem 1702175 Amaç, BİLİMSEL ARASTIRMA YAPABİLME, HAKİM OLDUĞU BİR KONUYU BELİRLİ BİR FORMATTA HAZIRLAYIP

Detaylı

KAPASİTE KAVRAMI ve KAPASİTE ÇEŞİTLERİ

KAPASİTE KAVRAMI ve KAPASİTE ÇEŞİTLERİ KAPASİTE KAVRAMI ve KAPASİTE ÇEŞİTLERİ Bir işletme için kapasite değerlemesinin önemi büyüktür. Daha başlangıçta kurulacak işletmenin üretim kapasitesinin çok iyi hesaplanması gerekir ve elde edilen verilere

Detaylı

5.DERS PROJEDE YÜRÜTMENİN PLANLANMASI

5.DERS PROJEDE YÜRÜTMENİN PLANLANMASI 5.DERS PROJEDE YÜRÜTMENİN PLANLANMASI 1 1. PROJENİN PLANLANMASI? Proje planlaması yapılmadan iyi bir proje önerisi hazırlanması mümkün değildir. Bu nedenle planlama ile ilgili sorunları ortaya koymanın

Detaylı

T.C. ANKARA ÜNİVERSİTESİ BELGE YÖNETİMİ VE ARŞİV SİSTEMİ STRATEJİSİ

T.C. ANKARA ÜNİVERSİTESİ BELGE YÖNETİMİ VE ARŞİV SİSTEMİ STRATEJİSİ T.C. ANKARA ÜNİVERSİTESİ BELGE YÖNETİMİ VE ARŞİV SİSTEMİ STRATEJİSİ (Doküman No: BEYAS-DK-02) Ankara Üniversitesi için aşağıda verilen temel bir Belge Yönetimi ve Arşiv Sistemi Stratejisi metni hazırlanmıştır.

Detaylı

KAMU İÇ DENETİMİNDE RİSK DEĞERLENDİRME REHBERİ

KAMU İÇ DENETİMİNDE RİSK DEĞERLENDİRME REHBERİ KAMU İÇ DENETİMİNDE RİSK DEĞERLENDİRME REHBERİ I. GİRİŞ Bu rehber, iç denetim birimlerince hazırlanacak risk değerlendirme çalışmalarının temel esaslarını belirlemek üzere, İç Denetçilerin Çalışma Usul

Detaylı

Öğrenim Kazanımları Bu programı başarı ile tamamlayan öğrenci;

Öğrenim Kazanımları Bu programı başarı ile tamamlayan öğrenci; Image not found http://bologna.konya.edu.tr/panel/images/pdflogo.png Ders Adı : İNGİLİZCE 1 Ders No : 0010080006 Teorik : 3 Pratik : 0 Kredi : 0 ECTS : 3 Ders Bilgileri Ders Türü Öğretim Dili Öğretim Tipi

Detaylı

Proje Çevresi ve Bileşenleri

Proje Çevresi ve Bileşenleri Proje Çevresi ve Bileşenleri 1.3. Proje Çevresi Proje çevresi, proje performans ve başarısını önemli ölçüde etkiler. Proje takımı; sosyoekonomik, coğrafı, siyasi, yasal, teknolojik ve ekolojik gibi kuruluş

Detaylı

DENİZ HARP OKULU BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜM BAŞKANLIĞI DERS TANITIM BİLGİLERİ

DENİZ HARP OKULU BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜM BAŞKANLIĞI DERS TANITIM BİLGİLERİ DENİZ HARP OKULU BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜM BAŞKANLIĞI DERS TANITIM BİLGİLERİ Dersin Adı Kodu Sınıf/Y.Y. Ders Saati (T+U+L) Kredi AKTS Programlama Dillerinin Prensipleri BİM-323 3/II 3+0+0 3 4 Dersin

Detaylı

BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜM BAŞKANLIĞI DERS TANITIM BİLGİLERİ

BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜM BAŞKANLIĞI DERS TANITIM BİLGİLERİ BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜM BAŞKANLIĞI DERS TANITIM BİLGİLERİ Dersin Adı Kodu Sınıf / Y.Y. Ders Saati (T+U+L) Kredi AKTS YAZILIM MÜHENDİSLİĞİ BG-411 4/1 3+0+0 3+0 5 Dersin Dili : TÜRKÇE Dersin Seviyesi

Detaylı

Avrupa Patent Akademisi. Patent Eğitim Seti

Avrupa Patent Akademisi. Patent Eğitim Seti Patent Eğitim Seti Avrupa Patent Akademisi Patent Eğitim Seti Patent Eğitim Seti farkındalığı artırmaya yardımcı olacak değerli bir kaynaktır. Patent uzmanları tarafından hazırlanan ve geliştirilen eğitim

Detaylı

PROJE YÖNETİMİ KISA ÖZET KOLAYAOF

PROJE YÖNETİMİ KISA ÖZET KOLAYAOF PROJE YÖNETİMİ KISA ÖZET KOLAYAOF DİKKAT Burada ilk 4 sayfa gösterilmektedir. Özetin tamamı için sipariş veriniz www.kolayaof.com 2 Kolayaof.com 0 362 2338723 Sayfa 2 İÇİNDEKİLER 1. ÜNİTE-Proje ve Proje

Detaylı

KURUMSAL RİSK YÖNETİMİ (KRY) EĞİTİMİ KURUMSAL RİSK YÖNETİMİ: KAVRAMSAL VE TEORİK ÇERÇEVE

KURUMSAL RİSK YÖNETİMİ (KRY) EĞİTİMİ KURUMSAL RİSK YÖNETİMİ: KAVRAMSAL VE TEORİK ÇERÇEVE KURUMSAL RİSK YÖNETİMİ (KRY) EĞİTİMİ KURUMSAL RİSK YÖNETİMİ: KAVRAMSAL VE TEORİK ÇERÇEVE SUNUM PLANI 1. RİSK VE RİSK YÖNETİMİ: TANIMLAR 2. KURUMSAL RİSK YÖNETİMİ 3. KURUMSAL RİSK YÖNETİMİ DÖNÜŞÜM SÜRECİ

Detaylı

BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜM BAŞKANLIĞI DERS TANITIM BİLGİLERİ

BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜM BAŞKANLIĞI DERS TANITIM BİLGİLERİ BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜM BAŞKANLIĞI DERS TANITIM BİLGİLERİ Dersin Adı Kodu Sınıf / Y.Y. Ders Saati (T+U+L) Kredi AKTS PROGRAMLAMA BG-213 2/1 2+0+2 2+1 5 Dersin Dili : TÜRKÇE Dersin Seviyesi : LİSANS

Detaylı

T.C. AMASYA ÜNİVERSİTESİ FEN BİLİMLER ENSTİTÜSÜ BİLİM DALI XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX XXXXXX

T.C. AMASYA ÜNİVERSİTESİ FEN BİLİMLER ENSTİTÜSÜ BİLİM DALI XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX XXXXXX EK [1] Dış Kapak Örneği Arial, 14 punto,ortalı,tek satır aralığı, büyük harf, bold. T.C. AMASYA ÜNİVERSİTESİ FEN BİLİMLER ENSTİTÜSÜ ANA BİLİM DALI BİLİM DALI 1,5 satır aralıklı 7 boşluk Tez Başlığı, ortalı,

Detaylı

Sedona. Nisan 2013 Eğitim Kataloğu

Sedona. Nisan 2013 Eğitim Kataloğu Nisan 2013 Eğitim Kataloğu 8 Nisan 2013 Sedona, yazılım firmalarına ve büyük çaplı organizasyonların bilişim departmanlarına organizasyonel yapılanma, yöneticilik, takım çalışması ve kalite süreçleri alanlarında

Detaylı

MerSis. Bilgi Teknolojileri Bağımsız Denetim Hizmetleri

MerSis. Bilgi Teknolojileri Bağımsız Denetim Hizmetleri MerSis Bağımsız Denetim Hizmetleri risklerinizin farkında mısınız? bağımsız denetim hizmetlerimiz, kuruluşların Bilgi Teknolojileri ile ilgili risk düzeylerini yansıtan raporların sunulması amacıyla geliştirilmiştir.

Detaylı

SİSTEM ANALİZİ ve TASARIMI. ÖN İNCELEME ve FİZİBİLİTE

SİSTEM ANALİZİ ve TASARIMI. ÖN İNCELEME ve FİZİBİLİTE SİSTEM ANALİZİ ve TASARIMI ÖN İNCELEME ve FİZİBİLİTE Sistem Tasarım ve Analiz Aşamaları Ön İnceleme Fizibilite Sistem Analizi Sistem Tasarımı Sistem Gerçekleştirme Sistem Operasyon ve Destek ÖN İNCELEME

Detaylı

DOKÜMANLARIN KONTROLÜ PROSEDÜRÜ Doküman No: Yürürlük Tarihi: Revizyon Tarih/No:

DOKÜMANLARIN KONTROLÜ PROSEDÜRÜ Doküman No: Yürürlük Tarihi: Revizyon Tarih/No: 1. AMAÇ Bu prosedürün amacı, İç Kontrol Sistemi içinde bulunan tüm dokümanların hazırlanması, onaylanması, yayını, sürdürülmesi, güncelleştirilmesi ve dağıtım esasları için yöntem ve sorumlulukları belirlemektir.

Detaylı

Öğrenim Kazanımları Bu programı başarı ile tamamlayan öğrenci;

Öğrenim Kazanımları Bu programı başarı ile tamamlayan öğrenci; Image not found http://bologna.konya.edu.tr/panel/images/pdflogo.png Ders Adı : İNGİLİZCE 2 Ders No : 0010080015 Teorik : 3 Pratik : 0 Kredi : 0 ECTS : 3 Ders Bilgileri Ders Türü Öğretim Dili Öğretim Tipi

Detaylı

TS EN ISO 9241-151 EŞLEŞTİRME LİSTESİ

TS EN ISO 9241-151 EŞLEŞTİRME LİSTESİ Kriter No Kriter Başlığı Rehber İlke Başlığı A 6. Üst Düzey Tasarım Kararları ve Tasarım Stratejisi 6.1 Genel özellikler 6.2 Web uygulamasının amacının belirginliği 3.10.1. Kurumsal Bilgiler 1.3.2. Kullanıcıların

Detaylı

Uluslararası Finansal Raporlama Standartlarının İlk Uygulaması

Uluslararası Finansal Raporlama Standartlarının İlk Uygulaması UFRS 1 Standarda (standardın ilgili paragraflarına referans verilmiştir) UFRS 1.20A UFRS 1.25B Uluslararası Finansal Raporlama Standartlarının İlk Uygulaması Kontrol listesinin bu kısmı, bir işletmenin

Detaylı

ÇELİKEL A.Ş. Bilgi Güvenliği Politikası

ÇELİKEL A.Ş. Bilgi Güvenliği Politikası Sayfa 1/6 1. Amaç / Genel Bu doküman, Kuruluştaki ISO/IEC 27001 Bilgi Güvenliği Yönetim Sistemi kapsamındaki tüm bilgi varlıklarının güvenliğinin sağlanması, BGYS nin kurulması, işletilmesi, sürdürülmesi

Detaylı

Yaş Doğrulama Metotları

Yaş Doğrulama Metotları Yaş Doğrulama Metotları Yrd. Doç. Dr. Aysun GÜMÜŞ Ondokuzmayıs Üniversitesi, Fen Edebiyat Fakültesi, Biyoloji Bölümü, Samsun Birçok kemikleşmiş yapı günlük ve yıllık periyodik birikimler oluşturmak suretiyle

Detaylı

Sistem Geliştirme Yaşam Döngüsü (The Systems Development Life Cycle) (SDLC)

Sistem Geliştirme Yaşam Döngüsü (The Systems Development Life Cycle) (SDLC) Sistem Geliştirme Yaşam Döngüsü (The Systems Development Life Cycle) (SDLC) Sistem analistlerinin ve kullanıcı faaliyetlerinin spesifik döngüsünün kullanılmasıyla En iyi geliştirilmiş sistemin oluşmasını

Detaylı

Özdeğerlendirme Raporu ve MÜDEK Değerlendirmesi Aşamaları

Özdeğerlendirme Raporu ve MÜDEK Değerlendirmesi Aşamaları ve MÜDEK Değerlendirmesi Aşamaları 10 Mayıs 2014 Mövenpick Hotel, Ankara Sunum İçeriği o İçeriği o Hazırlanması o Uyarılar MÜDEK Değerlendirmesi Aşamaları o Ziyaret Öncesi Aşaması o Kurum Ziyareti Aşaması

Detaylı

Türkiye Sosyoekonomik Statü Endeksi Geliştirme Projesi. Proje Yürütücüsü Yrd. Doç. Dr. Lütfi Sunar İstanbul Üniversitesi Sosyoloji Bölümü

Türkiye Sosyoekonomik Statü Endeksi Geliştirme Projesi. Proje Yürütücüsü Yrd. Doç. Dr. Lütfi Sunar İstanbul Üniversitesi Sosyoloji Bölümü Türkiye Sosyoekonomik Statü Endeksi Geliştirme Projesi Proje Yürütücüsü Yrd. Doç. Dr. Lütfi Sunar İstanbul Üniversitesi Sosyoloji Bölümü Projenin Konusu, Amacı ve Anahtar Kelimeler Projemizin Konusu: Türkiye

Detaylı

SÜREÇ YÖNETİM PROSEDÜRÜ

SÜREÇ YÖNETİM PROSEDÜRÜ 1.0 AMAÇ Ahi Evran Üniversitesi nde uygulanacak süreç yönetim sistemi ile ilgili temel esasları tanımlamaktır. 2.0 KAPSAM Ahi Evran Üniversitesi nin stratejik amaç ve hedefleri doğrultusunda yürütmüş olduğu

Detaylı

1.Yazılım Geliştirme Metotları 1

1.Yazılım Geliştirme Metotları 1 1.Yazılım Geliştirme Metotları 1 1.1 Klasik Çevrim(Waterfall) 1.2 V Modeli 1.3 Prototipleme/Örnekleme 1.4 Spiral Model 1.5 Evrimsel Geliştirme 1.6 Evrimsel Prototipleme 1.7 Artımlı Geliştirme 1.8 Araştırmaya

Detaylı

TTB-HUV SUNUMU. Dr. RAİF KAYA

TTB-HUV SUNUMU. Dr. RAİF KAYA TTB-HUV SUNUMU Dr. RAİF KAYA TTB-AÜT Neden HUV Oldu? Asgari Ücret Tarifesi (AÜT), yıllardan beri Türk Tabipleri Birliği tarafından 6023 sayılı TTB yasası ile belirlenen yetkiler kapsamında hazırlanan ve

Detaylı

2. Klasik Kümeler-Bulanık Kümeler

2. Klasik Kümeler-Bulanık Kümeler 2. Klasik Kümeler-Bulanık Kümeler Klasik Küme Teorisi Klasik kümelerde bir nesnenin bir kümeye üye olması ve üye olmaması söz konusudur. Bu yaklaşıma göre istediğimiz özelliğe sahip olan bir birey, eleman

Detaylı

ISO 13485:2016 TIBBİ CİHAZLAR KALİTE YÖNETİM SİSTEMİ GEÇİŞ KILAVUZU

ISO 13485:2016 TIBBİ CİHAZLAR KALİTE YÖNETİM SİSTEMİ GEÇİŞ KILAVUZU ISO 13485:2016 TIBBİ CİHAZLAR KALİTE YÖNETİM SİSTEMİ GEÇİŞ KILAVUZU Dünyaca kabul görmüş medikal cihazlar endüstrisi kalite yönetim sistemi standardı olan ISO 13485'in final versiyonu Şubat 2016 da yayınlandı.

Detaylı

Rapor Hazırlama Kuralları

Rapor Hazırlama Kuralları Temel Bilgiler 1. Temel Bilgiler Rapor Hazırlama Kuralları Rapor hazırlamada, bu belge ile birlikte bulunan rapor örneği sitili kullanılabilir. Bu kalıp stil seçildiğinde, sayfa düzeni, paragraf yapıları

Detaylı

TUİK Netsis Erp Paketi Entegrasyonu ve Yıllık İş İstatistikleri Sanayi ve Hizmet Araştırması (YSHİ) Anketi

TUİK Netsis Erp Paketi Entegrasyonu ve Yıllık İş İstatistikleri Sanayi ve Hizmet Araştırması (YSHİ) Anketi TUİK Netsis Erp Paketi Entegrasyonu ve Yıllık İş İstatistikleri Sanayi ve Hizmet Araştırması (YSHİ) Anketi Uygulamanın Amacı Uygulama amacı, Netsis Erp paketi ile bağlantı kurarak Türkiye İstatistik kurumu

Detaylı

Program Koordinatörü Bilim, Sanayi ve Teknoloji Bakanlığı

Program Koordinatörü Bilim, Sanayi ve Teknoloji Bakanlığı Onuncu Kalkınma Planı (2014-2018) KAMU ALIMLARI YOLUYLA TEKNOLOJİ GELİŞTİRME VE YERLİ ÜRETİM PROGRAMI EYLEM PLANI Program Koordinatörü Bilim, Sanayi ve Teknoloji KASIM 2014 KAMU ALIMLARI YOLUYLA TEKNOLOJİ

Detaylı

Mentor Eğiticisi Çağrısı

Mentor Eğiticisi Çağrısı TÜBİTAK TEKNOLOJİ VE YENİLİK DESTEK PROGRAMLARI BAŞKANLIĞI (TEYDEB) 1601 TÜBİTAK YENİLİK VE GİRİŞİMCİLİK ALANLARINDA KAPASİTE ARTIRILMASINA YÖNELİK DESTEK PROGRAMI Mentor Eğiticisi Çağrısı Bu çağrı duyurusu,

Detaylı

YAZILIM MÜHENDİSLİĞİNİN TEMELLERİ 9.Hafta. Bakım

YAZILIM MÜHENDİSLİĞİNİN TEMELLERİ 9.Hafta. Bakım YAZILIM MÜHENDİSLİĞİNİN TEMELLERİ 9.Hafta Bakım Bölüm Hedefi Geliştirilen yazılımın uygulamaya alınabilmesi için gerekli yöntemler ve yazılımın çalışması sırasında yapılması gereken bakım işlemleri bu

Detaylı

CMMI. CMMI ve Çevik Yöntemler. Orhan KALAYCI Haziran 2007. Yazılım Süreç Kalitesi ve Yönetim Danışmanlığı. www.nitelik.

CMMI. CMMI ve Çevik Yöntemler. Orhan KALAYCI Haziran 2007. Yazılım Süreç Kalitesi ve Yönetim Danışmanlığı. www.nitelik. CMMI ve Çevik Yöntemler Orhan KALAYCI Haziran 2007 http:// CMMI 2 1 XP 3 CMMI nedir? 1. Seviye 2. Seviye 3. Seviye 4 2 XP Nedir? MSF XP Şelale RUP 5 CMM XP İlişkisi 6 3 PROJE YONETİMİNİ İMİNİN EVRİMSEL

Detaylı

T.C. DOKUZ EYLÜL ÜNİVERSİTESİ FEN FAKÜLTESİ BİLGİSAYAR BİLİMLERİ BÖLÜMÜ. BİL4007 Bitirme Projesi Uygulama Planı

T.C. DOKUZ EYLÜL ÜNİVERSİTESİ FEN FAKÜLTESİ BİLGİSAYAR BİLİMLERİ BÖLÜMÜ. BİL4007 Bitirme Projesi Uygulama Planı T.C. DOKUZ EYLÜL ÜNİVERSİTESİ FEN FAKÜLTESİ BİLGİSAYAR BİLİMLERİ BÖLÜMÜ BİL4007 Bitirme Projesi Uygulama Planı 1. GİRİŞ Bu doküman, Dokuz Eylül Üniversitesi Fen Fakültesi Bilgisayar Bilimleri Bölümü ndeki

Detaylı

Doğal Gaz Dağıtım Sektöründe Kurumsal Risk Yönetimi. Mehmet Akif DEMİRTAŞ Stratejik Planlama ve Yönetim Sistemleri Müdürü İGDAŞ 29.05.

Doğal Gaz Dağıtım Sektöründe Kurumsal Risk Yönetimi. Mehmet Akif DEMİRTAŞ Stratejik Planlama ve Yönetim Sistemleri Müdürü İGDAŞ 29.05. Doğal Gaz Dağıtım Sektöründe Kurumsal Risk Yönetimi Mehmet Akif DEMİRTAŞ Stratejik Planlama ve Yönetim Sistemleri Müdürü İGDAŞ 29.05.2013 İÇERİK Risk, Risk Yönetimi Kavramları Kurumsal Risk Yönetimi (KRY)

Detaylı

SİSTEM ANALİZİ VE TASARIMI

SİSTEM ANALİZİ VE TASARIMI SİSTEM ANALİZİ VE TASARIMI BİLGİ SİSTEMİ GELİŞTİRME SÜRECİ Sistem Geliştirme Süreci ve Modelleri Sistem Geliştirme Yaşam Döngüsü Bilgi sistemlerinin geliştirilmesi için izlenen sürece Sistem Geliştirme

Detaylı

İSG Hizmet Yönetim Rehberi

İSG Hizmet Yönetim Rehberi İSG Hizmet Yönetim Rehberi Çalışma ve Sosyal Güvenlik Bakanlığı İŞ SAĞLIĞI VE GÜVENLİĞİ GENEL MÜDÜRLÜĞÜ 0. TEMEL YAKLAŞIM 2 0.1. GENEL 2 0.2. PROSES YAKLAŞIMI 2 0.3. RİSK TEMELLİ (BAZLI) YAKLAŞIM 2 0.4.

Detaylı

İŞ SÜREKLİLİĞİ YÖNETİM SİSTEMİ İÇİN KRİTİK BAŞARI FAKTÖRLERİ

İŞ SÜREKLİLİĞİ YÖNETİM SİSTEMİ İÇİN KRİTİK BAŞARI FAKTÖRLERİ İŞ SÜREKLİLİĞİ YÖNETİM SİSTEMİ İÇİN KRİTİK BAŞARI FAKTÖRLERİ Ali Dinçkan, BTYÖN Danışmanlık İş sürekliliği, kurumun kritik süreçlerinin belirlenmesi, bu süreçlerin sürekliliği için gerekli çalışmaların

Detaylı

TEZSİZ YÜKSEK LİSANS PROJE ONAY FORMU

TEZSİZ YÜKSEK LİSANS PROJE ONAY FORMU iii TEZSİZ YÜKSEK LİSANS PROJE ONAY FORMU Eğitim Bilimleri Anabilim Dalı, Eğitim Yönetimi, Teftişi, Planlaması ve Ekonomisi Bilim Dalı öğrencisi Rabia HOŞ tarafından hazırlanan " Okul Öncesi Eğitim Kurumlarında

Detaylı

KALİTE FONKSİYON DAĞILIMI QUALITY FUNCTION DEPLOYMENT (QFD)

KALİTE FONKSİYON DAĞILIMI QUALITY FUNCTION DEPLOYMENT (QFD) KALİTE FONKSİYON DAĞILIMI QUALITY FUNCTION DEPLOYMENT (QFD) Yaşar ERAYMAN YÜKSEL FEN BİLİMLERİ ENSTİTÜSÜ TEKSTİL MÜHENDİSLİĞİ ANABİLİM DALI SEMİNER MAYIS 2017 Giriş Kalite Fonksiyon Dağılımı (QFD), ürün

Detaylı

İŞLETME RİSK YÖNETİMİ. Yrd. Doç. Dr. Tülay Korkusuz Polat 1/30

İŞLETME RİSK YÖNETİMİ. Yrd. Doç. Dr. Tülay Korkusuz Polat 1/30 İŞLETME RİSK YÖNETİMİ Yrd. Doç. Dr. Tülay Korkusuz Polat 1/30 Risk Yönetim Süreçleri 2/30 Risk yönetim modeli sektöre, kuruluşun yönetim sistemine, tüm yaşam çevrim süreçlerine, ürünün yapısına bağlı olmakla

Detaylı

11.DERS Yazılım Testi

11.DERS Yazılım Testi 11.DERS Yazılım Testi 1 Yazılım Testi Bir programda hata bulma amacıyla icra edilen bir süreçtir. İyi bir test koşulu henüz ortaya çıkarılmamış bir hatayı tespit eden test koşuludur. Yazılım testinin önemi

Detaylı

BİRİM KURULU ve BİRİM YÖNETİM KURULU EVRAKI

BİRİM KURULU ve BİRİM YÖNETİM KURULU EVRAKI GİRİŞ Bu doküman Akademik Birimleri tarafından Elektronik Belge Yönetim Sistemi kapsamında kullanılabilir olan Kurul Karar Evrakları için yardım dokümanı niteliğinde hazırlanmıştır. Karar Evrakları, Akademik

Detaylı

PROGRAM ÇIKTILARI ÖĞRENME ÇIKTILARI

PROGRAM ÇIKTILARI ÖĞRENME ÇIKTILARI PROGRAM ÇIKTILARI ÖĞRENME ÇIKTILARI http://tyyc.yok.gov.tr/?pid=48 MÜDEK Program Çıktıları Program Çıktılarının Kapsaması Gereken Nitelikler i. Matematik, fen bilimleri ve ilgili mühendislik disiplinine

Detaylı

T. C. KAMU İHALE KURUMU

T. C. KAMU İHALE KURUMU T. C. KAMU İHALE KURUMU Elektronik İhale Dairesi KALİTE YÖNETİM SİSTEMİ BT Strateji Yönetimi BT Hizmet Yönetim Politikası Sürüm No: 5.0 Yayın Tarihi: 14.07.2014 444 0 545 2012 Kamu İhale Kurumu Tüm hakları

Detaylı

Etki Analizi: Genel Perspektif ve TEPAV Çalışmaları

Etki Analizi: Genel Perspektif ve TEPAV Çalışmaları Etki Analizi: Genel Perspektif ve TEPAV Çalışmaları Sibel Güven Ankara, 23 Şubat 2007 İçerik TEPAV ın Temel Amaçları Etki Analizi AB Sürecinde Etki Analizi TEPAV MOD Modelleme Çalışmaları TEPAV ın Temel

Detaylı

MerSis. Bilgi Teknolojileri Yönetimi Danışmanlık Hizmetleri

MerSis. Bilgi Teknolojileri Yönetimi Danışmanlık Hizmetleri MerSis Bilgi Teknolojileri Yönetimi Danışmanlık Hizmetleri Bilgi Teknolojileri risklerinize karşı aldığınız önlemler yeterli mi? Bilgi Teknolojileri Yönetimi danışmanlık hizmetlerimiz, Kuruluşunuzun Bilgi

Detaylı

T.C. MUĞLA SITKI KOÇMAN ÜNİVERSİTESİ EĞİTİM BİLİMLERİ ENSTİTÜSÜ

T.C. MUĞLA SITKI KOÇMAN ÜNİVERSİTESİ EĞİTİM BİLİMLERİ ENSTİTÜSÜ T.C. MUĞLA SITKI KOÇMAN ÜNİVERSİTESİ EĞİTİM BİLİMLERİ ENSTİTÜSÜ TEZ ÖNERİSİ HAZIRLAMA KILAVUZU MART, 2017 MUĞLA T.C. MUĞLA SITKI KOÇMAN ÜNİVERSİTESİ EĞİTİM BİLİMLERİ ENSTİTÜSÜ.... ANABİLİM DALI.... BİLİM

Detaylı

Proje İzleme: Neden gerekli?

Proje İzleme: Neden gerekli? Proje İzleme: Neden gerekli? Mantıksal Çerçeve Matrisinde İzleme Göstergeleri Raporlama Araçlar Müdahale Mantığı / Projenin Kapsamı MANTIKSAL ÇERÇEVE Objektif Şekilde Doğrulanabilir Başarı Göstergeleri

Detaylı

Onaylayan: Gen. Müdür Tarih: 28/9/2009 Versiyon: 1

Onaylayan: Gen. Müdür Tarih: 28/9/2009 Versiyon: 1 Tarih: 28/9/2009 DOKÜMANTE EDİLMİŞ KALİTE PROSEDÜRLERİ Belgelerin kontrolü Bu prosedürün amacı, kalite yönetim sisteminde yer alan tüm belge ve verilerin geliştirme, inceleme, onay ve dağıtım işlemleriyle

Detaylı

1. VERİ TABANI KAVRAMLARI VE VERİ TABANI OLUŞTUMA

1. VERİ TABANI KAVRAMLARI VE VERİ TABANI OLUŞTUMA BÖLÜM15 D- VERİ TABANI PROGRAMI 1. VERİ TABANI KAVRAMLARI VE VERİ TABANI OLUŞTUMA 1.1. Veri Tabanı Kavramları Veritabanı (DataBase) : En genel tanımıyla, kullanım amacına uygun olarak düzenlenmiş veriler

Detaylı

Hizmet Odaklı Mimariye Dayanan İş Süreçleri Yönetimi Sistemi

Hizmet Odaklı Mimariye Dayanan İş Süreçleri Yönetimi Sistemi Hizmet Odaklı Mimariye Dayanan İş Süreçleri Yönetimi Sistemi 04.11.2010 Mine Berker IBTech A.Ş. Gündem İş Süreçleri Yönetimi (BPM) Modeli Yaşam Döngüsü 1 BPM e Neden İhtiyaç Duyduk? BPM Çözüm Araçlarının

Detaylı

SİSTEM VE YAZILIM. o Bilgisayar sistemleri donanım, yazılım ve bunları işletmek üzere gerekli işlemlerden oluşur.

SİSTEM VE YAZILIM. o Bilgisayar sistemleri donanım, yazılım ve bunları işletmek üzere gerekli işlemlerden oluşur. SİSTEM VE YAZILIM o Bilgisayar sistemleri donanım, yazılım ve bunları işletmek üzere gerekli işlemlerden oluşur. o Yazılım, bilgisayar sistemlerinin bir bileşeni olarak ele alınmalıdır. o Yazılım yalnızca

Detaylı

BAĞIMSIZ PROJE DENETİMİNİN ESASLARI ve HESAP RAPORU HAZIRLANMASI

BAĞIMSIZ PROJE DENETİMİNİN ESASLARI ve HESAP RAPORU HAZIRLANMASI BAĞIMSIZ PROJE DENETİMİNİN ESASLARI ve HESAP RAPORU HAZIRLANMASI Bülent Akbas 1, Bilge Doran 2, Bilge Siyahi 1 1 Prof., Deprem ve Yapı Mühendisliği Ana Bilim Dalı, Gebze Teknik Üniversitesi, Gebze Kocaeli

Detaylı

Model Güdümlü Geliştirme ile Gömülü Kaynakların Yönetimi

Model Güdümlü Geliştirme ile Gömülü Kaynakların Yönetimi Model Güdümlü Geliştirme ile Gömülü Kaynakların Yönetimi Can Öz EGE ÜNİVERSİTESİ FEN BİLİMLERİ ENSTİTÜSÜ BİLGİSAYAR MÜHENDİSLİĞİ A.B.D. 1 İçerik Kaynak Yönetimi Problemi Kaynak Yönetimi Modellemesinin

Detaylı

T.C. Ege Üniversitesi Eğitim Fakültesi. Öğretmenlik Uygulaması ve Öğretmenlik Uygulaması-II Dersleri Kılavuzu. Şubat, 2015 İZMİR

T.C. Ege Üniversitesi Eğitim Fakültesi. Öğretmenlik Uygulaması ve Öğretmenlik Uygulaması-II Dersleri Kılavuzu. Şubat, 2015 İZMİR T.C. Ege Üniversitesi Eğitim Fakültesi Öğretmenlik Uygulaması ve Öğretmenlik Uygulaması-II Dersleri Kılavuzu Şubat, 2015 İZMİR T.C. Ege Üniversitesi Eğitim Fakültesi Öğretmenlik Uygulaması ve Öğretmenlik

Detaylı