Fikir Deposu
-
Upload
oguzcan-pamuk -
Category
Education
-
view
201 -
download
0
Transcript of Fikir Deposu
i
T.C. GEBZE TEKNİK ÜNİVERSİTESİ
Bilgisayar Mühendisliği Bölümü
KURUMSAL İNOVASYON
FİKİR DEPOSU
UYGULAMASI
Oğuzcan PAMUK
Danışman
Doç. Dr. Mehmet GÖKTÜRK
Aralık, 2015
Gebze, KOCAELİ
ii
iii
T.C. GEBZE TEKNİK ÜNİVERSİTESİ
Bilgisayar Mühendisliği Bölümü
KURUMSAL İNOVASYON
FİKİR DEPOSU
UYGULAMASI
Oğuzcan PAMUK
Danışman
Doç. Dr. Mehmet GÖKTÜRK
Aralık, 2015
Gebze, KOCAELİ
iv
v
Bu çalışma ..../..../200.. tarihinde aşağıdaki jüri tarafından Bilgisayar Mühendisliği
Bölümünde Lisans Bitirme Projesi olarak kabul edilmiştir.
Bitirme Projesi Jürisi
Danışman Adı Doç.Dr.Mehmet Göktürk
Üniversite GEBZE TEKNİK ÜNİVERSİTESİ
Fakülte Mühendislik Fakültesi
Jüri Adı Dr.Burcu Yılmaz
Üniversite GEBZE TEKNİK ÜNİVERSİTESİ
Fakülte Mühendislik Fakültesi
Jüri Adı Dr.Ahmet Cengizhan Dirican
Üniversite GEBZE TEKNİK ÜNİVERSİTESİ
Fakülte Mühendislik Fakültesi
vi
ÖNSÖZ
Bu kılavuzun ilk taslaklarının hazırlanmasında emeği geçenlere, kılavuzun son halini
almasında yol gösterici olan Sayın Doç. Dr. Mehmet GÖKTÜRK hocama ve bu
çalışmayı destekleyen Gebze Teknik Üniversitesi’ne içten teşekkürlerimi sunarım.
Ayrıca eğitimim süresince bana her konuda tam destek veren aileme ve bana
hayatlarıyla örnek olan tüm hocalarıma saygı ve sevgilerimi sunarım.
Aralık, 2015 Oğuzcan PAMUK
vii
İÇİNDEKİLER
ÖNSÖZ .....................................................................................................................Vİ
İÇİNDEKİLER ..................................................................................................... Vİİ
ŞEKİL LİSTESİ ....................................................................................................... X
KISALTMA LİSTESİ ............................................................................................Xİ
ÖZET ..................................................................................................................... Xİİ
SUMMARY ......................................................................................................... Xİİİ
1. GİRİŞ ........................................................................................................... 14
1.1. PROJE TANIMI ..................................................................................... 14
1.2. PROJENİN NEDEN VE AMAÇLARI ................................................. 15
1.3. PROJE GEREKSİNİMLERİ ................................................................ 16
1.3.1. Fonksiyonel Gereksinimler…………………………………………….16
1.3.2. Fonksiyonel Olmayan Gereksinimler………………………………….16
1.4. SİSTEMİN TEMEL ÖZELLİKLERİ .................................................. 17
1.5. BAŞARI KRİTERLERİ ......................................................................... 18
2. KULLANILAN TEKNOLOJİLER ........................................................... 19
2.1. ANDROID İŞLETİM SİSTEMİ ............................................................ 19
2.2. MYSQL VERİ TABANI ........................................................................ 19
2.3. JAX-WS WEB SERVİSİ ........................................................................ 20
2.4. TOMCAT ................................................................................................. 20
2.5. ANGULARJS .......................................................................................... 20
2.6. APACHE MAVEN .................................................................................. 21
2.7. KULLANILAN EDİTÖRLER ............................................................... 21
3. YÖNTEMLER ............................................................................................ 22
3.1. SUNUCUNUN OLUŞTURULMASI ..................................................... 22
3.2. WEB PLATFORMUNUN OLUŞTURULMASI .................................. 26
3.3. VERİ TABANININ OLUŞTURULMASI ............................................ 26
3.4. ANDROID PLATFORMUNUN OLUŞTURULMASI ........................ 26
3.5. UML DİYAGRAMLARI........................................................................ 30
viii
3.5.1. Use – Case Diyagramı…………………………………………………..30
3.5.2. Activity Diyagramı……………………………………………………...31
4. DENEYLER ................................................................................................ 32
5. TARTIŞMA VE SONUÇ ............................................................................ 34
6. KAYNAKLAR ............................................................................................ 35
ix
x
ŞEKİL LİSTESİ
Şekil 1 Projenin Yapısı (Android , Web Client - Server – Database) ....................... 15 Şekil 2 Sistem Mimarisi ............................................................................................ 22
Şekil 3 TripleDES Şifreleme ..................................................................................... 23 Şekil 4 Servlet Classları ............................................................................................ 23 Şekil 5 Service Class ................................................................................................. 24 Şekil 6 Read Config File ........................................................................................... 24 Şekil 7 DBConnection Class ..................................................................................... 25
Şekil 8 DAO Class .................................................................................................... 25
Şekil 9 Kullanıcı Giriş Ekranı ................................................................................... 27 Şekil 10 Kullanıcı Kayıt Ekranı ................................................................................ 27
Şekil 11 Anasayfa Ekranı .......................................................................................... 28 Şekil 12 Slider Menü ................................................................................................. 29 Şekil 13 Fikir Gönder Ekranı .................................................................................... 29 Şekil 14 Use - Case Diyagramı ................................................................................. 30
Şekil 15 Activity Diyagramı ..................................................................................... 31
xi
KISALTMA LİSTESİ
UML : Unified Modeling Language (Birleşik Modelleme Dili)
XML : Extensible Markup Language
G.T.Ü : Gebze Teknik Üniversitesi
API : Application Programmin Interface
REST : Representational State Transfer
JAX-WS : Java API for XML Web Services
MVC : Model View Controller
SDK : Software Development Kit
xii
ÖZET
Kurumsal şirketler bünyesinde kullanılabilecek, şirket çalışanlarının şirket veya kendi
yararlarına olabilecek her türlü fikir ve görüşlerini paylaşabilecekleri ortak bir platform
geliştirilmiştir. Bahsi geçen bu platform Android işletim sistemi için tasarlanmıştır.
Sistem üç farklı modülden oluşmaktadır. Birinci modül kullanıcıların sisteme
erişmelerine olanak sağlayacak olan Android platformunda geliştirilen mobil
uygulamadır. Kullanıcılar mobil uygulama üzerinden fikirlerini paylaşabilir, paylaşılan
diğer fikirleri görebilir ve yorum yapabilir. Bir diğer modül ise sistem yöneticisinin
uygulamayı yönetebilmesini sağlayan web uygulamasıdır. Yönetici bu uygulama
sayesinde sisteme kaydolan kullanıcıları görebilir, gerekli gördüğü kullanıcıyı silebilir.
Paylaşılan fikirleri görebilir, fikirlerin durumlarını güncelleyebilir, gerekli gördüğü fikri
silebilir. Buna karşın sistem fikir sahiplerini korumayı amaçlamaktadır. Silinen fikirler
sistem veri tabanından silinmez, arşivlenir. Bu uygulamanın asıl amacı kullanıcıların
fikirlerinin korunmasıdır. Son modül ise fikirlerin saklanmasını ve yönetilmesini
amaçlayan sunucu uygulamasıdır. Veri tabanı ve uygulamalar arasındaki bağlantıyı
sağlar.
Bu sistemle beraber kullanıcıların haklarını koruyan, basit ve güvenli bir şekilde
fikirlerini paylaşmalarına olanak sağlayan platform oluşturulmuştur.
xiii
SUMMARY
In this work a shared platform developed for Enterprise company’s and it’s employees
to share their useful ideas and opinions that can be benefit to company or for their own.
This Mentioned platform is designed for Android operating system.
System consist of three diffrent modules. First module is a mobile application that
developed in android for the users accessing feature to the system, users can share their
opinions, view other ones and make comment fort hem on mobile application. Another
module is Web based application for system administrator for viewing,deleting and
updating the registered users or ideas and opinions. Despite that system intend to protect
idea owners, Deleted ideas and opinions are not deleted on system’s database, it’s
archived. This applications main objective is protecting ideas of users. Last module is
server application that stores,manages the ideas and opinions and provides connections
between database and applications.
With this system a platform to protect rights of the users and providing of sharing ideas
and opinions as simply and secure created.
14
1. GİRİŞ
Bu rapor G.T.Ü. Bilgisayar Mühendisliği Bölümü Lisans Bitirme Projesi dersi için
belirlenmiş projenin tanıtılması ve açıklanması amacıyla hazırlanmıştır. Projenin
gereksinimleri, işleyişi hakkında bilgi veren UML diyagramları ve projenin çalışma
mantığı raporun içeriğini oluşturmaktadır.
Kurumsal şirketlerde çalışanların memnuniyetleri bir hayli önemsenmektedir.
Bunun nedeni memnuniyet ve başarının doğru orantılı olarak ilerlemesidir. Bu
durum hem maksimum performanslı çalışanları doğurmakta hem de şirketin başarı
ve kazanç potansiyelini arttırmaktadır. Bahsi geçen projede çalışanların fikirlerinin
şirket tarafından önemsendiğinin ispatlanaması ve herkes tarafından kabul görülen
fikirlerin hayata geçirilerek çalışan motivasyonunun maksimuma çıkarılması
hedeflenmektedir.
1.1. PROJE TANIMI
Bahsi geçen bu projede çalışanların şirket veya çalışan yararına olabilecek fikirlerini
paylaşabilecekleri bir platform oluşturulmuştur. Bu platform sayesinde çalışanlar
özgürce fikirlerini paylaşabilecekler ve şirket içinde çalışan diğer kişilerin
beğenisine sunabileceklerdir. En çok beğeniyi alan fikir, çoğunluğun bu yönde
olumlu görüş bildirmesine dayanarak hayata gerçekleştirilebilme ihtimalini
arttıracaktır. Öte yandan çalışanların sunacakları fikirler arasından muhtemel olarak
ticaretleştirilebileceği ön görülen fikirler, fikri paylaşan kişinin önderliğinde hayata
geçirilip, şirket ve fikir sahibine hem maddi hem de gelişim anlamında yarar
sağlayacaktır.
15
Sistem yöneticisi web platformu üzerinden sistemi takip edebilecek ve gerekli
gördüğü noktalarda sisteme müdahale edebilecektir. Projenin en önemli işlevi ise
fikir sahiplerinin haklarının korunmasıdır. Sistem yöneticisi fikirleri veya
kullanıcıları silse dahi sistem fikirleri veri tabanından silmez, arşivler. Bu sayede
kullanıcılara güvenli ve kullanımı basit bir platform sağlanmış olunur.
Şekil 1 Projenin Yapısı (Android , Web Client - Server – Database)
1.2. PROJENİN NEDEN VE AMAÇLARI
Bu projede, kurumsal şirketlerdeki çalışanların şirketin daha yaşanılabilir bir ortam
olmasını sağlayacak, şirket veya tüm çalışanların yararına olabilecek fikirlerini
paylaşabilecekleri ortak bir platform oluşturulması hedeflenmektedir. Buradaki
amaç şirketin çalışanların fikirlerini önemsediğini vurgulamak ve buradan
çıkabilecek olası ticaretleştirilebilecek fikirleri değerlendirmektir. Oluşturulması
hedeflenen bu platformun çalışanların motivastonunu arttıracağı ve şirketin ufkunu,
iş hacmini ve kazancını arttıracağı tahmin edilmektedir. Diğer yandan çalışanlar
fikirlerini bu platformda paylaşarak tescillemiş olacak ve yaratıcılıklarının
karşılığını maddi ve manevi olarak alabilecek olma ihtimaline kavuşacaklardır.
16
1.3. PROJE GEREKSİNİMLERİ
Bahsi geçen projenin geliştirilirken ihtiyaç duyulan soyut ve somut gereksinimler,
fonksiyonel ve fonksiyonel olmayan gereksinimler adını taşıyan alt başlıklarda
detaylı olarak incelenmiştir.
1.3.1. Fonksiyonel Gereksinimler
Projenin belirtilen amaçlar ve nedenler doğrultusunda gerçekleştirilirken ihtiyaç
duyulan somut gereksinimler bu başlık altında maddeler olarak incelenmiştir.
Çalışanların fikirlerini paylaşabilmesi için rahat erişebilecekleri mobil
platform geliştirilmiştir.
Paylaşılan fikirlerin saklanması ihtiyacına binayen veri tabanı tasarlanmıştır.
Bir önceki maddede belirtilen, fikirlerin saklanmasını sağlacak olan veri
tabanı ile fikirlerin gönderileceği mobil uygulama platformu arasında köprü
görevi görecek sunucu geliştirilmiştir.
Geliştirilen sunucu ile haberleşen ve yöneticilerin sistemi yönetmesini
sağlayan web platformu oluşturulmuştur.
1.3.2. Fonksiyonel Olmayan Gereksinimler
Projenin somut gereksinimlerinin yanında soyut olarak göze çarpan ama projenin
işleyişi ve kabulu açısından hayati öneme sahip gereksinimler bu başlık altında
aşağıdaki maddelerce belirtilmiştir.
Proje güvenilir olmalıdır. Çalışanların fikirlerinin değer göreceğine ve
mülkiyet haklarının korunacağına dair güven duymaları gerekmektedir.
Proje geliştirilebilir olmalıdır. Daha sonra ortaya çıkabilecek gereksinimlere
göre tekrar dizayn edilmesi gerektiğinde olası karşılaşılabilecek sorunların
17
minimuma indirgenmesi tasarımın kuvvetli bir şekilde yapılmasıyla
önlenebilecektir.
Sistemin performansının tatmin edici seviyede olması gerekmektedir. Bu
gereksinim projenin başarısı ve kullanım oranının artmasıyla doğru orantılı
değişim göstermektedir.
Kullanıcı arayüzünün basit ve kullanışlı olması gerekmektedir. Bu durum
kullanıcıların sistemi daha rahat kullanmasını sağlayacaktır.
Sistemin kullanıcı bilgilerini korumak adına doğru tasarlanmış ve gerekli
güvenlik önlemleriyle donatılmış olması gerekmektedir.
1.4. SİSTEMİN TEMEL ÖZELLİKLERİ
Kurumsal inovasyonu sağlamak amacıyla oluşturulmuş olan bu projenin temel
özellikleri aşağıdaki maddelerde belirtilmiştir.
Sistemin kullanıcılarla etkileşiminin sağlanması amacıyla mobil uygulama
geliştirilmiştir. Kullanıcılar bu uygulama sayesinde fikirlerini paylaşabilir,
fikirlerinin durumunu öğrenebilir, paylaşılan fikirlere yorum yapabilir.
Yöneticilerin gerekli durumlarda sisteme müdahale edebilmesi adına web
platformu oluşturulmuştur. Yöneticiler bu platform sayesinde kayıtlı
kullanıcıları görebilir, yeni kullanıcı ekleyebilir, var olan departmanları
görebilir, yeni departman ekleyebilir, sistemde olan fikirleri görebilir ve
durumlarını değiştirebilir.
Sistem kullanıcıların güvenliğini önemsemektedir. Yöneticiler gönderilen
fikirleri silse dahi sistem silinmek istenilen fikri silmez, arşivler.
18
1.5. BAŞARI KRİTERLERİ
Sistemin oluşturulmadan önce gerekli görülen ve gerçekleştirilen başarı kriterleri
aşağıdaki maddelerde belirtilmiştir.
Fikirlerin paylaşılacağı Android uygulama tasarımı
Fikirlerin ekleriyle birlikte tutulacağı veri tabanı
Veri tabanı ve mobil uygulama arasındaki bağlantıyı sağlayacak Web Server
Yöneticilerin sistemi kontrol etmesini sağlayacak Web platformu
Fikirlerin gün damgalı olarak sistemde gösterilmiş olması.
Kullanıcıların haklarını koruyacak ekstra yapılar.
19
2. KULLANILAN TEKNOLOJİLER
Projenin gerçekleştirilmesinde kullanılan teknolojiler alt başlıklarda incelenmiştir.
2.1. ANDROID İŞLETİM SİSTEMİ
Android; Google, Open Handset Alliance ve Özgür Yazılım Topluluğu tarafından
geliştirilmiş olan, Linux tabanlı işletim sistemidir. Mobil cihazlarda kullanılır.
Projenin mobil platformu Android işletim sistemi üzerine kurulmuştur. SDK sürümü
15 üzerinde olan tüm telefonları desteklemektedir. Sistemin inşasında aşağıdaki
maddelerde verilen Android kütüphanelerinden yararlanılmıştır.
'com.android.support:appcompat-v7:22.2.0'
'com.android.support:recyclerview-v7:22.2.+'
'com.mcxiaoke.volley:library-aar:1.0.0'
'com.android.support:support-v4:21.0.+'
2.2. MYSQL VERİ TABANI
MySQL; multi-thread ve multi-user desteği olan veri tabanı yönetim sistemidir.
Sistemin veri kayıtları kurulu olan MySQL üzerinde saklanmaktadır.
Veri tabanı sistemi normalizasyon formları esas alınarak oluşturulmuştur. Genel
olarak normal formların ilk dört maddesine bağlı kalınmıştır. Bu kurallara uygun
tasarım yapabilmek adına 8 farklı tablo oluşturulmuştur.
Şekil 2 Veritabanı Çıktısı
20
2.3. JAX-WS WEB SERVİSİ
Proje Rest API mantığıyla oluşturulmuştur. Sunucu modülü Java programlama
diliyle kodlanmıştır. Java programlama dilinin JAX-WS framework’ünden
yararlanarak Rest API mantığı projeye entegre edilmiştir.
Bu mantıkla kodlama yapabilmek için aşağıda belirtilen Class yapılarından
yararlanılmıştır :
Java Bean
Java DTO
Java DAO
Java Service
Java Servlet
2.4. TOMCAT
Java Servlet ve JSP uygulamalarını belirli bir port üzerinde çalıştırmayı sağlayan
Apache tarafından geliştirilen üründür.
Projenin sunucu kısmı Tomcat ile “8080” portu üzerinde çalıştırılmıştır.
2.5. ANGULARJS
Google’ın desteklediği javascript MVC kütüphanesidir. MVC ; verinin, görünümün
ve kontrollerin ayrı tutulmasına dayanır.
Web platformu Html,Javascript ve Javascript kütüphanesi olan AngularJS
kullanılarak hazırlanmıştır.
21
2.6. APACHE MAVEN
Maven, geliştirilen Java projelerinin geliştirme süreçlerini basitleştirmek,
standartlaştırmak, dökümantasyon hazırlamak, kütüphane bağımlılıklarını kullanıcı
zahmetinden kurtarmak için kullanılan bir araçtır.
Projenin sunucu kısmında Maven teknolojisi kullanılmıştır.
2.7. KULLANILAN EDİTÖRLER
Proje kodlama aşamasında her bir modül için farklı editörler kullanılmıştır. Bu
editörlerden aşağıdaki maddelerde bahsedilmiştir.
Java programlama dili kullanılarak geliştirilmiş olan sunucu kodlamasında
editör olarak Eclipse kullanılmıştır. Eclipse; açık kaynak kodlu tümleşik
geliştirme ortamıdır.
Android platformu Java programlama dili kullanılarak Android Studio
editörü üzerinde geliştirilmiştir. Android Studio; Google ve JetBrains
tarafından desteklenen Android geliştirme ortamıdır.
Web platformu Javascript kullanılarak WebStorm editörü üzerinde
kodlanmıştır. WebStorm; JetBrains tarafından geliştirilen Html,Css ve
Javascript editörüdür.
22
3. YÖNTEMLER
Projenin tüm detaylarının anlatımı bu başlık altında gerçekleştirilecektir. Detaylar
UML diyagramları ve ekran çıktılarıyla desteklenmiştir. Sistem mimarisi aşağıdaki
şekilde özetlenmiştir.
Şekil 2 Sistem Mimarisi
3.1. SUNUCUNUN OLUŞTURULMASI
Rest API mantığıyla çalışan sunucunun özellikleri aşağıdaki maddelerde verilmiştir.
Java Programlama Diliyle kodlanmıştır.
Proje Maven Projesi olarak oluşturulmuştur.
JAX-WS Framework’ü kullanılmıştır.
Java Bean , Dao , Dto , Service Class’ları oluşturulmuştur.
Singleton ve Facade Tasarım Desenleri kullanılmıştır.
MySQL veri tabanıyla bağlantı sağlamak amacıyla ConnectionHelper Class’ı
kullanılmıştır.
Android Client
Web Server
MySQL DB
Web Client
23
Veri tabanı bilgileri “.properties” uzantılı config dosyalarından
okunmaktadır.
Kullanıcı şifreleri güvenlik amacıyla TripleDES simetrik şifreleme
algoritması kullanılarak şifrelenmiştir.
Log4j kütüphanesi kullanılarak loglama yapılmıştır.
Sunucu Tomcat kullanılarak çalıştırılmaktadır.
Client’larla haberleşme Jersey Servlet Class’larıyla gerçekleşmektedir.
Oluşturulan her package için Class Diagramları aşağıda verilmiştir:
Şekil 3 TripleDES Şifreleme
Şekil 4 Servlet Classları
24
Şekil 5 Service Class
Şekil 6 Read Config File
25
Şekil 7 DBConnection Class
Şekil 8 DAO Class
26
3.2. WEB PLATFORMUNUN OLUŞTURULMASI
Web Platformunun özellikleri aşağıdaki maddelerde belirtilmiştir.
Javascript , Html , Css kullanılarak hazırlanmıştır.
AngularJS ve Bootstrap framework’lerinden yararlanılmıştır.
MVC yapısına uygun proje yapısı oluşturulmuştur.
3.3. VERİ TABANININ OLUŞTURULMASI
Veri tabanının özellikleri aşağıdaki maddelerde belirtilmiştir.
MySQL veri tabanı sistemi kullanılmıştır.
Veri tabanının yapısı normal formlara uygun olarak tasarlanmıştır.
Tek bir veri tabanı, toplamda 8 tablo oluşturulmuştur.
3.4. ANDROID PLATFORMUNUN OLUŞTURULMASI
Uygulamanın teknik olarak nasıl oluşturulduğu ve kullanım yönergeleri bu başlık
altında anlatılacaktır.
Minimum SDK 15 versiyonunda çalışmaktadır.
Sunucuyla haberleşme “JsonRequest” methoduyla sağlanır.
Aşağıdaki kütüphanelerden yararlanılmıştır:
'com.android.support:appcompat-v7:22.2.0'
'com.android.support:recyclerview-v7:22.2.+'
'com.mcxiaoke.volley:library-aar:1.0.0'
'com.android.support:support-v4:21.0.+'
Kullanıcı öncelikle sisteme kaydolur ve kaydolduğu bilgilerle sisteme giriş
yapar.
27
Şekil 9 Kullanıcı Giriş Ekranı
Şekil 10 Kullanıcı Kayıt Ekranı
28
Giriş işlemi başarıyla gerçekleştikten sonra kullanıcının karşısına tüm
fikirleri görebileceği ana sayfa ekranı gelmektedir. Fikirler kartlar şeklinde
gösterilmektedir. Burada yorumları görebileceği ve ekleyebileceği bir buton,
fikri gönderenin ismi ve profil fotoğrafı ve gün damgası bulunmaktadır.
Kullanıcının tüm sisteme rahat erişebilmesi adına slider menü tasarlanmıştır.
Kullanıcı bu menü sayesinde gönderdiği, kabul edilen, reddedilen ve en çok
beğenilen fikirleri ayrı ekranlarda görebilmektedir.
Şekil 11 Anasayfa Ekranı
29
Kullanıcı yeni bir fikir göndermek için ana sayfada bulunan balon simgesini
tıklamalıdır. Kullanıcı bu ekran üzerinden yeni bir fikir ekleyebilir, eklediği
fikre yeni bir resim ekleyebilir, eklediği resmi göndermeden iptal edebilir.
Şekil 12 Slider Menü
Şekil 13 Fikir Gönder Ekranı
30
3.5. UML DİYAGRAMLARI
3.5.1. Use – Case Diyagramı
Şekil 14 Use - Case Diyagramı
31
3.5.2. Activity Diyagramı
Şekil 15 Activity Diyagramı
32
4. DENEYLER
Projenin sunucu kısmı, Google Chrome’un eklentisi olan “Advanced Rest Client
Application” ile test edilmiştir. Bu sayede projede client görevi gören mobil ve web
uygulamalarıyla doğru haberleşme sağlayıp sağlamadığı denenmiş oldu.
Şekil 16 Rest API Test-1
Şekil 17 Rest API Test-2
33
Geliştirilen sistem, nasıl çalıştığını bilmeyen 10 farklı kişiye kullandırılmıştır. Çıkan
sonuçlarla, sistemin fonksiyonel ve fonksiyonel olmayan gereksinimleri arasında
karşılaştırma yapılmıştır.
Sunucu kısmının testi yapılıp, doğru sonuçlar döndürdüğünden emin olduktan sonra
Android ve Web Platformlarının bu sonuçları doğru işleyip işlemediğini kontrol
etmek amacıyla manuel testler gerçekleştirilmiştir. Bu testler çerçevesinde tüm
varsayımlar değerlendirilmiş ve denenmiştir.
Yine bu platformların performansını ölçmek amacıyla sisteme toplamda 100 farklı
fikir girilmiştir. Sistemin çalışmasında yavaşlıklar yada hatalar var mı diye
gözlemler yapılmıştır.
Sistemi aynı anda farklı cihazlarla farklı kullanıcıların kullanmasıyla sağlamlık testi
gerçekleştirilmiştir.
Şekil 18 Manuel Test Örneği
34
5. TARTIŞMA VE SONUÇ
Hazırlanan bu projede, kurumsal şirket çalışanlarının Android işletim sistemine
özgü hazırlanan uygulamayı kullanarak kendilerinin veya çalıştıkları şirketin
yararına olan fikirlerini birbirleriyle paylaşmasını sağlayacak olan bir sistem
geliştirilmiştir. Sistemin temel özelliği fikir haklarına verilen önemdir. Yönetici
kendisi için hazırlanan web platformunu kullanarak sistemi yönetebilir fakat fikirleri
silmek istediğinde sistem buna izin vermez ve fikirleri arşive ekler. Ayrıca sistem
kullanıcılarının giriş bilgilerinin korunması amacıyla oluşturdukları şifreleri
şifreleme algoritmalarından olan “TripleDES” ile şifreleme gerçekleşmiştir.
Sistemi bilmeyen 10 farklı kullanıcıdan alınan verilere göre sistemin hızlı ve basit
olduğuna karar verilmiştir. Kullanıcının dezavantajına olacak herhangi bir karmaşık
yapı içermemektedir.
Sunucu test işleminin sonucunda sistemdeki hatalar ayıklanmış ve bu methodlar
düzeltilerek tekrar test işlemine tabi tutulmuştur.
Yapılan manuel testler sonucunda mobil platformların hataları tespit edilmiş ve
maksimum ölçüde verim elde edilmek amacıyla düzenlemeler gerçekleştirilmiştir.
Projenin ilerleyen dönemlerde sadece Android ile bağlı kalmayıp diğer mobil işletim
sistemlerini de desteklemesi sağlanmalıdır. Ayrıca tabletler için farklı bir sürümde
üretilebileceği saptanmıştır.
35
6. KAYNAKLAR
[1] KIM,YONG., Android Tutorial[online],
http://www.mkyong.com/tutorials/android-tutorial/
[Ziyaret Tarihi: 27 Eylül 2015].
[2] VOGEL , LARS., MySQL and Java JDBC[online],
http://www.vogella.com/tutorials/MySQLJava/article.html
[Ziyaret Tarihi: 26 Eylül 2015].
[3] KIM , YONG., Jersey Hello Word Example[online],
http://www.mkyong.com/webservices/jax-rs/jersey-hello-world-example/
[Ziyaret Tarihi: 28 Eylül 2015].
[4] ANGULAR., Release v1.4.8 · angular/angular.js[online],
https://github.com/angular/angular.js/releases/tag/v1.4.8
[Ziyaret Tarihi: 20 Kasım 2015].
[5] GOOGLE., Google APIs for Android [online],
https://developers.google.com/android/
[Ziyaret Tarihi: 22 Kasım 2015].