Hiyerarşik Yazılım Tasarımı Kavramı



Benzer belgeler
Mifare Kart Yazıcı/Okuyucu Modül (MFM-200)

Her Yönüyle SQL Enjeksiyonu. OWASP-Türkiye Bünyamin Demir

4. Bu bölümde iletişim adresi bilgilerinizi girmeniz gerekmektedir.

PostgreSQL ve PL/pgSQL

Sınav Dağılım & IMKB Endeks

Stack Islemleri. Postfix ve Infix notasyonlari. Stack ozellikleri

STAJ RAPORU INTERNSHIP REPORT

ÖRNEKTİR - SAMPLE. RCSummer Ön Kayıt Formu Örneği - Sample Pre-Registration Form

Nesne Yönelimli Programlama

PostgreSQL ve PL/pgSQL

Object-Oriented Programming Laboratuvar 11

ORACLE DA KÜRSÖRLER. Gerekli sistem değişkenleri

DÖNGÜLER (LOOPS) while(), do-while(), for(), foreach()

Virtualmin'e Yeni Web Sitesi Host Etmek - Domain Eklemek

BELGELENDİRME BAŞVURU FORMU Application Form for Certification

Fatura Dinamik Kodlama İyileştirmeleri

Visual Basic 6.0. Anadolu Üniversitesi Endüstri Mühendisliği Bölümü. Dosyalama İşlemleri. Ders Notları

Mühendislik Fakültesi Elektrik-Elektronik Mühendisliği C Programlama 5. Bölüm Karar ve Çevrim Kontrol Yapıları

IMDS KURULUM KILAVUZU (AIOS TEDARİKÇİLERİ İÇİN HAZIRLANMIŞTIR)

MOBİL UYGULAMA GELİŞTİRME

Python ile Programlamaya Giriş DERS 11: DOSYA İŞLEMLERİ DR. HÜSEYİN BAHTİYAR

Yangın Güvenliği Kursları Eğitim Kayıt Formu

Python ile Programlamaya Giriş DERS 9: FONKSİYONLAR DR. HÜSEYİN BAHTİYAR

Yangın Güvenliği Kursları Eğitim Kayıt Formu

BBS 514 YAPISAL PROGRAMLAMA (STRUCTURED PROGRAMMING)

while(), do-while(), for() M.İLKUÇAR 2010 MAKU-MYO

TÜM ÖĞRENCİ DEĞİŞİM PROGRAMLARI (ERASMUS-MEVLANA-FARABİ) BAŞVURU AŞAMALARI AYNI SÜRECİ TAKİP ETMEKTEDİR.

ERASMUS+ ÖĞRENCİ DEĞİŞİM PROGRAMI BAŞVURU SİSTEMİ KULLANIM KILAVUZU USERS GUIDE FOR THE ERASMUS+ STUDENT EXCHANGE PROGRAM APPLICATION SYSTEM

BBS 514 YAPISAL PROGRAMLAMA (STRUCTURED PROGRAMMING)

E5_C ile NB PANEL ARASI RS485 MODBUS HABERLEŞMESİ

Uzaktan Eğitim Uygulama ve Araştırma Merkezi

e-fatura Uygulaması (Zarf Yapısı) Versiyon : 1.4 2/10

BĠLGĠSAYAR PROGRAMLAMA II C++ Programlamaya GiriĢ Published by Juan Soulié

"Şirket" Sunucusu ve Başarı Mobile Arasındaki HTTP Veri Aktarımı için Etkileşim Teknik Protokolü

BBS 514 YAPISAL PROGRAMLAMA (STRUCTURED PROGRAMMING)

PROGRESSIVE DIE WIZARD NX2. Projeye Hazırlanma / Project Initialization

BİLG Dr. Mustafa T. Babagil 1

BMT 101 Algoritma ve Programlama I 7. Hafta. Yük. Müh. Köksal Gündoğdu 1

1. Aşağıdaki program parçacığını çalıştırdığınızda result ve param değişkenlerinin aldığı en son değerleri ve programın çıktısını yazınız.

Mimari. risi. Yazar: İşlemci Mimar. bulunmasını istediğimiz. mimariyi. Şekil 1

C cm. Lazer Kesim Dikey / Laser Cut Vertical. Kesim Kodu / Cut Code

Tarih Araştırmaları Dergisi Yazım Kuralları

TBP101 (4. Hafta) Alıştırma Soruları ve Cevapları

10/17/2007 Nesneye Yonelik Programlama 3.1

Öncelikle Birleşmiş Milletler tarafından kayıt için oluşturulan internet adresine giriş yapılacaktır.

Nesne İşaretçileri. Binnur Kurt Bilgisayar Mühendisliği Bölümü İstanbul Teknik Üniversitesi. Sınıf Yapısı. Kalıtım Çok Şekillilik

Python ile Programlamaya Giriş DERS 6: DÖNGÜLER DR. HÜSEYİN BAHTİYAR

Sorgudan elde edilen değerin değişkenlere aktarılmasını sağlar. Sorgudan tek satır dönmesi gerekir. Çok satır dönerse hata verir.

YEDİTEPE ÜNİVERSİTESİ MÜHENDİSLİK VE MİMARLIK FAKÜLTESİ

TEMPLATES. Binnur Kurt Bilgisayar Mühendisliği Bölümü İstanbul Teknik Üniversitesi. C++ ile Nesneye Dayalı Programlama 1

1. Kartınızın türüne göre aşağıdaki bağlantılardan ilgili olana tıklayın.

SQL TRIGGERS (Tetikleyiciler)

BÖLÜM -7: TABLOLARI OLUŞTURMA VE YÖNETME

YEDİTEPE ÜNİVERSİTESİ MÜHENDİSLİK VE MİMARLIK FAKÜLTESİ

EXISTS VE NOT EXISTS fonksiyonları

BÖLÜM- 11: BÜYÜK VERİ KÜMELERİ

CIF105 ve E5_C Sıcaklık kontrolcüler için Hızlı Fonksiyon Bloğu

BIL1202 ALGORİTMA VE PROGRAMLAMAYA GİRİŞ

YZM 2116 Veri Yapıları

T.C. KÜLTÜR VE TURİZM BAKANLIĞI Sinema Genel Müdürlüğü

UTL_FILE PERFORMANSI

5. Atlama, Karar ve Çevrim Kontrol Deyimleri

Data Communication Systems Lab

BÖLÜM- 13: ALT SORGULAR İLE VERİ İŞLEME

Upgrading Internet Technology skills of Information and Communication Technologies (ICT) Professionals

Programlamaya Giriş Karar Yapıları, Tekrarlı İfadeler(Döngüler)

BİL-142 Bilgisayar Programlama II

Teknoloji Servisleri; (Technology Services)

Chapter 11 Dosya İşleme

KURULUM KILAVUZU MART Visilabs Target Kurulum Kılavuzu

140 Y AZARLARA B İLGİ YAZARLARA BİLGİ

Cambridge International Examinations Cambridge International General Certificate of Secondary Education

BİLGİSAYAR TEMELLERİ VE PROGRAMLAMAYA GİRİŞ

Veritabanı Yönetim Sistemleri (Veritabanı Tasarımı) SQL (Structured Query Language)

Döngü Problemleri. 1. Aşağıdaki programın çıktısı nedir? continue yerine break yazılırsa çıktı ne olur? Neden? Program 1.1.

Koşullu Önermeler (if else)

ÖDEV (Vize Dönemi) CEVAPLAR. 1. Ekrana Merhaba Dünya! yazdıran algoritmanın akış diyagramını çiziniz ve sözde kod olarak yazınız.

D-Link DSL 500G için ayarları

IDENTITY MANAGEMENT FOR EXTERNAL USERS

elemanlarının gezilmesine yönelik bir örnek sunulmuştur, inceleyiniz.

STAJ RAPORU TRAINING REPORT

«BM364» Veritabanı Uygulamaları

Sorgudan elde edilen değerin değişkenlere aktarılmasını sağlar. Sorgudan tek satır dönmesi gerekir, aksi durumda hata olur.

Solar Controller. Fark sýcaklýðý, kollektör veya return sensör sýcaklýðý göstergeden gözlenebilir

OMÜ HAVACILIK VE UZAY BİLİMLERİ FAKÜLTESİ METEOROLOJİ MÜHENDİSLİĞİ BÖLÜMÜ MET103 BİLGİSAYAR PROGRAMLAMA I BÜTÜNLEME SINAVI

VERİ TABANI YÖNETİM SİSTEMLERİ II. 3. SQL PROGRAMLAMA BLOKLARI ve AKIŞ DENETİMİ

Unutulmuş Özellikler: Oracle Veritabanına Yaptığınız Yatırımı Sonuna Kadar Kullanın


Veri Yapıları ve Algoritmalar dönem

e-fatura UYGULAMASI (Zarf Şema Yapısı) Mart 2011 ANKARA e-fatura Uygulaması (Zarf Yapısı) Mart 2011 Versiyon : 1.2 1/10

BASİT C PROGRAMLARI Öğr.Gör.Dr. Mahmut YALÇIN

Öğr. Gör. Cansu AYVAZ GÜVEN VERİTABANI-II. Değişken Tanımlama Ve Akış Kontrol Deyimleri

GMTCNT PLC ile MODBUS MASTER Haberleşmesi -MICNO Serisi Hız Kontrol ile Bağlantı-

Week 6: Bağlı Liste (Linked List) BAĞLI LİSTE KAVRAMI TEKİL (SINGLE) BAĞLI LİSTE ÇİFT (DOUBLE) BAĞLI LİSTE DAİRESEL (CIRCULAR) BAĞLI LİSTE

Programlama Dilleri 3

Assembly Language Programming

Toplu Kayıt Kullanıcı Kitapçığı

BLGM BÖLÜM. Problem Çözme Kavramları (Algoritma ve Akış Şemaları)

Veri Tabanı II Alt Sorgular

Transkript:

Hiyerarşik Yazılım Tasarımı Kavramı Yazılımda kodlamaya girmeden önce herkesin öğrenmesi gereken en önemli kavramlardan biriside yazılım dizaynında temel hiyerarşik modelleme kavramıdır. Yazılımı tasarlayan kişi verimli bir tasarım için, iyi bir tasarım metedolojisi kullanmalıdır. Tasarım Metodolojileri İki çeşit temel dizayn metodolojisi bulunmaktadır. Birincisi Yukardan-Aşağı (Top-Down) dizayn metodoloji ve Aşağıdan-yukarı (bottom-up) dizayn metodoloji. Bu metdolojilerin ana yaklaşımı yapılması istenen büyük işi daha küçük hiyerarşik alt dallara bölmektir. İleri seviye yazılım geliştirmenin ana prensipleri: yazılımın modüler, anlaşılır, erişilebilir ve grup çalışmalarına uygun olmasıdır. Bu prensipler ancak bu iki yöntem ile sağlanabilir. Top-down metodolojisinde yazılacak programın ilk önce top modülü (fonksiyon/sınıf.. v.b.) belirlenir ve daha sonra top modülü oluşturan alt modüller (fonksiyon/sınıf.. v.b.) belirlenir. Daha sonra bu modülleri oluşturan alt modüllerde (sub-modules) belirlenir. Bu en küçük bölünemeyen hücreye kadar devam ettirilir. Aşağıdaki şema (1-2-3) top-down metodolojisini göstermektedir. Bu dizayna göre ilk olarak yazılım şeması, her aşamada yapılacak işe veya kullanılacak fonksiyonun görevine veya yazılacak fonksiyonun adına veya tasarlanacak sınıfın adına v.b. göre çizilmelidir. Dizayn yapılırken yazılımda hangi bölümlerin olması gerektiği düşünülmeli ve bu bölümler hiyerarşik olarak kimin altında olması gerekiyorsa oraya eklenmelidir. Elbette yazılım ilerledikçe topdown dizayn şeması değişebilir, yeni modüller eklenebilir. Bu şemanın en üstünde main yapısı bulunacaktır. Main yapısı yazılımın ana hedefini belirler. Yazılım şeması oluşturulduktan sonra Alt kollarda ise her aşamada yapılacak iş (fonksiyonun görevi, fonksiyonun adı, sınıfın adı v.b.) yazılmalı ve her modül içerisindeki yazılım sahte kodlarla anlatılmalıdır. Şema-3 de verilen top-down dizaynın örnek sahte kodları alt bölümde verilmiştir.

gösterimi Şema-1: Top-down yazılım tasarımı için fonksiyonların dizaynının modellendiği örnek şema Şema-2: Parti planlamayı alt dallara bölmek

Şema-3: Bir Yazılım top-down modelleme örneği Bottom-up dizayn metodolojide önce elimizde olan en küçük yazılım modülleri (fonksiyon/sınıf.. v.b.) belirlenir. Bu modüller kullanılarak daha büyük modüller inşa edilir. Bu bloklar daha büyük yazılım bloklarını oluşturmak için kullanılır, ta ki top modül inşa edilene kadar. Aşağıdaki şema-4 bottom-up metodolojisini göstermektedir. Şema-4: Down-up yazılım tasarımı modelleme gösterimi

ŞEMA-3 SAHTE KODLARI: Main Level 0 Enter names and numbers into list Put list into alphabetical order Print list Enter names and numbers into list Level 1 While ( more names) Enter name Enter telephone number Enter email address Insert information into list Enter names and numbers into list (revised) Level 1 Set morenames to true While (morenames) Prompt for and enter name Prompt for and enter telephone number Prompt for and enter email address Insert information into list Write "Enter a 1 to continue or a 0 to stop." Read response If (response = 0) Set morenames to false Prompt for and enter name Level 2 Write "Enter last name; press return." Read lastname

Write "Enter first name; press return." Read firstname Prompt for and enter telephone number Level 2 Write "Enter area code and 7-digit number; press return." Read telephonenumber Prompt for and enter email address Level 2 Write "Enter email address; press return." Read emailaddress Print the list Level 1 Write "The list of names, telephone numbers, and email addresses follows:" Get first item from the list While (more items) Write item's firstname + " " + lastname Write item's telephonenumber Write item's emailaddress Write a blank line Get next item from the list