Chapter 5 Sistem Modelleme. Lecture 1. Chapter 5 System modeling

Benzer belgeler
Eylül 2007 de v1.0 ı yayınlanan SysML sayesinde endüstri mühendislerinin de ihtiyacı karşılanmış oldu.

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

Chapter 6 Mimari Tasarım. Lecture 1. Chapter 6 Architectural design

Bölüm 2 Varlık-İlişki Veri Modeli: Araçlar ve Teknikler. Fundamentals, Design, and Implementation, 9/e

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

İçindekiler. Okuma lisansı info acar, için verilmiştir. Çoğaltılması ve dağıtılması yasaktır.

Model Güdümlü Geliştirme ile Gömülü Kaynakların Yönetimi

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

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

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

NESNEYE YÖNELİK TASARIM SÜRECİ

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

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

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

Geleneksel Yazılım Mühendisliğinden Alana Özel Yazılım Mühendisliğine Doğru

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

BM208- Nesneye Dayalı Analiz ve Tasarım. Sunum 7

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

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

Nesneye Dayalı Programlama

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.

Veritabanı Yönetim Sistemleri (Veritabanı Tasarımı) Varlık İlişki Modeli

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

Bilgi Servisleri (IS)

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

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

Hızlı Uygulama Geliştirme (Rapid Application Development - Rad Model)

BİLİŞİM SİSTEMLERİNİN PRENSİPLERİ

Bilgi ve İletişim Teknolojileri (JFM 102) Ders 7. LINUX OS (Sistem Yapısı) BİLGİ & İLETİŞİM TEKNOLOJİLERİ. LINUX Yapısı

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

WINDESKCONCENTO. sıgnum. Kurumsal İş Süreçleri Uygulamaları. windesk.com.tr

Akıllı Ortamlarda Sensör Kontrolüne Etmen Tabanlı Bir Yaklaşım: Bir Jadex Uygulaması

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

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

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

BÖLÜM 1 YAZILIM TASARIMINA GİRİŞ YZM211 YAZILIM TASARIMI. Yrd. Doç. Dr. Volkan TUNALI Mühendislik ve Doğa Bilimleri Fakültesi / Maltepe Üniversitesi

Bilgi Sistemleri Tasarımı (SE 503) Ders Detayları

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

Tarih Saat Modül Adı Öğretim Üyesi. 01/05/2018 Salı 3 Bilgisayar Bilimlerine Giriş Doç. Dr. Hacer Karacan

Yazılım Mimari Tasarımından Yazılım Geliştirme Çatısının Üretilmesinde Model Güdümlü Bir Yaklaşım

Veritabanı Yönetim Sistemleri (Veritabanı Tasarımı) Varlık Bağıntı Modeli

Bölüm 3 Çevik (Agile) Yazılım Geliştirme. Ders 1

Requirements Engineering

YAZILIM MODELLEME VE TASARIM

SiSTEM ANALiZi ve TASARIMI

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

Kurumsal Mimari. (Enterprise Architecture) MUSTAFA ULUS, 2015

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.

KENT BİLGİ SİSTEMLERİ STANDARTLARININ BELİRLENMESİ ÇALIŞTAYI T.C. ÇEVRE VE ŞEHİRCİLİK BAKANLIĞI COĞRAFİ BİLGİ SİSTEMLERİ GENEL MÜDÜRLÜĞÜ

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

BÝLGÝ TABANLI BÝR YÖNETÝM SÝSTEMÝNDE KAVRAMSAL MODELLEMENÝN ÖNEMÝ

Servis Yönelimli Mimari ve İş Süreç Yönetimi (SE 564) Ders Detayları

BTP 209 SİSTEM ANALİZİ VE TASARIMI

Veritabanı Yönetim Sistemleri (Veritabanı Kavramı) İş Kuralları ve Veri Modelleri

Öğretim planındaki AKTS Ulusal Kredi

NESNEYE YÖNELİK PROGRAMLAMA Temel Kavramlar

Ferhat ERATA. Geylani KARDAŞ

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

IBM CLM Çözümleriyle Çevik Yazılım Süreçleri. Canberk Akduygu & Koray Okşar

ÖZGÜR YAZILIMLAR İLE J2EE

CENG 302 Yazılım Mühendisliği Yazılım Mimarisi - Devam. Alper UĞUR

O P C S T A N D A R D I

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

Demetleme Yönteminin Y 3-Katmanlı Mimari Yapı ile Gerçeklenmesi. eklenmesi. KalacakYer.com

Software Design Document

Google Web Toolkit ile Öğretim Elemanı Otomasyon Sistemi

NESNE YÖNELİMLİ PROGRAMLAMA HAFTA # 6. Yrd.Doç.Dr.Hacer Karacan

AKTS Başvurumuz. Bologna Süreci Uzmanlarının Değerlendirmesi

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

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

Kablosuz Algılayıcı Ağları İçin TinyOS İle Uygulama Geliştirme

Bilgisayar Mühendisliğine Giriş. Yrd.Doç.Dr.Hacer KARACAN

Maltepe Üniversitesi Bilgisayar Mühendisliği Bölümü Yazılım Mühendisliği II (BIL 306)

EM205 26/9/2014. Programlamaya giriş Algoritmalar. Amaçlar

Statik Kod Analizi. Proceedings/Bildiriler Kitabı. SSE-CMM[3], ISO/IEC [3] gibi standartlarla. gereklidir.

Sinirsel Benzetim ve NSL. İlker Kalaycı 06, 2008

SENTEZ TABANLI YAZILIM MİMARİSİ TASARIM YAKLAŞIMININ ESSENCE ÇERÇEVESİYLE MODELLENMESİ

Ders İçerik Bilgisi. Karmaşık Sistemlerin Tek Bir Transfer Fonksiyonuna İndirgenmesi

Nesneye Dayalı Analiz ve Tasarım (SE 321) Ders Detayları

Teknoloji Servisleri; (Technology Services)

VERİ TABANI SİSTEMLERİ

Model-Tabanlı ve Rastgele Karma Yöntem

DITA ile Uygulama Belgeleri Hazırlamak

Business Intelligence and Analytics Principles and Practices: Charting the Course to BI and Analytic Success

YMT 312-Yazılım Tasarım Ve Mimarisi MimariTasarım

Yazılım Mühendisliğine Giriş (SE 112) Ders Detayları

MÜHENDİSLİK FAKÜLTESİ / ENSTİTÜSÜ / YÜKSEKOKULU BİLİŞİM SİSTEMLERİ MÜHENDİSLİĞİ BÖLÜMÜ /ABD LİSANS PROGRAMI - 2 ( yılı öncesinde birinci

Görünümler ve Ötesi Yaklaşımıyla Radar Yazılım Mimarisi Dokümantasyonu Tecrübeleri. Ali Özzeybek M. Devrim Tokcan Murat Tuncer

Client Server Database

SİSTEM MÜHENDİSLİĞİ OPERASYONEL KONSEPT

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

Java da Soyutlama ( Abstraction ) ve Çok-biçimlilik ( Polymorphism )

Veri Ambarları. Erdem Alparslan

Nesneye Yönelik Tasarım ve Programlama (COMPE 501) Ders Detayları

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

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

FTR 331 Ergonomi. yrd. doç. dr. emin ulaş erdem

YAZILIM MÜHENDİSLİĞİNİN TEMELLERİ. 5.Hafta Sistem Çözümleme. Dr. Muhammet BAYKARA

Yazılım Mühendisliğine Giriş 2018 GÜZ

DENİZ HARP OKULU BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜM BAŞKANLIĞI DERS TANITIM BİLGİLERİ

Transkript:

Chapter 5 Sistem Modelleme Lecture 1 1

Başlıklar İçerik/Bağlam (Context) modelleri Etkileşim Modelleri Yapısal Modeller Davranışsal Modeller Model Tabanlı Mühendislik 2

Sistem Modelleme Sistem modelleme, sistemin özet modellerinin geliştirilmesi sürecidir ve herbir model sistemi farklı bakış açıları ile gösterir. Genelde grafiksel gösterim ile yapılır. Unified Modeling Language (UML). 3

Var olan ve Planlanan Sistemlerin Modelleri Var olan sistemlerin modelleri, gereksinim mühendisliği aşamasında kullanılır. Yeni sistemlerin modelleri, gereksinim mühendisliği aşamasında sistem gereksinimlerinin paydaşlara anlatılmasında kullanılabilir. Mühendisler bu modelleri gerçekleştirim için bir doküman olarak kullanır. Model tabanlı yaklaşımda, sistemin tamamının veya bir kısmının modeller üzerinde gerçekleştirilmesi mümkündür. 4

Sistemin bakış açıları İçerik/Bağlam bakış açısı: sistem nerde? Etkileşim bakış açısı: sistem çevresiyle nasıl etkileşiyor? Sistemin bileşenleri nasıl etkileşiyor? Yapısal bakış açısı: sistemin veya sistemin işlediği verilerin organizasyonunu nasıl? Davranışsal bakı açısı: sistemin dinamik davranışları neler ve olaylara nasıl yanıt verir? 5

UML diyagram tipleri Aktivite diyagramları Kullanım durumu diyagramları Sequence diyagramları Sınıf diyagramları Durum diyagramları 6

İçerik Modelleri Operasyonel çevreyi gösterir Sosyal ve organizasyonel gereksinimleri sistemin sınırlarını belirleyebilir. Mimari modelleri, sistemin diğer sistemlere göre olan konumunu gösterir. 7

Sistem Sınırları Sistemin içinde ne var? Sistemin dışında ne var? Sistemin geliştirilmesi esnasında kullanılan diğer sistemler Sistemin sınırları bir pazarlık konusu olabilir. 8

MHC-PMS nin Bağlamı 9

Süreç Bakış Açısı Bağlam modelleri çevreyi gösterir, etkileşimi değil! UML aktivite diyagramları kullanılabilir. 10

Alıkoyma Süreç Modeli 11

Etkileşim Modelleri Kullanıcı etkileşimlerini göstermek, kullanıcı gereksinimlerini belirlemek için önemli. Sistemler arası etkileşimleri modellemek, iletişim problemlerinin görülmesini sağlar. Etkileşimler, performans ve bağımlılık ile ilgili bilgi verir. Kullanım durumu ve sequence diyagramları kullanılabilir. 12

Kullanım Durumu Modelleme Farklı görevler için farklı kullanım durumları oluşturulur. Aktörler, insan veya sistem olabilir. Desteklemek için «metinsel» içerik kullanılmalıdır. 13

Transfer-data Kullanım Durumu MHC-PMS deki bir kullanım durumu 14

Transfer data kullanım durumunun «sekmeli» tanımı MHC-PMS: Transfer data Actors Description Data Stimulus Response Medical receptionist, patient records system (PRS) A receptionist may transfer data from the MHC-PMS to a general patient record database that is maintained by a health authority. The information transferred may either be updated personal information (address, phone number, etc.) or a summary of the patient s diagnosis and treatment. Patient s personal information, treatment summary User command issued by medical receptionist Confirmation that PRS has been updated Comments The receptionist must have appropriate security permissions to access the patient information and the PRS. 15

MHC-PMS deki «hasta kayıt görevlisinin» bulunduğu kullanım durumları 16

Sequence diyagramları Aktörler ve sistemdeki nesneler arasındaki etkileşimi göstermek için kullanılır Bir sequence diyagramı, bir kullanım durumundaki (veya bir kullanım durumu parçasındaki) etkileşimlerin sırasını gösterir. 17

Sequence diyagramı Hasta bilgisi görme 18

Yapısal Modeller Yapısal modeller, sistemi oluşturan bileşenleri ve bunların ilişkilerini gösterir. Yapısal model statik de olabilir dinamik de olabilir. Sistem mimarisini tartışırken yapısal model oluşturmak faydalıdır. 19

Sınıf diyagramları Sınıf, bir sistem nesnesinin «genel» tanımıdır. Nesneler sıklıkla gerçek dünyadaki «şeyleri» gösterir: hasta, ilaç, reçete, doktor 20

UML sınıfları ve ilişkileri 21

MHC-PMS deki sınıflar ve ilişkileri 22

Konsültasyon Sınıfı 23

Chapter 5 Sistem Modelleme Lecture 2 24

Genelleme Karmaşıklığı yönetmek için kullanılan bir yöntem Varlıkları sınıflandırırız. (hayvanlar, otomobilleri vb.) Aynı sınıftaki üyelerin benzer karakteristiklere sahip olduklarını belirtir. Nesneye yönelimli dillerde genelleme, sınıf kalıtım mekanizması ile oluşturulur. 25

Bir Genelleme Hiyerarşisi 26

Daha Detaylı Bir Genelleme Hiyerarşisi 27

Davranışsal Modeller Davranışsal modeller, bir sistemi çalışıyormuş gibi dinamik olarak modeller. Çevreden gelen bir «uyarana» sistemin nasıl cevap verdiğini gösterir. Uyaranlar 2 tiptir Veri Olaylar 28

Veriye Dayalı Modelleme Sistemin ne yapacağını sisteme gelen veriler belirler. 29

İnsülin pompası nın çalışması için bir aktivite modeli 30

Olaya Dayalı Modelleme Gerçek zamanlı sistemler çoğunlukla olaya dayalı sistemlerdir ve veri işleme gereksinimi en azdır. Olaya dayalı bir model, sistemin içsel ve dışsal olaylara nasıl yanıt verdiğini gösterir. Durumlar ve durumları değiştiren olaylar olarak düşünülebilir. 31

Durum Makinesi Modelleri Durum makinesi modellerinde durumlar düğümler olarak ve olaylar da bu düğümleri bağlayan kenarlar olarak gösterilir. Bir olay olduğunda, sistem bir durumdan başka bir duruma geçer. 32

Mikrodalga Fırın İçin Bir Durum Modeli 33

Mikrodalga Fırın İçin «Uyaranlar» Uyaran Half power Full power Timer Number Door open Door closed Start Cancel Tanım Kullanıcı half-power düğmesine bastı Kullanıcı full-power düğmesine bastı Kullanıcı timer düğmelerinden birine bastı Kullanıcı sayı düğmelerine bastı Fırının kapı kilidi kapalı değil Fırının kapı kilidi kapalı Kullanıcı Start düğmesine bastı Kullanıcı Cancel düğmesine bastı 34

Model Tabanlı Mühendislik Model tabanlı mühendislik, geliştirme sürecinin çıktılarını (çalıştırılabilir yapıyı) «programlamaktan» ziyade «modellemeye» dayanır. Donanım/Yazılım platformları üzerinde çalışacak olan programlar doğrudan modellerden üretilir. 35

Model Tabanlı Mühendislik Model tabanlı mühendislik yaklaşımı halen tam olarak olgunlaşmadı. Avantajları Sistemin yüksek seviyelerde soyut olarak gösterilmesini sağlar Otomatik kod üretimi süreci ucuzlatır Dezavantajları Modeller, gerçekleştirim için yeterince detaylı olmayabilir. Yeni platformlar için «tercümanlar» geliştirme işi, kod yazmaktan daha zordur. 36

Model Tipleri A computation independent model (CIM) These model the important domain abstractions used in a system. CIMs are sometimes called domain models. A platform independent model (PIM) These model the operation of the system without reference to its implementation. The PIM is usually described using UML models that show the static system structure and how it responds to external and internal events. Platform specific models (PSM) These are transformations of the platform-independent model with a separate PSM for each application platform. In principle, there may be layers of PSM, with each layer adding some platform-specific detail. 37

Çoklu platforma özgü modeller 38

Çevik yöntemler ve Model Tabanlı Mühendislik Model tabanlı yaklaşımın geliştiricileri, artırımlı geliştirmeyi desteklediği için bu yaklaşımın çevik yöntemlerle kullanılabileceğini iddia ederler. Ancak, geliştirme öncesi yapılan ön modellemelerin çokluğu çevik manifesto ile çelişir. Eğer bütün süreç tam olarak otomatikleştirilebilirse (fazladan kod yazmaya gerek kalmazsa) model tabanlı yaklaşım çevik yöntemlerle kullanılabilir. 39

Çalıştırılabilir UML Executable UML veya xuml Grafiksel gösterimle birlikte «zamanlama» ve «semantik» kuralları içerir. Araçlar IBM Rational Software Architect Simulation Toolkit 40