View
7
Download
0
Category
Preview:
Citation preview
KOCAELİ ÜNİVERSİTESİ
MÜHENDİSLİK FAKÜLTESİ
BİLGİSAYAR MÜHENDİSLİĞİ
7. DÖNEM PROJESİ / BİTİRME TEZİ
PROJE (TEZ) BAŞLIĞI: ANKETÖR
TEMATİK ALAN: Web Ortamı
PROJE YÜRÜTÜCÜSÜ: Hüseyin Tunç
EĞİTİM KURUMU: Kocaeli Üniversitesi
DANIŞMAN: Yrd. Doç. Dr. Pınar Onay Durdu
KOCAELİ 2015
5,2 cm
ÖNSÖZ VE TEŞEKKÜR
Bilgisayar ve internet kullanımının gittikçe yaygınlaştığı günümüzde birçok alanın sanal dünyaya taşınmıştır ve taşınmaya da devam etmektedir. Bu alanlardan biriside anket çalışmalarıdır. Bende birçok sektörün oldukça sık olarak başvurduğu anket çalışmalarının web alana taşınması ile bir uygulama geliştirdim
Bu çalışma boyunca gösterdiği her türlü destek ve yardımdan dolayı değerli hocam Sayın Yrd.Doç.Dr. Pınar Onay DURDU’ya en içten dileklerimle teşekkür ediyorum.
Ayrıca tüm eğitim hayatım boyunca bana yol gösteren, destek olan, en önemlisi bana eğitimin ne kadar önemli olduğu bilincini ve çalışma disiplinimi kazandıran aileme ve her zaman yanımda olan arkadaşlarıma en içten dileklerimle teşekkürlerimi sunuyorum.
01-2015 Hüseyin TUNÇ
i
İÇİNDEKİLER
ÖNSÖZ VE TEŞEKKÜR..............................................................................................iİÇİNDEKİLER.............................................................................................................iiŞEKİLLER DİZİNİ.....................................................................................................iiiTABLOLAR DİZİNİ...................................................................................................ivÖZET............................................................................................................................vABSTRACT.................................................................................................................viGİRİŞ............................................................................................................................11.PROBLEM TANIMI VE ÇALIŞMANIN AMACI..................................................32.PROJEDE (TEZDE) KULLANILAN YÖNTEM VE METODLAR.....................15İŞ-ZAMAN PLANI....................................................................................................26SONUÇLAR ve ÖNERİLER.....................................................................................28KAYNAKLAR...........................................................................................................32ÖZGEÇMİŞ................................................................................................................33
ii
ŞEKİLLER DİZİNİ
Şekil 1.1. (a) DPS (37. çerçeve), (b) PS (37. çerçeve), (c) DPS (43. çerçeve), (d) PS (43. çerçeve)...............................................................................................4
Şekil 1.2. Parçacık süzgecin genel yapısı.....................................................................5Şekil 2.1. Hedef tespit yaklaşımları..............................................................................7Şekil 3.1. Gannt şeması.................................................................................................9Şekil 3.2. Gannt şeması...............................................................................................10Şekil x. Örnek bir sözde kod.......................................................................................15
iii
TABLOLAR DİZİNİ
Tablo 1.1. Tablo başlığı burada olmalı.........................................................................3
iv
ANKETÖR
ÖZET
Günümüzde internet kullanımının gittikçe artan rolü içerisinde birçok alanda
olduğu gibi araştırma sürecinde birincil kaynaklardan veri toplama aşamasında da
önem kazanmaktadır. Sosyal anlamda yapılan araştırmaların veri kaynağı insandır ve
onlardan doğrudan bilgi alma tekniklerinden biri de anket tekniğidir. Anketler
hazırlanış şekillerine göre bazı dezavantajları da barındırmaktadır. Bunlardan biride
uzak mesafeler deki kişilerin ortaklaşa katılacağı bir yoklamanın zor olmadır. Bu
uygulamadaki temel amaç insanların fikir edinebilme yöntemlerinden biri olan anket
uygulamasının web alanda daha anlamlı ve kullanışlı bir düzeye erişilebilmesine
vesile olmaktır. Öğrencilerin fikirlerini rahatça ifade edebilecekleri, fikir
danışabileceği, tartışabileceği bir ortamı yaratmak. Bu durumun giderilebilmesi
öğrenciler arası fikirsel paylaşımların giderilmesine ön ayak olacaktır. Sistem
tasarlanmadan önce birçok araştırmada yapılan anketler ve anket değerlendirmeleri
incelenmiştir. Sistemde sosyal alan araştırmalarındaki anketlerde kullanılan birçok
farklı anket soru çeşidinde soru hazırlanabilmekte ve bunlardan elde edilen veriler
değerlendirilebilmektedir Klasik yöntemlerle kağıt üzerinde anket uygulama yerine
web tabanlı internet üzerinden anket uygulayarak daha hızlı, etkin ve doğru veriler
almayı sağlamakta bir diğer beklentimiz olacaktır. Bu proje web uygulamaları
kapsamında olup sistemin geliştirilmesi için MS Visual Studio 2012 ortamından
yararlanılmıştır. Veritabanı uygulamaları için Sql Server 2012 ortamı kullanılmıştır.
Web sayfaları tasarlanırken ASP.NET(C Sharp) olanaklarından faydalanılmıştır.
Genelleme yaparsak proje geliştirme safhası Microsoft .NET ortamlarında
gerçekleştirilmiştir.
Anahtar Kelimeler: Şifreleme, Android, Parçacık Süzgeci, …
v
PROJECT NAME (THESIS NAME)
ABSTRACT
GEREKLİ BİLGİLER EKLENECEEKTİR!!!
vi
GİRİŞ
Sosyal alandaki gelişmelerin uygulama alanına yansıyabilmesi için alanla ilgili
araştırmacıların ilgili tüm unsurların kendilerini sürekli yenilemeleri gerekmektedir.
Bu da ancak araştırma çalışmalarının ortaya koyduğu bilimsel verileri
değerlendirmekle olur. Bilimsel bir araştırma sürecinin en önemli basamaklarından
birisi veri toplama ve analiz aşamasıdır. Sosyal alandaki araştırmalarda mülakat,
anket, gözlem, kaynak derleme ve meta-analiz metodları sıkça kullanılan veri
toplama araçları arasındadır. Araştırmacılar araştırma yöntemlerine karar verdikten
sonra,seçilen yöntemler içerisinde hangi veri toplama metodunun daha etkili, geçerli
ve güvenilir olabileceğini tartışırlar. Günümüzde internetin gelişimi veriye her
yerden müdahale edebilme ihtiyacını da beraberinde getirmiştir. İnternetin ve
herhangi bir web tarayıcının bulunduğu bir bilgisayar ile web tabanlı geliştirilmiş
uygulamalara erişim mümkün olmaktadır.
Sosyal konularda yapılan araştırmaların verilerin kaynağı insandır ve bilgi alma
yöntemlerinden biri de anket yöntemidir. Anket, sistematik bir veri toplama
yöntemidir. Veriler, önceden belirlenmiş insanlara bir dizi soru sorarak elde edilir.
Anket yöntemi ile çok farklı türde veri toplamak mümkündür. İnsan davranışları, iş
performansları, bilgi düzeyleri, tercihleri, tutumları, inançları, duyguları vb.
bunlardan sadece birkaçıdır. Ancak anketten yararlı bilgiler elde edebilmek için
anketin hazırlık ve uygulama sürecine özel önem gösterilmelidir. Ayrıca “zaman” ve
“maliyet” göz önüne alınması gereken diğer hususlardır. Anket yöntemi, doğrudan
birinci kaynaktan düzenli veri toplama biçimidir. Veriler, önceden belirlenmiş
kişilere bir takım soru sorularak elde edilmektedir. Anket çok çeşitli alanlarda veri
toplamak için yapılabilmektedir. Bilimsel araştırma, Kamuoyu, Firma ve özel
alanlarda anketler bunlara örnek olabilmektedir. Anketlerde veriler genellikle:
1. Yüz-yüze anket yapma: Anket formunda bulunan sorular, bu konuda eğitilmiş bir
kişi (anketör) tarafından sorulur ve alınan yanıtlar forma kaydedilir.
1
2. Posta aracılığı ile anket yapma ya da kendi kendine uygulama: Kişiler
kendilerine bir biçimde ulaştırılan anket formunu, kendileri doldurarak ilgili yere
ulaştırırlar. Bu ulaştırma işlemleri posta yolu ile yapılırsa, posta aracılığı ile anket
uygulanmış olur.
3. Telefonla anket yapma: Sorular anketör ya da araştırmacı tarafından telefonla
sorulur ve alınan yanıtlar yine anketörün elindeki anket formuna kaydedilir.
4. Gözlem altında anket yapma: Araştırmacı ya da anketörün de bulunduğu bir
ortamda, anket formları kişilere dağıtılır ve nasıl uygulanacağı açıklanır. Kişiler
anket formlarını kendileri uygularlar ve forma kaydederler. Günümüzde internetin
giderek artan rolü birçok alanda olduğu gibi araştırma sürecinde birincil
kaynaklardan veri toplama aşamasında da önem kazanmaktadır.
Web ortamındaki uygulamalar, her yerden erişilebilirlik sebebiyle tercih
edilmektedirler. Günümüzde web ortamına taşınmış yüzlerce uygulama
bulunmaktadır. Çeşitli alanlarda araştırma yapmayı sağlayan anket çalışmalarının
web ortamında hazırlanması ve hatta yayınlanması da web uygulamaları arasında yer
almak durumundadır. Bende bu projede web ortamında oluşturulacak veri paylaşımı
ortamının kolaylıklarını hem teorik hem de pratik uygulamalarımla gözler önüne
sererek günümüz teknolojisinin avantajlarından faydalanılmasını sağlamaktır.
2
1.PROBLEM TANIMI VE ÇALIŞMANIN AMACI
1.1.Problem Tanımı
Öğrenciler ve öğretmenler için kullanılabilir düzeyde var olan sistematik bir veri
toplama aracının(anket sitesi vs.) olmaması verilerin toplanmasında yeterli katkı
sağlayamamaktadır.
1.1.1 Projenin Amacı
Web ortamında geliştirilen bir anket uygulamasının ne gibi avantajları olabilir:
* Anket yoluyla geniş kitlelere ulaşmak kolaydır.
* Anket tekniği para, zaman ve enerji bakımından araştırmacıya tasarruf sağlar.
* Anketin geniş coğrafi bölgelere ve çok sayıda insana uygulanabilmesi yüzünden
daha geniş bir örneklem üzerinde çalışma, dolayısıyla örneklemin temsil düzeyini,
böylece de araştırmanın dış geçerlik derecesini artırmak mümkün olabilmektedir.
* Anketin imzasız da doldurulup iadesinin mümkün olması nedeniyle örneğin
görüşmeye oranla objektifliğinin daha yüksek olduğunu söyleyebiliriz.
* Anket sorularının yazılı olması cevaplayacakların onları tekrar tekrar incelemesine
imkan verir. Bu nedenle anketle ulaşılan bilgilerin daha doğru olacağı söylenebilir.
Veri alışverişinin son derece yoğun olarak ihtiyaç duyulduğu iki kullanıcı modelinin
(öğrenci, öğretmen)anketin bu kolaylıklarından faydalanılabilmesi için yapılacak en
uygun adımın bu eksikliğin giderilmesine olanak sağlayacak ortamın yaratılmasıdır.
Bu sebepler bu projenin temel amaçlarını oluşturmaktadır.
3
Şekil 1.Anket kriteri tablomuz anket şekillerinin durumunu ortaya koymaktadır.
1.1.2 Literatür Taraması
Bu çalışmada yapmaya çalışmış olduğum anket uygulaması ile kullanıcıların her
türlü anket modeli oluşturma, kullanma, diğer kullanıcılara sunma gibi birçok özellik
oluşturulmak istenmektedir. Kullanıcılara üyelik sistemi ile gerekli
yetkilendirilmenin verilmesiyle kullanıcının uygulamaya yetkilendirildiği,
uygulamanın temel amacı olan veri analizi ve paylaşımı işlemlerini kontrol yetkisi
kazanabildiği bir çalışma olacaktır.
Daha önce Akademik Bilişim Konferansı için geliştirilmiş anket
uygulaması(Anketçi) ile verinin elde edilmesine kadar geçen ki süreç şu şekilde
işlemektedir:
Üyelik, Üye Girişi, Anketi Hazırlamaya Başlama, Başlanan ankete soruların ve
seçeneklerin eklenmesi. Soruların ve seçeneklerin düzenlenmesi. Anketin
tamamlanarak tamamlanmış anketler bölümüne gönderilmesi, yazıcı çıktısı
kontrolleri ile kağıt düzeni yapma, kağıt düzeni tamamlanan anketin yayına
sokulması, ihtiyaca göre yazıcı çıktısı alınması, yayındaki anketin uygulama süreci
4
ve verilerin toplanması. Anketin bitirilmesi ve elde edilen verilerin analiz programına
aktarılması ile son bulmaktadır.
1.2 Teknolojik Uzmanlık Konuları
Bu alan projemizin gerçekleştirilebilmesi için gerekli olan yazılım ortamının
sağlanabilmesi için kullanılan programların anlatıldığı kısımdır.
Projemizi geliştirirken kullanmış olduğumuz ortamı ,kullandığımız
materyalleri ve programlama dilini ve inceliklerini bu ortamda
detaylandıracağız.
1.2.1 Visual Studio Nedir?
Microsoft Visual Studio, 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 uygulamaları, web siteleri, web uygulamaları ve web servisleri ile birlikte
konsol ve grafiksel kullanıcı ara yü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 dâhil 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 itibariyle) içermektedir[12].
1.2.1.1 Visual Studio Kurulumu?
Öncelikle aşağıdaki linkten istediğiniz Visual Studio versiyonunu 90 günlük ücretsiz
olarak indirebilirsiniz:
5
http://www.microsoft.com/visualstudio/eng/downloads
Buradan istediğiniz sürüme tıkladıktan sonra bir .exe dosyası indirmiş olacaksınız.
Bu .exe dosyasını açtığımızda karşımıza aşağıdaki gibi bir ekran çıkacak:
Koşulları kabul ediyorsanız kabul ettiğinize dair ilk alanı işaretlemeniz gerekiyor ve
eğer program geliştiricisi olarak müşteri deneyimini geliştirme programına, Visual
Studio'yu daha kaliteli olması açısından katılmak istiyorsanız ikinci alanı
işaretleyebilirsiniz. Daha sonra ileri deyip devam ediyoruz ve karşımıza bir ekran
daha çıkıyor:
6
İhtiyacımıza göre özellikleri seçtikten sonra yükle deyip devam ediyoruz ve
aşağıdaki gibi bir yükleme ekranı karşımıza çıkıyor:
7
Yeniden başlat diyoruz ve bilgisayarımız yeniden başlatıldıktan sonra yükleme
başarılı ise aşağıdaki gibi bir ekran karşımıza gelecek:
Buradan programı açmasını istediğimizde aşağıdaki gibi iki ekran sırası ile gelecek:
İkinci ekranda genelde en çok kullanacağımız programlama için ayarları seçmemizi
istiyor. Buradan istediğiniz ayarları seçebilirsiniz. Ben kendim kullanırken genel
geliştirme ayarlarını seçiyorum. Daha sonra da Visual Studio'yu başlat dediğimizde
programımız açılacaktır ve karşımıza aşağıdaki gibi bir pencere gelecek:
8
1.2.1.2.Visual Studio Yeni Bir Proje Oluşturma
Öncelikle olarak masaüstünde bulunan Visual Studio’ nun kısayol simgesine farenin
sol tuşuyla çift tıklanır. Karşımıza aşağıdaki ekran görüntüsü gelicektir.(Şekil usteki)
Bu kısımdan sonra File >>New>>Project seçilir.
9
Project seçildikten sonra karşımıza aşağıdaki sayfa gelecektir.
C# uygulaması yapacaksak yan tarafta Visual C# seçili iken hangi platformda
yapacağımızı sağ taraftan seçiyoruz. Form uygulaması mı ya da Console uygulaması
mı gibi belirleyebiliyoruz. Fakat biz web uygulaması geliştireceğimiz için sol
taraftan web seçili iken sağ taraftan Asp.Net Web Application u seçiyoruz. Name
kısmına istediğimiz bir isim verebiliriz. Bu isim oluşturacağımız projenin ismi
olacaktır. İstenilen isim verildikten sonra OK tuşuna basılır.
10
Karşımıza gelen yukarıdaki sayfa yeni oluşturduğumuz projenin default.aspx
sayfasıdır. Ve işlemler bu sayfa üzerinden gerçekleştirilir. Bir de default.aspx
sayfasının design kısmı vardır. Bu kısımda ara yüz geliştirilebilir.
1.2.2 .NET Platformu
.NET Framework, Microsoft tarafından geliştirilen, açık İnternet protokolleri ve
standartları üzerine kurulmuş bir "uygulama" geliştirme platformudur. Daha önce
Sun Microsystems tarafından geliştirilmiş olan Java platformuna önemli benzerlikler
göstermektedir.
Buradaki uygulama kavramının kapsamı çok geniştir. Bir masaüstü uygulamasından
bir web tarayıcı uygulamasına kadar her şey bu platform içinde düşünülmüştür ve
desteklenmiştir. Bu uygulamaların birbirleriyle ve geliştirildiği ortam fark etmeksizin
dünyadaki tüm uygulamalarla iletişimi için kolayca web servisleri oluşturulmasına
11
imkân verilmiştir. Bu platform, işletim sisteminden ve donanımdan daha üst seviyede
taşınabilir olarak tasarlanmıştır.
.Net mimarisi, ortak bir yürütme ortamı (runtime environment), ortak bir değişken
tür sistemi, ve devingen bağlantılı kütüphanelerden oluşur. .Net kütüphanesi eski
Visual Basic için tasarlanmış API (programcılar için birçok fonksiyon) lerin
sınıflanmış halidir. Çünkü API sınıflandırılmamış ve bu nedenler programcılar için
bir kabus halini almaktaydı. .Net kütüphanesi programın işletim sistemi ile kolayca
uyum içinde çalışmasını sağlamıştır.
1.2.3 ASP .NET
ASP.NET, Microsoft tarafından geliştirilmiş bir web uygulama gelişimi
teknolojisidir. Öz devinimli (dinamik) web sayfaları, web uygulamaları ve XML
tabanlı web hizmetleri yaratılmasına olanak sağlar. Aynı işletme tarafından
geliştirilen .Net çatısının (Framework) parçası, ve artık işletmece desteklenmeyen
ASP teknolojisinin devamını teşkil etmiştir.
Her ne kadar isim benzerliği olsa da ASP.NET, ASP'ye oranla çok ciddi bir değişim
geçirmiştir. ASP.NET kodu ortak dil çalışma zamanı (İngilizce - Common Language
Runtime) altyapısına dayalı çalışır, diğer bir deyişle, yazılımcılar .Net çatısı
tarafından desteklenen tüm dilleri ASP.NET uygulamaları geliştirmek için
kullanabilirler. Yani, Java teknolojisinde olduğu gibi, yazılımcı tarafından yazılan
kod, çalıştırılmadan önce sanal bir yazılım katmanı tarafından ortak bir dile
çevrilmektedir.
ASP.NET belgeleri ASPX yapısını kullanırlar. ASPX belgesi, öz devinimsiz (statik)
HTML veya XHTML tabanlı, web sayfasında belirecek olan içeriği ayrı tutar.
Kullanılan dile göre, sunucu tarafından çalıştırılacak kodu içeren belge
Sayfam.aspx.cs (C#) veya Sayfam.aspx.vb (VB.NET) olarak adlandırılabilir. Bu
yaklaşım ile, yazılımcı kodunu yordamsal programlama ilkelerinden çok,
oluşabilecek olaylara gereken tepkiyi verebilecek biçimde geliştirir; örneğin, bir
sayfa yüklenince, bir düğmeye basılınca, vb.
12
ASP.NET'in kullandığı diğer belge türleri arasında ascx, asmx, ashx, master,
sitemap, skin ve config sayılabilir.
1.2.4 MİCROSOFT SQL SERVER
SQL Server, Microsoft tarafından geliştirilmiş ilişkisel veri tabanı yönetim
sistemidir. İlişkisel veri tabanı sistemi İngilizce olarak Relational Database
Management System olarak adlandırılır ve kısaca RDBMS olarak bazı kaynaklarda
karşımıza çıkmaktadır. İlişkisel veri tabanı sisteminde veriler tablolar halinde
tutulurlar ve bu tablolar kendi aralarında ilişkisel anlamda birbiri ile bağlantılı
olabilirler. Bu yazımda tabi ilişkisel veri tabanı nedir bunun detayına inmeyeceğim,
bir başka yazımızın konusunda bu konuyu irdeleriz. Bu yazımızda SQL Server nedir
bundan bahsetmek istiyorum.
Microsoft tarafından SQL Server olarak karşımıza çeşitli sürümler çıkmaktadır.
Bunlar içinde Express versiyonları ücretsiz olanlarıdır. Daha çok eğitim amaçlı
kullanılırlar. Ücretli olarak da kurumların hizmetine sunulan versiyonları
bulunmaktadır. Standart, Business, Intelligence ve Enterprise versiyonu gibi. Bu
sürümlerde terabaytlarca veriyi saklayabilmeniz mümkündür. Aşağıdaki tabloda Sql
Server Management Studio 2012′ye ait sürümleri ve hangilerinin hangi amaç
doğrultusunda kullanıldığını görebilirsiniz.
SQL Server işte bu tip veritabanının mühim olduğu, sürekli olarak veriler üzerinde
işlem yapan WEB siteleri, diğer kurumsal uygulamalar, masaüstü uygulamaları için
13
vazgeçilmez zengin özelliklere sahip olan bir veri tabanı yönetim sistemidir. Bu
özelliklerin her biri ayrıca ayrı uzmanlıklar gerektirir. Yani bir SQL server üzerinde
raporlama için, yazılım geliştirme için, veri korunumu için, veri yönetimi için aslında
uzmanlaşma dalları farklı farklıdır. Biz programcılar SQL serverı daha çok verileri
yönetebilmek için yazılım geliştirme amaçlı kullanırız. SQL server üzerinde bir
WEB uygulaması bir masaüstü uygulaması geliştiremezsiniz ama bu uygulamalarınız
içinde kullanacağınız verileri en iyi şekilde burada yönetebilirsiniz. Bunun içinde
programlama dili olarak SQL Server ile son derece uyumlu çalışan Visual
Basic.NET, C# gibi programlama dillerini kullanma olasılığınız oldukça yüksektir.
Uygulamanızı geliştirdiğiniz platform üzerinde T-SQL kodlarını kullanarak
verilerinizi istediğiniz şekilde kullanabilir ve yönetebilirsiniz. Bizde
uygulamalarımızın mimarisi ne olursa olsun T-SQL kullanacağız.
SQL Server ayrıca Reporting Services denilen raporlama hizmetlerini de bize
sunmaktadır. Ticari zekâ çözümü uygulamaları için raporlama servisleri
vazgeçilmezdir. Böylelikle raporlama için ekstra kod yazmamız gerekmez.
14
2.PROJEDE (TEZDE) KULLANILAN YÖNTEM VE METODLAR
2.1.Kurgulanan Çözüm Kriterleri
Yaptığımız uygulama bir anket uygulaması olduğu için yapacağımız en öncelikli iş
var olan, daha önce yapılmış olan anket sitelerini incelemek ve oradan çıkaracağımız
sonuçlarla kendimize bir yol çizmekti. Öncelikle bu sitenin yapım sebebinin
anlaşılabilmesi için anketin ne olduğu, amacının ne olduğu, sonuçlarını kimlerin
kullanacağını, hangi bilgilere gerek duyulduğuna dair gerekli bilgileri aktararak bu
durumlara ne gibi çözümler gerektiği ve hangi çözümlerin uygulandığına dair
bilgileri sanırım daha iyi anlayabileceğiz.
Anket nedir?
Anket, sistematik bir veri toplama yöntemidir. Veriler, önceden belirlenmiş insanlara
bir dizi soru sorarak elde edilir. Anket yöntemi ile çok farklı türde veri toplamak
mümkündür.
İnsan davranışları, iş performansları, bilgi düzeyleri, tercihleri, tutumlarıinançları, du
yguları vb. bunlardan sadece birkaçıdır. Ancak anketten yararlı bilgiler
elde edebilmek için anketin hazırlık ve uygulama sürecine özel önem gösteril-
melidir. Ayrıca “zaman” ve “maliyet” göz önüne alınması gereken diğer hususlardır.
Anketin amacı nedir?
Anketler, aşağıda sıralanan amaçlar için kullanılabilirler:
*Müşteri ihtiyaçlarını belirlenmesi müşteri tatmininin ölçümü,
*Organizasyonun güçlü ve zayıf taraflarının belirlenmesi,
*İyileştirmeye açık alanların tespiti,
*Yeni ya da var olan politikaların/programların etkinliklerinin ölçümü,
Net bir amaç olmadığı sürece, anket için harcanan çabalar çok farklı, bazen de
birbirine zıt alanlara yönelebilir. Bu da kaynakların ziyan olmasına, yararsız
veriler elde edilmesine ve anketi hazırlayanlar ve katılanlar için hayal kırıklığına yol
açacaktır. Bunun için, “özel” olun ve anketi uygularken sadece neler olup bitiğini
görmeye dikkat edin. Ayrıca anket uygulaması, anketi dolduranların hata anketin
uygulandığını öğrenenlerin ilgilerinin organizasyonunuza yönelmesine neden olacak
tır.
15
Bu ilgi kaçınılmaz olarak insanlarda bir takımbeklentilere yol açar. Örneğin çalışanl
arın tatmini ölçen bir anket yaptıysanız, herkes sizden
tatminsizliğe yol açan alanlarda bir takımı iyileştirmeler yapmanızı bekleyecektir.
Sonuçları kimler kullanacak?
Anketin sonuçlarını kimlerin kulanacağını ve bilgi gereksinimlerinin neler olduğunu
belirleyin. Elde edilecek verilere dayalı ne tür kararlar verilecek? Detaylı cevaplara
mı ihtiyaçları var yoksa “büyük resim” onlar için yeterli mi? Bilgilerin onlara nasıl
sunulmasını tercih ediyorlar?
Hangi bilgilere ihtiyaç var?
Anketin amacına ulaşması için öncelikle hangi bilgilere ihtiyaç olduğunu belirleyin.
Örneğin bir spor merkezine alet temin etmekle ilgileniyorsanız, o zaman insanların
spor merkezini ne sıklıkla kullandıklarını, hangi aletlerden yararlandıklarını
ve kullanılan saat miktarını sorabilirsiniz. İnsanlardan ayrıca yüzme havuzunun,
koşu bantlarının, egzersiz makinelerinin, duş alanlarının, havlu hizmetinin, vb.
kalitelerini değerlendirmelerini isteyebilirsiniz. İlerde doğabilecek ihtiyaçları
karşılamak istiyorsanız, ilgi alanlarını ve beklentilerini açıklamalarını
isteyebilirsiniz. Bu konuların her birisi, bir ya da birden fazla anketin
konusu olabilir.
Hangi anket maddeleri kullanılacak?
Veri ihtiyacına dayanarak, elinizdeki mevcut anketlerden birini kullanıp kullanmaya-
cağınıza, düzeltip düzeltmeyeceğinize ya da tamamen yeni bir anket oluşturup
oluşturmayacağınıza karar verin.
Anket bilgilerinin analizi nasıl yapılacak ve nasıl raporlanacak?
Anket sonuçlarını özetlerken, yorumlarken ve raporlarken hangi metotları kulanacağı
nıza karar verin. Anket verilerine dayalı alınacak kararlara bağlı olarak daha karma-
16
şık analitik metotların kulanımı da gerekli olabilir. Bu karmaşık metotlar, yönetici
ve çalışanlar gibi iki farklı gruba ait sonuçların karşılaştırılmasını içeren varyans
analizleri ya da iş tatmini ve iş bırakma eğilimleri gibi iki ayrı değişken arasındaki
ilişkinin incelenmesini içeren regresyon analizleri olabilir. Anket bilgilerini nasıl
sunacağınıza karar verin. Bunun için izleyenlerin ilgi ve tercihlerini göz önüne alın.
Basit grafikleri mi, istatistik tablolarını mı yoksa yazılı özetleri mi tercih ediyorlar?
Şirket politikasını değiştirmeyi düşünen yöneticilere yapılan sunuş şekli ile dışardan
gelen müşterilere yapılan sunuş şekli farklı olabilir. Eğer sonuçları farklı gruplara
sunmak zorundaysanız, detay seviyesini ve verilerin sunumunu değişik ilgi seviyeleri
ne göre yeniden biçimlendirmeniz gerekebilir.
Anket yöntemini kullanırken izlenecek basmaklar nelerdir?
Eğer bir anket hazırlamayı düşünüyorsanız size yardımcı olabilir şu basamaklar:
Bunlar; anket maddelerini hazırlamak, cevap formatına karar vermek, maddeleri
gözden geçirmek, anketin giriş paragrafını ve talimatlarını oluşturmak, anketi
test etmek, örnekleme yapmak, anket sonuçlarını özetlemek ve sonuçları sunmak
yayınlamak şeklinde özetlenebilir. Bu basamaklar tamamıyla yeni bir anket hazırlark
enya da hazır olan bir anketi değiştirirken kullanılabilir.
Anket Maddelerinin Oluşturulması
Bir anket maddesinin taşıması gereken özelikleri sıralayacak olursak;
* açıkça yazılmış
İfadeler net olmalı ve kolay anlaşılabilmelidir. Anketi cevaplayan insanların alışık
olmadıkları teknik terim, kısaltma ve jargonları kullanmaktan kaçının.
*kısa
Konuya mümkün olduğunca çabuk gelin. Anketin maddelerini yanıtlayan kişinin dik
kati dağılmaması
17
*belirli
Her seferinde bir fikir üzerinde odaklanın. Her madde bir tek davranış, tavır, fikir,
olay ya da konu ile ilgili olmalıdır. Bunun için “ve”, “ya da” gibi bağlaçları
kullanmayın.
*açık
İnsanları ne sorulduğunu tahmin etmeye zorlamayın. İfadenizin herkes tarafından
aynı şekilde anlaşıldığından emin olun. Eğer gerekliyse ek açıklamalar yapın.
2.1.2.Uygulamada Bulunacak Kriterler
Bende bu belirtmiş olduğum durumları göz önünde bulundurarak projemi
geliştirmeye başladım. Bu kriterlerde göz önünde bulundurarak uygulamamızda
planladığımız maddeleri sıralamamız gerekirse şu şekilde sıralayabiliriz:
*Site üzerinden işlem yapabilmek için kullanıcının kayıt olması gerekecek.
*Siteye 3 farklı(yönetici, öğretmen ve öğrenci)giriş gerçekleştirilebilecek.
*Yönetici anketler üzerindeki düzenleme, silme vs. işlemleri gerçekleştirebilme imkanına sahip olabilecek.
*Oluşturulan anketler yöneticinin onayından geçtikten sonra yayınlanabilecek.
*Öğretim görevlisi öğrencilerin fikrini almak istediğinde siteye öğretim görevlisi anket kısmına anket yükleyebilecek.
*Öğrenciler merak ettiği konularda diğer öğrencilerin fikirlerini alabileceği anketleri
öğrenci anketleri kısmına yükleyebilecek.
*Sitede kullanılan anketler tek seçenekli, çoktan seçmeli, dereceli olabilecek.
*Oluşturulan anketlere tek ya da çok seçenek hakkı tanınacak.
*Ayrıca diğer anketlerden farklı olarak resim veya videoların değerlendirmeye alınacağı bir anket olabilecek.
*Anketlerin belli bir süre yayında kalma hakkı olacak ve süre dolduğunda anket listesinden silinecek.
18
*Çok sorulu anketlere süre sınırı konulabilecek.
*Anketler 1-5’e kadar puanlanır ve en iyi 5 anket en popüler anket listesinde yayınlanacak.
*Anketler En çok oylanan, En yeni anketler, Konularına Göre vs. gibi özellikler şeklinde kategorilendirebiliriz.
*Kullanıcılar girdikleri ankette anket sonunda yorum yapma haklarına da sahip
olabilecekler.
2.2. Proje Gelişim Aşaması
2.2.1.İzlenen Yol
Projede belirttiğimiz kriterler eşiğinde projemizi geliştirmeye başladık. Bunun için
bazı anket sitelerini de (surveey.com, surverymonkey, googleforms vb.) detaylıca
inceledik. Öncelikle uygulamamızda yapmamız gereken ilk adım veritabanımızın
oluşturulması adımıydı. Veritabanımız da gerekli tabloları oluşturduktan sonraki
işlemimiz artık projenin kodlama safhasına geçmekti.Kodlama kısmında
yapacağımız ilk işlem anasayfamız üzerinden kullanıcı (login)işlemlerimizi
gerçekleştirmekti ve eğer kayıtlı kullanıcı yoksa üyeol(create) işlemlerini
gerçekleştirmek. Artık yetkilendirilmiş kullanıcı sitemiz üzerinden gerekli işlemleri
gerçekleştirebilecekti. Bir sonraki adımımız kullanıcıya sitenin amaçları
doğrultusunda kullanım hakkı tanımak için gerekli imkanları verecek ortamı
sağlamak yani anket oluşturma ve anket cevaplamak. Bu yüzden sonraki
yapacağımız adım kullanıcının anket oluşturmasına imkan tanımaktı. Gerekli
programlama mantığı ile kullanıcının anket oluşturmasına olanak tanıyacak sayfayı
oluşturduk. Kullanıcının yetkinliği sadece anket oluşturmakla kalmayacaktı. Diğer
oluşturacağımız kısım kullanıcının var olan anketleri çözebilmesini sağlamaktı.
Sonra ki adımımızda gerçekleştireceğimiz işlem anket çözme koşulunu
gerçekleştirmek için gerekli çalışmaları gerçekleştirdik. Artık kullanıcı hem anket
oluşturma hem de anket çözme imkanına sahipti. Bundan sonra izleyeceğimiz adım
bu anketlerin kontrolünü sağlayacak sitenin denetimini sağlayacak bir üst kullanıcı
yani yöneticinin bulunması gerekiyordu. Yöneticinin yapacağı işlemler anketler
üzerinde gerekli düzenlemeleri yapmak, anketlerin yayınlanıp yayınlanmamasını
19
sağlamaktır. Normal kullanıcıya gerekli imkanları tanıdıktan sonra yapılan işlemlerle
yöneticinin site üzerinde denetimini sağlamış olduk.
2.2.2. Projede Kullanılan Araçlar
Projemizi daha önce de belirttiğimiz Asp.Net programlama diliyle gerçekleştirmiştik.
Bu dili kullanılırken gerekli işlemleri gerçekleştirebilmemiz adına bize kolaylık
sağlayacak bir takım araçlar(toolbox) mevcuttur.Bu kısımda sizlere kullandığımız
araçları,görevleri ve kullanım sebeblerini açıklayacağım:
Label: Label kontrolü metin göstermek için kullanılan kontroldür.
Gösterilecek olan metin, Label kontrolünün Text özelliğine atanır. Uygulama
çalışma anında görüntülenen metin değeri dinamik olarak değiştirilebilir.
Bütün uygulama boyunca Label Text özelliği değişmeden statik olarak
kalıyorsa label kontrolü yerine metin doğrudan sayfaya eklenmelidir.
<asp:Label ID=”Label1″ runat=”server” Text=”Label”></asp:Label>
TextBox: TextBox kontrolü, kullanıcı ile web sitesi arasındaki etkileşimi
sağlayan en temel kontrollerden biridir. Kullanıcılar istenilen bilgileri bu
kontrol aracılığıyla belirtirler. Kullanıcılar, TextBox kontrolü ile metin
tabanlı bilgiler girer ve bu bilgiler çalışma zamanı içinde alınıp kullanılabilir.<asp:TextBox ID=”TextBox1″ runat=”server”></asp:TextBox>
Button: Button kontrolü, tıklandığında belirli bir iş yaptırmak için kullanılan
kontroldür. Buton üzerinde yazan metin Button kontrolü Text özelliği ile
belirlenir.<asp:Button ID=”Button1″ runat=”server” Text=”Tıkla” />
Calendar: Calendar kontrolü, uygulamalarda tarih seçimi yapmak için
kullanılan kontroldür. Calendar kontrolü varsayılan olarak kullanıcılara bir
gün seçimi yaptırabilir, gerektiğinde SelectionMode özelliğinden hafta ya da
ayın seçilmesi sağlanabilir.<asp:Calendar ID=”Calendar1″ runat=”server”></asp:Calendar>
20
DataList: DataList kontrolü tam donanımlı sunucu taraflı ASP.NET veri
bağlama kontrolüdür. Bu kontrol ile belirli bir kaynaktan gelen verileri
görüntüleyebileceğimiz gibi bu verileri seçme ve güncelleme işlemlerine de
kolayca yapabiliriz. Ayrıca verileri görüntülerken, seçerken ve onları
güncellerken verinin görünüşü ve sayfadaki yerleşimi de kolayca belirleme
şansına sahip olacağız.<asp:DataList ID=”DataList1″ runat=”server”></asp:DataList>
İmage: Kullanıcıya resim göstermek için kullanılan
araçımızdır(toolbox).Gerekli boyutlar girilerek resmin kaplayacağı alan
düzenlenir.<asp:Image ID="Image1" runat="server" BorderStyle="Solid" Height="279px ImageAlign="Left"ImageUrl="~/Hearthstone_Screenshot_12.29.2014.07.27.29.png" style="text-align: center; margin-right: 33px; margin-top: 0px" Width="373px" />
RadioButton: RadioButton kontrolü, seçenekler arasından sadece bir tane
seçeneğin seçilmesini sağlayan kontroldür.<asp:RadioButton ID=”RadioButton1″ runat=”server” />
HyberLink: HyperLink Kontrolü, HTML’deki <a href=”…”>….</a>
etiketine benzer bir hedef sayfaya ya da yerel bir sayfaya yönlendirme
yapmak amacıyla kullanılan kontroldür. Yönlendirilecek sayfa NavigateUrl
özelliği ile belirlenir.<asp:HyperLink ID=”HyperLink1″ runat=”server”NavigateUrl=“http://www.xxx.com.tr“>HyperLink</asp:HyperLink>
Chart: Chart adındaki kontrol ile herhangi bir üçüncü parti kontrole veya
GDI+ nesnelerine gerek kalmadan çok hızlı şekilde mükemmel grafik tablolar
üretebilmekteyiz.<asp:Chart ID="Chart1" runat="server" DataSourceI
D="SqlDataSource1" Width="450px" Height="450px">
21
2.2.3 Proje Kullanılan Metotlar
Ekle():Anket hazırla sayfamızda çoktan seçmeli anketlerimizi oluşturmak
için gerekli koşulları sağlar.
public void ekle() Panel1.Controls.Clear(); for (int i = 0; i < int.Parse(TextBox1.Text); i++) Literal l = new Literal(); l.Text = "<br/><br/>";
Label lblnumber = new Label(); lblnumber.Text = (i+1).ToString() +") "; tb[i] = new TextBox(); tb[i].ID = "tb" + i.ToString(); Panel1.Controls.Add(l); Panel1.Controls.Add(lblnumber); Panel1.Controls.Add(tb[i]);
22
VeriGetir():Database bağlantımızın oluşturulması için gerekli sql
cümleciğimizin çalıştırılmasını sağlar.
protected DataTable VeriGetir()
SqlConnection baglanti = new SqlConnection("Data Source=HUSEYIN\\SQLEXPRESS; Initial Catalog=Anket; Integrated Security=true"); baglanti.Open(); SqlCommand komut = new SqlCommand("Select anketlerTarihBasla,anketlerTarihBit,anketlerId,anketlerSoru FROM anketler where anketlerOnay = 1 ", baglanti);
SqlDataAdapter adapter = new SqlDataAdapter(komut); DataTable dt = new DataTable();
adapter.Fill(dt);
return dt;
Yorumlari_getir():Anketlerimiz için oluşturmuş olduğumuz yorumların
ekrana yansımasını sağlar.
protected void yorumlari_getir() SqlDataAdapter da3 = new SqlDataAdapter("select kullaniciAdi, yorumlarIcerik from yorumlar where anketlerId = @aid", "Data Source=HUSEYIN\\SQLEXPRESS; Initial Catalog=Anket; Integrated Security=true"); da3.SelectCommand.Parameters.AddWithValue("@aid", Anketid); DataTable dt2 = new DataTable(); da3.Fill(dt2);
DataList2.DataSource = dt2; DataList2.DataBind();
23
Tablodoldur():Analiz tablomuzun gerekli yanıtlarla oluşacak istatistik
tablomuzu göstermemize yarar.
protected void tablodoldur()
SqlCommand komut = new SqlCommand(" select secenekler.seceneklerIcerik, count(yanit.yanitId) as \"OySayisi\" from secenekler, yanit, anketler where secenekler.seceneklerId = yanit.seceneklerId and anketler.anketlerId = secenekler.anketlerId and anketler.anketlerId =@anketid group by secenekler.seceneklerIcerik ",baglanti); komut.Parameters.AddWithValue("@anketid", Anketid); baglanti.Open();
int[] yValues = new int[cevapsayisi+1]; string[] xValues = new string[cevapsayisi+1]; int sayac = 0; SqlDataReader dr = komut.ExecuteReader(); while (dr.Read()) xValues[sayac] = dr["seceneklerIcerik"].ToString() + "(" + dr["OySayisi"].ToString() + ")"; yValues[sayac] = Convert.ToInt16(dr["OySayisi"]); sayac++; dr.Close(); Chart1.Series["Default"].Points.DataBindXY(xValues, yValues);
Chart1.Series["Default"].ChartType = SeriesChartType.Pie;
Chart1.Series["Default"]["PieLabelStyle"] = "Disabled";
Chart1.ChartAreas["ChartArea1"].Area3DStyle.Enable3D = true;
Chart1.Legends[0].Enabled = true;
24
soruları_getir():Oluşturulacak sorularımızın yönetici tarafında ekrana
yansımasını sağlar.
protected void sorulari_getir() SqlDataAdapter da2 = new SqlDataAdapter("Select seceneklerIcerik,seceneklerId FROM secenekler where anketlerId = @aid", "Data Source=HUSEYIN\\SQLEXPRESS; Initial Catalog=Anket; Integrated Security=true"); da2.SelectCommand.Parameters.AddWithValue("@aid", Anketid); DataTable dt = new DataTable(); cevapsayisi = da2.Fill(dt); DataList1.DataSource = dt; DataList1.DataBind();
25
İŞ-ZAMAN PLANI
GEREKLİ BİLGİLER EKLENECEKTİR BU SAYFAYA!!!!!!!!!!!!!!!!
26
27
SONUÇLAR ve ÖNERİLER
Projemizde bir anketler sistemi oluşturulmuştur. Bu sistem, kullanıcı kayit işlemleri,
kullanicilarin birbiriyle iletişim kurabilecekleri yorum alanları, anketlere video -
resim eklemek, anket süreleri, anket başlangıç ve bitiş tarihleri, anket oluşturmak ve
yayına sokmak için yetki örgüsü gibi özelliklerle zenginleştirilmeye çalışılmıştır.
Proje 8 adet formdan oluşmaktadır. Bunlar;
Login.aspx;
Kullanıcı login işlemlerinin yapıldığı formdur. Buradan Üye ol linkiyle
“Create.aspx” sayfasına, doğru kullanici adi - şifre kombinasyonu ile default.aspx
sayfasına yönlendirme yapılır.
Create.aspx;
Kullanıcı kayıt işlemlerinin yapıldığı formdur.
28
Default.aspx:
Kullanıcıların ana sayfasıdır. Sayfa yüklenirken oturum bilgisine rastlanamazsa
login.aspx sayfasına yönlendirir.
Kullanıcıların anket oluşturmak ve anket çözmek için gereken formlara
yönlendirilmesi bu sayfadaki linkler sayesinde yapılır.
Anketler.aspx;
Yayında olan anketlerin görüntülendiği alandır. Kullanıcı buradan çözülecek anketi
seçerek, anket çözme ekranına yönlendirir.
Ayrıca bu sayfada anketlerin oluşturma tarihi ve eğer girildiyse son işaretlenebildiği
tarih bilgileri de bulunmaktadır.
29
Anketyanitla.aspx
Anketlerin çözüldüğü ve anketler hakkında yorum yapılan sayfadır.
30
Yonetici.aspx
Yayında olan ve olmayan tüm anketler burda listelenir. Bu listeden yayına sokulacak,
yayından kaldırılacak, silinecek anketlerin yönetici tarafından seçilmesi beklenir.
Seçilen anket yoneticionay.aspx formuna gönderilir.
Yöneticionay.aspx
Seçilen anketin yönetici tarafından yayından kaldırılıp, yayına sokulup silinebildiği
formdur.
31
SÖZDE KOD
GEREKLİ BİLGİLER EKLENECEKTİR!!!
KAYNAKLAR
[1] https://www.acikakademi.com/portal/default.aspx
[2] Erdal Özüsağlam,Ali Atalay,Salih Toprak,Web Tabanlı Anket Hazırlama Sistemi,Aksaray Üniversitesi,Fen Edebiyat Fakültesi İstatistik Bölümü,Eskişehir, 11-13 Şubat 2009
[3] Anket Hazırlama Kılavuzu ,www.odevofis.com,Archester Houston
[4] Kazmaz, Veysel Uğur, C# İLE ASP.NET 4.5, 5.Baskı,KODLAB, 02.02.2013
[5] http://www.surveey.com
[6] https://tr.surveymonkey.com/home/
[7] http://www.siviltoplumakademisi.org.tr/index.php?
option=com_content&view=article&id=708:kaliteli-bir-makale-nasl-
yazlr&catid=54:sivil-toplum-bilinci&Itemid=132
32
ÖZGEÇMİŞ
Hüseyin TUNÇ,17 Haziran 1990 yılında Kahramanmaraş-Elbistan ilçesinde doğdu. İlk ve ortaöğretimini İstanbul-Pendik 700. Yıl İlköğretim Okulu’nda tamamladı. Lise öğrenimini İstanbul-Pendik Kurtköy Lisesi’nde tamamladı.2009 yılında girdiği Kocaeli Üniversitesi Mühendislik Fakültesi Bilgisayar Mühendisliği Bölümü’nde 5.sınıf öğrencisi olarak halen öğrenim hayatına devam etmektedir.
Elektronik Posta:huseyin.tunc.46@hotmail.com
Telefon:0507 143 72 46
33
34
35
36
Recommended