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



Benzer belgeler
NESNEYE YÖNELİK ÇÖZÜMLEME SÜRECİ

AHMET YESEVİ ÜNİVERSİTESİ BİLİŞİM SİSTEMLERİ VE MÜHENDİSLİK FAKÜLTESİ BİLGİSAYAR MÜHENDİSLİĞİ LİSANS DÖNEM ÖDEVİ

YAZILIM MODELLEME VE TASARIM

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

Yaz.Müh. Ders Notları 1

Yaz.Müh. Ders Notları 1

Yaz.Müh. Ders Notları 1

Yaz.Müh. Ders Notları 1

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

Tümleştirilmiş Süreçte (UP) Yazılım Projesi Aşamaları

BMH-405 YAZILIM MÜHENDİSLİĞİ

NESNEYE YÖNELİK TASARIM SÜRECİ

Doğrudan Borçlanma Sistemi

YAZILIM MODELLEME VE TASARIM

T.C KARABÜK ÜNİVERSİTESİ MÜHENDİSLİK FAKÜLTESİ BİLGİSAYAR MÜHENDİSLİĞİ

Yazılım Gereksinimlerinin Görsel Çözümlemeleri: UML (UnifiedModeling Language) Birleştirilmiş Modelleme Dili

Yaz.Müh. Ders Notları 2

YAZILIM MÜHENDİSLİĞİ Şubat 2012 Yrd.Doç.Dr. Yunus Emre SELÇUK GENEL BİLGİLER

UNICASE.... kapsamlı bir CASE* aracı. *

PARALOG POS AKTARIMLARI. Derece Yazılım 2009

KDV kısım numaraları Pos cihazındaki KDV departman numaralarına göre tanımlandıktan sonra F2-Kaydet butonu ile bu bölüm kayıt edilir.

Yaz.Müh. Ders Notları 1

NESNEYE YÖNELİK PROGRAMLAMA Unified Modelling Language (UML) Bütünleşik Modelleme Dili

AG DANIŞMANLIK HAKKINDA

TEMEL BANKACILIK BİLGİ FORMU

Sınıf Diyagramları Amaç: Sınıf Diyagramları Nasıl Çizilir?

FİNANSAL MUHASEBE [BAŞLANGIÇ DÜZEYİ] FİŞ-SMMM-FATURA-İRSALİYE.

YENİ NESİL ÖKC İLE ON-LİNE İŞLEMLER (Hugin / Profilo)

NESNEYE YÖNELİK PROGRAMLAMA. Yrd.Doç.Dr. Zeynep ORMAN

24 Mart İlgili Modül/ler : Transfer. İlgili Versiyon/lar : ETA:SQL, ETA:V.8-SQL

Turkcell İletişim Merkezleri (TİM)

SİNAN KARAGÖZ. Bilnex V3 Perakende Satış Yönetimi Farklı Para Birimlerine Göre Çalışma ve Para Üstü Hesaplama Yardım Dökümanı

İrsaliye Modülü Dizayn Dökümanı. Turquaz Muhasebe. Versiyon 0.2. Hüseyin Ergün. 16 Eylül 04

ARDIŞIL DİYAGRAM YAPI DİYAGRAMI. Sistem Analizi ve Tasarımı Dersi

LKS2. Kredi Kartı Uygulamaları

GİDERLERİN SAPTANMASI VE İZLENMESİ

18 Ekim Programlarımız ile Uyumlu Olan Yazar Kasa Modelleri. Profilo VX 680 E-1 Profilo YK-8200 Farex FR-8300 Telestar TLS-8100

VERİ KAYNAKLARI. Bilgi sisteminin öğelerinden biride veri

VAKIFBANK SANAL POS PANELİ KULLANICI KILAVUZU

DARA PLUS PARAKENDE MODULU

Bankalar Modülü Dizayn. Dökümanı. Turquaz Muhasebe. Versiyon 0.2. Önsel Armağan. 16 Eylül 04

08268 Muhasebe Teknik ve Ticari Yazılımlar. Genel Kavramlar

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

MOBİL YEMEK KARTI VE YEMEK SİPARİŞİ.

VEGA WEB SİPARİŞ PROGRAMI (Bu adres den giriş yaparak programı inceleyebilirsiniz )

GUSTOLOJİ ÖN MUHASEBE PROGRAMI

VERİ TABANI YÖNETİM SİSTEMLERİ Melih BÖLÜKBAŞI

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

DESTEK DOKÜMANI. Go Plus/Go 3 e-ihracat İşlemleri

YAZILIM MODELLEME VE TASARIM

Banka Kredi Takibi ve Kredi Geri Ödemeleri BANKA KREDİ TAKİBİ

1. E-TİCARETTE MAL ve HİZMET ALIP SATMAK 1.1. E- Ticaretin Ögeleri E-Posta Elektronik Firma (e-firma) Alıcı

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.

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

HESAPÇI. Küçük İşletmeler İçin Ticari Otomasyon Paketi Mikro Yazılımevi A.Ş.

EK 1: Türk Ekonomi Bankası A.Ş. Bireysel Müşteri Sözleşmesi, Kredi Kartı ve Banka Kartı Masraf, Komisyon ve Ücret Listesi* İŞLEM ÜCRETİ/ORANI

Yönetmelikler. tmmob makina mühendisleri odası. Yatırım Hizmetleri Yönetimi Mühendis Yetkilendirme Yönetmeliği

PERAKENDE SATIŞ PROGRAMI Versiyon 1.0

PIRLANTALI ÜRÜNLER EKSPERTİZ/İADE-DEĞİŞİM SÜRECİ PROSEDÜRÜ

MODÜLLER: CARİ KASA BANKA ÇEK/SENET STOK SATIN ALMA SATIŞ HIZLI SATIŞ

.. ÇOK PROGRAMLI LİSESİ ÖĞRETİM YILI BİLGİSAYARLI MUHASEBE ÜNİTELENDİRİLMİŞ YILLIK DERS PLANI

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

Süpermarketlere Özel Özel Geliştirilen

Kısaca. Müşteri İlişkileri Yönetimi. Nedir? İçerik. Elde tutma. Doğru müşteri Genel Tanıtım

Genel Sağlık Sigortası MEDULA KASIM-2006

DÜZCE ÜNİVERSİTESİ - BANK24 JET KART UYGULAMASI -

KOLAY SİPARİŞ TAKİBİ v4

EDI MIGROS (Sipariş) LOGO ENTEGRASYONU

1/5 T.C. BİLECİK ŞEYH EDEBALİ ÜNİVERSİTESİ EĞİTİM BİLİŞİM MATERYALLERİ DEĞERLENDİRME KOMİSYONU GÖREV VE YETKİLERİ HAKKINDA YÖNERGE

Bartın Kamu Hastaneleri Birliği Genel Sekreterliği

GENEL MUHASEBE I - II

HIZLI SATIŞ MODÜLÜ. Kullanıcıya Sunduğu İmkânlar Nelerdir?

1) Mal alımı faturasının kaydedilmesi ile faturada kullanılan stok ve cari kartları hangi taraflarından hareket görürler? Kısaca açıklayınız

Başlıca Ürün-Bilgi Sistemleri

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

BAYİ SİPARİŞ TAKİP SİSTEMİ (Analiz Raporu)

İçindekiler Tablosu Yazarkasa Aktarım Programı.....3

Veri Akış Diyagramı (VAD)

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

CUMHURİYET ÜNİVERSİTESİ İDARİ VE MALİ İŞLER DAİRE BAŞKANLIĞI HİZMET ENVANTERİ TABLOSU

BAY.t Entegre, KOBİ'lerin iş süreçlerinin her aşamasına cevap verecek, tüm modülleri entegre olan bilgi yönetim sistemidir.

VEGA. Hazır Giyim Mağazacılığı Programı YAZILIM. Birden fazla şubenin tek merkezden izlenmesi. Müşteriye özel Club Kart uygulanması

EPDAD Bütçe ve Mali İşler Yönetmeliği

ŞİRKET KREDİ KARTI BAŞVURU FORMU

TÜMLEŞİK MODELLEME DİLİ. UML (Unified Modeling Language)

Tüzel Kişiler İçin Banka Hizmetler Tarifesi

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

Veritabanı Tasarımı. Değişimi Modelleme: Ücret

BİLNEX YAZILIM. Bilnex POS v3 Satış Ekranı Destek Dökümanı

KOBİ ÜRÜNLERİ FİYAT LİSTESİ 1 Aralık 2010 tarihinden itibaren geçerlidir.

Tedarik Zincirinde Satın Alma ve Örgütsel İlişkiler

5. Merkez Bankası kendisine verilen görevleri teşkilatında yer alan aşağıdaki birimler ile şube vasıtası ile yerine getirir;

VERİ SİHİRBAZI. İşletmenizin Sihirli Değneği. VERİ SİHİRBAZI ile verilerinizi detaylı olarak inceleyebilir,

TEMEL BANKACILIK HİZMETLERİ TALEP ve BİLGİ FORMU TAHSİL EDİLECEK ÜCRET, MASRAF VE KOMİSYON

Piconn CHEF Cafe ve Restoran Otomasyonu

PARALOG POS ve YAZARKASA Aktarımları. Derece Yazılım 2009

11.DERS Yazılım Testi

SANAL POSLAR VE GÜVENLİK POLİTİKALARI. Yunus Emre SEYHAN Web Yazılım Uzmanı

Güvenlik tepki değil, bir stratejidir elektronik. ... Datapark Otopark Sistemi... a t i t e k

Transkript:

YAZILIM MÜHENDİSLİĞİ Şubat 2012 Yrd.Doç.Dr. Yunus Emre SELÇUK 1 NESNEYE YÖNELİK ÇÖZÜMLEMENİN TEMELLERİ Çözümleme (Analiz): Bir şeyi anlayabilmek için parçalarına ayırmak. Sistemi anlamaya yönelik çalışmalardan ve üst düzey planlama eylemlerinden oluşur. Uygulama/problem alanının anlaşılması. Kullanıcı gereksinimlerinin anlaşılması. Koddaki sınıflar ve nesneler ile bunların arasındaki üst düzey etkileşimlerin belirlenmesi: Çözümleme modelinin oluşturulması. Bir sorunu anlamadan çözemezsiniz. 2 Yaz.Müh.Ders Notları #4 1

UYGULAMA ALANININ ÇÖZÜMLENMESİ (DOMAIN ANALYSIS) Amaç, uygulama alanını anlamak ve elde edilen bilgileri analiz modeline taşımaktır. Uygulama alanı hakkında bilgi edinilebilecek kaynaklar: Teknik literatür Mevcut uygulamalar Müşteri anketleri Uzman tavsiyeleri Mevcut ve gelecekteki gereksinimler Problem alanı hakkında bilgi edinmeden müşterinin dilinden konuşamazsınız. 3 GEREKSİNİMLERİN BELİRLENMESİ Gereksinimler belgesi: Müşterinin programdan beklentilerini anlatan, doğal konuşma dili ile yazılmış belge. Örnek gereksinimler belgesi: NextGenPOS Perakende Satış Programı Eski yazılım ihtiyaçlarımızı karşılayamadığından, yenilenecek donanımla birlikte perakende satış programımızın da yenilenmesine gerek duyuyoruz. Program kasada yapılan alış-veriş işlemlerine yardımcı olmalıdır. Yapılan her işlem program tarafından saklanmalı; mali bilgiler harici bütçe sistemine, mal çıkış bilgileri ise harici envanter sistemine iletilmelidir. Saklanan işlemler üzerinde daha sonra raporlamalar ve analizler yapılabilmelidir. Sistem yapılan alış-verişler karşılığında müşteriye fiş vermelidir. Yapılan her satış için KDV de hesaplanarak ayrıca belirtilmelidir. Şirketimizin birden fazla şubesi olup tüm şubelerdeki işlemler merkezi sunucuya iletilmelidir. Doğal dille yazılmış gereksinimler belgesinden kullanım öykülerine geçiş yapılır. 4 Yaz.Müh.Ders Notları #4 2

GEREKSİNİMLERİN BELİRLENMESİ Kullanım öyküleri: Programın yapacağı işleri ayrıntılı adımlarla ve belli kurallara uyarak anlatan belgeler. Kullanım öykülerinin oluşturulmasındaki amaç: Ürünün sağlaması beklenen işlevleri ve ürünün çalışma ortamını belirlemek, Son kullanıcı ve yazılım ekibi arasında bir anlaşma zemini belirlemek, Son kullanıcı ve sistemin birbirleri ile nasıl etkileşimde bulunacağını açık ve belirsizlikten uzak olarak tanımlamak, Doğrulama testleri için bir zemin oluşturmak. Bir kullanım öyküsünün bölümleri: Giriş bölümü: Sistemin neyi hangi koşullar ve sınırlar içerisinde yapması gerektiğini anlatır. Ana senaryo / Ana başarılı akış: Her şeyin yolunda gitmesi halinde yürütülecek eylemler. Alternatif senaryolar: Bir aksilik olması halinde yapılacak işlemler. 5 KULLANIM ÖYKÜSÜ: Satış İşlemi Birincil Aktör: Kasiyer. İlgililer ve İlgi Alanları: Kasiyer: Doğru ve hızlı giriş ister, kasa açığı maaşından kesildiğinden ödeme hataları istemez Satıcı: Satış komisyonlarının güncellenmesini ister Müşteri: En az çaba ile hızlı hizmet ister. Vergi iadesinde veya mal iadesinde kullanmak üzere fiş ister. Ön Koşullar: Kasiyerin kimliği doğrulanır. Son Koşullar: Satış kaydedilir. KDV doğru olarak hesaplanır. Mali kayıtlar ve envanter kayıtları güncellenir. Komisyonlar kayıt edilir. Fiş yazılır. Ödeme emri onayları kaydedilir. Dikkat: Kullanım öyküsünde yer alacak her şey, verilen ilgi alanlarına giren şeyler olmalıdır. Aktör: Sistem ile etkileşimde bulunan varlıklar. İnsan Yazılım veya donanım. 6 Yaz.Müh.Ders Notları #4 3

KULLANIM ÖYKÜSÜ: Satış İşlemi Ana Öykü: 1. Müşteri kasaya alacağı mallarla gelir. 2. Kasiyer yeni bir satış işlemi başlatır. 3. Kasiyer ürünün barkodunu girer. 4. Sistem bir satış kanalı maddesi oluşturur. Bu maddede ürün tanımı, fiyatı ve toplam bedel (aynı maldan birden fazla alınmış olabilir) yer alır. 5. Kasiyer 3. ve 4. adımları müşterinin alacağı tüm mallar için tekrarlar. 6. Sistem toplam bedeli vergi iadesi ile birlikte hesaplar. 7. Kasiyer müşteriye toplamı bildirir ve ödeme ister. 8. Müşteri ödemeyi yapar ve sistem ödemeyi tahsil eder. 9. Sistem tamamlanan işlemin kaydını tutmayı tamamlar ve harici envanter ile mali sistemlere gerekli bilgileri gönderir. 10. Sistem makbuz verir. 11. Müşteri mallarla birlikte ayrılır. 7 KULLANIM ÖYKÜSÜ: Satış İşlemi Alternatif Öyküler: 3a. Geçersiz barkod 1. Sistem uyarı mesajı verir ve kayıt girişini reddeder. 3-7a. Müşteri bir kalem malı alışverişten çıkartmak ister. 1. Kasiyer satıştan çıkarmak üzere ürünün barkodunu okutur. 2. Sistem güncel toplamı bildirir. KULLANIM ÖYKÜLERİNİN GRAFİK GÖSTERİMİ Kullanım öyküleri, ayrıntılı ve uzun belgelerdir. Yazılımın yapacağı işlerin özet gösterimi için kullanım şemaları çizilir (usecase diagrams). Çizim kurallarını verdikten sonra örnek öykünün şemasını çiz. 8 Yaz.Müh.Ders Notları #4 4

ÇİZİM KURALLARI KULLANIM ŞEMALARI USE CASE SCHEMAS Use Case A Kişi türü adı <<extends>> Extension Points Adım K, Adım L <<includes>> <<actor>> HW/SW Element Use Case B Use Case C <<actor>> HW/SW Element Use case: İşlev İnsan aktör: Kullanıcılar İnsan olmayan aktör: Etkileşim: Kullanım İlişki: Benzeşim ÇİZİM BİLGİLERİ KULLANIM ŞEMALARI USE CASE SCHEMAS Benzeşim ilişkileri: Ok yönü aynı zamanda ilişkiyi okuma yönüdür. UC-B extends UC-A : B işlevi, A işlevi yürütülürken oluşabilecek bir sapış anlamındadır. A: Ana akış B: Ana akıştaki bir seçenek, ana akıştan bir sapış, alt akış UC-A includes UC-C: A işlevi, C işlevini içerir. A : Ana akış, içeren akış C: Alt akış, içerilen akış Yaz.Müh.Ders Notları #4 5

ÖRNEK ÇİZİM KULLANIM ŞEMALARI USE CASE SCHEMAS Bir POS yazılımının ödeme işlevini kasiyer kullanır. Satış işlevi, içerisinde ödeme yapma işlevini içerir. Includes, çünkü: Her satış içerisinde mutlaka ödeme olur. Ödemenin kredi kartı ile olması halinde, provizyon alma işlemi yürütülür. Extends, çünkü: Ödeme nakit ise provizyona gerek kalmaz. Provizyon: Kredi kartının limitinin aşılıp aşılmadığı, çalıntı olup olmadığı, vb. gibi bilgilerin sınanması anlamında bir bankacılık terimi. SINIFLARIN BELİRLENMESİ Kullanıcı gereksinimleri belgesinden ve kullanım senaryolarından sınıfların elde edilmesi. İsimlerin taranması Sınıfların sağlaması gereken özellikler: 1. Saklanan bilgi: Sistemin çalışması süresince bu varlığın durumu saklanmalıdır. 2. Gereksinim duyulan hizmetler: Bu varlığın hizmetlerine ihtiyaç duyan başka varlıklar vardır. 3. Çoklu nitelikler: Durum bilgisi birden fazla üye ile tarif edilmelidir. 4. Ortak nitelikler ve/veya eylemler: Bir nesnenin üyelerinin tümü o nesnenin tüm türdeşleri için geçerli olmalıdır. 5. Gerekli varlıklar: Problemin çözümü ile ilgili bilgi üreten veya problemin çözümü için bilgi tüketen varlıklar. Örnek gereksinim belgesinden sınıfları oluştur. 12 Yaz.Müh.Ders Notları #4 6

SINIFLARIN BELİRLENMESİ Üyelerin belirlenmesi: Sıfat ve eylemlerin taranması Sorumlulukların belirlenmesi (CRC kartları) Sorumlulukların dağıtılması: Sorumlulukların bir yerde yoğunlaşmaması Sorumlulukların genelden özele doğru tanımlanması (kalıtım hiyerarşisinde genelden özele gidilmesi) Bir bilgi ile ilgili davranışların, o bilgi ile aynı sınıfta yer alması (encapsulation) Tek bir şey hakkındaki bilginin tek sınıfta yer alması Gerekli sorumlulukların paylaşılması 13 ETKİLEŞİMLERİN BELİRLENMESİ Etkileşim: Bir nesnenin üzerine düşen sorumluluğu yerine getirmek için diğer bir nesneye mesaj göndermesi. Nesneler arasındaki ilişkiler Bağlantı, toplama, meydana gelme. Sınıflar arasındaki ilişkiler Özelleşme/genelleşme Çözümleme aşamasında ne tür etkileşimlerin olabileceği düşünülür, etkileşimlerin nasıl olacağı düşünülmez. Bu konuların temeli "Nesneye Dayalı Kavramlar" dersinde atılmıştır. 14 Yaz.Müh.Ders Notları #4 7

ÖRNEK ALAN MODELİ 15 ÇÖZÜMLEME SÜRECİNİN BELGELENDİRİLMESİ Bir nesneye yönelimli programın çözümleme sürecinin belgelendirilmesinde yer alan önemli belgeler: UML Kullanım şemaları, Kullanım senaryoları, UML sınıf şemaları, Veritabanı işlemleri yapılacaksa bunlara ek olarak: E-R diyagramı 16 Yaz.Müh.Ders Notları #4 8