İSTANBUL TEKNİK ÜNİVERSİTESİ BİLGİSAYAR VE BİLİŞİM FAKÜLTESİ MOBİL UYGULAMA İLE FATURA ÖDEME



Benzer belgeler
Yüz Tanımaya Dayalı Uygulamalar. (Özet)

İSTANBUL TEKNİK ÜNİVERSİTESİ BİLGİSAYAR VE BİLİŞİM FAKÜLTESİ. Proje Kaynak Yönetimi

Virtualmin'e Yeni Web Sitesi Host Etmek - Domain Eklemek

IDENTITY MANAGEMENT FOR EXTERNAL USERS

İSTANBUL TEKNİK ÜNİVERSİTESİ ELEKTRİK-ELEKTRONİK FAKÜLTESİ DUYARGA AĞLARINDA HABERLEŞME ALGORİTMASI TASARIMI VE TINYOS ÜZERİNDE GERÇEKLEMESİ

AB surecinde Turkiyede Ozel Guvenlik Hizmetleri Yapisi ve Uyum Sorunlari (Turkish Edition)

İSTANBUL TEKNİK ÜNİVERSİTESİ ELEKTRİK-ELEKTRONİK FAKÜLTESİ GENOPE

İSTANBUL TEKNİK ÜNİVERSİTESİ ELEKTRİK-ELEKTRONİK FAKÜLTESİ. AKILLI FİYAT ARAMA MOTORU TiLQi.NET

İSTANBUL TEKNİK ÜNİVERSİTESİ ELEKTRİK-ELEKTRONİK FAKÜLTESİ ECZANE-DEPO AKILLI SİPARİŞ SİSTEMİ

K12NET ÖĞRENCİ-VELİ PORTALI KULLANIMI USE OF K12NET STUDENT-PARENT PORTAL

KONTAKSĐ. Bitirme Ödevi. Metin Kaplan Ferhat Karakoç Bölüm : Bilgisayar Mühendisliği Anabilim Dalı: Bilgisayar Bilimleri

2014-halen Ankara Üniversitesi, Bilgisayar Mühendisliği Yüksek Lisans halen Süleyman Demirel Üniversitesi, Bilgisayar Programcılığı

İSTANBUL TEKNİK ÜNİVERSİTESİ BİLGİSAYAR VE BİLİŞİM FAKÜLTESİ LİNUX ÜZERİNDE ÇOKLU PROTOKOL ETİKET ANAHTARLAMANIN GERÇEKLENMESİ

First Stage of an Automated Content-Based Citation Analysis Study: Detection of Citation Sentences

İŞLETMELERDE KURUMSAL İMAJ VE OLUŞUMUNDAKİ ANA ETKENLER

PROFESYONEL HİJYEN EKİPMANLARI PROFESSIONAL HYGIENE PRODUCTS


İSTANBUL TEKNİK ÜNİVERSİTESİ BİLGİSAYAR VE BİLİŞİM FAKÜLTESİ. Akıllı Yemek Önerme Sistemi

Proceedings/Bildiriler Kitabı II. YAZILIM G M I. G September /Eylül 2013 Ankara / TURKEY ULUSLARARASI

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

D-Link DSL 500G için ayarları

If you have any issue in outlook mail account like spam mail, mail send or receive issues, mail delivery problem, mail sending too late and.

Dicle Üniversitesi Bilgi İşlem Online Talep Takip Sistemi

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

Exercise 2 Dialogue(Diyalog)

EĞİTİM ÖĞRETİM YILI SİLİFKE OTELCİLİK VE TURİZM MESLEK LİSESİ 11 A/B SINIFI MESLEKİ İNGİLİZCE DERSİ YILLIK DERS PLANI

Hazırlayanlar Oben Işık( ), Gökhan Karaca( ) İTÜ Bilgisayar Mühendisliği Bitirme Projesi. Kuramsal Bilgiler

LED AYDINLATMA SİSTEMLERİ LED LIGHTING SYSTEMS

İSTANBUL TEKNİK ÜNİVERSİTESİ ELEKTRİK-ELEKTRONİK FAKÜLTESİ ÖZET FONKSİYON TABANLI GÜVENLİ BİR RFID PROTOKOLÜNÜN FPGA ÜZERİNDE GERÇEKLENMESİ

Veritabanı Dersi. Teoriden Pratiğe. Çağıltay N.E., Tokdemir G. Veritabanı Sistemleri Dersi -Bölüm XXV: Web'den Erişim Çağıltay, N., Tokdemir, G.

Dersin Türü (Course Type) Zorunlu (Compulsory)[Χ] Seçmeli (Elective) [ ]

TR2009/ /409 Benim için İnsan Hakları «Human Rights for Me» Body of Knowledge for AC/HR Education

Unlike analytical solutions, numerical methods have an error range. In addition to this

ÖZGEÇMİŞ VE ESERLER LİSTESİ

BİLİŞİM TEKNOLOJİLERİ ALANI THE INFORMATION TECHNOLOGIES DEPARTMENT

isbank.com.tr İşCep İşWap İşPad Türkiye ş Bankas A.Ş.

( ) ARASI KONUSUNU TÜRK TARİHİNDEN ALAN TİYATROLAR

Argumentative Essay Nasıl Yazılır?

4. HAFTA BLM323 SAYISAL ANALİZ. Okt. Yasin ORTAKCI.

ÖNEMLİ PREPOSİTİONAL PHRASES

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

Islington da Pratisyen Hekimliğinizi ziyaret ettiğinizde bir tercüman istemek. Getting an interpreter when you visit your GP practice in Islington

Teknoloji Servisleri; (Technology Services)

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

Rapor Hazırlama Kuralları

ÖNEMLİ PREPOSİTİONAL PHRASES

a, ı ı o, u u e, i i ö, ü ü

Çalışma gelirinizi beyan etmeyi kolaylaştırıyoruz

Çocuk bakımı için yardım

WEEK 4 BLM323 NUMERIC ANALYSIS. Okt. Yasin ORTAKCI.

İSTANBUL TEKNİK ÜNİVERSİTESİ ELEKTRİK-ELEKTRONİK FAKÜLTESİ ULAŞIM ROTASI BELİRLEME YARDIMCISI

Expedia Traveler Preference: Rezervasyonlar ve Ödemeler nasıl yönetilir

T.C. Hitit Üniversitesi. Sosyal Bilimler Enstitüsü. İşletme Anabilim Dalı

YÖNETİM BİLİŞİM SİSTEMLERİ BÖLÜMÜ YENİ DERS MÜFREDATI (1) FAKÜLTESİ: İŞLETME FAKÜLTESİ / BUSINESS SCHOOL

.com.tr agem T E C H L O L O G Y P A R T N E R

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

Mimar Sinan Mahallesi 151. Sokak Reyyan Evleri No=1 Daire=9 Atakum / SAMSUN. Kerem ERZURUMLU

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

T.C. ERCİYES ÜNİVERSİTESİ MÜHENDİSLİK FAKÜLTESİ BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ EĞİTİM ÖĞRETİM YILI DERS KATALOĞU

Bölüm 10: PHP ile Veritabanı Uygulamaları

Clear omegle ban on puffin

İçerik Yönetim Sistemi ile Örnek Bir Web Sayfası Tasarımı

WEEK 11 CME323 NUMERIC ANALYSIS. Lect. Yasin ORTAKCI.

A LANGUAGE TEACHER'S PERSONAL OPINION

İSTANBUL TEKNİK ÜNİVERSİTESİ BİLGİSAYAR VE BİLİŞİM FAKÜLTESİ MOBİL SİPARİŞ UYGULAMASI İLE SİPARİŞ DAĞITIM OPTİMİZASYON ÇALIŞMASI.

THE DESIGN AND USE OF CONTINUOUS GNSS REFERENCE NETWORKS. by Özgür Avcı B.S., Istanbul Technical University, 2003

Bağlaç 88 adet P. Phrase 6 adet Toplam 94 adet

.. ÜNİVERSİTESİ UNIVERSITY ÖĞRENCİ NİHAİ RAPORU STUDENT FINAL REPORT

Java Programlama Giriş

Ali Kablan 1. UFRS nin Ülkemizdeki Muhasebe Uygulamaları

e-tartı LTR3 Firmware Upgrade Yazılım Güncelleme Moduler Connection LTR3 Firmware Upgrade / LTR3 Yazılım Güncelleme v1.0.

Yönetim Bilişim Sistemleri (Karma) - 1. yarıyıl Hukukun Temelleri Fundamentals of Law TR


MÜFREDAT DERS LİSTESİ

AKILLI TATIL PLANLAMA SISTEMI

U.D.E.K. Üniversite Düzeyinde Etkisi. M Hëna e Plotë Bedër Universitesi. ÖZET

ĐSTANBUL TEKNĐK ÜNĐVERSĐTESĐ ELEKTRĐK-ELEKTRONĐK FAKÜLTESĐ HATA TAKĐP YAZILIMI. Bitirme Ödevi. Mehmet CAMBAZ

Sasmazer Endüstriyel Ürünler ve Ambalaj Paz. San. Tic.

M mar S stemler Arch tectural Systems

Nevşehir Hacı Bektaş Veli Üniversitesi Bilgi Portalı Android Uygulaması

CORPORATE PRESENTATION FILE. Marble, Granite, Travertine, Project, Design, Manufacturing. Dealer Technistone Aegean region

e-ledger Fields (e-defter Alanları)

İSTANBUL TEKNİK ÜNİVERSİTESİ BİLGİSAYAR VE BİLİŞİM FAKÜLTESİ ANDROID İŞLETİM SİSTEMİ TEMELLİ SOSYAL MEKAN UYGULAMASI

MARMARA ÜNİVERSİTESİ TEKNİK BİLİMLER MESLEKYÜKSEKOKULU BİLGİSAYAR TEKNOLOJİLERİ BÖLÜMÜ BİTİRME PROJESİ YÜRÜTME KILAVUZU

Sophos SSL VPN Ayarları ve SSL VPN Clinet Programı Kurulumu

1. Giriş HU-GO Web sayfası kullanıcı yüzeyinde kaydolma. Güverte Aracı (OBU) kayıt süreci. İçindekiler

Bölüm 6. Diziler (arrays) Temel kavramlar Tek boyutlu diziler Çok boyutlu diziler

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

Newborn Upfront Payment & Newborn Supplement

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

Bilgisayar Bilimcileri Haklıymış

Vakko Tekstil ve Hazir Giyim Sanayi Isletmeleri A.S. Company Profile- Outlook, Business Segments, Competitors, Goods and Services, SWOT and Financial

Delta Pulse 3 Montaj ve Çalıstırma Kılavuzu.

Reklam & Danışmanlık Hizmetleri. Güvenilir Başarılı ve Hızlı. Reliable, Successful and Fast. www. reklam.com

License. Veri Tabanı Sistemleri. Konular büyük miktarda verinin etkin biçimde tutulması ve işlenmesi. Problem Kayıt Dosyaları

BAŞVURU ŞİFRE EDİNME EKRANI/APPLICATION PASSWORD ACQUISITION SCREEN

Cases in the Turkish Language

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

ACCOUNTANT: The accountant is the person who follows the monetary transactions of individuals and institutions and count the taxes accurately to make

İnşaat Mühendisliği Bölüm Başkanlığı na

Transkript:

İSTANBUL TEKNİK ÜNİVERSİTESİ BİLGİSAYAR VE BİLİŞİM FAKÜLTESİ MOBİL UYGULAMA İLE FATURA ÖDEME Bitirme Ödevi Burcu Güler 040090583 Cengizhan Paşaoğlu 040090548 Bölüm : Bilgisayar Mühendisliği Anabilim Dalı: Bilgisayar Bilimleri Danışman : Doç. Dr. Feza Buzluca Haziran 2014

İSTANBUL TEKNİK ÜNİVERSİTESİ BİLGİSAYAR VE BİLİŞİM FAKÜLTESİ MOBİL UYGULAMA İLE FATURA ÖDEME Bitirme Ödevi Burcu Güler 040090583 Cengizhan Paşaoğlu 040090548 Bölüm : Bilgisayar Mühendisliği Anabilim Dalı : Bilgisayar Bilimleri Danışman : Doç. Dr. Feza Buzluca Haziran 2014

ii Özgünlük Bildirisi 1. Bu çalışmada, başka kaynaklardan yapılan tüm alıntıların, ilgili kaynaklar referans gösterilerek açıkça belirtildiğini, 2. Alıntılar dışındaki bölümlerin, özellikle projenin ana konusunu oluşturan teorik çalışmaların ve yazılım/donanımın bizim tarafımızdan yapıldığını bildiririz. İstanbul, 2014 Cengizhan Paşaoğlu Burcu Güler

iii MOBİL UYGULAMA İLE FATURA ÖDEME ( ÖZET ) Mobil teknoloji kullanımı günümüzde hız kesmeden artmaktadır. Hemen hemen tüm firmalar artık web sitelerinin yanı sıra mobil uygulamalar ile de hizmet vermektedir. Bununla birlikte pek çok firma mobil platformları kullanarak hem potansiyel müşterileri etkilemeyi hem de hâli hazırda olan müşterilerine daha hızlı hizmet vermeyi amaçlamaktadırlar. Kullanılan mobil uygulamalar sayesinde bu işlemler daha az maliyetle ve müşteri memnuniyeti sağlanarak gerçekleştirilir. Mobil uygulamalar şirketlerin yanı sıra kullanıcılar tarafından da gün geçtikçe daha çok tercih edilmektedir. Bunun nedenleri arasında mobil uygulamaların hayatımızı kolaylaştırması, zaman ve paradan tasarruf ederek günlük ihtiyaçlarımızı karşılaması örnek olarak verilebilir. Aynı zamanda mobil uygulamalar kategorilere ayrılarak kullanıcıların ihtiyacı olan uygulamayı rahatça bulmasına olanak sağlar. Haberler, oyunlar, müzik, eğitim, iş, sağlık ve sosyal ağlar bu kategoriler arasında gösterilebilir. Fatura ödemelerinin mobil olarak gerçekleştirilmesi de mobil uygulamaların insan hayatına getirdiği en önemli kolaylıklardan biridir. İş hayatının getirdiği yoğun tempo ile beraber fatura ödemek için sırada beklemek ya da zaman sıkıntısı sebebiyle ödeme tarihini geçirmek kullanıcıların karşılaşabileceği en büyük problemlerdendir. Bu projede tüm bu problemler göz önüne alınarak hızlı ve güvenli bir şekilde ödeme işlemini gerçekleştiren bir uygulama hayata geçirilecektir. Uygulamanın çalışma platformu olarak Android seçilmiştir. Bu platformun seçilmesindeki nedenlerin başında Android işletim sistemi üzerinde uygulama geliştirmek için gerekli kaynakların çok olması ve bu kaynaklara kolaylıkla erişebilmesi gösterilebilir. Aynı zamanda piyasada bulunan Android cihazların her kesimden insana hitap ettiği düşünüldüğünde, uygulamanın daha büyük bir kitleye ulaşması olası ihtimaller arasındadır. Uygulama istemci tarafında Java programlama dilini kullanırken, sunucu tarafında PHP programlama dili ve MySQL veritabanı sorgu dili kullanılarak yapılmıştır. Kullanıcının güvenli bir şekilde ödeme yapmasını sağlayacak şifreleme işlemleri için OpenSSL kullanılmış olup HTTPS istemlerine cevap vermesi amaçlanmıştır. Uygulamanın temel çalışma prensibi üç aşamadan oluşmaktadır. Bunların ilkinde kullanıcı adı ve şifresiyle sisteme giriş yapmaktadır. Bir sonraki aşamada kameradan QR Code okutulması ve ödeme işleminin onaylanması amaçlanmaktadır. Son olarak da ödemenin gerçekleştirilip gerçekleştirilmediğine dair bir mesaj kullanıcıya iletilmektedir. Proje kapsamında gerçekleştirilen uygulamada, ödeme sırasında kullanıcıya yardımcı olması amacıyla bir algoritma geliştirilmesi amaçlanmıştır. Bu algoritmayla kullanıcının alışkanlıklarına bakarak kullanıcıya bir sonraki ödeme sırasında önerilerde bulunulması hedeflenmiştir.

iv PAYING BILLS WITH MOBILE APPLICATION ( SUMMARY ) Mobile technology usage is increasing unabated today. Almost all companies prefer mobile applications rather than their old-fashion websites. At the same time, many companies are intended to provide faster and safer services to customers and to influence their potential customers by using the mobile applications. These procedures are accomplished through the mobile applications less costly and more customer satisfaction for many companies. Other than companies, mobile applications are also preferred by individual users increasingly in today s technological world. Mobile applications make life easier and give an opportunity to supply daily needs in a cheap and time saver way. Hence these can be considered as main reasons of preferring mobile applications. Additionally, mobile applications can be given in a categorized way, so users can find whatever they wish easily. News, games, music, education, occupation, health and social networks can be given as examples of this categories. Mobile payment is also one of the most significant benefits which mobile applications bring to our life. People are not able to pay their bills until due time because of working in intensive tempo. Even if they can pay bills, they have to wait in queue for long hours. Therefore these can be given as biggest problems people face when they have payment. With this project, developing an application which gives opportunity to pay in a fast and secure way is aimed. Application is developed in Android platform. Being able to find numerous resources and reaching these resources easily can be gives as main reasons of choosing this platform. At the same time, more people prefer to use Android compared to other mobile operating systems. This is also taken into consideration to make more people use mobile payment application. Client side of the application is coded in Java language while the server side is developed in PHP and MySQL. MySQL is one of the most popular databases and it is used to store data mainly. It is also an open source database. When this is taken into consideration it is thought that this is beneficial for project budget, and MySQL is chosen for project database. PHP is used to implement database operations. These operations can be listed as adding and updating records to the database and deleting records from database. HTTPS is used to construct secure connection between server and client. This protocol sends and receives data as encrypted. In the application, sending data to the database and receiving data from database is implemented by HTTPS. This protocol is achieved by using HTTP with SSL. Therefore it uses certificates for communication. For the application OpenSSL is used for creating certificate. Using OpenSSL is not considered as a problem since it will not be on Google Play for a while. The main reason of using secure connection is that application needs valuable information such as credit card number and password. These information is received and sent as encrypted thanks to HTTPS to prevent hijacking.

v QR code is one of the most important technology which is used in the project. Usage of QR is increasing rapidly as technology develops and by taking this into account QR codes are used on bills for payment in the application. These codes stores information about bills. Bill number, amount of payment are two of this information. JavaScript Object Notation known as JSON format is used to define information in the QR code. This format uses human readable text to transmit data objects. In addition to this, JSON format is language independent and use conventions similar to any other programming languages. Therefore it is considered as the ideal data interchange format for the application. Zxing is used to read contents of QR code. This library is actually a standalone project, but it is compiled as a library and integrated to the project. Basically the mobile payment application is consist of three main steps. Login to system, reading the QR code with camera and confirming the payment procedure, informing user whether the payment is achieved or not. Firstly, users login to the system with their username and password. If the user is not registered to the application the sign up option is chosen to use the application. After this, QR code is read by using telephone camera. If the barcode is read successfully user can see information about the bill pay button on the telephone screen. User touch the pay button and the areas which requires credit card information occurs. These areas need to be filling and the operation needs to confirmed to complete the payment. After this step server send a message which informs user about whether the payment is a successful or not. An algorithm is also developed for the purpose of helping users. This algorithm tracks users payment habit and makes suggestions to the users in the next payment sessions. For instance if user pay with same credit card for several time application asks user if the same card is used before taking credit card information. Application uses this card as a default option for payments after that if user accepts this suggestion. Additionally user can cancel this default choice whenever he wants.

İÇİNDEKİLER 1 GİRİŞ... 1 1.1. Kapsam... 1 1.2. Yapılan Çalışmalar... 1 1.2.1. Daha Önce Bu Konuda Yapılan Çalışmalar... 1 1.2.2. Proje Çalışması... 3 2 PROJENİN TANIMI VE PLANI... 4 2.1. Proje İlerlemesi... 4 2.2. Zamanlama... 4 3 KURAMSAL BİLGİLER... 6 3.1. Android... 6 3.2. OpenSSL... 7 3.3. HTTPS... 9 3.4. QR Kod... 9 3.5. MySQLi... 10 3.6. JSON... 10 3.7. GitHub... 11 4 ANALİZ VE MODELLEME... 12 5 TASARIM, GERÇEKLEME VE TEST... 16 5.1. Genel Proje Yapısı... 16 5.2. Veri tabanı Tasarımı... 16 5.3. Ekran Tasarımı... 17 5.4. Öneri Algoritması... 19 6 DENEYSEL SONUÇLAR... 21 7 SONUÇ ve ÖNERİLER... 22 8 KAYNAKLAR... 24