İşlevsel ve Nesne Yönelimli Metodoloji – Ödev Hazırlatma – Proje Yaptırma – Tez Yaptırma Fiyatları – Sunum Örnekleri – Ücretli Ödev Yaptırma – Ödev Yaptırma Ücretleri
İşlevsel ve Nesne Yönelimli Metodolojinin Temelleri
Bilgi Sistemi Geliştirmeye Geleneksel Yaklaşım
Yıllar boyunca sistem analizi ve tasarımı için birçok paradigma önerilmiştir. Erken yaklaşımlar işlevsel yaklaşımı savunmuştur. Bu yaklaşımı destekleyen yaygın metodolojiler SSA ve SSD’dir. SSA, sistemin işlevlerini, sistem içindeki veri depolarını, harici varlıkları ve bu bileşenler arasındaki veri akışlarını tanımlayan veri akış diyagramlarının (DFD’ler) kullanımına dayanır.
Erken SSA ve benzer metodolojiler, sistem analizinin işlevsel yönlerini vurguladı, bir şekilde yapısal yönleri, yani veri modelini ihmal etti. Bu, daha sonra ilişkisel bir veritabanı şemasına eşlenen veri modelinin bir diyagramını oluşturmak için kullanılan, genellikle varlık-ilişki (ER) modeli olan kavramsal bir veri modeli ile bu metodolojileri geliştirerek giderildi.
SSD, sistemin modülleri programlamak için bölünmesini ve ayrıca farklı modüllerin hiyerarşisini ve bunların arayüzlerini tanımlayan yapı çizelgelerinin (SC’ler) kullanımına dayanır. DFD’lerden SC’ler oluşturmak için belirli teknikler önerilmiştir.
İşlevsel analizin yapısal tasarımın takip ettiği bir yaklaşımın temel zorluğu, DFD’lerden SC’lere geçişte yatmaktadır. Bir yapıdan diğerine geçiş için çeşitli yönergelere ve kurallara rağmen, sorun bu metodolojiler tarafından çözülmemiştir.
Shoval, bu sorunu çözen ADISSA metodolojisini geliştirdi. Analiz aşamasında hiyerarşik DFD’ler kullanır (diğer fonksiyonel analiz metodolojilerine benzer şekilde), ancak tasarım, işlem tasarımına odaklanır. İşlem, bir iş işlevi gerçekleştiren ve bir olayın sonucu olarak tetiklenen bir kullanıcıyı destekleyen bir süreçtir. İşlemler sonunda uygulama programları haline gelecektir.
İşlemler tanımlanır ve DFD’lerden türetilir: Bir işlem, veri akışları yoluyla zincirlenen temel işlevlerden (yani alt işlevlere ayrıştırılmayan işlevlerden) oluşur; ve bu işlevlere bağlı veri depoları ve harici varlıklar. Bir işlem, tetikleyici görevi gören en az bir harici varlık içerir.
Her işlemin işlem mantığı, örneğin sözde kod gibi yapılandırılmış programlama teknikleri aracılığıyla tanımlanır. ADISSA, hiyerarşik DFD’lere ve işlemlere dayalı olarak, kullanıcı-sistem arayüzünü (menüler-ağacı), girdileri ve çıktıları (formlar ve raporlar), veritabanı şemasını ve işlemlerin ayrıntılı açıklamalarını tasarlamak için yapılandırılmış teknikler sağlar, sonunda uygulama programları haline gelecektir.
Menüler ağacı, kullanıcı varlıklarına bağlı fonksiyonlara dayalı yarı-algoritmik bir tarzda DFD’lerin hiyerarşisinden türetilir. Formların ve raporların tasarımı, kullanıcı varlıklarından temel işlevlere ve temel işlevlerden kullanıcı varlıklarına veri akışlarına dayanır. İlişkisel veritabanı şemasının tasarımı, veri depoları içindeki veri öğeleri arasındaki bağımlılıkların analizine dayanmaktadır.
Temel işlevlerden veri depolarına ve veri depolarından temel işlevlere giden veri akışları, ilişkiler üzerinde güncelleme ve geri alma işlemleri gibi erişim adımlarının tanımlanması için bir temel görevi görür. Erişim adımları, ilgili işlemlerin program koduna gömülecek SQL ifadeleri olarak ifade edilir. Tasarım aşamalarının ürünleri, çeşitli programlama ortamları kullanılarak kolaylıkla uygulanabilir.
Bilgi Sistemi Geliştirmede Nesneye Yönelik Yaklaşım
Nesne yönelimli (OO) programlama dillerinin geliştirilmesi, OO yaklaşımına ve bunun sistem analizi ve tasarımına girmesine yol açtı. 90’ların başında birçok OO metodolojisi geliştirilmiştir. OO yaklaşımında dünya, öznitelikleri (durumunu tanımlayan) ve davranışı (yöntemleri) olan nesnelerden oluşur; bunlar, nesneye dahil edilen verilere erişmenin tek yolunu oluşturur.
OO yaklaşımını kullanırken, sistem modeli genellikle aralarında yapısal ilişkiler olan veri sınıflarından, bilgi gizleme (kapsülleme), yazılımın yeniden kullanımı ve bakımını desteklediği için programlamada OO yaklaşımının avantajları hakkında hiçbir şüphe bulunmamakla birlikte, iş odaklı bilgi sistemlerini analiz etme yaklaşımının etkinliği konusunda şüpheler vardır (bunun aksine).
İlk OO metodolojileri, sistem analizinin işlevsellik yönünü ihmal etme eğilimindeydi ve uygulama işlevlerinin (işlemlerin) sınıf diyagramıyla nasıl bütünleştirileceğini açıkça göstermedi. Bu metodolojilerle ilgili diğer bir zorluk, standart olmayan birçok diyagram ve gösterim türünü içermeleriydi.
Nesne Tabanlı programlama C
Nesne TABANLI PROGRAMLAMA PDF
Nesne tabanlı programlama dilleri
Nesne Tabanlı PROGRAMLAMA
OOP
Nesne tabanlı programlama örnekleri
Nesne tabanlı PROGRAMLAMA Nedir
Nesne tabanlı PROGRAMLAMAYA Giriş
OO yaklaşımındaki diyagram türlerinin çokluğu, UML’yi geliştirmek için büyük bir motivasyon olmuştur. UML, standart (“birleşik”) bir modelleme dili sağlar. Bir sistemin farklı bakış açılarından sunulmasını sağlayan, iyi tanımlanmış semantik ve sözdizimine sahip çeşitli diyagram türlerinden oluşur.
Ancak UML, geliştiriciye nasıl yapılacağı ve hangi tekniklerin kullanılacağı konusunda yol gösteren bir geliştirme metodolojisi sunmaz. Ayrıca, bazı diyagram türleri gereksizdir ve sistem geliştirmede kullanılmaları gerekip gerekmediği ve ne zaman kullanılması gerektiği her zaman açık değildir (örneğin, sıra diyagramları ve işbirliği diyagramları).
Yaklaşımımız, sistem geliştirmenin iki paradigmasını entegre etmektir. Bize göre işlevler nesneler kadar temeldir, birbirini tamamlar ve bir geliştirme metodolojisi işlevsel ve nesne yönelimli yaklaşımları birleştirmelidir. FOOM, bu kombinasyonu sunan bir sistem analizi ve tasarım metodolojisidir.
METODOLOJİSİNİN TEMELLERİ
FOOM, işlevsel ve OO yaklaşımlarını birleştiren, iş odaklı bilgi sistemlerinin geliştirilmesi için entegre bir metodolojidir. Metodolojinin temel adımları aşağıdaki gibidir.
Analiz Aşaması
Analiz aşaması iki ana faaliyetten oluşur: veri analizi ve fonksiyonel analiz. Bu aşamanın ürünleri, bir ilk sınıf diyagramı biçiminde bir veri modeli ve hiyerarşik OO-DFD’ler biçiminde bir işlevsel modeldir.
İlk sınıf diyagramı, veri (varlık) sınıflarından, yani uygulama/kullanıcı gereksinimlerinden türetilen ve “gerçek dünya” verilerini içeren sınıflardan oluşur. Her sınıf, çeşitli türlerde nitelikler içerir (örneğin, atomik, çok değerli, kümeler ve referans nitelikler). Sınıflar arasındaki ilişki türleri arasında “düzenli” ilişkiler, üst ve alt sınıflar arasındaki genelleme-uzmanlaşma (miras) bağlantıları ve toplama-katılım (kısmı) bağlantıları yer alır.
İlişkiler, ilgili sınıflar arasındaki bağlantılarla ve bu sınıflara referans nitelikleriyle gösterilir. İlk sınıf diyagramı yöntemleri içermez; bunlar tasarım aşamasında eklenecektir. İlk sınıf diyagramının bir örneği gösterilmektedir.
OO-DFD’ler, sistemin işlevsel gereksinimlerini belirtir. Her OO-DFD, genel veya temel işlevlerden, harici varlıklardan – çoğunlukla kullanıcı varlıklarından, aynı zamanda zaman ve gerçek zamanlı varlıklardan, veri sınıflarından (geleneksel veri depoları yerine) ve bunlar arasındaki veri akışlarından oluşur.
Bir OO-DFD örneği gösterilmektedir; en üst düzey OO-DFD’dir. Çift daire ile gösterilen her genel işlev için, alt işlevlerini ve ilgili varlıkları ve sınıfları (gösterilmemiştir) ayrıntılandıran ayrı bir OO-DFD vardır.
Veri analizi ve fonksiyonel analiz herhangi bir sırada yapılabilir. İşlevsel analizle başlarken, analist kullanıcı gereksinimlerini ortaya çıkarır ve buna dayalı olarak veri depoları yerine (diğer bileşenlerin yanı sıra) veri sınıfını içeren OO-DFD’leri oluşturur. Ardından analist, OO-DFD’lerde zaten görünen sınıfları kullanarak bir başlangıç sınıf diyagramı oluşturabilir.
Bu, esas olarak uygun sınıf ilişkilendirmelerini ve niteliklerini tanımlamak anlamına gelir. Alternatif olarak, analist önce (kullanıcı gereksinimlerine dayalı olarak) bir başlangıç sınıf diyagramı oluşturabilir ve daha sonra önceden tanımlanmış sınıfları kullanarak OO-DFD’ler oluşturabilir.
Deneysel bir ortamda iki alternatif siparişin artılarını ve eksilerini araştırdık ve veri analizi ile başlayan bir analiz sürecinin daha iyi ürünler sağladığını ve analistler tarafından tercih edildiğini gördük. Her halükarda, analiz aşamasının iki ürünü, sınıf diyagramında görünen tüm sınıflar OO-DFD’lerde de görünecek şekilde senkronize edilir ve bunun tersi de geçerlidir.
Nesne TABANLI PROGRAMLAMA PDF Nesne Tabanlı PROGRAMLAMA Nesne Tabanlı programlama C Nesne tabanlı programlama dilleri Nesne tabanlı PROGRAMLAMA Nedir Nesne tabanlı programlama örnekleri Nesne tabanlı PROGRAMLAMAYA Giriş OOP