Sistem ve Yazılım Nedir?



Benzer belgeler
9.DERS Yazılım Geliştirme Modelleri

Yazılım Mühendisliği Bölüm - 2 Yazılım Geliştirme Yaşam Döngüsü. Cengiz GÖK

Bilgisayar Sistemleri; donanım, yazılım ve kullanıcılardan oluşur. Yazılım sadece belirli bir işlemi yapan bir program değildir. Yazılım belirli bir

Fırat Üniversitesi Teknoloji Fakültesi Yazılım Mühendisliği. YAZILIM MÜHENDİSLİĞİNİN TEMELLERİ-Hafta 2

Giriş: Temel Adımlar YAZILIM GELİŞTİRME YAŞAM DÖNGÜSÜ. Belirtim Yöntemleri. Belirtim Yöntemleri

Yazılım Nedir? Yazılım Mühendisi. Yazılım Mühendisliği. ACM/IEEE Etik Kodu. Etik Kural için Önsöz BIL 304 YAZILIM MÜHENDİSLİĞİ

YMT 505-Yazılım Proje Yönetimi Giriş- Temel Kavramlar

Yazılım Mühendisliği 1

YMT 312-Yazılım Tasarım ve Mimarisi Yazılım Mühendisliği ne Giriş

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

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

SİSTEM ANALİZİ VE TASARIMI

V Süreç Modeli. V Süreç Modeli. V Süreç Modeli. Helezonik Model. Helezonik(Spiral) Modeli BIL 304 YAZILIM MÜHENDİSLİĞİ

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

YMT312 Yazılım Tasarım ve Mimarisi

Yazılım Mühendisliği Bölüm - 3 Planlama. Cengiz GÖK

YAZILIM KAVRAMINA BİR BAKIŞ. Gürcan Banger Elektrik Yük. Müh. ESOGÜ - 9 Nisan 2007

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

Yazılım Geliştirme Modeli ve Mimariler. Bilgisayar Programcılığı Ön Lisans Programı YAZILIM MİMARİLERİ. Öğr. Gör. Yüksel KARAMAN

Yazılım Mühendisliği Bölüm - 3 Planlama

Sistem Analizi ve Planlama

WEB PROJESİ YÖNETİMİ. Belli bir süre içerisinde, belli bir bütçe ile belirlenen hedeflere ulaşmak için uygulanan metodolojik süreçtir.

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

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

ÖNSÖZ ŞEKİL LİSTESİ TABLO LİSTESİ

BLG Sistem Analizi ve Tasarımı. Öğr. Grv. Aybike ŞİMŞEK

Yazılım profesyonelleri için önemli olan yetkinlikler anketi Survey

Başarı Değerlendirme YAZILIM. Mühendisliğe Temel Bir Bakış. Yazılım Nedir? BIL 304 YAZILIM MÜHENDİSLİĞİ

YAZILIM MÜHENDİSLİĞİNİN TEMELLERİ 8.Hafta. Yazılım Doğrulama ve Geçerleme

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

TEKİM - Teknolojik ve Kurumsal İşbirliği Merkezi Bilgi ve İletişim Sistemleri Sanayi, Danışmanlık ve Ticaret Ltd. Sti. Adres (Merkez): Mustafa Kemal

Sistem Analizi ve. Tasarımı. Mustafa COŞAR

YAZILIM MODELLEME VE TASARIM

BM208- Nesneye Dayalı Analiz ve Tasarım. Öğr. Grv. Aybike ŞİMŞEK

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

BLM 426 YAZILIM MÜHENDİSLİĞİ BAHAR Yrd. Doç. Dr. Nesrin AYDIN ATASOY

Bilgi sistemlerinin geliştirilmesi için izlenen sürece, Sistem Geliştirme Yaşam Döngüsü (SGYD) denir.

11.DERS Yazılım Testi

BSM 532 KABLOSUZ AĞLARIN MODELLEMESİ VE ANALİZİ OPNET MODELER

SİSTEM MÜHENDİSLİĞİ TASARIMIN SENTEZLENMESİ II

Yrd. Doç. Dr. Ayça Tarhan. Hacettepe Üniversitesi Bilgisayar Mühendisliği Bölümü

aselsan Açık Pozisyonlar Bilgi Teknolojileri (BT) Denetçisi İç Denetçi

YAZILIM MİMARİLERİ DERSİ BİLGİSAYAR PROGRAMCILIĞI

Bilgi ve İletişim Teknolojileri (JFM 102) Ders 10. LINUX OS (Programlama) BİLGİ & İLETİŞİM TEKNOLOJİLERİ GENEL BAKIŞ

Y I L D I Z T E K N I K Ü N İ V E R S İ T E S İ MÜHENDİSLİĞİ

YZM 2108 Yazılım Mimarisi ve Tasarımı

Esnek Hesaplamaya Giriş

ETKİLEŞİMLİ TASARIM SÜRECİ VE TASARIM DİLLERİ ETKİLEŞİMLİ TASARIM NEDİR? GELENEKSEL YAZıLıM TASARıMı ILE

BİLGİ SİSTEMLERİNİN GELİŞTİRİLMESİ

IENG 227 Modern Üretim Yaklaşımları

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

... ROBOTİK VE KODLAMA EĞİTİMİ ÇERÇEVESİNDE ÖĞRETİM YILI BİLİŞİM TEKNOLOJİLERİ DERSİ ÜNİTELENDİRİLMİŞ YILLIK DERS PLANI

çalışmalara proje denilmektedir.

BİLİŞİM SİSTEMLERİ GÜVENLİĞİNDE YENİ EĞİLİMLER

Sistem Analizi ve Tasarımı DERS2

Sistem Mühendisliği. Prof. Dr. Ferit Kemal Sönmez

BENZERSİZ SORUNLARA BENZERSİZ ÇÖZÜMLER

TEKNİK ÇÖZÜMLERİ HAZIRLAMA REHBERİ

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

MESLEKİ EĞİTİM MALİ DESTEK PROGRAMI. Proje ve Projelere İlişkin Genel Kavramlar

Chapter 8 Yazılım Testi. Lecture 1. Chapter 8 Software testing

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

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

Elbistan Meslek Yüksek Okulu Güz Yarıyılı

Bilişim Teknolojileri Test ve Belgelendirme Hizmetleri. Mustafa YILMAZ

Karar Verme. Karar Verme ve Oyun Teorisi. Kararların Özellikleri. Karar Analizi

COBIT Bilgi Sistemleri Yönetimi. Şubat 2009

Bilgisayar Mühendisliği. Bilgisayar Mühendisliğine Giriş 1

Yazılım Yeniden Yapılamaya Yönelik Bir Kurumsal Mimari: Model Güdümlü ve Ontoloji Tabanlı Bir Yaklaşım

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

Bölüm 2 Yazılım Süreçleri. Ders 1

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ı

Bina Yaşam Döngüsü. Doç. Dr. Hakan YAMAN. Bina Yaşam Döngüsü Giriş. Bina Yaşam Döngüsü Tanımlar. İçerik Neler öğreneceksiniz?

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

Dersin Yürütülmesi Hakkında

CMMI ve Çevik Yöntemler

Çok İşlemcili Yapılarda Sinyal İşleme Yazılımlarının Geliştirilmesi Uygulaması. Sinan Doğan, Esra Beyoğlu

Bil101 Bilgisayar Yazılımı I. M. Erdem ÇORAPÇIOĞLU Bilgisayar Yüksek Mühendisi

ISSAI UYGULAMA GİRİŞİMİ 3i Programı

X. Çözüm Ortaklığı Platformu

EKAP Elektronik Kamu Alımları Platformu

Smart Work ile SüreS. reçlerinizi Daha Verimli Hale Getirin Yeşim MUTLU. WebSphere Ürün Müdürü

Bir yazılım geliştirme metodolojisi aşağıdaki adımlardan meydana gelir; Yazılım geliştirme sürecine destek verecek araçlar, modeller ve yöntemler.

Sistem Geliştirme Yaşam Döngüsü Yaklaşımına Alternatif Yaklaşımların Özellikleri, Avantaj ve Dezavantajları HİBRİT YAKLAŞIMLAR ALTERNATİF YAKLAŞIMLAR

BİLGİSAYAR PROGRAMLAMA MATLAB

YMH 114 YAZILIM MÜHENDİSLİĞİNİN TEMELLERİ

Bilindiği üzere Bilgi Güvenliği Yönetim Sistemi, bilgi ve bilgi varlıklarının

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

Bilindiği üzere Bilgi Güvenliği Yönetim Sistemi, bilgi ve bilgi varlıklarının

4. YAZILIM PROJELERİ YARIŞMASI REHBERİ ÖNSÖZ

100 % Özel Türk Şirketi

OTOBÜS İŞLETMESİ OTOMASYONU. Otobüs işletmesi Otomasyonu hazırlanırken takip edilen Yazılım Geliştirme Süreçleri yukarıda gösterilmiştir.

İleri Yazılım Mimarisi (SE 658) Ders Detayları

08225 AĞ TEMELLERĠ. Elbistan Meslek Yüksek Okulu GÜZ Yarıyılı. Öğr. Gör. Murat KEÇECĠOĞLU. 20 EKi Salı, Çarşamba

Varlık davranış modeli: Bu aşama her entity ye etki eden durumların tanımlandığı, modellendiği ve dokümante edildiği süreçtir.

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

PROJE YÖNETİMİNDE TEMEL KAVRAMLAR VE PROJE DÖNGÜSÜ YÖNETİMİ. Aydın Valiliği İl Gıda, Tarım ve Hayvancılık Müdürlüğü

BLM 426 YAZILIM MÜHENDİSLİĞİ BAHAR Yrd. Doç. Dr. Nesrin AYDIN ATASOY GENEL BİLGİLER

Gezgin Satıcı Probleminin İkili Kodlanmış Genetik Algoritmalarla Çözümünde Yeni Bir Yaklaşım. Mehmet Ali Aytekin Tahir Emre Kalaycı

Atılım Üniversitesi Bilgi & Đletişim Teknolojileri Müdürlüğü Canlı Hizmetteki Sunucu Sistemlerine Erişim Politikası

Transkript:

Sistem ve Yazılım Nedir? Bilgisayar Sistemleri; donanım, yazılım ve kullanıcılardan oluşur. Yazılım sadece belirli bir işlemi yapan bir program değildir. Yazılım belirli bir mantık dahilinde insanlar tarafından oluşturulan program, veri ve belgeler topluluğudur.

Veri Her tür yazılım mutlaka bir veri üzerinde çalışmak durumundadır. Veri dış ortamdan alınabileceği gibi, yazılım içerisinde de üretilebilir. Yazılımın temel amacı veri yi belirli algoritmalar kullanarak bilgi ye dönüştürmektir.

Program (kod) Yazılımın ana çıktısı sonuçta bir bilgisayar programıdır. Program işletime alındıktan sonra bakım çalışmaları sürekli olarak gündeme gelir. Bunun iki temel nedeni: hiç bir program bütünüyle her olasılık göz önüne alınarak test edilemez. işletmeler doğaları gereği dinamik bir yapıya sahiptir ve zaman içerisinde sürekli olarak yeni istek ve gereksinimler ortaya çıkabilmektedir.

Belge (dokümanlar) Yazılım üretimi bir mühendislik disiplini gerektirir. Mühendislik çalışmalarında izlenen yol ve kullanılan yaklaşımlar yazılım üretimi için de geçerlidir. Yazılım üretimi sırasında, bir çok aşamada (planlama, analiz, tasarım, gerçekleştirim, vb.) yapılan ara üretimlere ait bilgiler belli bir düzende belgelenmelidirler.

Yazılım Mühendisliği IEEE Tanımı (1993) Yazılım Mühendisliği: Sistemli, düzenli, ölçülebilir bir yaklaşımın yazılım geliştirmede, yazılımın işlenilmesinde ve bakımında uygulanmasıdır. Diğer bir deyişle mühendisliğin yazılıma uygulanmasıdır.

Yazılım Mühendisliği Yazılım mühendisliği bir yöntemler, teknikler ve araçlar kümesi olarak değerlendirilebilir. Yazılım mühendisliğinin hedefi; yazılım üretimindeki karmaşıklıkları gidermektir. Geçmişte kullanılan iş akış şemaları gibi yöntemler günümüzde yetersiz kalmaktadır. Ayrıca, yazılım üretimi işi tek kişinin başarabileceği boyuttan çıkmış ve bir takım işi biçimine dönüşmüştür.

Yazılım Mühendisi Yazılımın daha çok mantıksal boyutuyla ilgilenir ve işi insanlarla ilişkiyi gerektirir. Temel hedefi; üretimin en az maliyet ve en yüksek nitelikte yapılmasını sağlamaktır. Programcı değildir. Ancak programcının tüm yeteneklerine sahiptir. Sistem analisti de değildir. Farkı; analist sadece sistemin analiz aşaması ile ilgilenirken, yazılım mühendisi tüm aşamaların içindedir.

Yazılımda Kalite Üretim Süreci Boyunca ara ürünlere ilişkin kalite standartlarının geliştirilmesi ve geliştirme işlemlerinin bu standartlara uygunluğunun denetlenmesidir. Yazılım kalite sağlama etkinlikleriyle; Yazılım maliyetleri düşürülür, Yazılım üretiminin yönetimi kolaylaşır, Belgeleme ve standart sorunları giderilir.

Yazılım Geliştirme Yaşam Döngüsü ve Modeller Herhangi bir yazılımın, üretim aşaması ve kullanım aşaması birlikte olmak üzere geçirdiği tüm aşamalar olarak tanımlanır. Yazılım işlevleri ve ihtiyaçlar sürekli değiştiği ve geliştiği için bir döngü biçiminde düşünülür. Yazılım yaşam döngüleri tek yönlü, doğrusal olarak düşünülmemelidir.

Yazılım Yaşam Döngüsü Temel Adımları 1. Planlama Personel ve donanım gereksinimlerinin çıkarıldığı, fizibilite çalışmasının yapıldığı ve proje planının oluşturulduğu aşamadır. 2. Analiz Sistem gereksinimlerinin ve işlevlerinin ayrıntılı olarak çıkarıldığı aşama. Var olan işler incelenir, temel sorunlar ortaya çıkarılır. 3. Tasarım Belirlenen gereksinimlere yanıt verecek yazılım sisteminin temel yapısının oluşturulduğu aşamadır. mantıksal; önerilen sistemin yapısı anlatılır (akış şemaları) fiziksel; yazılımı içeren bileşenler ve bunların ayrıntıları (ekran tasarımları) 4. Gerçekleştirim Kodlama, test etme ve kurulum çalışmalarının yapıldığı aşamadır. 5. Bakım Hata giderme ve yeni eklentiler yapma aşaması (teslimden sonra).

Gelişigüzel Model Herhangi bir kuraldan bağımsız, yalnızca geliştiren kişiye bağımlı hatta onun bile bir zaman sonra anlayamadığı ve değiştirme zorluğu yaşadığı modeldir. 60 lı yıllarda tek kişinin ürettiği programlar böyledir. Basit öğrenci projeleri böyledir.

Barok Modeli İnceleme Analiz Tasarım Kodlama Modül Testleri Altsistem Testleri Sistem Testi Belgeleme Kurulum Yaşam döngüsü temel adımlarının doğrusal bir şekilde geliştirildiği model. 70 li yıllarda kullanılan model. Belgelemeyi ayrı bir süreç olarak ele alır, ve yazılımın geliştirilmesi ve testinden hemen sonra yapılmasının öngörür. Halbuki, günümüzde belgeleme yapılan işin doğal bir ürünü olarak görülmektedir. Aşamalar arası geri dönüşlerin nasıl yapılacağı tanımlı değil. Gerçekleştirim aşamasına daha fazla ağırlık veren bir model olup, günümüzde kullanımı önerilmemektedir

Çağlayan Modeli Gereksinimlerin Tanımlanması Sistem ve Yazılım Tasarımı Kodlama ve Modül test etme Birleştirme ve Sistemi test etme Sistemin Bakım ve İdamesi

Çağlayan Modeli Yaşam döngüsü temel adımları baştan sona en az bir kez izlenerek gerçekleştirilir. 70 li yılların ortalarında yapısal programlama ile kullanılmaya başlanan bu modelin kullanımı günümüzde azalmıştır. Belgeleme üretimin doğal bir sürecidir. İyi tanımlı projeler ve üretimi az zaman gerektiren projeler için uygundur. Belirsizlik oranı düşükse ve az zaman alacağı öngörülüyorsa (küçük boyutlu kamu sistemleri,personel,bütçe vb.) kullanımı önerilir.

Çağlayan Modelinin Sorunları Gerçek yaşamdaki projelerin çok azı yineleme gerektirmez Yazılımın kullanıcıya ulaşma zamanı oldukça uzundur. İhtiyaçların tamamını tanımlamak zordur, çoğunlukla sonradan ortaya çıkar. Bu nedenle yanlışların düzeltilme yada eksikleri giderilme maliyetleri oldukça yüksektir. Yazılım üretim ekipleri bir an önce program yazma, çalıştırma ve sonucu görme eğiliminde olduklarından, bu model ile yapılan üretimlerde ekip mutsuzlaşmakta ve kod yazma dışında kalan (ve iş yükünün %80 ini içeren) kesime önem vermemektedirler. Üst düzey yönetimlerin ürünü görme süresinin uzun oluşu, projenin bitmeyeceği ve sürekli gider merkezi haline geldiği düşüncesini yaygınlaştırmaktadır.

V Süreç Modeli Gereksinimler Sistem Sistem Tanımları KULLANICI MODELİ Bitmiş Sistem Sistem MİMARİ MODEL Sınanmış Sistem Altsistem Sınanmış Altsistem Modül Sınanmış Modül GERÇEKLEŞTİRİM MODELİ

V Süreç Modeli Sol taraf üretim, sağ taraf sınama işlemleridir. V süreç modelinin temel çıktıları; Kullanıcı Modeli: Geliştirme sürecinin kullanıcı ile olan ilişkileri tanımlanmakta ve sistemin nasıl kabul edileceğine ilişkin sınama belirtimleri ve planları ortaya çıkarılmaktadır. Mimari Model: Sistem tasarımı ve oluşacak alt-sistem ile tüm sistemin sınama işlemlerine ilişkin işlevler. Gerçekleştirim Modeli: Yazılım modüllerinin kodlanması ve sınanmasına ilişkin fonksiyonlar.

V Süreç Modeli Belirsizliklerin az, iş tanımlarının belirgin olduğu BT projeleri için uygun bir modeldir. Model, kullanıcının projeye katkısını arttırmaktadır. BT projesinin iki aşamalı olarak ihale edilmesi için oldukça uygundur: İlk ihalede kullanıcı modeli hedeflenerek, iş analizi ve kabul sınamalarının tanımları yapılmakta, İkinci ihalede ise ilkinde elde edilmiş olan kullanıcı modeli tasarlanıp, gerçekleştirilmektedir.

Helezonik (Spiral) Model Planlama Amaca, Alternatiflere ve Sınırlamalara karar verme onay ekseni Bir sonraki fazın planlanması ve kullanıcı değerlendirmesi Kullanıcı Değerlendirme Öninceleme Analizi Geliştirme Planı Birleştirme ve Test Planı Risk Analizi Risk Analizi Risk Analizi Prototip 1 Risk Analizi Prototip 2 Prototip 3 İşin Prototipi İşin Simulasyon ve Modelleme Genel Kavramı Yazılım Gereksinimi Ürün Detaylı Gereksinim Tasarımı Tasarım onaylama Kodlama Tasarımı test Etme ve onay Servis testi Kabul testi Modül Testi Birleştirme Risk Analizi Alternatifleri değerlendirme ve risk analizi Geliştirme ve bir sonraki ürünü onaylama Üretim

Helezonik Model Risk Analizi Olgusu ön plana çıkmıştır. Her döngü bir fazı ifade eder. Doğrudan tanımlama, tasarım,... vs gibi bir faz yoktur. Yinelemeli artımsal bir yaklaşım vardır. Prototip yaklaşımı vardır.

Helezonik Model 1. Planlama Üretilecek ara ürün için planlama, amaç belirleme, bir önceki adımda üretilen ara ürün ile bütünleştirme 2. Risk Analizi Risk seçeneklerinin araştırılması ve risklerin belirlenmesi 3. Üretim Ara ürünün üretilmesi 4. Kullanıcı Değerlendirmesi Ara ürün ile ilgili olarak kullanıcı tarafından yapılan sınama ve değerlendirmeler

Helezonik modelin avantajları 1. Kullanıcı Katkısı Üretim süreci boyunca ara ürün üretme ve üretilen ara ürünün kullanıcı tarafından sınanması temeline dayanır. Yazılımı kullanacak personelin sürece erken katılması ileride oluşabilecek istenmeyen durumları engeller. 2. Yönetici Bakışı Gerek proje sahibi, gerekse yüklenici tarafındaki yöneticiler, çalışan yazılımlarla proje boyunca karşılaştıkları için daha kolay izleme ve hak ediş planlaması yapılır. 3. Yazılım Geliştirici (Mühendis) Bakışı Yazılımın kodlanması ve sınanması daha erken başlar.

Evrimsel Geliştirme Modeli Eşzamanlı Aktiviteler Tanımlama İlk Sürüm Genel Tanımlama Geliştirme Ara Sürümler Test Etme Son Sürüm

Evrimsel Geliştirme Modeli İlk tam ölçekli modeldir. Coğrafik olarak geniş alana yayılmış, çok birimli organizasyonlar için önerilmektedir (banka uygulamaları). Her aşamada üretilen ürünler, üretildikleri alan için tam işlevselliği içermektedirler. Pilot uygulama kullan, test et, güncelle diğer birimlere taşı. Modelin başarısı ilk evrimin başarısına bağımlıdır.

Örnek Çok birimli banka uygulamaları. Önce sistem geliştirilir ve Şube-1 e yüklenir. Daha sonra aksaklıklar giderilerek geliştirilen sistem Şube-2 ye yüklenir. Daha sonra geliştirilen sistem Şube-3 e,. yüklenir. Belirli aralıklarla eski şubelerde de güncellemeler yapılır.

Artırımsal Geliştirme Modeli Üretilen her yazılım sürümü birbirini kapsayacak ve giderek artan sayıda işlev içerecek şekilde geliştirilir. Öğrencilerin bir dönem boyunca geliştirmeleri gereken bir programlama ödevinin 2 haftada bir gelişiminin izlenmesi (bitirme tezleri). Uzun zaman alabilecek ve sistemin eksik işlevlikle çalışabileceği türdeki projeler bu modele uygun olabilir. Bir taraftan kullanım, diğer taraftan üretim yapılır

Artırımsal Geliştirme Modeli Genel Gereksinim Belirlenmesi Gereksinimleri Artırımlara Bölme Sistem Mimarisini Tanımlama Sistem Artırılımının Yapılması Artırılımın Onaylanması Artırılımın Birleştirilmesi Sistemin Onaylanması Son Sistem Bitmemiş Sistem

Araştırma Tabanlı Model Yap-at prototipi olarak ta bilinir. Araştırma ortamları bütünüyle belirsizlik üzerine çalışan ortamlardır. Yapılan işlerden edinilecek sonuçlar belirgin değildir. Geliştirilen yazılımlar genellikle sınırlı sayıda kullanılır ve kullanım bittikten sonra işe yaramaz hale gelir ve atılır. Model-zaman-fiyat kestirimi olmadığı için sabit fiyat sözleşmelerinde uygun değildir.

Örnek Bir fizik deneyinin sonuçlarını değerlendirmek amacıyla kullanılan bir yazılımın geliştirilmesi Belirli bir matematiksel işlemi en hızlı yapan programın geliştirilmesi Veri şifreleme yazılımı geliştirilmesi Veri sıkıştırma yazılımı geliştirilmesi

Metodolojiler Metodoloji: Bir BT projesi ya da yazılım yaşam döngüsü aşamaları boyunca kullanılacak ve birbirleriyle uyumlu yöntemler bütünü. Bir metodoloji, bir süreç modelini ve belirli sayıda belirtim yöntemini içerir Günümüzdeki metodolojiler genelde Çağlayan ya da Helezonik modeli temel almaktadır

Bir Metodolojide Bulunması Gereken Temel Bileşenler (Özellikler) Konfigürasyon yönetim modeli Maliyet yönetim modeli Kalite yönetim modeli Risk yönetim modeli Proje yönetim modeli Değişiklik yönetim modeli Kullanıcı arayüz ve ilişki modeli Standartlar Ayrıntılandırılmış bir süreç modeli Ayrıntılı süreç tanımları İyi tanımlı üretim yöntemleri Süreçlerarası arayüz tanımları Ayrıntılı girdi tanımları Ayrıntılı çıktı tanımları

Bir Metodolojide Bulunması Gereken Temel Bileşenler Metodoloji bileşenleri ile ilgili olarak bağımsız kuruluşlar (IEEE, ISO, vs.) ve kişiler tarafından geliştirilmiş çeşitli standartlar ve rehberler mevcuttur. Kullanılan süreç modelleri ve belirtim yöntemleri zaman içinde değiştiği için standart ve rehberler de sürekli güncellenmektedir. Bir kuruluşun kendi metodolojisini geliştirmesi oldukça kapsamlı, zaman alıcı ve uzmanlık gerektiren bir faaliyet olup, istatistikler yaklaşık 50 kişi/ay lık bir iş gücü gerektirdiğini göstermektedir.