Nesneye y - PowerPoint PPT Presentation

1 / 26
About This Presentation
Title:

Nesneye y

Description:

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. – PowerPoint PPT presentation

Number of Views:59
Avg rating:3.0/5.0
Slides: 27
Provided by: zle4
Category:
Tags: nesneye | object | pascal

less

Transcript and Presenter's Notes

Title: Nesneye y


1
Nesneye yönelIk analIz ve tasarima gIrIs
2
GIRIS
  • Nesneye Yönelik Analiz
  • Ele alinan problemdeki nesneleri (kavramlari)
    belirleyip tanimlama asamasi. Bu asamada amaç
    problemi çözmek degil, anlamaktir.
  • Nesneye Yönelik Tasarim
  • Yazilim asamasi için siniflar olusturulur.
    Siniflarin içerikleri (özellik ve davranislar) ve
    siniflar arasi iliskiler tam olarak tanimlanir.
  • Tasarim tamamlandiktan sonra nesneye yönelik bir
    programla dili ile kodlama yapilir.

3
BIR YAZILIMIN KALITESI
  • Kullanici Açisindan
  • Istenen isi dogru yapmasi
  • Kolay kullanilabilir olmasi
  • Gerektigi kadar hizli çalismasi
  • Sistem kaynaklarini asiri kullanmamasi
  • Saglam olmasi
  • Kolay güncellenebilir olmasi
  • Yazilim Gelistiren Açisindan
  • Bakimi kolay olmali
  • Proje yeterli bir sürede tamamlanmali
  • Modüller, yeni projelerde tekrar kullanilabilmeli
  • Gelistirme maliyeti düsük tutulabilmeli

4
NESNEYE YÖNELIK ANALIZ VE TASARIM NEDEN GEREKLI?
  • Problemler
  • Donanim maliyetleri azalirken yazilim maliyetleri
    artmakta
  • Yazilimlarin boyutlari ve karmasikliklari
    artmakta
  • Bakim maliyetleri çok yüksek
  • Donanim problemi çok azken, yazilim hatalari
    siklasmakta

5
NESNEYE YÖNELIK YÖNTEMIN YARARI
  • Insanlar günlük hayattaki kavramlari, konusma
    dili ile anlatirlar.
  • Programcilar, problemle ilgili kavram ve
    varliklari, programlama dili ile bilgisayara
    ifade etmeye çalisirlar.
  • Bunun için tasarim asamasinda, ifade etmeyi
    saglayacak modeller olusturulur. Nesneye yönelik
    yöntem, bu modellerin olusturulmasinda ve
    gerektiginde sistemin güncellenmesinde avantajlar
    saglar.

6
YAPISAL PROGRAMLAMA YÖNTEMI
  • BASIC, Pascal, C gibi diller destekler.
  • Öncelikle, sistemin yapmasi gereken is
    belirlenir.
  • Karmasik, büyük boyutlu isler ,daha küçük ve
    basit islere bölünerek gerçeklenir.
  • Gerçek dünyanin modellenmesi (soyutlama),
    fonksiyonlar ile yapilir.

7
NESNEYE YÖNELIK PROGRAMLAMA YÖNTEMI
  • Gerçek dünya, nesnelerden olusmaktadir.
  • Çözülecek problemi olusturan nesneler, gerçek
    dünyadaki yapilarina benzer sekilde bilgisayarda
    modellenmelidir (Soyutlama, nesneler ile
    yapilir).
  • Nesne
  • Özellikler (Nitelikler veya durum bilgileri)
  • Islemler (Davranislar ve yetenekler)

8
YÖNTEMLERIN DEGERLENDIRILMESI-1
  • Karmasik yapiyi fonksiyonlara bölmek
    programlamayi kolaylastirabilir ancak karmasiklik
    sadece boyutlara degil, birimler arasi iliskiler
    ve bilgi akisi karmasikligina da baglidir.
  • Gerçek dünya sadece fonksiyonlardan olusmaz.
    Sistemin gerçege yakin modelini yaratmak için
    yapisal yöntemler yetersiz kalir.

9
YÖNTEMLERIN DEGERLENDIRILMESI-2
  • Tasarimda verilerin yerine fonksiyonel yapinin
    agirlik kazanmasi, hatalar nedeniyle verilerin
    bozulma olasiligini arttirir. Veri gizleme
    olanaklari yapisal yöntemde kisitli olmasina
    karsin, nesneye yönelik yöntemde özel
    mekanizmalar bulunmaktadir. Ayrica veri ile
    islemlere verilen agirliklar nesneye yönelik
    yöntemde istenildigi gibi ayarlanabilir.
  • Sistemin ihtiyaçlarina cevap verecek boyut,
    kapasite ve kabiliyette veri yapilari, ancak
    nesneye yönelik yöntemle saglanabilir.
  • Güncellemeler gerektiginde, yeni eklentiler
    yapmak ve eski ögeleri yeni eklenen unsurlarla
    uyum içinde kullanmak yapisal programlamada
    oldukça zordur.

10
SONUÇ
  • Analiz ve tasarim süreçleri boyunca sorulmasi
    gereken soru Bu sistem ne is yapar? degil, Bu
    sistem hangi nesnelerden olusur? olmalidir.
  • Nesneye Yönelik yöntem ile
  • Gerçek dünya çok daha dogru ve gerçekçi bir
    sekilde modellenebilir.
  • Daha kaliteli yazilimlar olusturulabilir.
  • Günümüzün ve yakin gelecegin artan ihtiyaçlarina
    daha uygun, takim çalismasina yatkin çalisma,
    yönetme ve çözüm üretme olanaklari saglanabilir.

11
Unified Modeling Language (UML)BütünlesIk
Modelleme DIlI
12
YAZILIM MODELLENMESI
  • Model gerçegin basitlestirilmis halidir.
  • Model sayesinde anlasilmasi güç yazilimlari basit
    bir dille ifade edebiliriz. Bu da yazilimin
    anlasilmasini kolaylastirir, sistem
    gereksinimlerini ve davranislarini daha iyi
    anlamamizi ve hatalarimizi kolaylikla görüp en
    düsük seviyeye indirgememizi saglar.

13
UML NEDIR?
  • UML yazilim mühendisliginde nesneye yönelik
    sistemleri modellemede kullanilan açik standart
    olmus bir görsel modelleme dilidir.
  • Yazilim gelistirmenin çözümlemeden bakima kadar
    tüm asamalarinda ekipler ve bireyler arasindaki
    iletisimin düzgün yürütülmesi için
    kullanilmaktadir.
  • Yazilimin yasam döngüsü içinde farkli görev
    gruplarinin projeye ve sisteme farkli bakis
    açilari vardir. Bundan dolayi UML çesitli bakis
    açilarini ifade eden diyagramlar içermektedir
  • Çok zengin bir dil olmasindan dolayi, Yazilim
    Mühendisliginin bir çok yönden ihtiyaçlarini
    karsilamaktadir.

14
UMLNIN GELISIM SÜRECI
  • 1989-1994 yillari yazilim mühendisliginde metot
    savaslari olarak bilinen bir dönemdir. 90larin
    ortalarina dogru öne çikan 3 yöntem vardir.
  • Booch Yaraticisi Grady Boochdur. Tasarim ve
    gerçeklestirimde mükemmel.
  • OMT (Object Modelling Technology) Yaraticisi
    Jim Rumbaugh. Analiz ve veri yogunlugu çok olan
    sistemler için uygun
  • OOSE (Object Oriented Software Engineering)
    Yaraticisi Ivar Jacobson. Use-Case adi verilen
    güçlü bir teknik içeriyordu.
  • 1994-1995 yillarinda bu üç kisi (Üç Amigolar)
    Rational Firmasi çatisi altinda toplanip kendi
    yöntemlerinin olumlu taraflarini birlestirerek
    UMLyi gelistirdiler. 1997de OMG(Object
    Management Group) UMLyi sahiplendi ve açik
    standart olarak gelistirmeye basladi.

15
UMLNIN TARIHI
16
UMLYE NEDEN GEREK VAR?
  • Hatalarin kolaylikla fark edilip en düsük
    seviyeye indirgenmesi.(Risk, zaman, maliyet)
  • Yazilim üretiminde basari oraninin düsük olmasi.
    (16 )
  • Yazilimda paylasim önemlidir. Tüm ekibin ayni
    dili konusabilmesi gerekmektedir.
  • Sistemin tamamini basit bir dille ve görsellikle
    görebilmek ve tasarlayabilmek gerekli.
  • Modellenmis ve dokümante edilmis bir yazilimin
    tanitiminin kolay olmasi.
  • Yazilim kalitesini arttirma.

17
UMLNIN AVANTAJLARI-1
  • Kodlama kolayligi saglar.
  • Kullanilan tekrar kod sayisi ayirt edilebilir bu
    sayede verim saglanir.
  • Mantiksal hatalarin minimum seviyeye
    düsürülmesini saglar.
  • Gelistirme maliyetinin düsmesini saglar.
  • Resmin tamaminin görülmesini saglar.

18
UMLNIN AVANTAJLARI-2
  • UML diyagramlari ile yazilim tamamini
    görebilecegimiz için verimli bellek kullanimi
    saglanabilir.
  • Karmasik sistemlerde degisiklik yapmayi
    kolaylastirir.
  • UML ile dokümanlastirilmis kodlari düzenlemek
    daha az zaman alacaktir.
  • UML diyagramlarini kullanan yazilimcilar ayni
    dili konusacaklarindan kolay iletisim saglanir.

19
UML DIYAGRAMLARI
  • Use Case Diyagramlari (Kullanim Vakalari
    Diyagramlari)
  • Class Diyagramlari (Sinif Diyagramlari)
  • State Diyagramlari (Durum Diyagramlari)
  • Sequence Diyagramlari (Ardisil Diyagram)
  • Colloboration Diyagramlari (Etkilesim
    Diyagramlari)
  • Package Diyagramlari (Paket Diyagramlari)
  • Component Diyagramlari (Bilesen Diyagramlari)
  • Deployment Diyagramlari (Dagitim Diyagramlari)

20
USE CASE DIYAGRAMLARI
  • Analiz asamasinda Use Case Diyagramlari
    kullanilir.
  • Tasarim asamasinda ise modellerin 3 tipi ortaya
    konulur.
  • Sinif Diyagramlari
  • Durum Diyagramlari
  • Etkilesim Diyagramlari (Sequence ve Colloboration
    Diyagramlari)

21
USE CASE DIYAGRAMLARI
  • Sistemin çok basit bir sekilde modellenmesini ve
    islerin detayinin(senaryonun) metin olarak
    anlatilmasini içerir.
  • Aktörden gelen bazi isteklere karsi sistemin
    yaptigi aktiviteleri gösterir.
  • Gelismenin erken safhalarinda yapilandirilir.
  • Amaç
  • Sistemin içerigini belirtmek.
  • Sistemin gereksinimlerini elde etmek.
  • Sistemin mimarisini geçerli kilmak.
  • Analistler ve uzmanlar tarafindan gelistirilir.

22
USE CASE DIYAGRAMLARI BILESENLERI
  • Aktör
  • Aktörler genelde belirli bir rol ifade ederler.
  • Diger aktörlerle baglantili olabilirler bu
    baglanti bir ok ile gösterilir.
  • Sistem sinirlari disinda gösterilir.

23
USE CASE DIYAGRAMLARI BILESENLERI
Use case
  • Use case
  • Sistem fonksiyonelliginin büyük bir parçasini
    gösterir.
  • Diger bir use case ile genisletilebilir.
  • Diger bir use case içerebilir.
  • Sistem sinirlari içinde gösterilir.

24
USE CASE DIYAGRAMLARI BILESENLERI
  • Sistem siniri
  • Içerisinde sistemin ismi yazilidir.
  • Sistemin kapsamini gösterir.
  • Baginti iliskisi
  • Aktör ve use case ler arasindaki
  • bagintiyi gösteren çizgidir.

Sistem

25
USE CASE DIYAGRAMLARI BILESENLERI
  • Inclusion(içerme)Bu metotla bir use case
    içindeki adimlardan birini baska bir use case
    içinde kullanabiliriz.
  • Inclusion yöntemini kullanmak için ltltincludegtgt
    seklindeki bir ifade kullanilir.
  • Kullanmak istedigimiz use case 'ler arasina
    çektigimiz noktali çizginin üzerine ltltincludegtgt
    yazisini yazariz.
  • Extension(eklenti)
  • Bu metodla varolan bir Use Case 'e yeni yeni
    adimlar ekleyerek yeni use case 'ler yaratilir.
  • Inclusion'da oldugu gibi extension 'lari
    göstermek için yine use case 'ler arasina noktali
    çizgiler konur ve üzerine ltltextensiongtgt ibaresi
    yazilir.

26
USE CASE DIYAGRAMLARI BILESENLERI
  • Genelleme iliskisi
  • Özellesmis use case ile daha genel use case
    arasindaki iliskidir.
  • Özellesmis use case den temel use case e dogru
    bir ok ile gösterilir.
Write a Comment
User Comments (0)
About PowerShow.com