SlideShare a Scribd company logo
1 of 39
Download to read offline
T.C.
SÜLEYMAN DEMİREL ÜNİVERSİTESİ
MÜHENDİSLİK FAKÜLTESİ
MADEN MÜHENDİSLİĞİ BÖLÜMÜ
DOĞAL TAŞ OCAKLARINDA BLOK TAKİP SİSTEMİNİN
YAZILIM İLE GELİŞTİRİLMESİ
BİTİRME PROJESİ
Emre BERBER
1511004010
Danışman
Doç. Dr. Halim CEVİZCİ
ISPARTA - 2019
ÖZET
DOĞAL TAŞ OCAKLARINDA BLOK TAKİP SİSTEMİNİN
YAZILIM İLE GELİŞTİRİLMESİ
Emre BERBER 1511004010
Danışman: Doç. Dr. Halim CEVİZCİ
Doğal taş madenciliği, madenciliğin bir alt kolu olup maden ihracatında önemli
bir potansiyele sahiptir. Doğal taş madenciliğinde gelir, üretilen bloklar ile
sağlandığından blok takibi son derece önemlidir. Ocak sorumluluları geçmişten
günümüze el ile not tutma, çizelgeleme gibi farklı yöntemler kullanarak doğal
taş bloklarının stok takibini gerçekleştirmişlerdir. Doğal taş stoklarının takibi
Excel gibi bilgisayar programları ile sağlanmasına rağmen bu gibi programları
profesyonel anlamda kullanmak uzmanlık ve tecrübe gerektirmektedir.
Bu çalışmada, doğal taş ocaklarındaki blok takibinde yaşanılan bu problemlerin
çözümü için görsel ve kullanımı kolay bir stok takip sisteminin geliştirilmesi
hedeflenmiştir. C# dili kullanılarak tasarlanan bu yazılım ile her bir bloğun
stoğa eklenmesi, satışının yapılması ve sevkiyatının gerçekleştirilmesi gibi
işlemler kolayca yapılabilmektedir.
……….. BİTİRME PROJESİ ONAYI ………..
Jüri Üyesi Tarih İmza
… / … / 2019 ..................................
i
İÇİNDEKİLER
Sayfa
ÖZET .....................................................................................................................................................İ
İÇİNDEKİLER.....................................................................................................................................İ
TEŞEKKÜR.......................................................................................................................................İİİ
1. GİRİŞ ..............................................................................................................................................1
2. DOĞAL TAŞ OCAKLARINDA BLOK TAKİBİ ......................................................................4
3. DOĞAL TAŞ STOK TAKİP PROGRAMI ................................................................................6
3.1. PROGRAMLAMA DİLİ...............................................................................................................6
3.1.1. Java..................................................................................................................................6
3.1.2. C .......................................................................................................................................7
3.1.3. C++..................................................................................................................................7
3.1.4. Python............................................................................................................................7
3.1.5. Php..................................................................................................................................8
3.1.6. Visual C#.......................................................................................................................8
3.1.7. Visual Basic..................................................................................................................9
3.1.8. JavaScript...................................................................................................................10
3.2. TÜMLEŞİK GELİŞTİRME ORTAMI ........................................................................................10
3.2.1. Eclipse.........................................................................................................................11
3.2.2. Visual Studio IDE....................................................................................................11
3.2.3. Code::Blocks.............................................................................................................12
3.2.4. Dev-C++......................................................................................................................13
3.3. VERİTABANI ..........................................................................................................................13
3.3.1. Microsoft SQL Server ............................................................................................13
3.3.2. PostreSQL..................................................................................................................14
3.3.3. Microsoft Access.....................................................................................................15
3.3.4. MySQL.........................................................................................................................15
3.3.5. Oracle..........................................................................................................................16
3.3.6. SQLite..........................................................................................................................17
3.4. ALGORİTMA...........................................................................................................................17
3.5. YAZILIMIN GELİŞTİRİLMESİ.................................................................................................18
ii
3.5.1. Kullanıcı Giriş...........................................................................................................19
3.5.2. Ana Menü...................................................................................................................19
3.5.3. Kayıt İşlemleri .........................................................................................................20
3.5.4. Stok İşlemleri...........................................................................................................24
3.5.5. Satış İşlemleri ..........................................................................................................25
3.5.6. Sevkiyat İşlemleri...................................................................................................26
3.5.7. Raporlama.................................................................................................................27
3.6. YAZILIMIN BİR DOĞAL TAŞ OCAĞINDA KULLANILMASI...................................................27
4. DEĞERLENDİRME VE SONUÇLAR....................................................................................29
KAYNAKLAR..................................................................................................................................31
ÖZGEÇMİŞ.......................................................................................................................................34
iii
TEŞEKKÜR
Hazırlamış olduğum “DOĞALTAŞ OCAKLARINDA BLOK TAKİP SİSTEMİNİN
YAZILIM İLE GELİŞTİRİLMESİ” başlıklı bitirme projemin teorik ve deneysel
aşamalarının hazırlanması ve tamamlanmasında yardımlarını esirgemeyen
Danışmanım Doç. Dr. Halim CEVİZCİ’ ye ve her daim engin bilgisiyle destek olan
Dr. Öğr. Üyesi Alaattin SAKCALI’ ya içtenlikle teşekkür ederim.
Öğrenim hayatımın ilk gününden bugüne kadar maddi - manevi destekleri ve
sevgileri ile hep yanımda olan çok değerli aileme teşekkürlerimi ve şükranlarımı
sunarım.
Emre BERBER
ISPARTA, 2019
1
1. GİRİŞ
Doğal taş madenciliği, madenciliğin bir alt kolu olup gerek maden ihracatında
gerekse ülke ekonomisine katkısı sayesinde son derece önemli bir yere sahiptir.
Doğal taş ürünlerine olan talep gün geçtikçe artmaktadır. Artan talep ile birlikte
yatırımcılar, doğal taş üretimi yapan maden ocaklarına daha çok yatırım
yapmaya başlamıştır (DTSR, 2018). Doğal taş madenciliği, mermerlerin blok
olarak üretimi ve bu blokların işlenmesini kapsayan madencilik faaliyetidir.
Mermerlerin yanı sıra farklı doğal taşların da benzer amaçlarla üretilmesi doğal
taş sektörünün genişlemesine neden olmuştur (OKP, 2015). Doğal taş
madenciliğine olan talep artışı sayesinde yeni yatırımcıların da pazara girmesi,
hem ülkemiz hem de dünya ticaretine artan bir ivme kazandırmaya devam
etmektedir.
Doğal taşlar müşteri talebine göre ocaktan blok şeklinde ya da blok olarak
fabrikaya gönderilen doğal taşlar işlenerek fabrika sonunda plaka/fayans olarak
ihraç edilmektedir. Fabrikada doğal taş ürünlerine farklı yüzey işleme teknikleri
de uygulanarak ürün satışı gerçekleştirimektedir. Tüm bu gelişmeler ve
teknikler şüphesiz doğal taş maden ihracat değerlerine de etkilemiştir. Türkiye’
de 2017 yılında doğal taş blok ihracatı 1,1 milyar $ ile maden ihracında en
büyük paya sahipken 684,6 milyon $ değerinde işlenmiş doğal taş maden
ihracında ikinci sırada yer almıştır (İMİB, 2017).
Türkiye doğal taş sektöründe 2500 ruhsatlı doğal taş ocağı bulunmaktadır.
Bunlardan ruhsatlı 1500 tanesi aktif olarak üretimine devam etmektedir. Doğal
taş sektöründe 200 kadar büyük tesis ile yaklaşık 9000 adet orta ve küçük
ölçekli işletme ve atölye kobi niteliğinde olmak üzere faaliyet göstermektedir.
Bu sektörde yaklaşık 5000 teknik personel ve 180000 mavi yakalı işçi istihdam
edilmektedir (Ulusoy, 2014).
Doğal taş rezervlerinden blok üretilirken birçok yöntem kullanılmaktadır.
Bunlardan bazıları kollu kesme makineleri ve elmas telli üretim yöntemidir.
Teknolojik gelişmelere paralel gelişen kollu kesme makineleri Türkiye’ de bazı
2
ocaklarda kollu kesme makineleri kullanılmaya başlasa da halen elmas telli
üretim yöntemi yaygın olarak kullanılmaktadır (Şekil 1.1). Doğal taş kütleleri
bulunduğu yerden büyük bloklar halinde kesilip yıkılmaktadır. Doğal taş
kütlelerinin nakliyesi ve fabrikada kesilebilmesi için sayalama işlemi ile belirli
boyutlara getirilmektedir. Sayalama ile belirli boyutlara getirilen bloklar
müşteriye sunulur. Doğal taş blok satışı gerçekleştirildikten sonra nakliye
edilmektedir (Urhan ve Şişman, 1992).
Şekil 1.1. Elmas telli üretim yapan bir doğal taş ocağının genel bir iş akış
diyagramı
Doğal taş ocağında elmas telli üretim yöntemi ile blok üretiminin yapıldığı genel
bir iş akış diyagramı Şekil 1.1’ de verilmiştir. Üretim yönteminden bağımsız
olarak doğal taş blokları doğrudan aynadan satıldığı gibi stok sahasına
gönderilerek satış için de bekletilebilmektedir. Geçmişte doğal taş ocağı
işletmeleri blok takibini gerçekleştirmek için el ile not tutma gibi ilkel
yöntemler kullanmışlardır. Teknolojinin gelişmesi ve buna bağlı olarak
bilgisayar kullanımının artmasıyla birlikte doğal taş ocağı işletmeleri blok
takibini gerçekleştirmek üzere takip çizelgelerini kullanmışlardır. Hayatımızı
kolaylaştırmak için birçok alanda yazılımların geliştirildiği gibi bu doğal taş
madenciliğinde de yazılımların geliştirilmesini kaçınılmaz kılmıştır. Doğal taş
ocak işletmeleri stok takibi için farklı yazılımlar geliştirilmiştir.
Ulusal boyutta doğal taş stok takibi için birçok bilgisayar yazılımı geliştirilmiştir.
Bunlardan bazıları Intramer (RB, 2012), Promer (PY, 2007), E-Mermerci üretim
yönetim bilgi sistemi (EM, 2016) ve Mermer Sektörü ERP (US, 2018) bu
Delik Delme
İşlemi
Elmas Telin
Delikten
Geçirilmesi
Dağ Kesim
İşlemi
Yıkım İşlemi
Sayalama
İşlemi
Stok Satış
Nakliye
3
yazılımlara örnek olarak gösterilebilir. Bu yazılımlar doğal taş fabrika
işletmeciliğinde ürün takibi yapmak amacıyla geliştirilse de E-mermerci üretim
yönetim bilgi sistemi ve Intramer yazılımlarının doğal taş ocak modülü de
bulunmaktadır. E-mermerci üretim yönetim bilgi sisteminde blok takibi
barkodlama sistemi ile yapılmaktadır. Geliştirilen bu yazılımların yanı sıra
Türkiye’ de doğal taş blok takibinde genellikle Microsoft Excel yazılımı
kullanılmaktadır. Verilerin işlenmesinde Microsoft Excel yazılımı hızlı ve pratik
bir elektronik tablo yazılımı olmasına rağmen görsel olarak kullanıcıya hitap
etmemektedir. Microsoft Excel yazılımı her bir kullanıcının kendine özel
tasarımlarla işlem yapmasına olanak sağlamaktadır. Doğal taş ocak
işletmelerinde sorumlu kişi tarafından Microsoft Excel tablo tasarımları
hazırlanmaktadır. Bu tasarımlar ve veriler diğer sorumlu kişiler tarafından
anlaşılması güç olmaktadır. Ayrıca işletmede blok takibinden sorumlu kişinin
ve/veya mühendisin değişmesi durumunda yeni gelecek kişi de kendine özel bir
tasarım hazıryacaktır. Microsoft Excel elektronik tablo yazılımı her bir
kullanıcının kendisi için bir veritabanı tasarımı oluşturmasına neden
olmaktadır.
Bu çalışmada doğal taş ocaklarında blok takibini gerçekleştirmek üzere (Berber,
E. ve diğerleri, 2019) tarafından geliştirilen yazılımın her aşaması ayrıntılı bir
şekilde incelenmiştir. Yazılım her bir kullanıcının kolaylıkla kullanabilmesi için
basit ara yüzler kullanılarak geliştirilmiştir. Doğal taş ocağında blok takibinden
sorumlu kişi, geliştirilen bu yazılım ile kolaylıkla stok durumunu kontrol
edebilecektir. Yazılımın basit ara yüzlere sahip olması nedeniyle kullanımı son
derece kolay olmaktadır.
4
2. DOĞAL TAŞ OCAKLARINDA BLOK TAKİBİ
Doğal taş ocaklarında bloklar, geçmişten günümüze farklı yöntemler
kullanılarak üretilmiştir. Teknolojinin gelişmesiyle makine ile üretim
yöntemleri yaygınlaşmıştır. Blok üretiminde makine kullanımıyla gün geçtikçe
farklı üretim yöntemleri geliştirilmektedir (Şentürk vd. 1996, Onargan ve Köse,
2005, Kulaksız 2007). Doğal taş ocaklarında bol üretiminde farklı yöntemler
kullanılmaktadır. Bunlardan bazıları zincir kollu kesiciler, kayış kollu kesiciler
ve elmas tel kesme yöntemidir. Günümüzde zincir kollu ve kayış kollu kesiciler
yükselen bir kullanım oranına sahip olmasına rağmen Türkiye’ deki çoğu doğal
taş ocağında elmas tel kesme yöntemi yaygın olarak kullanılmaktadır.
Doğal taş blokları satılabilir ve nakliye edilebilir boyutlarda üretilmektedir.
Doğal taş blokları birbirinden ayırt edilebilmeli ve takibinin kolay bir şekilde
yapılması gereklidir. Bu yüzden doğal taş blokları blok takibinden sorumlu kişi
tarafından numaralandırılır. Doğal taş blokları üretildikten sonra stok sahasına
gönderilmektedir. Ticari adları farklı olan bloklar da ayrı stok sahalarına
gönderilerek blok takibi kolaylaştırılabilmektedir. Buna ek olarak süreksizlik ve
çatlak yapısına (kalite) göre çeşitli sınıflamalar da yapılabilmektedir.
Doğal taş blok alımı gerçekleştirenler, stok sahasındaki blokları işletme ile fiyatı
anlaşarak istediği blokları satın almaktadır. Satışı gerçekleştirilen doğal taş
blokları belirli dönemlerde veya doğal taş bloğunu alan kişinin isteği üzerine
belirlenen tarihte ocaktan nakliye edilmektedir. Ocaktan başka bir bölgeye
nakledilecek doğal taş blokları gerek boyut gerekse ağırlık bakımından büyük
olduklarından blokların nakliyesi ağır taşıma araçları ile yapılmaktadır. Bu
taşıma araçlarının karayollarında izin verilen maksimum taşıma kapasitesi yasal
değeri bulunmaktadır. Bu değerin aşılması durumunda çeşitli cezai işlemler
uygulanmaktadır (KTY, 1997).
Satışı yapılan doğal taş bloğunun ocaktan başka bir bölgeye nakliyesi esnasında
nakliye aracı için izin verilen maksimum taşıma kapasitesinin aşılmaması için
blok ağırlıkların belirlenmesi sorumlu kişi için son derece önemlidir. Ocaklarda
5
her bir blok tartılarak ağırlıkları belirlenmektedir. Bu ağırlıklarının
belirlenmesinde ton hassasiyetli kantarlar kullanılmaktadır. Kantar
bulunmayan ocaklarda her bir bloğun en, boy, yükseklik ebatları stok
takibinden sorumlu kişi tarafından belirlenmektedir. Sorumlu kişi tarafından
yaklaşık hacim ve doğal taşın ortalama birim hacim ağırlığı kullanılarak stok
sahasındaki blokların ağırlıkları belirlenmektedir. Blok ağırlığı kantar ile
belirlense de doğal taş blok ebatları sorumlu kişi tarafından ölçülüp not
edilmektedir. Yurt dışı sevkiyatında blokların konteynırlara yerleştirilmesi
işleminde blok ebatlarının belirlenmesi önem arz etmektedir.
Doğal taş blokları üretildikten sonra satışa sunulması için stok sahasına
gönderilir. Satışı gerçekleştirilen bloklara satın alan kişi işaretini koyarak satın
alınan tarih de blok üzerine yazılmaktadır. Doğal taş ocaklarında buna benzer
farklı yöntemler kullanılsa da bu yöntem çoğunlukla kullanılmaktadır.
Doğal taş bloklarının satışı gerçekleştirildikten sonra blokların nakliyesi
satıldığı gün içerisinde ya da farklı günlerde de gerçekleştirilebilmektedir. Doğal
taş bloklarının ocaktan her nakliyesinde blok bilgilerinin sevk fişine girilerek
beyan niteliğinde bir belge oluşturulması zorunludur. (ETKB, 2017) Böylece
doğal taş bloklarının ocaktan nakliyesi sırasında sevk fişine blok numarası,
sevkiyat tarihi ve diğer blok bilgileri de girilerek yasal bir belge oluşturularak
kayıt edilir. Doğal taş blok takibinden sorumlu kişi tarafından tüm bu işlerin
gerçekleştirilmesi oldukça güç olmaktadır. Bu işlerin yapılması esnasında
sorumlu kişi tarafından hata yapılması da kaçınılmazdır. Doğal taş ocaklarında
blok takibinde farklı yöntemler kullanılsa da gelişen teknolojinin bu alanda
kullanılması zor olan blok takibi aşamalarına büyük kolaylıklar sağlayacaktır.
6
3. DOĞAL TAŞ STOK TAKİP PROGRAMI
3.1. Programlama Dili
Gelişen teknoloji ile birlikte bilgisayar kullanımı gün geçtikçe artmaktadır.
Bilgisayarlar için geliştirilmiş yazılımlar hayatımızın her alanında işlerimizi
kolaylaştırmaktadır. Bilgisayar yazılımlarının geliştirilmesi için birçok
programlama dili bulunmaktadır. Bunlardan bazıları:
3.1.1. Java
Sun Microsystems mühendislerinden James Gosling tarafından geliştirilmeye
başlanmış açık kodlu, nesneye yönelik, zeminden bağımsız, yüksek verimli, çok
işlevli, yüksek seviye, adım adım işletilen (yorumlanan-interpreted) bir dildir.
Sun Microsystem’ in şu anda Oracle Corpation ile bağlı ortaklığı bulunmaktadır
ve 1995 yılında Sun Microsystems’ in çekirdek bileşeni olarak piyasaya
sürülmüştür. Bu dil C ve C++' dan birçok sözdizim türetmesine rağmen daha
basit nesne modeli ve daha az düşük seviye olanaklar içerir. Java uygulamaları
bilgisayar mimarisine bağlı olmadan herhangi bir Java Virtual Machine (JVM)'de
çalışabilen tipik bytecode'dur (sınıf dosyası).
Java’ nın derlenmiş java kodunun Java’ yı destekleyen bütün platformlarda
tekrar derlenmeye ihtiyacı olmadan çalışabilmektedir. 2016 yılında bildirilen 9
milyon geliştiricisi ile daha çok istemci sunucu web uygulamaları geliştirmek
için kullanılmakta olan önemli programlama dillerinden birisidir.
Günümüzde kurumsal alanda ve mobil cihazlarda son derece popüler olan Java
özellikle J2SE 1.4 ve 5 sürümü ile masaüstü uygulamalarda da yaygınlaşmaya
başlamıştır (Gosling, James; Joy, Bill; Steele, Guy; Bracha, Gilad; Buckley, Alex,
2014).
7
3.1.2. C
Ken Thompson ve Dennis Ritchie tarafından UNIX İşletim Sistemi’ ni
geliştirebilmek amacıyla AT&T Bell laboratuvarlarında, B dilinden türetilmiş bir
yapısal bir programlama dilidir. Günümüzde neredeyse tüm işletim
sistemlerinin (Microsoft Windows, GNU/Linux, *BSD, MNX) yapımında büyük
oranlarda kullanılmıştır. Halen sistem, sürücü yazılımı, işletim sistemi modülleri
ve hız gerektiren her yerde kullanılan oldukça yaygın ve daha neler yapabileceği
kestirilemeyen çok önemli ve güçlü bir programlama dilidir (Kernighan, Brian
W.; Ritchie ve Dennis M., 1978).
3.1.3. C++
Bell laboratuvarlarından 1979 yılından itibaren Bjarne Stroustrup tarafından
geliştirilmeye başlanmış, C'yi kapsayan ve çok paradigmalı, yaygın olarak
kullanılan, genel amaçlı bir programlama dilidir.
Genellikle her C programı aynı zamanda bir C++ programıdır, ancak her C++
programı bir C programı değildir. Bu durum için bazı istisnalar mevcuttur. C++’ ı
C’ den ayıran özellikler C++’ ın nesne yönelimli kullanılarak programlamaya
olanak tanımasıdır. Sınıflar sayesinde yeni veri türleri yaratılabilir veya varolan
türlerden yenileri türetilebilir. Ayrıca çok biçimlilik sayesinde bir sınıf tanımıyla
yazılmış kod, kalıtım özelliği ile o sınıf türünden türetilmiş yeni sınıflarla da
çalışılabilir (Stroustrup, B., 2004).
3.1.4. Python
Python, nesne yönelimli, yorumlamalı, birimsel (modüler), etkileşimli ve yüksek
seviyeli bir programlama dilidir. Basit söz dizimi, dilin öğrenilmesini ve akılda
kalmasını kolaylaştırmaktadır. Bu da python programlama dilinde söz diziminin
ayrıntıları ile vakit kaybetmeden programlama yapılmaya başlanabilen bir dil
olma özelliği kazandırır.
8
Hemen hemen tüm platformda çalışabilir. (Unix, Linux, Mac, Windows, Amiga,
Symbian). Python ile sistem programlama, kullanıcı arabirimi programlama,
uygulama ve veritabanı yazılımı programlama, ağ programlama ve web
programlama gibi birçok alanda yazılım geliştirilebilmektedir (Guttag, John V.,
2016).
3.1.5. Php
Personel Home Page kelimelerinin kısaltması olan, internet için üretilmiş,
sunucu taraflı, genel amaçlı, geniş kullanım alanlarına sahip, içerisine HTML
gömülebilen bir programlama dilidir. Rasmos Lerford tarafından ilk kez 1995
yılında yaratılan PHP’ nin geliştirilmesi bugün PHP topluluğu tarafından
sürdürülmektedir. Ocak 2013 tarihinde 244 milyondan fazla web sitesi PHP ile
çalışırken, 2.1 milyon web sunucusunda PHP kurulumu bulunmaktaydı.
Günümüzde bu sayı daha fazlasına ulaşmıştır.
PHP kodları, PHP işleme modülü bulunan bir web sunucusu tarafından
yorumlanır ve çıktı olarak web sayfası üretilir. Bu kodlar veriyi işlemek üzere
çağrıldığı gibi doğrudan HTML kodunun içine de gömülebilir. PHP zaman içinde
bir komut satırı arayüzü sunacak şekilde evrilmiştir. PHP-GTK yardımıyla
grafiksel masaüstü uygulaması geliştirmek de mümkündür.
PHP özgür bir yazılım dili olup PHP lisansı ile dağıtılmaktadır. Bu lisans
kullanım şartı kısmında GNU Genel Kamu Lisansı ile örtüşmese de, PHP tüm
web sunuculara ve hemen hemen tüm işletim sistemi ve platforma ücretsiz
olarak yüklenebilir (PHP Manual, 2009).
3.1.6. Visual C#
Microsoft tarafından .NET Teknolojisi için geliştirilmiş yeni nesil, görsel
programlama dilidir.
9
C++ diline yeni eklentiler yapılarak ((C++)++) bir adım daha ileriye götürülmüş
ve tamamen nesne yönelimli olarak tasarlanmış C# dilinin adlandırılmasında, +
karakterlerinin birbirine yakınlaşmış hali ve bir melodi anahtarı olan C# majör
kullanılmıştır.
Nesne yönelimli progralama kavramanın gelişmesine katkıda bulunan en aktif
programlama dillerinden biridir.
Görsel programlama, önceki yıllarda kullanılan temel programlama dillerindeki
bir düzenleyici (editör) ekran üzerine satır satır programlamanın yerine,
Grafiksel Kullanıcı Arabirimi (GUI)’nin ve bu arabirim içerisinde program
geliştirme amacıyla bulunan Entegre Geliştirme Ortamı (IDE) adlı bir araçlar
koleksiyonunun almasıyla ortaya çıkmıştır.
C# ve .NET orta seviyeli programlama dillerindendir. Yani hem makine diline
hem de insan algısına eşit seviyede uzaklıktadır. Buradaki orta ifadesi dilin
gücünü değil makine dili ile günlük konuşma diline olan mesafesini
göstermektedir. Örneğin Visual Basic .NET (VB.NET) yüksek seviyeli bir dildir.
Burada bu dilin insanların yaşantılarında konuşma biçimine yakın şekilde
yazıldığı ifade edilmektedir. Böylece Visual Basic .NET, C# .NET’ ten daha güçlü
bir dil olduğunu söyleyemeyiz.
Programın çalışması istenen bilgisayarlarda framework kurulu olması
gereklidir. Windows 7 ve Windows Vista’ da .NET Framework kuruludur
(Microsoft C# Guide, 2015).
3.1.7. Visual Basic
Microsoft tarafından, Basic programlama dili üzerinde geliştirilmiş, olay
yönlendirmeli, üst seviye, nesne tabanlı ve görsel bir programlama dilidir.
Windows ile tam uyumlu ve öğrenilmesi oldukça kolaydır.
10
Başlangıçta çok basit programların geliştirilmesi için kullanılırken, bu ilgi gün
geçtikçe artarak son halini almıştır (Root, Randal; Romero Sweeney, Mary,
2006).
3.1.8. JavaScript
JavaScript yaygın olarak web tarayıcılarında kullanılmakta olan dinamik bir
programlama dilidir. JavaScript ile yazılan istemci taraflı betikler sayesinde
tarayıcının kullanıcıyla etkileşimde bulunması, tarayıcının kontrol edilmesi,
asenkron bir şekilde sunucu ile iletişime geçilmesi ve web sayfası içeriğinin
değiştirilmesi gibi işlevler sağlanır. JavaScript, Node. js gibi platformlar
sayesinde sunucu tarafında da yaygın olarak kullanılmaktadır.
JavaScript prototip-tabanlı, dinamik türlere ve birinci-sınıf fonksiyonlara sahip
bir betik dilidir. Nesne yönelimli, imperatif ve fonksiyonel programlama
prensiplerine sahiptir.
JavaScript ve Java arasında; isimleri, yazım şekli ve standart kütüphanelerindeki
benzerlikler dışında bir bağlantı yoktur ve iki dilin yaptığı işler çok farklıdır (JS,
2019).
3.2. Tümleşik Geliştirme Ortamı
Tümleşik geliştirme ortamı (İngilizce: Integrated Development Environment,
kısaca IDE), bilgisayar programcılarının hızlı ve rahat bir şekilde yazılım
geliştirmelerini amaçlamaktadır. Yazılım geliştirme sürecini organize eden
birçok araç ile birlikte geliştirme sürecinin verimli kullanılmasına katkıda
bulunan araçların tamamını içerisinde bardındıran bir yazılım türüdür.
Tümleşik geliştirme ortamında olması gereken temel özellikler:
 Programlama diline göre sözdizimi reklendirmesi yapabilen kod yazım
editörü.
11
 Kod dosyalarının hiyerarşik olarak görülebilmesi amacıyla hazırlanmış
gerçek zamanlı bir dizelge.
 Tümleşik bir derleyici, yorumlayıcı ve hata ayıklayıcı.
 Yazılımın derlenmesi, bağlanması, çalışmaya tümüyle hazır hale gelmesi
ve daha birçok ek işi otomatik olarak yapabilmek amacıyla küçük inşa
araçları (TGO, 2016).
Bilgisayar yazılımlarının geliştirilmesi için birçok tümleşik geliştirme ortamı
bulunmaktadır. Bunlardan en bilinenleri:
3.2.1. Eclipse
Eclipse, açık kaynak kodlu ve ve özgür bir tümleşik geliştirme ortamıdır (IDE).
Ana odak noktası Java ve Java ile ilişkili teknolojiler olsa da, esnek yapısı
sayesinde C ve Python gibi farklı diller için de kullanılmaktadır.
2001 yılında IBM tarafından başlatılan proje, Java'nın ana grafik sistemi olan
Swing yerine bulunduğu platformda bulunan özellikleri doğrudan kullanan
SWT'yi kullanarak Java dünyasında tartışmalara yol açmıştır. Hızlı arayüzü, şık
görünümü ve çok kuvvetli özellikleriyle kısa zamanda Java geliştiricileri
arasında en popüler geliştirme ortamı oldu. 2005 yılında Eclipse Projesi'nin
yönetimi Eclipse Vakfı'na bırakılmıştır.
Android geliştirme ortamının önemli bir bileşeni olan Eclipse'in içinde yazılan
programları denemek için öykünücü kurulabilmektedir. Eclipse ortamı, sunulan
eklentilerle işlevleri geliştirilerek birçok alanda kullanılabilmektedir (Eclipse,
2019).
3.2.2. Visual Studio IDE
Microsoft tarafından geliştirilen bir tümleşik geliştirme ortamıdır (IDE).
Microsoft Windows, Windows Mobile, Windows CE, .NET Framework, .NET
Compact Framework ve Microsoft Silverlight tarafından desteklenen tüm
platformlar için yönetilen kod ile birlikte yerel kod ve Windows Forms
12
uygulamaları, web siteleri, web uygulamaları ve web servisleri ile birlikte
konsol ve grafiksel kullanıcı arayüzü uygulamaları geliştirmek için kullanılır.
Visual Studio IntelliSense'in yanı sıra "code refactoring" destekleyen bir kod
editörü içerir. Entegre hata ayıklayıcı, hem kaynak-seviyesinde hem de makine-
seviyesinde çalışır. Diğer yerleşik araçlar, GUI uygulamaları, web tasarımcısı,
sınıf tasarımcısı ve veritabanı şema tasarımcısı yaratabilmek için bir form
tasarımcısı içerir. Hemen hemen her işlevsellik düzeyinde dahil olmak üzere,
kaynak kontrol sistemleri için destek (Subversion ve Visual SourceSafe gibi)
sunan eklentileri kabul eder.
Visual Studio, değişik programlama dillerini destekler, bu da kod editörü ve hata
ayıklayıcısının neredeyse tüm programlama dillerini desteklemesini
sağlamaktadır. Dahili diller C/C++ (Görsel yoluyla C++), VB.NET (Visual Basic
.NET üzerinden), C# (Visual C# ile), ve F# (Visual Studio 2010 itibarıyla)
içermektedir.
Yazılım geliştirme sürecini kolaylaştıran Microsoft Visual Studio IDE ücretli
olarak sunulmaktadır. Ücretli sürümlerinin yanısıra ücretsiz sürümü (Microsoft
Visual Studio Community) de bulunmaktadır (Visual Studio, 2019).
3.2.3. Code::Blocks
Açık kaynak kodlu, özgür bir C++ tümleşik geliştirme ortamıdır. wxWidgets
tabanlı tamamen özelleştirilebilir arabirimiyle, GNU/Linux, Microsoft Windows,
MacOS platformlarında rahatlıkla kullanılabilmektedir. Gelişmiş plugin
desteğiyle kod yazımı esnasında ihtiyaç duyabileceğiniz birçok yardımcı
fonksiyon sunar ve kod üzerinde tam bir hâkimiyet kurmanıza olanak tanır
(Code::Blocks, 2019).
13
3.2.4. Dev-C++
Dev-C++, C ve C++’ da programalama yapılabilen Genel Kamu Lisansı (GNU) adı
altında dağıtılan ücretsiz bir tümleşik geliştirme (IDE) ortamıdır. Dev-C++, tüm
ara birimi delphi programlama dili ile geliştirilmiştir. Proje SourceForge
tarafından barındırılmaktadır.
Dev-C++, genellikle yalnızca Windows programı olarak kabul edilir ancak Linux
sürümü oluşturma girişimleri de bulunmaktadır; başlık dosyaları ve yol
sınırlayıcılar platformlar arasında değiştirilebilmektedir (Orwell, 2011).
3.3. Veritabanı
Veri tabanları birbirleriyle ilişkili bilgilerin depolandığı alanlardır. Bilgi artışıyla
birlikte bilgisayarda bilgi depolama ve bilgiye erişim konularında yeni
yöntemlere ihtiyaç duyulmuştur. Veri tabanları; büyük miktardaki bilgileri
depolamada geleneksel yöntem olan ‘‘dosya-işlem sistemine’’ alternatif olarak
geliştirilmiştir. Telefonlarımızdaki kişi rehberi günlük hayatımızda çok basit bir
şekilde kullandığımız veri tabanı örneği olarak kabul edilebilir. Bunların dışında
internet sitelerindeki üyelik sistemleri, akademik dergilerin ve üniversitelerin
tez yönetim sistemleri de veri tabanı kullanımına örnektir. Veri tabanları
sayesinde bilgilere ulaşır ve onları düzenleyebiliriz. Veri tabanları genellikle
bireysel olarak satın alınamayacak kadar yüksek meblağlara sahip olmasına
karşın; ücretsiz kullanıma açılan akademik veri tabanları da bulunmaktadır.
Akademik veri tabanları aracılığıyla bazen bibliyografik bilgi bazen de tam
metinlere erişmek mümkündür. Veri tabanları, veri tabanı yönetim sistemleri
aracılığıyla oluşturulur ve yönetilir (Alp,S., Özdemir,S. ve Kilitci,A., 2011). Bu
sistemlerden bazıları aşağıdaki gibidir:
3.3.1. Microsoft SQL Server
Microsoft SQL Server’ ı farklı sürümler ile sunmaktadır. Bu sürümler, farklı
özellik setleri içerdiği gibi, farklı kullanıcıları da hedef alır. Bunlardan bazıları,
14
Datacenter, Enterprise, Standard, Web, Workgroup ve Express şeklindedir.
Örneğin SQL Server Web sürümü, web hosting için "low-TCO" (toplamda sahip
olma maliyeti) bir seçenektir. Bir diğer örnek, SQL Server Express sürümü,
çekirdek veritabanı motorunu içeren, ücretsiz bir sürümdür. Veritabanı ve kullanıcı
sayısında bir sınırlama yoktur, ancak 1 işlemci, 1 GB hafıza ve 4 GB veritabanı
dosya limiti bulunmaktadır. Diğer sürümlerin de özelliklerine göre kullanıldığı
yerler, avantaj ve dezavantajları bulunmaktadır (SQL Server, 2019).
3.3.2. PostreSQL
PostgreSQL, veritabanları için ilişkisel modeli kullanan ve SQL standart sorgu
dilini destekleyen bir veritabanı yönetim sistemidir. PostgreSQL aynı zamanda
iyi performans veren, güvenli ve geniş özellikleri olan bir Veri Tabanı Yönetim
Sistemi'dir. Hemen hemen tüm UNIX ya da Unix türevi (Linux, FreeBSD gibi)
işletim sistemlerinde çalışır. Ayrıca NT çekirdekli tüm Windows sistemlerde de
çalıştırılabilir. PostgreSQL ücretsiz ve açık kodludur.
PostgreSQL diğer ticari ya da açık kodlu veritabanlarında bulabileceğiniz
özelliklerin ( Transactions, Subselects, Views, Foreign key referential integrity,
Sophisticated Locking, User-defined types, Inheritance, Rules vd.) hemen hemen
hepsini (ya da daha fazlasını) kapsar.
PostgreSQL'in güvenilirliği kanıtlanmıştır. Her bir sürümü defalarca
kontrollerden geçirilmiş ve her bir beta sürümü en az bir aylık testlere tabi
tutulmuştur. Geniş kullanıcı grubu ve kaynak koduna dünyanın her yerinden
erişilebilir olması nedeniyle olası hatalar çok çabuk kapatılmaktadır.
PostgreSQL'in başarımı her yeni sürümle birlikte artmaktadır. Son çalışmalar,
PostgreSQL’ in belirli koşullarda diğer ticari veritabanları ile aynı performansı
verdiğini göstermektedir (PostreSQL, 2019).
15
3.3.3. Microsoft Access
Microsoft Access ya da Microsoft Office Access Microsoft'un ilişkisel veri tabanı
yönetim sistemidir. Microsoft Access Jet veri tabanı motorunu, grafiksel
kullanıcı arayüzünü ve yazılım araçlarını aynı paketin içinde birleştirir.
Veri tabanı yönetim sistemleri arasına Access çok sonradan girmiş olmasına
rağmen bu alanda önemli ölçüde başarı sağlayarak küçük ölçekli veri tabanları
için çok kullanılan bir paket haline gelmiştir. Bunda, Access'in yazılım
araçlarının yüksek kullanıcı kolaylığına sahip olmasının etkisi büyüktür.
Access'de veri tabanında bulunan nesnelerin birçoğu sihirbazlar yardımıyla
kolayca hazırlanabilir. Çoğu zaman hiç tasarım ortamına girmeden, sadece
sihirbazlar kullanılarak veri tabanı dosyaları hazırlanabilir.
Access'in iki yüzü vardır. Bunlardan birinde hiç program kodu kullanmadan veri
tabanı hazırlamak mümkündür. Bu ortamda hiç programcılık bilgisi olmayan
biri programcılığı öğrenmesine gerek kalmadan kendi veri tabanı dosyalarını
hazırlayabilir. Programcılık bilgisi olanlar Access'de hazırladıkları veri
tabanlarına kod yazarak daha ileri düzey işlemleri yapabilir (Microsoft Access,
2019).
3.3.4. MySQL
MySQL, altı milyondan fazla sistemde yüklü bulunan çoklu iş parçacıklı (multi-
threaded), çok kullanıcılı (multi-user), hızlı ve sağlam bir veri tabanı yönetim
sistemidir.
UNIX, OS/2 ve Windows platformları için ücretsiz dağıtılmakla birlikte ticari
lisans kullanmak isteyenler için de ücretli bir lisans seçeneği de mevcuttur.
Linux altında daha hızlı bir performans sergilemektedir. Kaynak kodu açık olan
MySQL'in pek çok platform için çalıştırılabilir ikilik kod halindeki indirilebilir
sürümleri de mevcuttur. Ayrıca ODBC sürücüleri de bulunduğu için birçok
geliştirme platformunda rahatlıkla kullanılabilir.
16
Geliştiricileri, 500'den fazlası 7.000.000 kayıt içeren 10.000 tablodan oluşan
kendi veritabanlarını (100 gigabyte civarında veri) MySQL'de tuttuklarını
söylüyorlar.
Web sunucularında en çok kullanılan veri tabanı olup ASP, PHP gibi birçok Web
programlama dili ile kullanılabilir.
MySQL, tuttuğu tablolarla çok kullanıcılı sistemlerde söz konusu olan erişim
hakları sorununu başarılı bir şekilde çözmektedir. MySQL'in 4.0 sürümü ile
birlikte "transaction" desteği, 4.1 sürümüyle birlikte de alt sorgu desteği
eklenmiştir.
Ayrıca "veri tutarlılığını (İng. referential integrity)" sağlama işinin programcıya
bırakılması tercih edilmiştir, ancak bu bir dezavantaj olarak görülmeyebilir.
Çünkü pek çok veri tabanı programcısı VTYS'lerdeki veri tutarlılığının esnek
olmayan, zorlayıcı bir özellik olduğunu düşünmektedir (MySQL, 2019).
3.3.5. Oracle
Oracle Database, Oracle firması tarafından geliştirilen ve pazarlaması yapılan,
zaman zaman Oracle RDBMS (relational database management system), Oracle
ilişkisel veritabanı yönetim sistemi (Oracle İVTYS) veya sadece Oracle olarak
anılan, gelişmiş bir ilişkisel veritabanı yönetim sistemidir. Tüm ilişkisel
veritabanı sistemleri gibi büyük miktarda verinin çok kullanıcılı ortamda
depolanmasını ve güvenli bir şekilde erişimini yönetir.
Oracle veritabanı yazılımları özellikle kurumsal alanda kullanılan yaygın bir
veritabanı sistemidir. Oracle çok sayıda araçtan oluşur ve uygulama
geliştiricilerinin kolay ve esnek uygulamalar geliştirmesini sağlar. Oracle’de
diğer veritabanı yönetim sistemlerinde olduğu gibi, stored procedure’lar,
paketler, trigger’ler gibi bileşenler yer alır.
İlk versiyonu 1977 yılında Larry Ellison ve iki arkadaşı tarafından
geliştirilmiştir (Oracle Database, 2019).
17
3.3.6. SQLite
Dünyada en çok dağıtılan ve tavsiye edilen kaynak kodları halka açık, tamamen
C/C++ programlama dilleriyle geliştirilmiş sunucu yazılımı ve yapılandırma
gereksinimi olmayan, işlemsel ve ilişkisel bir SQL veritabanı motorudur. SQLite,
onlarca programlama dili içerisinde rahatlıkla kullanılabilir. Bunlardan bazıları
ASP, BASIC, C#, C, C++, Common Lisp, Curl, D, Delphi, Haskell, Java, Lua,
newLisp, Objective-C, OCaml, Perl, PHP, Python, R, REBOL, Ruby, Scheme,
Smaltalk, Tcl ve Visual Basic'tir (SQLite, 2000).
Bu yazılımın geliştirilmesinde Microsoft Visual Studio Community 2017
(ücretsiz) sürümünde C# dili kullanılmıştır. Ayrıca yazılımda veritabanı
ihtiyacını gidermek amacıyla Microsoft Access 2016 veritabanı kullanılmıştır
(Visual Studio, 2019).
3.4. Algoritma
Algoritma, belli bir bir problemi çözmek veya belirli bir amaca ulaşmak için
tasarlanan yol. Matematikte ve bilgisayar biliminde bir işi yapmak için
tanımlanan, bir başlangıç durumundan başladığında, açıkça belirlenmiş bir son
durumunda sonlanan, sonlu işlemler kümesidir. Genellikle bilgisayar
programlamada kullanılır ve tüm programlama dillerinin temeli algoritmaya
dayanır. Aynı zamanda algoritma tek bir problemi çözecek davranışın, temel
işleri yapan komutların veya deyimlerin adım adım ortaya konulmasıdır. Bu
adımların sıralaması dikkatli bir şekilde yapılmalıdır. Bir problem çözülürken
algoritmik ve sezgisel (herustic) olmak üzere iki yaklaşım vardır. Algoritmik
yaklaşımda da çözüm için olası yöntemlerden en uygun olanı seçilir ve
yapılması gerekenler adım adım ortaya konulur. Algoritmayı belirlemek için;
metinsel olarak düz ifade ve akış diyagramı olmak üzere iki yöntem kullanılır.
Algoritmalar bir programlama dili vasıtasıyla bilgisayarlar tarafından
işletilebilirler.
18
İlk algoitma, El Harezmî tarafından “Hisab el-cebir ve el-mukabala” kitabında
sunulmuştur. Algoritma sözcüğü de El Harezmî’ nin isminin Avrupalılarca
telaffuzundan doğmuştur (Cormen, T. H. ve diğerleri, 2001).
Doğal taş ocaklarında blok takibini gerçekleştirmek üzere veritabanı
kullanılarak bir bilgisayar yazılımı geliştirilmiştir (Şekil 3.1).
Şekil 3.1. Yazılımın algoritması
Geliştirilen yazılımın algoritması Şekil 3.1 ’ de verilmiştir.
3.5. Yazılımın Geliştirilmesi
Geçmişten günümüze geliştirilen yazılımlar, kullanıcı ve veri güvenliğinin
sağlanması amacıyla, programa girmeden önce kullanıcı ad ve şifre bilgileri
istenmektedir. Günümüzce ise güvenliği daha da artırmak için kullanıcıya çeşitli
sorular da sorularak giriş yapılabilmektedir.
19
3.5.1. Kullanıcı Giriş
Geliştirilen bu yazılıma bir uygulamacı, kullanıcı adı ve şifresi ile giriş
yapabilmektedir (Şekil 3.2).
Şekil 3.2. Yazılımın kullanıcı giriş penceresi
Yazılımı başlattığımızda karşımıza çıkan ilk pencere olan kullanıcı giriş
penceresi Şekil 3.2’ de verilmiştir. Kullanıcı adı ve/veya şifre bilgilerinin hatalı
olması durumunda yazılım “Kullanıcı adı ya da şifre hatalı” uyarı mesajı
vermektedir.
3.5.2. Ana Menü
Kullanıcı adı ve şifre bilgilerini girdikten sonra giriş butonuna tıkladığımızda
eğer bilgiler doğru ise yazılımın ana müsünü açılmaktadır (Şekil 3.3).
20
Şekil 3.3. Yazılımın ana menüsü
Yazılıma giriş yapan kullanıcıyı karşılayacak ana menü Şekil 3.3’ de verilmiştir.
Yazılımın ana penceresinde sol tarafta yukarıdan aşağıya sırasıyla; stok ekle,
satış yap ve sevkiyat gerçekleştir seçenekleri bulunmaktadır. Bu ana işlemlerin
yanı sıra ana menünün sağ tarafında sırasıyla kayıt işlemleri ve raporlama
seçenekleri de bulunmaktadır.
3.5.3. Kayıt İşlemleri
Kayıt işlemleri seçeneğinde doğal taş ocağında üretilen taşların ticari isim ve
kaliteleri tanımlanmakta ve doğal taş blok alımı yapacak kişilerin bilgileri de bu
seçenek altında kayıt altına alınmaktadır.
3.5.3.1. Sınıf İşlemleri
Doğal taş madenci işletmeciliğinde genellikle bloğun ticari ad ve kalitesi blok
sınıfını oluşturmaktadır.
Yazılım ilk kez kullanılmaya başlandığında kayıt işlemleri menüsündeki stok
ekle sekmesinde, ocakta üretilen taşların ticari adları ve kalitesi kullanıcı
tarafından kayıt altına alınmaktadır (Şekil 3.4).
21
Şekil 3.4. Yazılımın sınıf ekle penceresi
Ticari Ad: Doğal taş ocak işletmeciliğinde Türkiye’ nin farklı bölgelerinde farklı
renk ve desen hatta aynı jeolojik formasyonda bile farklı renk ve desende doğal
taş blokları üretilmektedir. Böylece birbirinden ayrılan doğal taş blok türlerine
doğal taş madenciliğindeki kişilerce birer ad verilmiştir. Yeni bir doğal taş rengi
ya da deseni ile karşılaşıldığı durumlarda da o yöredeki doğal taş işletmeciliğine
hâkim kişilerce birer ad verilmektedir. Farklı renk ve desendeki bloklara verilen
bu adlar doğal taş madenciliğindeki blolğu tanımlayan ticari adı
oluşturmaktadır.
Kalite: Doğal taş bloklarında kaliteyi belirleyen genellikle iki ana madde
bulunmaktadır:
 Renk ve Desen: Doğal taş bloklarında ana renkten(istenilen) farklı, yer
yer ve dağınık şekilde bulunan kötü renkler, bina, otel vb. projelerde
22
kullanıldığında mimari görünümü bozmaktadır. Bu nedenle proje
sahipleri tarafından doğal taş blokları içerisinde istenilen renge aykırı
renkler istenmemektedir.
 Süreksizlik Sayısı ve Doğrultusu: Doğal taş bloklarında bulunan
süreksizlik, kırık ve çatlak gibi kaya kütlesi özellikleri bloktan alınacak
ürün verimini düşürdüğünden bu özellikler istenmemektedir.
Doğal taş ocaklarında blok takibinden sorumlu kişiler tarafından bu iki ana
maddeye göre blok kalitesi belirlenir. Doğal taş ocak işletmecileri genellikle blok
kalitesini başta en iyi kalite olmak üzere “1-2-3” sayı veya “A-B-C” harf şeklinde
isimlendirmektedir. Geliştirilen yazılımın tüm doğal taş ocak işletmelerinin
ihtayıcını karşılaması amacıyla blok kalitesinin belirlenmesinde hem sayı hem
de harf şeklinde olmak üzere iki seçenek de sunulmuştur.
Birim Hacim Ağırlık: Kayanın ağırlığının hacmine oranıdır. Birimi metrik
sistemde gr/cm³ veya t/m³, uluslararası birim sistemin (SI) de kN/m³’ dür
(Kılıç, R., 2005). Yazılımın stok ekle menüsünde girilen doğal taş blok
boyutlarına ve blok sınıfına bağlı olarak olarak blok ağırlığının otomatik
hesaplanması için birim hacim ağırlık girilmesi gereklidir.
Kayıt işlemleri adı altında bulunan sınıf ekle penceresi Şekil 3.4’ de verilmiştir.
Doğal taş işletmesinde bulunan ticari ad girilir. İşletmede kullanılan blok kalite
türü, buna bağlı olarak kalite seviyesi ve blok hacim ağırlığı da girilerek kaydet
butonuna basıldığında veri tabanına yeni doğal taş sınıfı eklenmektedir. Ocak
üretimi esnasında farklı bir ticari türle karşılaşılması durumunda yine sınıf ekle
menüsünden ekleme işlemi yapılmaktadır.
3.5.3.2. Müşteri İşlemleri
Müşteri penceresinde doğal taş blok alımı gerçekleştirenin ad, soyad, telefon,
adres, e-posta ve sevkiyat tipi bilgileri girilerek kaydet butonuna tıklanmasıyla
bu bilgiler müşteri veritabanına eklenmektedir. Doğal taş ocaklarında blok alımı
23
belirli kişiler tarafından gerçekleştirilmektedir. Ocakta yeni bir doğal taş blok
alımı gerçekleştiren ile karşılaşıldığı durumda bilgiler yine ilk buraya
girilmektedir (Şekil 3.5).
Şekil 3.5. Müşteri penceresi
Kayıt işlemleri menüsü adı altındaki bir diğer seçenek olan müşteri penceresi
Şekil 3.5’ de verilmiştir. Özetle kayıt işlemleri menüsü doğal taş sınıf ve müşteri
işlemlerinin kullanıcı tarafından ayarlandığı menüdür. Yazılımın diğer
bölümlerinde bunlarla ilgili veri girişi yapılmamakta, sadece seçenek sunularak
veri girişi yapılmaktadır. Doğal taş blok alımı yapan şahıs bilgilerinin
güncellenmesi istendiğinde yapılacak işlemler sırasıyla; kayıtlı müşteriler
tablosundan işlem yapılması istenen müşteri seçilir, veriler üzerinde değişiklik
yapılır ve güncelle butonuna tıklanarak müşteri bilgileri güncellenmektedir.
Müşteri silme işlemi yapmak gerektiğinde ise aynı şekilde kaydı silinmesi
istenen müşteri seçilerek kayıt sil butonuna tıklanarak müşteri, veritabanından
silinir.
24
3.5.4. Stok İşlemleri
Doğal taş blokları üretildikten sonra ya stok sahasına gönderilmekte ya da
sipariş üzerine doğrudan ayna satışı gerçekleştirilmektedir. Gerek blok takibi
gerekse doğal taş bloklarının değerinde bir fiyata satılması amacıyla ayna satışı
yerine stoktan satış işletmeler tarafından tercih edilen ve tercih edilmesi
gereken bir durumdur. Ticari boyutlara getirilip stok sahasına gönderilen
blokların satışa sunulması için yazılımda ilk stoğa eklenmesi gerekmektedir. Bir
diğer ifadeyle, üretilen her bir bloğun satışının ve sevkiyatının yapılabilmesi için
stokta kayıt altına alınması zorunludur (Şekil 3.6).
Şekil 3.6. Stok giriş penceresi
Yazılımın ilk ana aşaması olan stok giriş penceresi Şekil 3.6’ da verilmiştir. Doğal
taş madenciliğinde üretilen doğal taş bloklarının her birine numara verilerek
stok sahasına gönderilmektedir. Stok giriş penceresinde, blok numarası
verilerek stok sahasına gönderilen doğal taş blokları için blok numarası, blok
sınıfı, blok boyutları, blok boyutları, blok fotoğrafı eklenir ve kaydet butonuna
basılarak stok için bir veri tabanı oluşturulmaktadır. Stokta bulunan doğal taş
blok bilgilerinde herhangi bir değişiklik yapılması gerektiğinde sağ üstte
bulunan metin kutusuna istenilen blok numarası girilir ve bul seçeneğine
tıklanır. Böylece blok numarasına ait blok bilgileri sol taraftaki metin
kutularında gözükmektedir. Blok bilgilerinde gerekli değişikliklerin yapılması
ile güncelle butonuna tıklanarak o blok numarasına ait bilgiler güncellenmiş
olur.
25
3.5.5. Satış İşlemleri
Doğal taş blok alımı gerçekleştirenler satın alacağı blokları belirlemek için stok
sahasına giderek seçmektedirler. Alıcı istediği renkte ve kalitede bloğu
bulabilmek için stok sahasındaki tüm doğal taş bloklarını tek tek
incelemektedir. Üretim miktarı düşük işletmelerde bu zaman alan bir iş yükü
oluşturmamasına rağmen stok miktarı fazla olan ocaklarda hem stok takibinden
sorumlu kişi hem de alıcı için bu kayıp zaman son derece önemlidir. Doğal taş
blok alımı için ocağa gelmiş bir alıcıya, yazılımın satış penceresinden, stok
sahasına gitmeden bloklar hakkında fotoğraflı bir ön bilgi sunulabilecektir.
Fotoğrafla desteklenmiş bir ön bilgi sunulmasıyla alıcıya hitap etmeyen
blokların incelenmesinin önüne geçilebilecektir. Böylece alıcı sadece almayı
düşündüğü blokları stok sahasında görecek, hitap etmeyen blokların
incelenmesinin önüne geçilebilecektir. Alıcı beğendiği blokların üzerine kendine
özel işaretini koyarak satış gerçekleştirilmektedir (Şekil 3.7).
Şekil 3.7. Satış penceresi
26
Satış işlemlerinin yapıldığı, yazılımın ikinci ana aşaması olan satış penceresi
Şekil 3.7’ de verilmiştir. Stoktakiler alanında bulunan her bir bloğa tıklandığında
o bloğa ait fotoğraf gözükmektedir. Satış penceresinde blok satışını
gerçekleştirebilmek için sırasıyla; stoktakiler alanından satışı yapılan blok,
doğal taş bloğunu satın alan müşteri ve blok satışının yapıldığı tarih seçilerek
satış yap butonuna tıklandığında blok satışı gerçekleştirilmektedir. Satılan blok
stok veri tabanından düşürülüp sevkiyat veri tabanına eklenmektedir.
Stoktakiler alanında istenilen bloğun bulunması zaman alabilmektedir. Bu
yüzden yazılımın sağ üst kısmına, blok numarası girildiğinde sadece istenen
blok stoktakiler alanında otomatik olarak gözükmektedir.
3.5.6. Sevkiyat İşlemleri
Satışı gerçekleştirilmiş ve sevkiyat için bekleyen bloklar sevkiyat penceresinden
kontrol edilebilecektir (Şekil 3.8).
Şekil 3.8. Sevkiyat Penceresi
27
Sevkiyat işlemlerinin yapıldığı, yazılımın üçüncü ve son ana aşaması olan
sevkiyat penceresi Şekil 3.8’ de verilmiştir. Sevkiyata hazır alanında bulunan her
bir bloğa tıklandığında o bloğa ait fotoğraf ekranda gözükmektedir. Sevkiyat
penceresinde blok sevkiyatını gerçekleştirebilmek için sırasıyla; sevkiyata hazır
alanından sevkiyatı yapılan blok, sevkiyat tarihi seçilir ve irsaliye numarası
girilerek sevkiyat yap butonuna tıklandığında blok sevkiyatı
gerçekleştirilmektedir. Özetle stoğa ekleme, satış yapma ve sevkiyat
gerçekleştirme gibi her işlemde bloklar veri tabanına yollanır.
3.5.7. Raporlama
Yazılımın ana menüsündeki bir diğer pencere, raporlama penceresidir.
Raporlama seçeneğinde ise istenilen dönemlerde stok, satış ve sevkiyat
ayrıntıları raporlanmaktadır. Raporlama penceresinde haftalık, aylık ve yıllık
raporlardan ayrı istenen bir tarih aralığı için de raporlar alınabilecektir. Bu
pencerede kullanıcının belirlediği aralıktaki stoktaki bloklar, satışı yapılan
bloklar ve sevkiyat edilen bloklar raporlanıp sorumlu kişi bu raporlar sayesinde
değerlendirme yapabilecektir. Doğal taş ocağında üretim, satış ve sevkiyatın
raporlanması gibi işlemler geliştirilen yazılım sayesinde bu alanlara harcanan
vakitlerin önüne geçecektir.
3.6. Yazılımın Bir Doğal Taş Ocağında Kullanılması
Geliştirilen yazılım Muğla’ nın Kavaklıdere ilçesine bağlı bir doğal taş ocak
işletmesinde kısa süreli olarak test edilmiştir. İşletmede stok takibinden
sorumlu kişi stok takibini Microsoft Excel programı ile yapmaktadır. Stok
takibinden sorumlu kişiye geliştirilen yazılım hakkında kısa bir bilgi verilmiştir.
Stok takibinden sorumlu kişi, geliştirilen yazılımı hali hazırda var olan Excel
programı ile birkaç gün karşılaştırmıştır. Karşılaştırma sonucu geliştirilen
yazılımın kullanımının daha basit, hızlı ve pratik olduğu sonucuna varılmıştır.
Sorumlu kişi yıllardır aynı şablonu kullanarak Excel tablosunda blok takibini
gerçekleştirmektedir. Blok takibinin gerçekleştirilmesinde kullanılan Excel
tablosuna kişinin uzun süre hâkim olmasına rağmen geliştirilen yazılımda daha
28
hızlı işlem yapıldığı vurgulamıştır. Aynı zamanda geliştirilen yazılım kullanıcının
yapabileceği hata oranını da azalttığı belirtilen yorumlar arasındadır. Yazılım
görsel programlama prensibi ile geliştirildiğinden sorumlu kişi tarafından
sıkılmadan kullanılmıştır. Yazılımda blok satışı sırasında stokta bulunan blokları
stok sahasına gitmeden alıcıya bir ön bilgi olması amacıyla gösterilmesi işleri
kolaylaştıracağı vurgulanmıştır. Yazılımdaki sınıf, müşteri işlemleri, stok ekle,
satış yap ve sevkiyat gerçekleştir gibi ilk işlemler denenmiştir. Geliştirilen
yazılım kısa süreli olarak test edilebildiği için uzun zaman aralıklardaki satış,
sevkiyat ve raporlama seçenekleri uygulanamamıştır.
29
4. DEĞERLENDİRME VE SONUÇLAR
Teknolojinin gelişmesi birçok alanda doğrudan hissedilse de madencilik
sektöründe bu gelişmeler kendine çok geç yer bulmaktadır. Yüksek yatırımlar
ile devamlılığını sürdüren madencilik faaliyetleri birçok alanda teknolojik
gelişmelere ihtayaç duymakta fakat bu alandaki çalışmalar ihtiyaç duyulan
hızda olmamaktadır. Türkiye’ deki madencilik faaliyetlerinden biri olan doğal
taş madenciliğinde de teknolojik gelişmelere ihtiyaç duyulmaktadır.
Teknolojinin gelişmesi kendini birçok alanda gösterse de doğal taş
madenciliğinde blok üretimi halen çoğunlukla elmas telli üretim yöntemi ile
yapılmaktadır.
Doğal taş ocaklarında blok takibini yapmak için stok takibinden sorumlu kişiler
Excel programında kendine özel bir takip tablosu oluşturmaktadır. Ocakta
soumlunun değişmesi durumunda yeni gelen sorumlu da kendine göre bir
sistem oluşturmaktadır. Tüm bunların yapılması sorumlu kişinin ayrı bir zaman
harcamasına neden olmaktadır.
Bu çalışmada doğal taş ocaklarında blok takibini gerçekleştirmek üzere
geliştirilen yazılım anlatılmıştır. Yazılım bir doğal taş ocağında birkaç günlüğüne
kullanılmıştır. Yazılım sayesinde doğal taş bloklarının stoğa eklenmesi, satışının
yapılması ve sevkiyatın gerçekleştirilmesi gibi işlemler kontrol edilebilekcektir.
Madencilik faaliyetlerinde ve doğal taş madenciliğinde bu ve benzeri
yazılımlarının geliştirilmesi madencilik faaliyetlerini kolaylaştıracağı göz ardı
edilemez. Çalışmada elde edilen sonuçlar ve değerlendirmeler aşağıdaki gibidir.
 Doğal taş madenciliğinde ocakta blok takibini gerçekleştirmek üzere
geliştirilen yazılımlar araştırılmıştır. Araştırma sonucu bu alandaki
eksikliği gidermek amacıyla doğal taş ocaklarında blok takibinde
kullanılmak üzere bir bilgisayar yazılımı geliştirilmiştir.
 Doğal taş ocağında bloğa numara verilerek takibi gerçekleştirilmekte ve
yazılımda da her bir bloğun takibi bu numara ile yapılmaktadır.
30
 Her bir blok yazılım sayesinde ayrıntlı olarak takip edilebilmektedir.
Ayrıca her bir bloğun fotoğrafı da yazılım ile veri tabanına
kaydedilebilecektir. Doğal taş ocağında blok takibinden sorumlu kişi stok
sahasına gitmeden stoktaki blokları görebilecektir. Bunun yanında
satılan blokları ve sevkiyatı gerçekleştirilen bloklar da yazılım sayesinde
fotoğraf ile görüntülenebilecektir.
 Geliştirilen yazılım ile bloklar ayrıntılı bir şekilde takip edilebilmekte ve
doğal taş bloklarına ait veri karmaşıklığı ortadan kaldırılmıştır. Basit ara
yüzlere sahip bu yazılımın kullanımı görsel programlama sayesinde son
derece kolaydır.
 Doğal taş ocaklarında blok takibinde kullanılmak üzere geliştirilen bu
program halen geliştirme aşamasındadır. Programın eksiklikleri doğal
taş ocaklarında test edilerek belirlenecek, eksiklikler düzeltilmesi için
çalışmalar gerçekleştirilecektir.
31
KAYNAKLAR
Alp,S., Özdemir,S. ve Kilitci,A., 2011. Veritabanı Yönetim Sistemleri. Türkmen
Kitabevi. İstanbul
Berber, E. ve diğerleri, 2019. Doğal Taş Ocaklarında Kullanılmak Üzere
Geliştirilen Bir Yazılım. Türkiye 26. Uluslararası Madencilik Kongresi ve
Sergisi. IMCET 2019, Antalya.
Code::Blocks, 2019. Code::Blocks. Erişim Tarihi: 15.02.2019. Erişim Adresi:
http://www.codeblocks.org/
Cormen, T. H. ve diğerleri, 2001. Introduction To Algorithms (Second Edition).
The MIT Press. Cambridge, Massachusetts London, England.
DTSR, 2018. Doğal Taş Sektörü Raporu. T. C. Ticaret Bakanlığı İhracat Genel
Müdürlüğü. Maden, Metal ve Orman Ürünleri Dairesi, 8s.
Eclipse, 2019. Eclipse Platform Overview. Erişim Tarihi: 05.02.2019. Erişim
Adresi: https://www.eclipse.org/eclipse/eclipse-charter.php
EM, 2016. Mermerci Üretim Yönetim Bilgi Sistemi. Erişim Tarihi: 12.05.2018.
Erişim Adresi: http://www.e-mermerci.com/index. php
ETKB, 2017. Enerji Tabii Kaynaklar Bakanlığı. Maden Yönetmeliği. Sekizinci
Bölüm. Maden Sevkiyatı ve Sevk Fişi. Maden Sevkiyatı. Madde 48. Resmi
Gazete Tarihi: 21.09.2017. Resmi Gazete Sayısı: 30187
Gosling, James; Joy, Bill; Steele, Guy; Bracha, Gilad; Buckley, Alex, 2015. The Java
Language Specification. (Java SE 8 ed.).
Guttag, John V., 2016. Introduction to Computation and Programming Using
Python: With Application to Understanding Data. MIT Press.
İMİB, 2017. Maden Sektörü Görünümü Raporu. İstanbul Maden İhracatçıları
Bilriliği, 20 s.
JS, 2019. JavaScript Guide Intraduction. Erişim Tarihi: 18.01.2019. Erişim
Adresi: https://developer.mozilla.org/en-US/docs/Web/JavaScript
Kernighan, Brian W.; Ritchie ve Dennis M., 1978. The C Programming Language
(1st ed.). Englewood Cliffs, NJ: Prentice Hall. ISBN 978-0-13-110163-0.
Kılıç, R., 2005. Kaya Mekaniği Ders Notları. Ankara Üni. Mühendislik Fak. Jeoloji
Müh. Böl., Ankara, 3 s.
KTY, 1997. Karayolları Trafik Yönetmeliği Sekizinci Bölüm 128. Madde. Resmi
Gazeti Tarihi 18.07.1997. Resmi Gazete Sayısı: 23053 mükerrer
32
Kulaksız, S., 2007. Doğal Taş (Mermer) Maden İşletmeciliği ile İşleme
Teknolojileri. TMMOB Maden Müh. Odası Yayını, Ankara, 634 s.
Microsoft Access, 2019. Veritabanı Yazılım ve Uygulamaları | Microsoft Access –
Micrososft Office. Erişim Tarihi: 17.03.2019. Erişim Adresi:
https://products.office.com/tr-tr/access
Microsft C# Guide, 2015. Introduction to the C# Language and the .NET
Framework. Erişim Tarihi: 18.01.2019. Erişim Adresi:
https://docs.microsoft.com/en-us/dotnet/csharp/getting-
started/introduction-to-the-csharp-language-and-the-net-framework
MySQL, 2019. MySQL Documentation. Erişim Tarihi: 25.04.2019. Erişim Adresi:
https://dev.mysql.com/doc/
OKP, 2015. Onuncu Kalkınma Planı 2014-2018. T. C. Kalkınma Bakanlığı
Madencilik Politikaları Özel İhtisas Komisyonu Raporu, 199 s., Onuncu
Kalkınma Planı, Ankara.
Onargan, T., Köse, H., ve Deliormanlı, A.H., 2005. Mermer. TMMOB Yayınları,
Ankara, 324 s.
Oracle Database, 2019. Oracle Database Overview. Erişim Tarihi: 25.04.2019.
Erişim Adresi: https://www.oracle.com/DATABASE/
Orwell, 2011. Dev-C++. Erişim tarihi: 15.02.2019. erişim adresi:
https://sourceforge.net/projects/orwelldevcpp/
PHP Manual, 2009. Introduction: What can PHP do? Erişim Tarihi: 18.01.2019.
Erişim Adresi: https://php.net/manual/en/intro-whatcando.php
PostreSQL, 2019. About PostgreSQL. Erişim Tarihi: 17.03.2019. Erişim Adresi:
https://www.postgresql.org/about/
PY, 2007. Promer Mermer Üretim ve Sipariş Takip Sistemi. Erişim Tarihi:
12.05.2018. Erişim Adresi: http://www.profyazilim.com/Promer.aspx
RB, 2012. Intramer Mermer Üretim Takip Bilgi Sistemi Yazılımı. Erişim Tarihi:
12.05.2018. Erişim Adresi: http://www.ronbilisim.
com/mermer/faq.html
Stroustrup, B., 2004. The C++ Programming Language (Third Edition and
Special Edition) Bjarne Stroustrup's homepage.
SQLite, 2000. About SQLite. Erişim Tarihi: 25.04.2019. Erişim Adresi:
https://www.sqlite.org/about.html
33
SQL Server, 2019. Microsoft SQL Server 2019’ a Giriş. Erişim Tarihi: 17.03.2019.
Erişim Adresi: https://www.microsoft.com/tr-tr/sql-server/sql-server-
2019
Şentürk, A., Gündüz, L., Tosun, Y.İ., ve Sarışık, A., 1996. Mermer Teknolojisi.
S.D.Ü. Mühendislik Fak. Maden Müh. Böl., Isparta, 242 s.
Root, Randal; Romero Sweeney. Mary, 2006. A Tester’ s Guide to .NET
Programming. p. 3. ISBN 978-1-59059-600-5.
TGO, 2016. Tümleşik Geliştirme Ortamı. Erişim Tarihi: 05.02.2019 Erişim
Adresi:https://tr.wikipedia.org/wiki/T%C3%BCmle%C5%9Fik_geli%C5
%9Ftirme_ortam%C4%B1
Ulusoy, M., 2014. Doğal Taşların Türkiye Madenciliğindeki Önemi ve MTA Doğal
Taş Laboratuvarları. MTA Doğal Kaynaklar ve Ekonomi Bülteni, 17, s. 27-
30.
Urhan, S., ve Şişman, N. 1992. Blok Mermer Üretiminde Kullanılan Tel Kesme
Yönteminin Gelişim ve Önemi. Bilimsel Madencilik Dergisi, 31 (2), s. 35-
39.
US, 2018. Mermer Sektörü ERP. Erişim Tarihi: 16.12.2018. Erişim Adresi:
https://www.uyumsoft.com/ mermer-sektoru/
Visual Studio, 2019. Visual Studio IDE’ ye Hoş Geldiniz. Erişim Tarihi:
05.02.2019. Erişim Adresi: https://docs.microsoft.com/tr-
tr/visualstudio/get-started/visual-studio-ide?view=vs-2019
34
ÖZGEÇMİŞ
Adı Soyadı : Emre BERBER
Doğum Yeri ve Yılı : Muğla, 1997
Medeni Hali : Bekar
Yabancı Dili : İngilizce
E-posta : emreberber@yahoo.com
Eğitim Durumu
Lise : Yatağan Anadolu Lisesi, 2015
Mesleki Staj Deneyimi
Eminoğlu Sbv Mermer İnş.Tur.San. ve Tic.A.Ş. 2017
Yayınlar
Uluslararası, Tam metin bildiri, Doğal Taş Ocaklarında Blok Takibinde
Kullanılmak Üzere Geliştirilen Bir Yazılım, BERBER EMRE,SAKCALI
ALAATTİN,CEVİZCİ HALİM,YAVUZ HÜSEYİN , TÜRKİYE , IMCET’2019 , Türkçe ,
Mühendislik Temel Alanı->Maden Mühendisliği

More Related Content

Featured

Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsSocial Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie Insights
Kurio // The Social Media Age(ncy)
 
Good Stuff Happens in 1:1 Meetings: Why you need them and how to do them well
Good Stuff Happens in 1:1 Meetings: Why you need them and how to do them wellGood Stuff Happens in 1:1 Meetings: Why you need them and how to do them well
Good Stuff Happens in 1:1 Meetings: Why you need them and how to do them well
Saba Software
 
Introduction to C Programming Language
Introduction to C Programming LanguageIntroduction to C Programming Language
Introduction to C Programming Language
Simplilearn
 

Featured (20)

How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024
 
Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsSocial Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie Insights
 
Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024
 
5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary
 
ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd
 
Getting into the tech field. what next
Getting into the tech field. what next Getting into the tech field. what next
Getting into the tech field. what next
 
Google's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentGoogle's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search Intent
 
How to have difficult conversations
How to have difficult conversations How to have difficult conversations
How to have difficult conversations
 
Introduction to Data Science
Introduction to Data ScienceIntroduction to Data Science
Introduction to Data Science
 
Time Management & Productivity - Best Practices
Time Management & Productivity -  Best PracticesTime Management & Productivity -  Best Practices
Time Management & Productivity - Best Practices
 
The six step guide to practical project management
The six step guide to practical project managementThe six step guide to practical project management
The six step guide to practical project management
 
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
 
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
 
12 Ways to Increase Your Influence at Work
12 Ways to Increase Your Influence at Work12 Ways to Increase Your Influence at Work
12 Ways to Increase Your Influence at Work
 
ChatGPT webinar slides
ChatGPT webinar slidesChatGPT webinar slides
ChatGPT webinar slides
 
More than Just Lines on a Map: Best Practices for U.S Bike Routes
More than Just Lines on a Map: Best Practices for U.S Bike RoutesMore than Just Lines on a Map: Best Practices for U.S Bike Routes
More than Just Lines on a Map: Best Practices for U.S Bike Routes
 
Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...
Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...
Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...
 
Barbie - Brand Strategy Presentation
Barbie - Brand Strategy PresentationBarbie - Brand Strategy Presentation
Barbie - Brand Strategy Presentation
 
Good Stuff Happens in 1:1 Meetings: Why you need them and how to do them well
Good Stuff Happens in 1:1 Meetings: Why you need them and how to do them wellGood Stuff Happens in 1:1 Meetings: Why you need them and how to do them well
Good Stuff Happens in 1:1 Meetings: Why you need them and how to do them well
 
Introduction to C Programming Language
Introduction to C Programming LanguageIntroduction to C Programming Language
Introduction to C Programming Language
 

Doğal Taş Ocaklarında Blok Takip Sisteminin Yazılım ile Geliştirilmesi

  • 1. T.C. SÜLEYMAN DEMİREL ÜNİVERSİTESİ MÜHENDİSLİK FAKÜLTESİ MADEN MÜHENDİSLİĞİ BÖLÜMÜ DOĞAL TAŞ OCAKLARINDA BLOK TAKİP SİSTEMİNİN YAZILIM İLE GELİŞTİRİLMESİ BİTİRME PROJESİ Emre BERBER 1511004010 Danışman Doç. Dr. Halim CEVİZCİ ISPARTA - 2019
  • 2. ÖZET DOĞAL TAŞ OCAKLARINDA BLOK TAKİP SİSTEMİNİN YAZILIM İLE GELİŞTİRİLMESİ Emre BERBER 1511004010 Danışman: Doç. Dr. Halim CEVİZCİ Doğal taş madenciliği, madenciliğin bir alt kolu olup maden ihracatında önemli bir potansiyele sahiptir. Doğal taş madenciliğinde gelir, üretilen bloklar ile sağlandığından blok takibi son derece önemlidir. Ocak sorumluluları geçmişten günümüze el ile not tutma, çizelgeleme gibi farklı yöntemler kullanarak doğal taş bloklarının stok takibini gerçekleştirmişlerdir. Doğal taş stoklarının takibi Excel gibi bilgisayar programları ile sağlanmasına rağmen bu gibi programları profesyonel anlamda kullanmak uzmanlık ve tecrübe gerektirmektedir. Bu çalışmada, doğal taş ocaklarındaki blok takibinde yaşanılan bu problemlerin çözümü için görsel ve kullanımı kolay bir stok takip sisteminin geliştirilmesi hedeflenmiştir. C# dili kullanılarak tasarlanan bu yazılım ile her bir bloğun stoğa eklenmesi, satışının yapılması ve sevkiyatının gerçekleştirilmesi gibi işlemler kolayca yapılabilmektedir. ……….. BİTİRME PROJESİ ONAYI ……….. Jüri Üyesi Tarih İmza … / … / 2019 ..................................
  • 3. i İÇİNDEKİLER Sayfa ÖZET .....................................................................................................................................................İ İÇİNDEKİLER.....................................................................................................................................İ TEŞEKKÜR.......................................................................................................................................İİİ 1. GİRİŞ ..............................................................................................................................................1 2. DOĞAL TAŞ OCAKLARINDA BLOK TAKİBİ ......................................................................4 3. DOĞAL TAŞ STOK TAKİP PROGRAMI ................................................................................6 3.1. PROGRAMLAMA DİLİ...............................................................................................................6 3.1.1. Java..................................................................................................................................6 3.1.2. C .......................................................................................................................................7 3.1.3. C++..................................................................................................................................7 3.1.4. Python............................................................................................................................7 3.1.5. Php..................................................................................................................................8 3.1.6. Visual C#.......................................................................................................................8 3.1.7. Visual Basic..................................................................................................................9 3.1.8. JavaScript...................................................................................................................10 3.2. TÜMLEŞİK GELİŞTİRME ORTAMI ........................................................................................10 3.2.1. Eclipse.........................................................................................................................11 3.2.2. Visual Studio IDE....................................................................................................11 3.2.3. Code::Blocks.............................................................................................................12 3.2.4. Dev-C++......................................................................................................................13 3.3. VERİTABANI ..........................................................................................................................13 3.3.1. Microsoft SQL Server ............................................................................................13 3.3.2. PostreSQL..................................................................................................................14 3.3.3. Microsoft Access.....................................................................................................15 3.3.4. MySQL.........................................................................................................................15 3.3.5. Oracle..........................................................................................................................16 3.3.6. SQLite..........................................................................................................................17 3.4. ALGORİTMA...........................................................................................................................17 3.5. YAZILIMIN GELİŞTİRİLMESİ.................................................................................................18
  • 4. ii 3.5.1. Kullanıcı Giriş...........................................................................................................19 3.5.2. Ana Menü...................................................................................................................19 3.5.3. Kayıt İşlemleri .........................................................................................................20 3.5.4. Stok İşlemleri...........................................................................................................24 3.5.5. Satış İşlemleri ..........................................................................................................25 3.5.6. Sevkiyat İşlemleri...................................................................................................26 3.5.7. Raporlama.................................................................................................................27 3.6. YAZILIMIN BİR DOĞAL TAŞ OCAĞINDA KULLANILMASI...................................................27 4. DEĞERLENDİRME VE SONUÇLAR....................................................................................29 KAYNAKLAR..................................................................................................................................31 ÖZGEÇMİŞ.......................................................................................................................................34
  • 5. iii TEŞEKKÜR Hazırlamış olduğum “DOĞALTAŞ OCAKLARINDA BLOK TAKİP SİSTEMİNİN YAZILIM İLE GELİŞTİRİLMESİ” başlıklı bitirme projemin teorik ve deneysel aşamalarının hazırlanması ve tamamlanmasında yardımlarını esirgemeyen Danışmanım Doç. Dr. Halim CEVİZCİ’ ye ve her daim engin bilgisiyle destek olan Dr. Öğr. Üyesi Alaattin SAKCALI’ ya içtenlikle teşekkür ederim. Öğrenim hayatımın ilk gününden bugüne kadar maddi - manevi destekleri ve sevgileri ile hep yanımda olan çok değerli aileme teşekkürlerimi ve şükranlarımı sunarım. Emre BERBER ISPARTA, 2019
  • 6. 1 1. GİRİŞ Doğal taş madenciliği, madenciliğin bir alt kolu olup gerek maden ihracatında gerekse ülke ekonomisine katkısı sayesinde son derece önemli bir yere sahiptir. Doğal taş ürünlerine olan talep gün geçtikçe artmaktadır. Artan talep ile birlikte yatırımcılar, doğal taş üretimi yapan maden ocaklarına daha çok yatırım yapmaya başlamıştır (DTSR, 2018). Doğal taş madenciliği, mermerlerin blok olarak üretimi ve bu blokların işlenmesini kapsayan madencilik faaliyetidir. Mermerlerin yanı sıra farklı doğal taşların da benzer amaçlarla üretilmesi doğal taş sektörünün genişlemesine neden olmuştur (OKP, 2015). Doğal taş madenciliğine olan talep artışı sayesinde yeni yatırımcıların da pazara girmesi, hem ülkemiz hem de dünya ticaretine artan bir ivme kazandırmaya devam etmektedir. Doğal taşlar müşteri talebine göre ocaktan blok şeklinde ya da blok olarak fabrikaya gönderilen doğal taşlar işlenerek fabrika sonunda plaka/fayans olarak ihraç edilmektedir. Fabrikada doğal taş ürünlerine farklı yüzey işleme teknikleri de uygulanarak ürün satışı gerçekleştirimektedir. Tüm bu gelişmeler ve teknikler şüphesiz doğal taş maden ihracat değerlerine de etkilemiştir. Türkiye’ de 2017 yılında doğal taş blok ihracatı 1,1 milyar $ ile maden ihracında en büyük paya sahipken 684,6 milyon $ değerinde işlenmiş doğal taş maden ihracında ikinci sırada yer almıştır (İMİB, 2017). Türkiye doğal taş sektöründe 2500 ruhsatlı doğal taş ocağı bulunmaktadır. Bunlardan ruhsatlı 1500 tanesi aktif olarak üretimine devam etmektedir. Doğal taş sektöründe 200 kadar büyük tesis ile yaklaşık 9000 adet orta ve küçük ölçekli işletme ve atölye kobi niteliğinde olmak üzere faaliyet göstermektedir. Bu sektörde yaklaşık 5000 teknik personel ve 180000 mavi yakalı işçi istihdam edilmektedir (Ulusoy, 2014). Doğal taş rezervlerinden blok üretilirken birçok yöntem kullanılmaktadır. Bunlardan bazıları kollu kesme makineleri ve elmas telli üretim yöntemidir. Teknolojik gelişmelere paralel gelişen kollu kesme makineleri Türkiye’ de bazı
  • 7. 2 ocaklarda kollu kesme makineleri kullanılmaya başlasa da halen elmas telli üretim yöntemi yaygın olarak kullanılmaktadır (Şekil 1.1). Doğal taş kütleleri bulunduğu yerden büyük bloklar halinde kesilip yıkılmaktadır. Doğal taş kütlelerinin nakliyesi ve fabrikada kesilebilmesi için sayalama işlemi ile belirli boyutlara getirilmektedir. Sayalama ile belirli boyutlara getirilen bloklar müşteriye sunulur. Doğal taş blok satışı gerçekleştirildikten sonra nakliye edilmektedir (Urhan ve Şişman, 1992). Şekil 1.1. Elmas telli üretim yapan bir doğal taş ocağının genel bir iş akış diyagramı Doğal taş ocağında elmas telli üretim yöntemi ile blok üretiminin yapıldığı genel bir iş akış diyagramı Şekil 1.1’ de verilmiştir. Üretim yönteminden bağımsız olarak doğal taş blokları doğrudan aynadan satıldığı gibi stok sahasına gönderilerek satış için de bekletilebilmektedir. Geçmişte doğal taş ocağı işletmeleri blok takibini gerçekleştirmek için el ile not tutma gibi ilkel yöntemler kullanmışlardır. Teknolojinin gelişmesi ve buna bağlı olarak bilgisayar kullanımının artmasıyla birlikte doğal taş ocağı işletmeleri blok takibini gerçekleştirmek üzere takip çizelgelerini kullanmışlardır. Hayatımızı kolaylaştırmak için birçok alanda yazılımların geliştirildiği gibi bu doğal taş madenciliğinde de yazılımların geliştirilmesini kaçınılmaz kılmıştır. Doğal taş ocak işletmeleri stok takibi için farklı yazılımlar geliştirilmiştir. Ulusal boyutta doğal taş stok takibi için birçok bilgisayar yazılımı geliştirilmiştir. Bunlardan bazıları Intramer (RB, 2012), Promer (PY, 2007), E-Mermerci üretim yönetim bilgi sistemi (EM, 2016) ve Mermer Sektörü ERP (US, 2018) bu Delik Delme İşlemi Elmas Telin Delikten Geçirilmesi Dağ Kesim İşlemi Yıkım İşlemi Sayalama İşlemi Stok Satış Nakliye
  • 8. 3 yazılımlara örnek olarak gösterilebilir. Bu yazılımlar doğal taş fabrika işletmeciliğinde ürün takibi yapmak amacıyla geliştirilse de E-mermerci üretim yönetim bilgi sistemi ve Intramer yazılımlarının doğal taş ocak modülü de bulunmaktadır. E-mermerci üretim yönetim bilgi sisteminde blok takibi barkodlama sistemi ile yapılmaktadır. Geliştirilen bu yazılımların yanı sıra Türkiye’ de doğal taş blok takibinde genellikle Microsoft Excel yazılımı kullanılmaktadır. Verilerin işlenmesinde Microsoft Excel yazılımı hızlı ve pratik bir elektronik tablo yazılımı olmasına rağmen görsel olarak kullanıcıya hitap etmemektedir. Microsoft Excel yazılımı her bir kullanıcının kendine özel tasarımlarla işlem yapmasına olanak sağlamaktadır. Doğal taş ocak işletmelerinde sorumlu kişi tarafından Microsoft Excel tablo tasarımları hazırlanmaktadır. Bu tasarımlar ve veriler diğer sorumlu kişiler tarafından anlaşılması güç olmaktadır. Ayrıca işletmede blok takibinden sorumlu kişinin ve/veya mühendisin değişmesi durumunda yeni gelecek kişi de kendine özel bir tasarım hazıryacaktır. Microsoft Excel elektronik tablo yazılımı her bir kullanıcının kendisi için bir veritabanı tasarımı oluşturmasına neden olmaktadır. Bu çalışmada doğal taş ocaklarında blok takibini gerçekleştirmek üzere (Berber, E. ve diğerleri, 2019) tarafından geliştirilen yazılımın her aşaması ayrıntılı bir şekilde incelenmiştir. Yazılım her bir kullanıcının kolaylıkla kullanabilmesi için basit ara yüzler kullanılarak geliştirilmiştir. Doğal taş ocağında blok takibinden sorumlu kişi, geliştirilen bu yazılım ile kolaylıkla stok durumunu kontrol edebilecektir. Yazılımın basit ara yüzlere sahip olması nedeniyle kullanımı son derece kolay olmaktadır.
  • 9. 4 2. DOĞAL TAŞ OCAKLARINDA BLOK TAKİBİ Doğal taş ocaklarında bloklar, geçmişten günümüze farklı yöntemler kullanılarak üretilmiştir. Teknolojinin gelişmesiyle makine ile üretim yöntemleri yaygınlaşmıştır. Blok üretiminde makine kullanımıyla gün geçtikçe farklı üretim yöntemleri geliştirilmektedir (Şentürk vd. 1996, Onargan ve Köse, 2005, Kulaksız 2007). Doğal taş ocaklarında bol üretiminde farklı yöntemler kullanılmaktadır. Bunlardan bazıları zincir kollu kesiciler, kayış kollu kesiciler ve elmas tel kesme yöntemidir. Günümüzde zincir kollu ve kayış kollu kesiciler yükselen bir kullanım oranına sahip olmasına rağmen Türkiye’ deki çoğu doğal taş ocağında elmas tel kesme yöntemi yaygın olarak kullanılmaktadır. Doğal taş blokları satılabilir ve nakliye edilebilir boyutlarda üretilmektedir. Doğal taş blokları birbirinden ayırt edilebilmeli ve takibinin kolay bir şekilde yapılması gereklidir. Bu yüzden doğal taş blokları blok takibinden sorumlu kişi tarafından numaralandırılır. Doğal taş blokları üretildikten sonra stok sahasına gönderilmektedir. Ticari adları farklı olan bloklar da ayrı stok sahalarına gönderilerek blok takibi kolaylaştırılabilmektedir. Buna ek olarak süreksizlik ve çatlak yapısına (kalite) göre çeşitli sınıflamalar da yapılabilmektedir. Doğal taş blok alımı gerçekleştirenler, stok sahasındaki blokları işletme ile fiyatı anlaşarak istediği blokları satın almaktadır. Satışı gerçekleştirilen doğal taş blokları belirli dönemlerde veya doğal taş bloğunu alan kişinin isteği üzerine belirlenen tarihte ocaktan nakliye edilmektedir. Ocaktan başka bir bölgeye nakledilecek doğal taş blokları gerek boyut gerekse ağırlık bakımından büyük olduklarından blokların nakliyesi ağır taşıma araçları ile yapılmaktadır. Bu taşıma araçlarının karayollarında izin verilen maksimum taşıma kapasitesi yasal değeri bulunmaktadır. Bu değerin aşılması durumunda çeşitli cezai işlemler uygulanmaktadır (KTY, 1997). Satışı yapılan doğal taş bloğunun ocaktan başka bir bölgeye nakliyesi esnasında nakliye aracı için izin verilen maksimum taşıma kapasitesinin aşılmaması için blok ağırlıkların belirlenmesi sorumlu kişi için son derece önemlidir. Ocaklarda
  • 10. 5 her bir blok tartılarak ağırlıkları belirlenmektedir. Bu ağırlıklarının belirlenmesinde ton hassasiyetli kantarlar kullanılmaktadır. Kantar bulunmayan ocaklarda her bir bloğun en, boy, yükseklik ebatları stok takibinden sorumlu kişi tarafından belirlenmektedir. Sorumlu kişi tarafından yaklaşık hacim ve doğal taşın ortalama birim hacim ağırlığı kullanılarak stok sahasındaki blokların ağırlıkları belirlenmektedir. Blok ağırlığı kantar ile belirlense de doğal taş blok ebatları sorumlu kişi tarafından ölçülüp not edilmektedir. Yurt dışı sevkiyatında blokların konteynırlara yerleştirilmesi işleminde blok ebatlarının belirlenmesi önem arz etmektedir. Doğal taş blokları üretildikten sonra satışa sunulması için stok sahasına gönderilir. Satışı gerçekleştirilen bloklara satın alan kişi işaretini koyarak satın alınan tarih de blok üzerine yazılmaktadır. Doğal taş ocaklarında buna benzer farklı yöntemler kullanılsa da bu yöntem çoğunlukla kullanılmaktadır. Doğal taş bloklarının satışı gerçekleştirildikten sonra blokların nakliyesi satıldığı gün içerisinde ya da farklı günlerde de gerçekleştirilebilmektedir. Doğal taş bloklarının ocaktan her nakliyesinde blok bilgilerinin sevk fişine girilerek beyan niteliğinde bir belge oluşturulması zorunludur. (ETKB, 2017) Böylece doğal taş bloklarının ocaktan nakliyesi sırasında sevk fişine blok numarası, sevkiyat tarihi ve diğer blok bilgileri de girilerek yasal bir belge oluşturularak kayıt edilir. Doğal taş blok takibinden sorumlu kişi tarafından tüm bu işlerin gerçekleştirilmesi oldukça güç olmaktadır. Bu işlerin yapılması esnasında sorumlu kişi tarafından hata yapılması da kaçınılmazdır. Doğal taş ocaklarında blok takibinde farklı yöntemler kullanılsa da gelişen teknolojinin bu alanda kullanılması zor olan blok takibi aşamalarına büyük kolaylıklar sağlayacaktır.
  • 11. 6 3. DOĞAL TAŞ STOK TAKİP PROGRAMI 3.1. Programlama Dili Gelişen teknoloji ile birlikte bilgisayar kullanımı gün geçtikçe artmaktadır. Bilgisayarlar için geliştirilmiş yazılımlar hayatımızın her alanında işlerimizi kolaylaştırmaktadır. Bilgisayar yazılımlarının geliştirilmesi için birçok programlama dili bulunmaktadır. Bunlardan bazıları: 3.1.1. Java Sun Microsystems mühendislerinden James Gosling tarafından geliştirilmeye başlanmış açık kodlu, nesneye yönelik, zeminden bağımsız, yüksek verimli, çok işlevli, yüksek seviye, adım adım işletilen (yorumlanan-interpreted) bir dildir. Sun Microsystem’ in şu anda Oracle Corpation ile bağlı ortaklığı bulunmaktadır ve 1995 yılında Sun Microsystems’ in çekirdek bileşeni olarak piyasaya sürülmüştür. Bu dil C ve C++' dan birçok sözdizim türetmesine rağmen daha basit nesne modeli ve daha az düşük seviye olanaklar içerir. Java uygulamaları bilgisayar mimarisine bağlı olmadan herhangi bir Java Virtual Machine (JVM)'de çalışabilen tipik bytecode'dur (sınıf dosyası). Java’ nın derlenmiş java kodunun Java’ yı destekleyen bütün platformlarda tekrar derlenmeye ihtiyacı olmadan çalışabilmektedir. 2016 yılında bildirilen 9 milyon geliştiricisi ile daha çok istemci sunucu web uygulamaları geliştirmek için kullanılmakta olan önemli programlama dillerinden birisidir. Günümüzde kurumsal alanda ve mobil cihazlarda son derece popüler olan Java özellikle J2SE 1.4 ve 5 sürümü ile masaüstü uygulamalarda da yaygınlaşmaya başlamıştır (Gosling, James; Joy, Bill; Steele, Guy; Bracha, Gilad; Buckley, Alex, 2014).
  • 12. 7 3.1.2. C Ken Thompson ve Dennis Ritchie tarafından UNIX İşletim Sistemi’ ni geliştirebilmek amacıyla AT&T Bell laboratuvarlarında, B dilinden türetilmiş bir yapısal bir programlama dilidir. Günümüzde neredeyse tüm işletim sistemlerinin (Microsoft Windows, GNU/Linux, *BSD, MNX) yapımında büyük oranlarda kullanılmıştır. Halen sistem, sürücü yazılımı, işletim sistemi modülleri ve hız gerektiren her yerde kullanılan oldukça yaygın ve daha neler yapabileceği kestirilemeyen çok önemli ve güçlü bir programlama dilidir (Kernighan, Brian W.; Ritchie ve Dennis M., 1978). 3.1.3. C++ Bell laboratuvarlarından 1979 yılından itibaren Bjarne Stroustrup tarafından geliştirilmeye başlanmış, C'yi kapsayan ve çok paradigmalı, yaygın olarak kullanılan, genel amaçlı bir programlama dilidir. Genellikle her C programı aynı zamanda bir C++ programıdır, ancak her C++ programı bir C programı değildir. Bu durum için bazı istisnalar mevcuttur. C++’ ı C’ den ayıran özellikler C++’ ın nesne yönelimli kullanılarak programlamaya olanak tanımasıdır. Sınıflar sayesinde yeni veri türleri yaratılabilir veya varolan türlerden yenileri türetilebilir. Ayrıca çok biçimlilik sayesinde bir sınıf tanımıyla yazılmış kod, kalıtım özelliği ile o sınıf türünden türetilmiş yeni sınıflarla da çalışılabilir (Stroustrup, B., 2004). 3.1.4. Python Python, nesne yönelimli, yorumlamalı, birimsel (modüler), etkileşimli ve yüksek seviyeli bir programlama dilidir. Basit söz dizimi, dilin öğrenilmesini ve akılda kalmasını kolaylaştırmaktadır. Bu da python programlama dilinde söz diziminin ayrıntıları ile vakit kaybetmeden programlama yapılmaya başlanabilen bir dil olma özelliği kazandırır.
  • 13. 8 Hemen hemen tüm platformda çalışabilir. (Unix, Linux, Mac, Windows, Amiga, Symbian). Python ile sistem programlama, kullanıcı arabirimi programlama, uygulama ve veritabanı yazılımı programlama, ağ programlama ve web programlama gibi birçok alanda yazılım geliştirilebilmektedir (Guttag, John V., 2016). 3.1.5. Php Personel Home Page kelimelerinin kısaltması olan, internet için üretilmiş, sunucu taraflı, genel amaçlı, geniş kullanım alanlarına sahip, içerisine HTML gömülebilen bir programlama dilidir. Rasmos Lerford tarafından ilk kez 1995 yılında yaratılan PHP’ nin geliştirilmesi bugün PHP topluluğu tarafından sürdürülmektedir. Ocak 2013 tarihinde 244 milyondan fazla web sitesi PHP ile çalışırken, 2.1 milyon web sunucusunda PHP kurulumu bulunmaktaydı. Günümüzde bu sayı daha fazlasına ulaşmıştır. PHP kodları, PHP işleme modülü bulunan bir web sunucusu tarafından yorumlanır ve çıktı olarak web sayfası üretilir. Bu kodlar veriyi işlemek üzere çağrıldığı gibi doğrudan HTML kodunun içine de gömülebilir. PHP zaman içinde bir komut satırı arayüzü sunacak şekilde evrilmiştir. PHP-GTK yardımıyla grafiksel masaüstü uygulaması geliştirmek de mümkündür. PHP özgür bir yazılım dili olup PHP lisansı ile dağıtılmaktadır. Bu lisans kullanım şartı kısmında GNU Genel Kamu Lisansı ile örtüşmese de, PHP tüm web sunuculara ve hemen hemen tüm işletim sistemi ve platforma ücretsiz olarak yüklenebilir (PHP Manual, 2009). 3.1.6. Visual C# Microsoft tarafından .NET Teknolojisi için geliştirilmiş yeni nesil, görsel programlama dilidir.
  • 14. 9 C++ diline yeni eklentiler yapılarak ((C++)++) bir adım daha ileriye götürülmüş ve tamamen nesne yönelimli olarak tasarlanmış C# dilinin adlandırılmasında, + karakterlerinin birbirine yakınlaşmış hali ve bir melodi anahtarı olan C# majör kullanılmıştır. Nesne yönelimli progralama kavramanın gelişmesine katkıda bulunan en aktif programlama dillerinden biridir. Görsel programlama, önceki yıllarda kullanılan temel programlama dillerindeki bir düzenleyici (editör) ekran üzerine satır satır programlamanın yerine, Grafiksel Kullanıcı Arabirimi (GUI)’nin ve bu arabirim içerisinde program geliştirme amacıyla bulunan Entegre Geliştirme Ortamı (IDE) adlı bir araçlar koleksiyonunun almasıyla ortaya çıkmıştır. C# ve .NET orta seviyeli programlama dillerindendir. Yani hem makine diline hem de insan algısına eşit seviyede uzaklıktadır. Buradaki orta ifadesi dilin gücünü değil makine dili ile günlük konuşma diline olan mesafesini göstermektedir. Örneğin Visual Basic .NET (VB.NET) yüksek seviyeli bir dildir. Burada bu dilin insanların yaşantılarında konuşma biçimine yakın şekilde yazıldığı ifade edilmektedir. Böylece Visual Basic .NET, C# .NET’ ten daha güçlü bir dil olduğunu söyleyemeyiz. Programın çalışması istenen bilgisayarlarda framework kurulu olması gereklidir. Windows 7 ve Windows Vista’ da .NET Framework kuruludur (Microsoft C# Guide, 2015). 3.1.7. Visual Basic Microsoft tarafından, Basic programlama dili üzerinde geliştirilmiş, olay yönlendirmeli, üst seviye, nesne tabanlı ve görsel bir programlama dilidir. Windows ile tam uyumlu ve öğrenilmesi oldukça kolaydır.
  • 15. 10 Başlangıçta çok basit programların geliştirilmesi için kullanılırken, bu ilgi gün geçtikçe artarak son halini almıştır (Root, Randal; Romero Sweeney, Mary, 2006). 3.1.8. JavaScript JavaScript yaygın olarak web tarayıcılarında kullanılmakta olan dinamik bir programlama dilidir. JavaScript ile yazılan istemci taraflı betikler sayesinde tarayıcının kullanıcıyla etkileşimde bulunması, tarayıcının kontrol edilmesi, asenkron bir şekilde sunucu ile iletişime geçilmesi ve web sayfası içeriğinin değiştirilmesi gibi işlevler sağlanır. JavaScript, Node. js gibi platformlar sayesinde sunucu tarafında da yaygın olarak kullanılmaktadır. JavaScript prototip-tabanlı, dinamik türlere ve birinci-sınıf fonksiyonlara sahip bir betik dilidir. Nesne yönelimli, imperatif ve fonksiyonel programlama prensiplerine sahiptir. JavaScript ve Java arasında; isimleri, yazım şekli ve standart kütüphanelerindeki benzerlikler dışında bir bağlantı yoktur ve iki dilin yaptığı işler çok farklıdır (JS, 2019). 3.2. Tümleşik Geliştirme Ortamı Tümleşik geliştirme ortamı (İngilizce: Integrated Development Environment, kısaca IDE), bilgisayar programcılarının hızlı ve rahat bir şekilde yazılım geliştirmelerini amaçlamaktadır. Yazılım geliştirme sürecini organize eden birçok araç ile birlikte geliştirme sürecinin verimli kullanılmasına katkıda bulunan araçların tamamını içerisinde bardındıran bir yazılım türüdür. Tümleşik geliştirme ortamında olması gereken temel özellikler:  Programlama diline göre sözdizimi reklendirmesi yapabilen kod yazım editörü.
  • 16. 11  Kod dosyalarının hiyerarşik olarak görülebilmesi amacıyla hazırlanmış gerçek zamanlı bir dizelge.  Tümleşik bir derleyici, yorumlayıcı ve hata ayıklayıcı.  Yazılımın derlenmesi, bağlanması, çalışmaya tümüyle hazır hale gelmesi ve daha birçok ek işi otomatik olarak yapabilmek amacıyla küçük inşa araçları (TGO, 2016). Bilgisayar yazılımlarının geliştirilmesi için birçok tümleşik geliştirme ortamı bulunmaktadır. Bunlardan en bilinenleri: 3.2.1. Eclipse Eclipse, açık kaynak kodlu ve ve özgür bir tümleşik geliştirme ortamıdır (IDE). Ana odak noktası Java ve Java ile ilişkili teknolojiler olsa da, esnek yapısı sayesinde C ve Python gibi farklı diller için de kullanılmaktadır. 2001 yılında IBM tarafından başlatılan proje, Java'nın ana grafik sistemi olan Swing yerine bulunduğu platformda bulunan özellikleri doğrudan kullanan SWT'yi kullanarak Java dünyasında tartışmalara yol açmıştır. Hızlı arayüzü, şık görünümü ve çok kuvvetli özellikleriyle kısa zamanda Java geliştiricileri arasında en popüler geliştirme ortamı oldu. 2005 yılında Eclipse Projesi'nin yönetimi Eclipse Vakfı'na bırakılmıştır. Android geliştirme ortamının önemli bir bileşeni olan Eclipse'in içinde yazılan programları denemek için öykünücü kurulabilmektedir. Eclipse ortamı, sunulan eklentilerle işlevleri geliştirilerek birçok alanda kullanılabilmektedir (Eclipse, 2019). 3.2.2. Visual Studio IDE Microsoft tarafından geliştirilen bir tümleşik geliştirme ortamıdır (IDE). Microsoft Windows, Windows Mobile, Windows CE, .NET Framework, .NET Compact Framework ve Microsoft Silverlight tarafından desteklenen tüm platformlar için yönetilen kod ile birlikte yerel kod ve Windows Forms
  • 17. 12 uygulamaları, web siteleri, web uygulamaları ve web servisleri ile birlikte konsol ve grafiksel kullanıcı arayüzü uygulamaları geliştirmek için kullanılır. Visual Studio IntelliSense'in yanı sıra "code refactoring" destekleyen bir kod editörü içerir. Entegre hata ayıklayıcı, hem kaynak-seviyesinde hem de makine- seviyesinde çalışır. Diğer yerleşik araçlar, GUI uygulamaları, web tasarımcısı, sınıf tasarımcısı ve veritabanı şema tasarımcısı yaratabilmek için bir form tasarımcısı içerir. Hemen hemen her işlevsellik düzeyinde dahil olmak üzere, kaynak kontrol sistemleri için destek (Subversion ve Visual SourceSafe gibi) sunan eklentileri kabul eder. Visual Studio, değişik programlama dillerini destekler, bu da kod editörü ve hata ayıklayıcısının neredeyse tüm programlama dillerini desteklemesini sağlamaktadır. Dahili diller C/C++ (Görsel yoluyla C++), VB.NET (Visual Basic .NET üzerinden), C# (Visual C# ile), ve F# (Visual Studio 2010 itibarıyla) içermektedir. Yazılım geliştirme sürecini kolaylaştıran Microsoft Visual Studio IDE ücretli olarak sunulmaktadır. Ücretli sürümlerinin yanısıra ücretsiz sürümü (Microsoft Visual Studio Community) de bulunmaktadır (Visual Studio, 2019). 3.2.3. Code::Blocks Açık kaynak kodlu, özgür bir C++ tümleşik geliştirme ortamıdır. wxWidgets tabanlı tamamen özelleştirilebilir arabirimiyle, GNU/Linux, Microsoft Windows, MacOS platformlarında rahatlıkla kullanılabilmektedir. Gelişmiş plugin desteğiyle kod yazımı esnasında ihtiyaç duyabileceğiniz birçok yardımcı fonksiyon sunar ve kod üzerinde tam bir hâkimiyet kurmanıza olanak tanır (Code::Blocks, 2019).
  • 18. 13 3.2.4. Dev-C++ Dev-C++, C ve C++’ da programalama yapılabilen Genel Kamu Lisansı (GNU) adı altında dağıtılan ücretsiz bir tümleşik geliştirme (IDE) ortamıdır. Dev-C++, tüm ara birimi delphi programlama dili ile geliştirilmiştir. Proje SourceForge tarafından barındırılmaktadır. Dev-C++, genellikle yalnızca Windows programı olarak kabul edilir ancak Linux sürümü oluşturma girişimleri de bulunmaktadır; başlık dosyaları ve yol sınırlayıcılar platformlar arasında değiştirilebilmektedir (Orwell, 2011). 3.3. Veritabanı Veri tabanları birbirleriyle ilişkili bilgilerin depolandığı alanlardır. Bilgi artışıyla birlikte bilgisayarda bilgi depolama ve bilgiye erişim konularında yeni yöntemlere ihtiyaç duyulmuştur. Veri tabanları; büyük miktardaki bilgileri depolamada geleneksel yöntem olan ‘‘dosya-işlem sistemine’’ alternatif olarak geliştirilmiştir. Telefonlarımızdaki kişi rehberi günlük hayatımızda çok basit bir şekilde kullandığımız veri tabanı örneği olarak kabul edilebilir. Bunların dışında internet sitelerindeki üyelik sistemleri, akademik dergilerin ve üniversitelerin tez yönetim sistemleri de veri tabanı kullanımına örnektir. Veri tabanları sayesinde bilgilere ulaşır ve onları düzenleyebiliriz. Veri tabanları genellikle bireysel olarak satın alınamayacak kadar yüksek meblağlara sahip olmasına karşın; ücretsiz kullanıma açılan akademik veri tabanları da bulunmaktadır. Akademik veri tabanları aracılığıyla bazen bibliyografik bilgi bazen de tam metinlere erişmek mümkündür. Veri tabanları, veri tabanı yönetim sistemleri aracılığıyla oluşturulur ve yönetilir (Alp,S., Özdemir,S. ve Kilitci,A., 2011). Bu sistemlerden bazıları aşağıdaki gibidir: 3.3.1. Microsoft SQL Server Microsoft SQL Server’ ı farklı sürümler ile sunmaktadır. Bu sürümler, farklı özellik setleri içerdiği gibi, farklı kullanıcıları da hedef alır. Bunlardan bazıları,
  • 19. 14 Datacenter, Enterprise, Standard, Web, Workgroup ve Express şeklindedir. Örneğin SQL Server Web sürümü, web hosting için "low-TCO" (toplamda sahip olma maliyeti) bir seçenektir. Bir diğer örnek, SQL Server Express sürümü, çekirdek veritabanı motorunu içeren, ücretsiz bir sürümdür. Veritabanı ve kullanıcı sayısında bir sınırlama yoktur, ancak 1 işlemci, 1 GB hafıza ve 4 GB veritabanı dosya limiti bulunmaktadır. Diğer sürümlerin de özelliklerine göre kullanıldığı yerler, avantaj ve dezavantajları bulunmaktadır (SQL Server, 2019). 3.3.2. PostreSQL PostgreSQL, veritabanları için ilişkisel modeli kullanan ve SQL standart sorgu dilini destekleyen bir veritabanı yönetim sistemidir. PostgreSQL aynı zamanda iyi performans veren, güvenli ve geniş özellikleri olan bir Veri Tabanı Yönetim Sistemi'dir. Hemen hemen tüm UNIX ya da Unix türevi (Linux, FreeBSD gibi) işletim sistemlerinde çalışır. Ayrıca NT çekirdekli tüm Windows sistemlerde de çalıştırılabilir. PostgreSQL ücretsiz ve açık kodludur. PostgreSQL diğer ticari ya da açık kodlu veritabanlarında bulabileceğiniz özelliklerin ( Transactions, Subselects, Views, Foreign key referential integrity, Sophisticated Locking, User-defined types, Inheritance, Rules vd.) hemen hemen hepsini (ya da daha fazlasını) kapsar. PostgreSQL'in güvenilirliği kanıtlanmıştır. Her bir sürümü defalarca kontrollerden geçirilmiş ve her bir beta sürümü en az bir aylık testlere tabi tutulmuştur. Geniş kullanıcı grubu ve kaynak koduna dünyanın her yerinden erişilebilir olması nedeniyle olası hatalar çok çabuk kapatılmaktadır. PostgreSQL'in başarımı her yeni sürümle birlikte artmaktadır. Son çalışmalar, PostgreSQL’ in belirli koşullarda diğer ticari veritabanları ile aynı performansı verdiğini göstermektedir (PostreSQL, 2019).
  • 20. 15 3.3.3. Microsoft Access Microsoft Access ya da Microsoft Office Access Microsoft'un ilişkisel veri tabanı yönetim sistemidir. Microsoft Access Jet veri tabanı motorunu, grafiksel kullanıcı arayüzünü ve yazılım araçlarını aynı paketin içinde birleştirir. Veri tabanı yönetim sistemleri arasına Access çok sonradan girmiş olmasına rağmen bu alanda önemli ölçüde başarı sağlayarak küçük ölçekli veri tabanları için çok kullanılan bir paket haline gelmiştir. Bunda, Access'in yazılım araçlarının yüksek kullanıcı kolaylığına sahip olmasının etkisi büyüktür. Access'de veri tabanında bulunan nesnelerin birçoğu sihirbazlar yardımıyla kolayca hazırlanabilir. Çoğu zaman hiç tasarım ortamına girmeden, sadece sihirbazlar kullanılarak veri tabanı dosyaları hazırlanabilir. Access'in iki yüzü vardır. Bunlardan birinde hiç program kodu kullanmadan veri tabanı hazırlamak mümkündür. Bu ortamda hiç programcılık bilgisi olmayan biri programcılığı öğrenmesine gerek kalmadan kendi veri tabanı dosyalarını hazırlayabilir. Programcılık bilgisi olanlar Access'de hazırladıkları veri tabanlarına kod yazarak daha ileri düzey işlemleri yapabilir (Microsoft Access, 2019). 3.3.4. MySQL MySQL, altı milyondan fazla sistemde yüklü bulunan çoklu iş parçacıklı (multi- threaded), çok kullanıcılı (multi-user), hızlı ve sağlam bir veri tabanı yönetim sistemidir. UNIX, OS/2 ve Windows platformları için ücretsiz dağıtılmakla birlikte ticari lisans kullanmak isteyenler için de ücretli bir lisans seçeneği de mevcuttur. Linux altında daha hızlı bir performans sergilemektedir. Kaynak kodu açık olan MySQL'in pek çok platform için çalıştırılabilir ikilik kod halindeki indirilebilir sürümleri de mevcuttur. Ayrıca ODBC sürücüleri de bulunduğu için birçok geliştirme platformunda rahatlıkla kullanılabilir.
  • 21. 16 Geliştiricileri, 500'den fazlası 7.000.000 kayıt içeren 10.000 tablodan oluşan kendi veritabanlarını (100 gigabyte civarında veri) MySQL'de tuttuklarını söylüyorlar. Web sunucularında en çok kullanılan veri tabanı olup ASP, PHP gibi birçok Web programlama dili ile kullanılabilir. MySQL, tuttuğu tablolarla çok kullanıcılı sistemlerde söz konusu olan erişim hakları sorununu başarılı bir şekilde çözmektedir. MySQL'in 4.0 sürümü ile birlikte "transaction" desteği, 4.1 sürümüyle birlikte de alt sorgu desteği eklenmiştir. Ayrıca "veri tutarlılığını (İng. referential integrity)" sağlama işinin programcıya bırakılması tercih edilmiştir, ancak bu bir dezavantaj olarak görülmeyebilir. Çünkü pek çok veri tabanı programcısı VTYS'lerdeki veri tutarlılığının esnek olmayan, zorlayıcı bir özellik olduğunu düşünmektedir (MySQL, 2019). 3.3.5. Oracle Oracle Database, Oracle firması tarafından geliştirilen ve pazarlaması yapılan, zaman zaman Oracle RDBMS (relational database management system), Oracle ilişkisel veritabanı yönetim sistemi (Oracle İVTYS) veya sadece Oracle olarak anılan, gelişmiş bir ilişkisel veritabanı yönetim sistemidir. Tüm ilişkisel veritabanı sistemleri gibi büyük miktarda verinin çok kullanıcılı ortamda depolanmasını ve güvenli bir şekilde erişimini yönetir. Oracle veritabanı yazılımları özellikle kurumsal alanda kullanılan yaygın bir veritabanı sistemidir. Oracle çok sayıda araçtan oluşur ve uygulama geliştiricilerinin kolay ve esnek uygulamalar geliştirmesini sağlar. Oracle’de diğer veritabanı yönetim sistemlerinde olduğu gibi, stored procedure’lar, paketler, trigger’ler gibi bileşenler yer alır. İlk versiyonu 1977 yılında Larry Ellison ve iki arkadaşı tarafından geliştirilmiştir (Oracle Database, 2019).
  • 22. 17 3.3.6. SQLite Dünyada en çok dağıtılan ve tavsiye edilen kaynak kodları halka açık, tamamen C/C++ programlama dilleriyle geliştirilmiş sunucu yazılımı ve yapılandırma gereksinimi olmayan, işlemsel ve ilişkisel bir SQL veritabanı motorudur. SQLite, onlarca programlama dili içerisinde rahatlıkla kullanılabilir. Bunlardan bazıları ASP, BASIC, C#, C, C++, Common Lisp, Curl, D, Delphi, Haskell, Java, Lua, newLisp, Objective-C, OCaml, Perl, PHP, Python, R, REBOL, Ruby, Scheme, Smaltalk, Tcl ve Visual Basic'tir (SQLite, 2000). Bu yazılımın geliştirilmesinde Microsoft Visual Studio Community 2017 (ücretsiz) sürümünde C# dili kullanılmıştır. Ayrıca yazılımda veritabanı ihtiyacını gidermek amacıyla Microsoft Access 2016 veritabanı kullanılmıştır (Visual Studio, 2019). 3.4. Algoritma Algoritma, belli bir bir problemi çözmek veya belirli bir amaca ulaşmak için tasarlanan yol. Matematikte ve bilgisayar biliminde bir işi yapmak için tanımlanan, bir başlangıç durumundan başladığında, açıkça belirlenmiş bir son durumunda sonlanan, sonlu işlemler kümesidir. Genellikle bilgisayar programlamada kullanılır ve tüm programlama dillerinin temeli algoritmaya dayanır. Aynı zamanda algoritma tek bir problemi çözecek davranışın, temel işleri yapan komutların veya deyimlerin adım adım ortaya konulmasıdır. Bu adımların sıralaması dikkatli bir şekilde yapılmalıdır. Bir problem çözülürken algoritmik ve sezgisel (herustic) olmak üzere iki yaklaşım vardır. Algoritmik yaklaşımda da çözüm için olası yöntemlerden en uygun olanı seçilir ve yapılması gerekenler adım adım ortaya konulur. Algoritmayı belirlemek için; metinsel olarak düz ifade ve akış diyagramı olmak üzere iki yöntem kullanılır. Algoritmalar bir programlama dili vasıtasıyla bilgisayarlar tarafından işletilebilirler.
  • 23. 18 İlk algoitma, El Harezmî tarafından “Hisab el-cebir ve el-mukabala” kitabında sunulmuştur. Algoritma sözcüğü de El Harezmî’ nin isminin Avrupalılarca telaffuzundan doğmuştur (Cormen, T. H. ve diğerleri, 2001). Doğal taş ocaklarında blok takibini gerçekleştirmek üzere veritabanı kullanılarak bir bilgisayar yazılımı geliştirilmiştir (Şekil 3.1). Şekil 3.1. Yazılımın algoritması Geliştirilen yazılımın algoritması Şekil 3.1 ’ de verilmiştir. 3.5. Yazılımın Geliştirilmesi Geçmişten günümüze geliştirilen yazılımlar, kullanıcı ve veri güvenliğinin sağlanması amacıyla, programa girmeden önce kullanıcı ad ve şifre bilgileri istenmektedir. Günümüzce ise güvenliği daha da artırmak için kullanıcıya çeşitli sorular da sorularak giriş yapılabilmektedir.
  • 24. 19 3.5.1. Kullanıcı Giriş Geliştirilen bu yazılıma bir uygulamacı, kullanıcı adı ve şifresi ile giriş yapabilmektedir (Şekil 3.2). Şekil 3.2. Yazılımın kullanıcı giriş penceresi Yazılımı başlattığımızda karşımıza çıkan ilk pencere olan kullanıcı giriş penceresi Şekil 3.2’ de verilmiştir. Kullanıcı adı ve/veya şifre bilgilerinin hatalı olması durumunda yazılım “Kullanıcı adı ya da şifre hatalı” uyarı mesajı vermektedir. 3.5.2. Ana Menü Kullanıcı adı ve şifre bilgilerini girdikten sonra giriş butonuna tıkladığımızda eğer bilgiler doğru ise yazılımın ana müsünü açılmaktadır (Şekil 3.3).
  • 25. 20 Şekil 3.3. Yazılımın ana menüsü Yazılıma giriş yapan kullanıcıyı karşılayacak ana menü Şekil 3.3’ de verilmiştir. Yazılımın ana penceresinde sol tarafta yukarıdan aşağıya sırasıyla; stok ekle, satış yap ve sevkiyat gerçekleştir seçenekleri bulunmaktadır. Bu ana işlemlerin yanı sıra ana menünün sağ tarafında sırasıyla kayıt işlemleri ve raporlama seçenekleri de bulunmaktadır. 3.5.3. Kayıt İşlemleri Kayıt işlemleri seçeneğinde doğal taş ocağında üretilen taşların ticari isim ve kaliteleri tanımlanmakta ve doğal taş blok alımı yapacak kişilerin bilgileri de bu seçenek altında kayıt altına alınmaktadır. 3.5.3.1. Sınıf İşlemleri Doğal taş madenci işletmeciliğinde genellikle bloğun ticari ad ve kalitesi blok sınıfını oluşturmaktadır. Yazılım ilk kez kullanılmaya başlandığında kayıt işlemleri menüsündeki stok ekle sekmesinde, ocakta üretilen taşların ticari adları ve kalitesi kullanıcı tarafından kayıt altına alınmaktadır (Şekil 3.4).
  • 26. 21 Şekil 3.4. Yazılımın sınıf ekle penceresi Ticari Ad: Doğal taş ocak işletmeciliğinde Türkiye’ nin farklı bölgelerinde farklı renk ve desen hatta aynı jeolojik formasyonda bile farklı renk ve desende doğal taş blokları üretilmektedir. Böylece birbirinden ayrılan doğal taş blok türlerine doğal taş madenciliğindeki kişilerce birer ad verilmiştir. Yeni bir doğal taş rengi ya da deseni ile karşılaşıldığı durumlarda da o yöredeki doğal taş işletmeciliğine hâkim kişilerce birer ad verilmektedir. Farklı renk ve desendeki bloklara verilen bu adlar doğal taş madenciliğindeki blolğu tanımlayan ticari adı oluşturmaktadır. Kalite: Doğal taş bloklarında kaliteyi belirleyen genellikle iki ana madde bulunmaktadır:  Renk ve Desen: Doğal taş bloklarında ana renkten(istenilen) farklı, yer yer ve dağınık şekilde bulunan kötü renkler, bina, otel vb. projelerde
  • 27. 22 kullanıldığında mimari görünümü bozmaktadır. Bu nedenle proje sahipleri tarafından doğal taş blokları içerisinde istenilen renge aykırı renkler istenmemektedir.  Süreksizlik Sayısı ve Doğrultusu: Doğal taş bloklarında bulunan süreksizlik, kırık ve çatlak gibi kaya kütlesi özellikleri bloktan alınacak ürün verimini düşürdüğünden bu özellikler istenmemektedir. Doğal taş ocaklarında blok takibinden sorumlu kişiler tarafından bu iki ana maddeye göre blok kalitesi belirlenir. Doğal taş ocak işletmecileri genellikle blok kalitesini başta en iyi kalite olmak üzere “1-2-3” sayı veya “A-B-C” harf şeklinde isimlendirmektedir. Geliştirilen yazılımın tüm doğal taş ocak işletmelerinin ihtayıcını karşılaması amacıyla blok kalitesinin belirlenmesinde hem sayı hem de harf şeklinde olmak üzere iki seçenek de sunulmuştur. Birim Hacim Ağırlık: Kayanın ağırlığının hacmine oranıdır. Birimi metrik sistemde gr/cm³ veya t/m³, uluslararası birim sistemin (SI) de kN/m³’ dür (Kılıç, R., 2005). Yazılımın stok ekle menüsünde girilen doğal taş blok boyutlarına ve blok sınıfına bağlı olarak olarak blok ağırlığının otomatik hesaplanması için birim hacim ağırlık girilmesi gereklidir. Kayıt işlemleri adı altında bulunan sınıf ekle penceresi Şekil 3.4’ de verilmiştir. Doğal taş işletmesinde bulunan ticari ad girilir. İşletmede kullanılan blok kalite türü, buna bağlı olarak kalite seviyesi ve blok hacim ağırlığı da girilerek kaydet butonuna basıldığında veri tabanına yeni doğal taş sınıfı eklenmektedir. Ocak üretimi esnasında farklı bir ticari türle karşılaşılması durumunda yine sınıf ekle menüsünden ekleme işlemi yapılmaktadır. 3.5.3.2. Müşteri İşlemleri Müşteri penceresinde doğal taş blok alımı gerçekleştirenin ad, soyad, telefon, adres, e-posta ve sevkiyat tipi bilgileri girilerek kaydet butonuna tıklanmasıyla bu bilgiler müşteri veritabanına eklenmektedir. Doğal taş ocaklarında blok alımı
  • 28. 23 belirli kişiler tarafından gerçekleştirilmektedir. Ocakta yeni bir doğal taş blok alımı gerçekleştiren ile karşılaşıldığı durumda bilgiler yine ilk buraya girilmektedir (Şekil 3.5). Şekil 3.5. Müşteri penceresi Kayıt işlemleri menüsü adı altındaki bir diğer seçenek olan müşteri penceresi Şekil 3.5’ de verilmiştir. Özetle kayıt işlemleri menüsü doğal taş sınıf ve müşteri işlemlerinin kullanıcı tarafından ayarlandığı menüdür. Yazılımın diğer bölümlerinde bunlarla ilgili veri girişi yapılmamakta, sadece seçenek sunularak veri girişi yapılmaktadır. Doğal taş blok alımı yapan şahıs bilgilerinin güncellenmesi istendiğinde yapılacak işlemler sırasıyla; kayıtlı müşteriler tablosundan işlem yapılması istenen müşteri seçilir, veriler üzerinde değişiklik yapılır ve güncelle butonuna tıklanarak müşteri bilgileri güncellenmektedir. Müşteri silme işlemi yapmak gerektiğinde ise aynı şekilde kaydı silinmesi istenen müşteri seçilerek kayıt sil butonuna tıklanarak müşteri, veritabanından silinir.
  • 29. 24 3.5.4. Stok İşlemleri Doğal taş blokları üretildikten sonra ya stok sahasına gönderilmekte ya da sipariş üzerine doğrudan ayna satışı gerçekleştirilmektedir. Gerek blok takibi gerekse doğal taş bloklarının değerinde bir fiyata satılması amacıyla ayna satışı yerine stoktan satış işletmeler tarafından tercih edilen ve tercih edilmesi gereken bir durumdur. Ticari boyutlara getirilip stok sahasına gönderilen blokların satışa sunulması için yazılımda ilk stoğa eklenmesi gerekmektedir. Bir diğer ifadeyle, üretilen her bir bloğun satışının ve sevkiyatının yapılabilmesi için stokta kayıt altına alınması zorunludur (Şekil 3.6). Şekil 3.6. Stok giriş penceresi Yazılımın ilk ana aşaması olan stok giriş penceresi Şekil 3.6’ da verilmiştir. Doğal taş madenciliğinde üretilen doğal taş bloklarının her birine numara verilerek stok sahasına gönderilmektedir. Stok giriş penceresinde, blok numarası verilerek stok sahasına gönderilen doğal taş blokları için blok numarası, blok sınıfı, blok boyutları, blok boyutları, blok fotoğrafı eklenir ve kaydet butonuna basılarak stok için bir veri tabanı oluşturulmaktadır. Stokta bulunan doğal taş blok bilgilerinde herhangi bir değişiklik yapılması gerektiğinde sağ üstte bulunan metin kutusuna istenilen blok numarası girilir ve bul seçeneğine tıklanır. Böylece blok numarasına ait blok bilgileri sol taraftaki metin kutularında gözükmektedir. Blok bilgilerinde gerekli değişikliklerin yapılması ile güncelle butonuna tıklanarak o blok numarasına ait bilgiler güncellenmiş olur.
  • 30. 25 3.5.5. Satış İşlemleri Doğal taş blok alımı gerçekleştirenler satın alacağı blokları belirlemek için stok sahasına giderek seçmektedirler. Alıcı istediği renkte ve kalitede bloğu bulabilmek için stok sahasındaki tüm doğal taş bloklarını tek tek incelemektedir. Üretim miktarı düşük işletmelerde bu zaman alan bir iş yükü oluşturmamasına rağmen stok miktarı fazla olan ocaklarda hem stok takibinden sorumlu kişi hem de alıcı için bu kayıp zaman son derece önemlidir. Doğal taş blok alımı için ocağa gelmiş bir alıcıya, yazılımın satış penceresinden, stok sahasına gitmeden bloklar hakkında fotoğraflı bir ön bilgi sunulabilecektir. Fotoğrafla desteklenmiş bir ön bilgi sunulmasıyla alıcıya hitap etmeyen blokların incelenmesinin önüne geçilebilecektir. Böylece alıcı sadece almayı düşündüğü blokları stok sahasında görecek, hitap etmeyen blokların incelenmesinin önüne geçilebilecektir. Alıcı beğendiği blokların üzerine kendine özel işaretini koyarak satış gerçekleştirilmektedir (Şekil 3.7). Şekil 3.7. Satış penceresi
  • 31. 26 Satış işlemlerinin yapıldığı, yazılımın ikinci ana aşaması olan satış penceresi Şekil 3.7’ de verilmiştir. Stoktakiler alanında bulunan her bir bloğa tıklandığında o bloğa ait fotoğraf gözükmektedir. Satış penceresinde blok satışını gerçekleştirebilmek için sırasıyla; stoktakiler alanından satışı yapılan blok, doğal taş bloğunu satın alan müşteri ve blok satışının yapıldığı tarih seçilerek satış yap butonuna tıklandığında blok satışı gerçekleştirilmektedir. Satılan blok stok veri tabanından düşürülüp sevkiyat veri tabanına eklenmektedir. Stoktakiler alanında istenilen bloğun bulunması zaman alabilmektedir. Bu yüzden yazılımın sağ üst kısmına, blok numarası girildiğinde sadece istenen blok stoktakiler alanında otomatik olarak gözükmektedir. 3.5.6. Sevkiyat İşlemleri Satışı gerçekleştirilmiş ve sevkiyat için bekleyen bloklar sevkiyat penceresinden kontrol edilebilecektir (Şekil 3.8). Şekil 3.8. Sevkiyat Penceresi
  • 32. 27 Sevkiyat işlemlerinin yapıldığı, yazılımın üçüncü ve son ana aşaması olan sevkiyat penceresi Şekil 3.8’ de verilmiştir. Sevkiyata hazır alanında bulunan her bir bloğa tıklandığında o bloğa ait fotoğraf ekranda gözükmektedir. Sevkiyat penceresinde blok sevkiyatını gerçekleştirebilmek için sırasıyla; sevkiyata hazır alanından sevkiyatı yapılan blok, sevkiyat tarihi seçilir ve irsaliye numarası girilerek sevkiyat yap butonuna tıklandığında blok sevkiyatı gerçekleştirilmektedir. Özetle stoğa ekleme, satış yapma ve sevkiyat gerçekleştirme gibi her işlemde bloklar veri tabanına yollanır. 3.5.7. Raporlama Yazılımın ana menüsündeki bir diğer pencere, raporlama penceresidir. Raporlama seçeneğinde ise istenilen dönemlerde stok, satış ve sevkiyat ayrıntıları raporlanmaktadır. Raporlama penceresinde haftalık, aylık ve yıllık raporlardan ayrı istenen bir tarih aralığı için de raporlar alınabilecektir. Bu pencerede kullanıcının belirlediği aralıktaki stoktaki bloklar, satışı yapılan bloklar ve sevkiyat edilen bloklar raporlanıp sorumlu kişi bu raporlar sayesinde değerlendirme yapabilecektir. Doğal taş ocağında üretim, satış ve sevkiyatın raporlanması gibi işlemler geliştirilen yazılım sayesinde bu alanlara harcanan vakitlerin önüne geçecektir. 3.6. Yazılımın Bir Doğal Taş Ocağında Kullanılması Geliştirilen yazılım Muğla’ nın Kavaklıdere ilçesine bağlı bir doğal taş ocak işletmesinde kısa süreli olarak test edilmiştir. İşletmede stok takibinden sorumlu kişi stok takibini Microsoft Excel programı ile yapmaktadır. Stok takibinden sorumlu kişiye geliştirilen yazılım hakkında kısa bir bilgi verilmiştir. Stok takibinden sorumlu kişi, geliştirilen yazılımı hali hazırda var olan Excel programı ile birkaç gün karşılaştırmıştır. Karşılaştırma sonucu geliştirilen yazılımın kullanımının daha basit, hızlı ve pratik olduğu sonucuna varılmıştır. Sorumlu kişi yıllardır aynı şablonu kullanarak Excel tablosunda blok takibini gerçekleştirmektedir. Blok takibinin gerçekleştirilmesinde kullanılan Excel tablosuna kişinin uzun süre hâkim olmasına rağmen geliştirilen yazılımda daha
  • 33. 28 hızlı işlem yapıldığı vurgulamıştır. Aynı zamanda geliştirilen yazılım kullanıcının yapabileceği hata oranını da azalttığı belirtilen yorumlar arasındadır. Yazılım görsel programlama prensibi ile geliştirildiğinden sorumlu kişi tarafından sıkılmadan kullanılmıştır. Yazılımda blok satışı sırasında stokta bulunan blokları stok sahasına gitmeden alıcıya bir ön bilgi olması amacıyla gösterilmesi işleri kolaylaştıracağı vurgulanmıştır. Yazılımdaki sınıf, müşteri işlemleri, stok ekle, satış yap ve sevkiyat gerçekleştir gibi ilk işlemler denenmiştir. Geliştirilen yazılım kısa süreli olarak test edilebildiği için uzun zaman aralıklardaki satış, sevkiyat ve raporlama seçenekleri uygulanamamıştır.
  • 34. 29 4. DEĞERLENDİRME VE SONUÇLAR Teknolojinin gelişmesi birçok alanda doğrudan hissedilse de madencilik sektöründe bu gelişmeler kendine çok geç yer bulmaktadır. Yüksek yatırımlar ile devamlılığını sürdüren madencilik faaliyetleri birçok alanda teknolojik gelişmelere ihtayaç duymakta fakat bu alandaki çalışmalar ihtiyaç duyulan hızda olmamaktadır. Türkiye’ deki madencilik faaliyetlerinden biri olan doğal taş madenciliğinde de teknolojik gelişmelere ihtiyaç duyulmaktadır. Teknolojinin gelişmesi kendini birçok alanda gösterse de doğal taş madenciliğinde blok üretimi halen çoğunlukla elmas telli üretim yöntemi ile yapılmaktadır. Doğal taş ocaklarında blok takibini yapmak için stok takibinden sorumlu kişiler Excel programında kendine özel bir takip tablosu oluşturmaktadır. Ocakta soumlunun değişmesi durumunda yeni gelen sorumlu da kendine göre bir sistem oluşturmaktadır. Tüm bunların yapılması sorumlu kişinin ayrı bir zaman harcamasına neden olmaktadır. Bu çalışmada doğal taş ocaklarında blok takibini gerçekleştirmek üzere geliştirilen yazılım anlatılmıştır. Yazılım bir doğal taş ocağında birkaç günlüğüne kullanılmıştır. Yazılım sayesinde doğal taş bloklarının stoğa eklenmesi, satışının yapılması ve sevkiyatın gerçekleştirilmesi gibi işlemler kontrol edilebilekcektir. Madencilik faaliyetlerinde ve doğal taş madenciliğinde bu ve benzeri yazılımlarının geliştirilmesi madencilik faaliyetlerini kolaylaştıracağı göz ardı edilemez. Çalışmada elde edilen sonuçlar ve değerlendirmeler aşağıdaki gibidir.  Doğal taş madenciliğinde ocakta blok takibini gerçekleştirmek üzere geliştirilen yazılımlar araştırılmıştır. Araştırma sonucu bu alandaki eksikliği gidermek amacıyla doğal taş ocaklarında blok takibinde kullanılmak üzere bir bilgisayar yazılımı geliştirilmiştir.  Doğal taş ocağında bloğa numara verilerek takibi gerçekleştirilmekte ve yazılımda da her bir bloğun takibi bu numara ile yapılmaktadır.
  • 35. 30  Her bir blok yazılım sayesinde ayrıntlı olarak takip edilebilmektedir. Ayrıca her bir bloğun fotoğrafı da yazılım ile veri tabanına kaydedilebilecektir. Doğal taş ocağında blok takibinden sorumlu kişi stok sahasına gitmeden stoktaki blokları görebilecektir. Bunun yanında satılan blokları ve sevkiyatı gerçekleştirilen bloklar da yazılım sayesinde fotoğraf ile görüntülenebilecektir.  Geliştirilen yazılım ile bloklar ayrıntılı bir şekilde takip edilebilmekte ve doğal taş bloklarına ait veri karmaşıklığı ortadan kaldırılmıştır. Basit ara yüzlere sahip bu yazılımın kullanımı görsel programlama sayesinde son derece kolaydır.  Doğal taş ocaklarında blok takibinde kullanılmak üzere geliştirilen bu program halen geliştirme aşamasındadır. Programın eksiklikleri doğal taş ocaklarında test edilerek belirlenecek, eksiklikler düzeltilmesi için çalışmalar gerçekleştirilecektir.
  • 36. 31 KAYNAKLAR Alp,S., Özdemir,S. ve Kilitci,A., 2011. Veritabanı Yönetim Sistemleri. Türkmen Kitabevi. İstanbul Berber, E. ve diğerleri, 2019. Doğal Taş Ocaklarında Kullanılmak Üzere Geliştirilen Bir Yazılım. Türkiye 26. Uluslararası Madencilik Kongresi ve Sergisi. IMCET 2019, Antalya. Code::Blocks, 2019. Code::Blocks. Erişim Tarihi: 15.02.2019. Erişim Adresi: http://www.codeblocks.org/ Cormen, T. H. ve diğerleri, 2001. Introduction To Algorithms (Second Edition). The MIT Press. Cambridge, Massachusetts London, England. DTSR, 2018. Doğal Taş Sektörü Raporu. T. C. Ticaret Bakanlığı İhracat Genel Müdürlüğü. Maden, Metal ve Orman Ürünleri Dairesi, 8s. Eclipse, 2019. Eclipse Platform Overview. Erişim Tarihi: 05.02.2019. Erişim Adresi: https://www.eclipse.org/eclipse/eclipse-charter.php EM, 2016. Mermerci Üretim Yönetim Bilgi Sistemi. Erişim Tarihi: 12.05.2018. Erişim Adresi: http://www.e-mermerci.com/index. php ETKB, 2017. Enerji Tabii Kaynaklar Bakanlığı. Maden Yönetmeliği. Sekizinci Bölüm. Maden Sevkiyatı ve Sevk Fişi. Maden Sevkiyatı. Madde 48. Resmi Gazete Tarihi: 21.09.2017. Resmi Gazete Sayısı: 30187 Gosling, James; Joy, Bill; Steele, Guy; Bracha, Gilad; Buckley, Alex, 2015. The Java Language Specification. (Java SE 8 ed.). Guttag, John V., 2016. Introduction to Computation and Programming Using Python: With Application to Understanding Data. MIT Press. İMİB, 2017. Maden Sektörü Görünümü Raporu. İstanbul Maden İhracatçıları Bilriliği, 20 s. JS, 2019. JavaScript Guide Intraduction. Erişim Tarihi: 18.01.2019. Erişim Adresi: https://developer.mozilla.org/en-US/docs/Web/JavaScript Kernighan, Brian W.; Ritchie ve Dennis M., 1978. The C Programming Language (1st ed.). Englewood Cliffs, NJ: Prentice Hall. ISBN 978-0-13-110163-0. Kılıç, R., 2005. Kaya Mekaniği Ders Notları. Ankara Üni. Mühendislik Fak. Jeoloji Müh. Böl., Ankara, 3 s. KTY, 1997. Karayolları Trafik Yönetmeliği Sekizinci Bölüm 128. Madde. Resmi Gazeti Tarihi 18.07.1997. Resmi Gazete Sayısı: 23053 mükerrer
  • 37. 32 Kulaksız, S., 2007. Doğal Taş (Mermer) Maden İşletmeciliği ile İşleme Teknolojileri. TMMOB Maden Müh. Odası Yayını, Ankara, 634 s. Microsoft Access, 2019. Veritabanı Yazılım ve Uygulamaları | Microsoft Access – Micrososft Office. Erişim Tarihi: 17.03.2019. Erişim Adresi: https://products.office.com/tr-tr/access Microsft C# Guide, 2015. Introduction to the C# Language and the .NET Framework. Erişim Tarihi: 18.01.2019. Erişim Adresi: https://docs.microsoft.com/en-us/dotnet/csharp/getting- started/introduction-to-the-csharp-language-and-the-net-framework MySQL, 2019. MySQL Documentation. Erişim Tarihi: 25.04.2019. Erişim Adresi: https://dev.mysql.com/doc/ OKP, 2015. Onuncu Kalkınma Planı 2014-2018. T. C. Kalkınma Bakanlığı Madencilik Politikaları Özel İhtisas Komisyonu Raporu, 199 s., Onuncu Kalkınma Planı, Ankara. Onargan, T., Köse, H., ve Deliormanlı, A.H., 2005. Mermer. TMMOB Yayınları, Ankara, 324 s. Oracle Database, 2019. Oracle Database Overview. Erişim Tarihi: 25.04.2019. Erişim Adresi: https://www.oracle.com/DATABASE/ Orwell, 2011. Dev-C++. Erişim tarihi: 15.02.2019. erişim adresi: https://sourceforge.net/projects/orwelldevcpp/ PHP Manual, 2009. Introduction: What can PHP do? Erişim Tarihi: 18.01.2019. Erişim Adresi: https://php.net/manual/en/intro-whatcando.php PostreSQL, 2019. About PostgreSQL. Erişim Tarihi: 17.03.2019. Erişim Adresi: https://www.postgresql.org/about/ PY, 2007. Promer Mermer Üretim ve Sipariş Takip Sistemi. Erişim Tarihi: 12.05.2018. Erişim Adresi: http://www.profyazilim.com/Promer.aspx RB, 2012. Intramer Mermer Üretim Takip Bilgi Sistemi Yazılımı. Erişim Tarihi: 12.05.2018. Erişim Adresi: http://www.ronbilisim. com/mermer/faq.html Stroustrup, B., 2004. The C++ Programming Language (Third Edition and Special Edition) Bjarne Stroustrup's homepage. SQLite, 2000. About SQLite. Erişim Tarihi: 25.04.2019. Erişim Adresi: https://www.sqlite.org/about.html
  • 38. 33 SQL Server, 2019. Microsoft SQL Server 2019’ a Giriş. Erişim Tarihi: 17.03.2019. Erişim Adresi: https://www.microsoft.com/tr-tr/sql-server/sql-server- 2019 Şentürk, A., Gündüz, L., Tosun, Y.İ., ve Sarışık, A., 1996. Mermer Teknolojisi. S.D.Ü. Mühendislik Fak. Maden Müh. Böl., Isparta, 242 s. Root, Randal; Romero Sweeney. Mary, 2006. A Tester’ s Guide to .NET Programming. p. 3. ISBN 978-1-59059-600-5. TGO, 2016. Tümleşik Geliştirme Ortamı. Erişim Tarihi: 05.02.2019 Erişim Adresi:https://tr.wikipedia.org/wiki/T%C3%BCmle%C5%9Fik_geli%C5 %9Ftirme_ortam%C4%B1 Ulusoy, M., 2014. Doğal Taşların Türkiye Madenciliğindeki Önemi ve MTA Doğal Taş Laboratuvarları. MTA Doğal Kaynaklar ve Ekonomi Bülteni, 17, s. 27- 30. Urhan, S., ve Şişman, N. 1992. Blok Mermer Üretiminde Kullanılan Tel Kesme Yönteminin Gelişim ve Önemi. Bilimsel Madencilik Dergisi, 31 (2), s. 35- 39. US, 2018. Mermer Sektörü ERP. Erişim Tarihi: 16.12.2018. Erişim Adresi: https://www.uyumsoft.com/ mermer-sektoru/ Visual Studio, 2019. Visual Studio IDE’ ye Hoş Geldiniz. Erişim Tarihi: 05.02.2019. Erişim Adresi: https://docs.microsoft.com/tr- tr/visualstudio/get-started/visual-studio-ide?view=vs-2019
  • 39. 34 ÖZGEÇMİŞ Adı Soyadı : Emre BERBER Doğum Yeri ve Yılı : Muğla, 1997 Medeni Hali : Bekar Yabancı Dili : İngilizce E-posta : emreberber@yahoo.com Eğitim Durumu Lise : Yatağan Anadolu Lisesi, 2015 Mesleki Staj Deneyimi Eminoğlu Sbv Mermer İnş.Tur.San. ve Tic.A.Ş. 2017 Yayınlar Uluslararası, Tam metin bildiri, Doğal Taş Ocaklarında Blok Takibinde Kullanılmak Üzere Geliştirilen Bir Yazılım, BERBER EMRE,SAKCALI ALAATTİN,CEVİZCİ HALİM,YAVUZ HÜSEYİN , TÜRKİYE , IMCET’2019 , Türkçe , Mühendislik Temel Alanı->Maden Mühendisliği