Sunum yükleniyor. Lütfen bekleyiniz

Sunum yükleniyor. Lütfen bekleyiniz

 Nesneye Yönelik Analiz : Ele alınan problemdeki nesneleri (kavramları) belirleyip tanımlama aşaması. Bu aşamada amaç problemi çözmek değil, anlamaktır.

Benzer bir sunumlar


... konulu sunumlar: " Nesneye Yönelik Analiz : Ele alınan problemdeki nesneleri (kavramları) belirleyip tanımlama aşaması. Bu aşamada amaç problemi çözmek değil, anlamaktır."— Sunum transkripti:

1

2  Nesneye Yönelik Analiz : Ele alınan problemdeki nesneleri (kavramları) belirleyip tanımlama aşaması. Bu aşamada amaç problemi çözmek değil, anlamaktır.  Nesneye Yönelik Tasarım : Yazılım aşaması için sınıflar oluşturulur. Sınıfların içerikleri (özellik ve davranışlar) ve sınıflar arası ilişkiler tam olarak tanımlanır. Tasarım tamamlandıktan sonra nesneye yönelik bir programla dili ile kodlama yapılır.

3  Kullanıcı Açısından İstenen işi doğru yapması Kolay kullanılabilir olması Gerektiği kadar hızlı çalışması Sistem kaynaklarını aşırı kullanmaması Sağlam olması Kolay güncellenebilir olması  Yazılım Geliştiren Açısından Bakımı kolay olmalı Proje yeterli bir sürede tamamlanmalı Modüller, yeni projelerde tekrar kullanılabilmeli Geliştirme maliyeti düşük tutulabilmeli

4 Problemler: Donanım maliyetleri azalırken yazılım maliyetleri artmakta Yazılımların boyutları ve karmaşıklıkları artmakta Bakım maliyetleri çok yüksek Donanım problemi çok azken, yazılım hataları sıklaşmakta

5  İnsanlar günlük hayattaki kavramları, konuşma dili ile anlatırlar.  Programcılar, problemle ilgili kavram ve varlıkları, programlama dili ile bilgisayara ifade etmeye çalışırlar.  Bunun için tasarım aşamasında, ifade etmeyi sağlayacak modeller oluşturulur. Nesneye yönelik yöntem, bu modellerin oluşturulmasında ve gerektiğinde sistemin güncellenmesinde avantajlar sağlar. Problem Uzayı Soyutlama Modelleme Gerçekleme Çözüm Uzayı Gerçek Dünya Programcı Bilgisayar

6  BASIC, Pascal, C gibi diller destekler.  Öncelikle, sistemin yapması gereken iş belirlenir.  Karmaşık, büyük boyutlu işler,daha küçük ve basit işlere bölünerek gerçeklenir.  Gerçek dünyanın modellenmesi (soyutlama), fonksiyonlar ile yapılır.

7  Gerçek dünya, nesnelerden oluşmaktadır.  Çözülecek problemi oluşturan nesneler, gerçek dünyadaki yapılarına benzer şekilde bilgisayarda modellenmelidir (Soyutlama, nesneler ile yapılır).  Nesne: Özellikler (Nitelikler veya durum bilgileri) İşlemler (Davranışlar ve yetenekler)

8  Karmaşık yapıyı fonksiyonlara bölmek programlamayı kolaylaştırabilir ancak karmaşıklık sadece boyutlara değil, birimler arası ilişkiler ve bilgi akışı karmaşıklığına da bağlıdır.  Gerçek dünya sadece fonksiyonlardan oluşmaz. Sistemin gerçeğe yakın modelini yaratmak için yapısal yöntemler yetersiz kalır.

9  Tasarımda verilerin yerine fonksiyonel yapının ağırlık kazanması, hatalar nedeniyle verilerin bozulma olasılığını arttırır. Veri gizleme olanakları yapısal yöntemde kısıtlı olmasına karşın, nesneye yönelik yöntemde özel mekanizmalar bulunmaktadır. Ayrıca veri ile işlemlere verilen ağırlıklar nesneye yönelik yöntemde istenildiği gibi ayarlanabilir.  Sistemin ihtiyaçlarına cevap verecek boyut, kapasite ve kabiliyette veri yapıları, ancak nesneye yönelik yöntemle sağlanabilir.  Güncellemeler gerektiğinde, yeni eklentiler yapmak ve eski öğeleri yeni eklenen unsurlarla uyum içinde kullanmak yapısal programlamada oldukça zordur.

10  Analiz ve tasarım süreçleri boyunca sorulması gereken soru “Bu sistem ne iş yapar?” değil, “Bu sistem hangi nesnelerden oluşur?” olmalıdır.  Nesneye Yönelik yöntem ile; Gerçek dünya çok daha doğru ve gerçekçi bir şekilde modellenebilir. Daha “kaliteli” yazılımlar oluşturulabilir. Günümüzün ve yakın geleceğin artan ihtiyaçlarına daha uygun, takım çalışmasına yatkın; çalışma, yönetme ve çözüm üretme olanakları sağlanabilir.

11

12  Model gerçeğin basitleştirilmiş halidir.  Model sayesinde anlaşılması güç yazılımları basit bir dille ifade edebiliriz. Bu da yazılımın anlaşılmasını kolaylaştırır, sistem gereksinimlerini ve davranışlarını daha iyi anlamamızı ve hatalarımızı kolaylıkla görüp en düşük seviyeye indirgememizi sağlar.

13  UML yazılım mühendisliğinde nesneye yönelik sistemleri modellemede kullanılan açık standart olmuş bir görsel modelleme dilidir.  Yazılım geliştirmenin çözümlemeden bakıma kadar tüm aşamalarında ekipler ve bireyler arasındaki iletişimin düzgün yürütülmesi için kullanılmaktadır.  Yazılımın yaşam döngüsü içinde farklı görev gruplarının projeye ve sisteme farklı bakış açıları vardır. Bundan dolayı UML çeşitli bakış açılarını ifade eden diyagramlar içermektedir  Çok zengin bir dil olmasından dolayı, Yazılım Mühendisliği’nin bir çok yönden ihtiyaçlarını karşılamaktadır.

14 yılları yazılım mühendisliğinde metot savaşları olarak bilinen bir dönemdir. 90’ların ortalarına doğru öne çıkan 3 yöntem vardır. Booch : Yaratıcısı Grady Booch’dur. Tasarım ve gerçekleştirimde mükemmel. OMT (Object Modelling Technology) : Yaratıcısı Jim Rumbaugh. Analiz ve veri yoğunluğu çok olan sistemler için uygun OOSE (Object Oriented Software Engineering) : Yaratıcısı Ivar Jacobson. Use-Case adı verilen güçlü bir teknik içeriyordu yıllarında bu üç kişi (Üç Amigolar) Rational Firması çatısı altında toplanıp kendi yöntemlerinin olumlu taraflarını birleştirerek UML’yi geliştirdiler. 1997’de OMG(Object Management Group) UML’yi sahiplendi ve açık standart olarak geliştirmeye başladı.

15

16  Hataların kolaylıkla fark edilip en düşük seviyeye indirgenmesi.(Risk, zaman, maliyet)  Yazılım üretiminde başarı oranının düşük olması. (%16 )  Yazılımda paylaşım önemlidir. Tüm ekibin aynı dili konuşabilmesi gerekmektedir.  Sistemin tamamını basit bir dille ve görsellikle görebilmek ve tasarlayabilmek gerekli.  Modellenmiş ve dokümante edilmiş bir yazılımın tanıtımının kolay olması.  Yazılım kalitesini arttırma.

17  Kodlama kolaylığı sağlar.  Kullanılan tekrar kod sayısı ayırt edilebilir bu sayede verim sağlanır.  Mantıksal hataların minimum seviyeye düşürülmesini sağlar.  Geliştirme maliyetinin düşmesini sağlar.  Resmin tamamının görülmesini sağlar.

18  UML diyagramları ile yazılım tamamını görebileceğimiz için verimli bellek kullanımı sağlanabilir.  Karmaşık sistemlerde değişiklik yapmayı kolaylaştırır.  UML ile dokümanlaştırılmış kodları düzenlemek daha az zaman alacaktır.  UML diyagramlarını kullanan yazılımcılar aynı dili konuşacaklarından kolay iletişim sağlanır.

19  Use Case Diyagramları (Kullanım Vakaları Diyagramları)  Class Diyagramları (Sınıf Diyagramları)  State Diyagramları (Durum Diyagramları)  Sequence Diyagramları (Ardışıl Diyagram)  Colloboration Diyagramları (Etkileşim Diyagramları)  Package Diyagramları (Paket Diyagramları)  Component Diyagramları (Bileşen Diyagramları)  Deployment Diyagramları (Dağıtım Diyagramları)

20  Analiz aşamasında Use Case Diyagramları kullanılır.  Tasarım aşamasında ise modellerin 3 tipi ortaya konulur. 1. Sınıf Diyagramları 2. Durum Diyagramları 3. Etkileşim Diyagramları (Sequence ve Colloboration Diyagramları)

21  Sistemin çok basit bir şekilde modellenmesini ve islerin detayının(senaryonun) metin olarak anlatılmasını içerir.  Aktörden gelen bazı isteklere karşı sistemin yaptığı aktiviteleri gösterir.  Gelişmenin erken safhalarında yapılandırılır.  Amaç Sistemin içeriğini belirtmek. Sistemin gereksinimlerini elde etmek. Sistemin mimarisini geçerli kılmak.  Analistler ve uzmanlar tarafından geliştirilir.

22  Aktör Aktörler genelde belirli bir rol ifade ederler. Diğer aktörlerle bağlantılı olabilirler bu bağlantı bir ok ile gösterilir. Sistem sınırları dışında gösterilir.

23  Use case Sistem fonksiyonelliğinin büyük bir parçasını gösterir. Diğer bir use case ile genişletilebilir. Diğer bir use case içerebilir. Sistem sınırları içinde gösterilir. Use case

24  Sistem sınırı İçerisinde sistemin ismi yazılıdır. Sistemin kapsamını gösterir.  Bağıntı ilişkisi Aktör ve use case ler arasındaki bağıntıyı gösteren çizgidir. Sistem *

25  Inclusion(içerme) Bu metotla bir use case içindeki adımlardan birini başka bir use case içinde kullanabiliriz. Inclusion yöntemini kullanmak için > şeklindeki bir ifade kullanılır. Kullanmak istediğimiz use case 'ler arasına çektiğimiz noktalı çizginin üzerine > yazısını yazarız.  Extension(eklenti) Bu metodla varolan bir Use Case 'e yeni yeni adımlar ekleyerek yeni use case 'ler yaratılır. Inclusion'da olduğu gibi extension 'ları göstermek için yine use case 'ler arasına noktalı çizgiler konur ve üzerine > ibaresi yazılır. >

26  Genelleme ilişkisi: Özelleşmiş use case ile daha genel use case arasındaki ilişkidir. Özelleşmiş use case den temel use case e doğru bir ok ile gösterilir.


" Nesneye Yönelik Analiz : Ele alınan problemdeki nesneleri (kavramları) belirleyip tanımlama aşaması. Bu aşamada amaç problemi çözmek değil, anlamaktır." indir ppt

Benzer bir sunumlar


Google Reklamları