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



Benzer belgeler
İSTANBULKART MOBİL UYGULAMASI KULLANICI EĞİTİM DOKÜMANI

AKILLI TATIL PLANLAMA SISTEMI

Bu Kitap Kime Hitap Eder? 2 Kitapta Nelerden Bahsedilmiştir? 3 Kitabı Takip Edebilmek için Nelere İhtiyaç Duyacaksınız?

ULUSAL ELEKTRONİK TEBLİGAT SİSTEMİ

Bireysel İnternet Şubesi

Kurulum; Ana Bilgisayar ve Tahtalara ayrı ayrı yapılmaktadır. KURULUM ŞEMASI x.x x.x x.x x.

Kurumsal Grup E-Posta Eğitim Dokümanı

MEKAN TAKİP UYGULAMASI

Web Servis-Web Sitesi Bağlantısı

Cyberoam Single Sing On İle

Türk Telekom Güvenlik Güvenli Aile(Safe Family) Ürünü Kurulum Kılavuzu

TOBB2B. Kullanım Kılavuzu. TOBB2B Kullanım Kılavuzu. Türkiye Odalar ve Borsalar Birliği

Liste Yükleme Ekranı Kullanım Kılavuzu

SQL Uyarı Programı Kurulum ve Kullanımı

XMail. Kurulum ve Senkronizasyon Ayarları Rehberi

UYUMSOFT E - DEFTER İMZALAMA UYGULAMASI

Wolvox Kapı Ekranı. AKINSOFT Wolvox Kapı Ekranı Yardım Dosyası. Doküman Versiyon :

ULUSAL ELEKTRONİK TEBLİGAT SİSTEMİ

2000 li yıllardan itibaren teknolojinin hızlı gelişiminden belki de en büyük payı alan akıllı telefon ve tabletler gibi kablosuz iletişim olanağı

KALDIRAÇLI ALIM SATIM İŞLEMLERİ HALKFX META TRADER 4 MOBİL UYGULAMALAR KULLANIM KILAVUZU

Servis Güzergâhları Optimizasyonu. Rotaban Viewer Kullanım Kılavuzu

CAN TECİM HEDEF DENEYİM. Tecrübe bütün öğretmenlerin en iyisidir. Publilus Syrus

RPMNET WOLVOX REPORTER

YILDIZ TEKNİK ÜNİVERSİTESİ

Bireysel İnternet Şubesi

MKYS BİYOMEDİKAL CİHAZ ANDROID MOBİL UYGULAMA STOK TAKİP VE ANALİZ DAİRE BAŞKANLIĞI T.C. SAĞLIK BAKANLIĞI

MÜŞTERİLER ŞUBEYE GELMEDEN ÖNCE SIRAMATİK'TEN NUMARA ALABİLİR...

BEUN VPN Hizmeti. VPN Nedir?

Mobil Cihazlardan Web Servis Sunumu

Basit bir web uygulaması

VET ON KULLANIM KLAVUZU

KALDIRAÇLI ALIM SATIM İŞLEMLERİ HALKFX META TRADER 4 MOBİL UYGULAMALAR KULLANIM KILAVUZU

T.C Harran Üniversitesi Bilgi İşlem Daire Başkanlığı Elektronik Belge Yönetim Sistemi (EBYS) Mobil Uygulama Kullanma Kılavuzu

K12NET Eğitim Yönetim Sistemi

Öğretmenler İçin Mobil Kreş Uygulaması Kullanım Dokümanı

Devletin Kısayolu: e-devlet Kapısı Tuğan AVCIOĞLU e-devlet ve Bilgi Toplumu

1 GİRİŞ 1 Bu Kitap Kime Hitap Eder? 2 Kitapta Nelerden Bahsedilmiştir? 3 Kitabı Takip Edebilmek için Nelere İhtiyaç Duyacaksınız?

Bilgi güvenliği konusunda farkındalık yaratmak. Mobil cihazlardaki riskleri anlatmak. Mobil uygulamaların bilgi güvenliği açısından incelemek 2

MOODLE UZAKTAN ÖĞRETİM SİSTEMİ

VAKIFBANK SANAL POS PANELİ KULLANICI KILAVUZU

JAVA RMI ve Hibernate teknolojileri kullanılarak çok amaçlı bir yazılım altyapısı hazırlanması

API geliştiricileri. Web server ile yapılan entegrasyonun neticeleri. API Dokumantasyonu

bitık MOBİL TİCARET UYGULAMASI ABDULLAH ÇİÇEKCİ

Krm.MobilTapu Uygulaması Kullanımı

Android e Giriş. Öğr.Gör. Utku SOBUTAY

Android Telefonlarla Yol Bozukluklarının Takibi: Kitle Kaynaklı Alternatif Çözüm

Akıllı telefonlar, avuçiçi bilgisayarlar ile taşınabilir (cep) telefonların özelliklerini birleştiren cihazlardır. Akıllı telefonlar kullanıcıların

Kültür Varlıklarının Web Otomasyonu

CHECKPOINT VPN KULLANIM KILAVUZU

Hızlı ve Güvenli Vale Hizmeti

Başlangıç Ayarları.

Uzaktan Eğitim Programlarına Giriş Kılavuzu

Yanıtlar: Twitter Facebook Instagram Myspace

KASIM 2016 MKYS ZİMMET ANDROID MOBİL UYGULAMASI STOK TAKİP VE ANALİZ DAİRE BAŞKANLIĞI T.C. SAĞLIK BAKANLIĞI

Öğrenciler için Kablosuz İnternet Erişimi (Wi-Fi) Kullanım Kılavuzu

KOLAY SİPARİŞ TAKİBİ v4

Ecat 8. Hakbim Bilgi İşlem A.Ş. Versiyon

NA VNC SERVER KULLANIMI. Genel Bilgi NA VNC Server Ayarları

E-FATURA /E-DEFTER / E-ARŞİV ÇÖZÜMLERİ

Demetleme Yönteminin Y 3-Katmanlı Mimari Yapı ile Gerçeklenmesi. eklenmesi. KalacakYer.com

KURUMSAL SİTE YAZILIMI KULLANIM KILAVUZU

dcc.com Nedir? Neler yapabilir? Nasıl Kullanılır?

KULLANICI KILAVUZU: UEA FİX KULLANICILARININ SSLVPN ERİŞİMİ İMKB İÇİNDEKİLER

TÜRKİYE ELEKTRONİK FON ALIM SATIM PLATFORMU WEB SERVİS İŞLEMLERİ

Afadist Kullanım Kılavuzu

2- Kontrol Sil En Öne Getir En Arkaya Gönder Resim Özellikler: Genel Özellikler...

TTR BİLİŞİM HİZMETLERİ MERKEZİ VERİ TABANI HİZMETİ (MTHS) KULLANIM KILAVUZU

Sanal Santral A.Ş. Çözümleri

LOGİN EKRANI. Şekil -1

ÇANKRI KARATEKİN ÜNİVERSİTESİ

Web Uygulama Güvenliği Kontrol Listesi 2010

İçindekiler Tablosu Talep Destek Yönetim Sistemi Programı...3

YEDEKLEME PROGRAMI KURULUM VE KULLANIMI

ELEKTRONİK BELGE VE ARŞİV YÖNETİM SİSTEMİ EBYS NİN GÜVENİLEN SİTELERE EKLENMESİ

Hızlı ve Güvenli Vale Hizmeti

Anketlerinizi SMS ve mail yöntemleri ile yapın, sonuçlara hızlı ulaşın.

CİSCO ANY CONNECT UYGULAMASI İLE İÇ KAYNAKLARA ERİŞİMİ KLAVUZU

T.C. KONAK BELEDİYE BAŞKANLIĞI ELEKTRONİK BELGE VE ARŞİV YÖNETİM SİSTEMİ EBYS NİN GÜVENİLEN SİTELERE EKLENMESİ

VKV Koç Özel İlkokulu, Ortaokulu ve Lisesi. K12Net Veli Yardım Kılavuzu

İntegral Analiz Mobil Uygulama Kullanım Kılavuzu V1.0.1

Sol tarafta yer alan Click here to activate your account linkini seçiniz.

VERİ TABANI YÖNETİM SİSTEMLERİ II. 9. FORMLAR ve ORACLE FORMS PROGRAMINDA FORM OLUŞTURMA

Sade ve tam ekran masaüstü kullanımının temel çıkış noktası, aranılan özelliğe çabuk erişimi sağlayan yenilikçi kullanıcı deneyimidir.

Oluşturmak istediğimiz OU ye bir isim veriyoruz. Name kısmına ISTANBUL yazıyoruz,

MÜŞTERİ BİLGİ SİSTEMİ KULLANICI KILAVUZU. Türkiye Kömür İşletmeleri Kurumu

TC KİMLİK NO SMS GÖNDERİM SOAP API

IDE4DB Veritabanı Geliştirme Platformu Bitirme Projesi Sunumu

E-Pazaryeri yazılımı ile sınırsız mağazalar oluşturabilir ve sınırsız ürün sa şı yaparak komisyon ve reklam geliri elde edebilirsin. C2C 6.

dmags Türkiye nin En Büyük Dijital Dergi Mağazası

Öğrenci Kullanım Kılavuzu

Logsign Hotspot. Güvenli, izlenebilir, hızlı ve. bağlantısı için ihtiyacınız olan herşey Logsign Hotspot da!

TNB KAYITLI ELEKTRONİK POSTA HİZMET SAĞLAYICILIĞI VE TİCARET A.Ş.

BDDK ELEKTRONİK BELGE VE ARŞİV YÖNETİM SİSTEMİ

6 Ocak İlgili Versiyon/lar : ETA:SQL, ETA:V.8-SQL. İlgili Modül/ler : E-Fatura

Güvenli Doküman Senkronizasyonu

Gökhan AKIN İTÜ/BİDB Ağ Grubu Başkanı - ULAK/CSIRT

WINDOWS SERVER 2008 R2-SERVER 2012 DE IP SANALLAŞTIRMA

DUMANSIZ HAVA SAHASI DENETĠM SĠSTEMĠ V.1.1. YAZILIM GÜNCELLEME KILAVUZU

TÜRKİYE ULUSAL AJANSI ELEKTRONİK BELGE VE ARŞİV YÖNETİM SİSTEMİ EBYS NİN GÜVENİLEN SİTELERE EKLENMESİ

AHMET YESEVİ ÜNİVERSİTESİ BİLİŞİM SİSTEMLERİ VE MÜHENDİSLİK FAKÜLTESİ BİLGİSAYAR MÜHENDİSLİĞİ LİSANS DÖNEM ÖDEVİ

Transkript:

Hazırlayanlar Oben Işık(040080220), Gökhan Karaca(040070234) Danışman Yrd. Doç. Dr. Feza Buzluca İTÜ Bilgisayar Mühendisliği Bitirme Projesi icity icity Tanıtım Aşamaları Proje Amacı Kullanılan Teknolojiler Kuramsal Bilgiler Analiz Modelleme Tasarım Innovation distinguishes between a leader and a follower Steve Jobs 1

Proje Amacı Neden icity uygulamasına ihtiyaç duyuyoruz? It is fine to celebrate success but it is more important to heed the lessons of failure Bill Gates Neden icity Uygulaması? 1. Şehri yakından tanımak 2. Arkadaş takibi yapabilmek 3. Akıllı yer önerisi yapabilmek 4. Ulaşım yardımı almak 5. Sosyal ağ entegrasyonu 6. Mobil dünyaya uyum sağlamak 2

icity de Kullanılan Teknolojiler Design is not just what it looks like and feels like. Design is how it works. Steve Jobs 3

Kuramsal Bilgiler It s fine to celebrate success but it is more important to heed the lessons of failure. Bill Gates icity Kuramsal Bilgiler Android Tanım Android, Google ve Open Handset Alliance tarafından kodlanmış, LinuxOS tabanlıbirmobilcihaziçingeliştirilmiş, açık kaynak kodlu bir işletim sistemidir. Android işletimsistemlibirmobiltelefoniçin, Android SDK kullanılarak uygulama yazılımları geliştirilebilmektedir. Projemizin ana çatısı android üzerine kurulmuştur. 4

icity Kuramsal Bilgiler Android Kullanımı Günümüzde Android işletim sistemli mobil telefonların sayısı hızla artmaktadır. icity Kuramsal Bilgiler Android Yapısı 5

icity Kuramsal Bilgiler Android Yapısı II Androidde uygulama JAVA dilinde geliştirilir. Android işletim sistemine göre tüm ekranlar birer activity dir. Activity ler kullanıcı ile etkileşimi sağlayan ekranlardır. Her bir activity kendine adanmış bir layouta sahiptir. Activityler birbirlerini çağırabilirler ve aralarında veri transferi yapabilirler. icity Kuramsal Bilgiler Android Yapısı III Activityler, manifest dosyası adı verilen bir xml dosyasında tanımlanır. UygulamaclientlertarafındanGoogle Play Store dan indirilirken kullanıcıdan istenecek izinleri ifade ediyor. Uygulamada activity olarak görev alacak olan sınıfları tanımlıyoruz. Uygulama bağımsız olarak çalışacak olan servisimizi tanıtıyoruz. 6

icity Kuramsal Bilgiler JSON JSON, veri alış verişini sağlamak amacıyla geliştirilmiş bir veri biçimlendirme yöntemidir. JavaScript Object Notation XML den çok daha kolay ve hızlı biçimde işlenebilme özelliğine sahiptir. XML ile biçimlendirilmiş bir veri kümesi, JSON ile biçimlendirilmiş veri kümesine oranla daha fazla bellek alanı ihtiyacı doğurur. icity Kuramsal Bilgiler JSON XML Karşılaştırması XML <?xml version="1.0" encoding="utf-8"?> <root> <data> <id>1</id> <name>php </name> </data> </root> var root = xhr.responsexml; var dataelements = root.getelementsbytagname('data'); var idelementsvalue = dataelements[0].getelementsbytagname('id ')[0].firstChild.nodeValue; var nameelementsvalue = dataelements[0].getelementsbytagname('na me')[0].firstchild.nodevalue; JSON } { "data": [{ "id" : "1", "name" : "PHP }] data.name[0]; 7

icity Kuramsal Bilgiler JSON Projemizdeki Kullanımı Projemizde JSON kullanımı web servisimiz ile uygulamamız arasındaki iletişimi sağlamak üzerine kurulmuştur. icity Kuramsal Bilgiler.Net Framework (C#).Net framework projemizde, uzak host ile iletişimi yaparken kullanacağımız web servisi oluşturmak için kullanılmıştır. Web servisi, XML mesajlaşma tabanlı bir sistem entegrasyon yöntemidir. W3C tarafından yapılan resmi tanımıyla web servisi, bilgisayarlar arasında ağ üzerinden etkileşimi ve uyumluluğu sağlayacak yazılım sistemidir. XML tabanlı mesajlaşma esas alınmıştır. Biz projemizde JSON ile haberleşmeyi tercih ettik. Web servis erişim standardı olarak SOAP (Simple Object Access Protocol) adı verilen basit nesne erişim protokolü kullanılmaktadır. SOAP sayesinde web servis ile basit ve mesaj tabanlı bir iletişim sağlanmaktadır. Projemizde.net c# ile kodlanmış olan ve uzak host da koşan bir webservis bulunmaktadır. 8

icity Kuramsal Bilgiler PHP PHP, özellikle Web için tasarlanmış olan, sunucu taraflı çalışan bir script dilidir. icity Kuramsal Bilgiler PHP Projemizdeki Kullanımı Projemizde PHP dilini, yüklü miktarda datayı her defasında tek tek bir api kullanılarak sorgulamak yerine, hangi datalara ilişkin bilgilere ihtiyaç olduğunu php sayfamıza gönderip, curl ile sorgunun uzak hostta çalışmasını sağlamak için kullandık. 10901 Foursquare Kullanıcı Sayısı: 27M 1 Kişinin Ortalama Arkadaş Sayısı: 137 foursquaregetcheckins.php curl Log Kullanıcı Foursquare API 9

Analiz ve Modelleme It s fine to celebrate success but it is more important to heed the lessons of failure. Bill Gates icity Analiz Use Case UC1 : Kapsam: Birincil Aktör : Paydaşlar : Önşartlar : Başarı Şartı : Senaryo : Programa Giriş Bitirme Projesi Kullanıcı Giriş Paneli Kullanıcılar Kullanıcılar : Programı kullanarak şehir, arkadaşları ve mekanlar hakkında bilgi almayı hedeflemişlerdir. 1. Kullanıcının aktif bir Foursquare hesabı olmalıdır. 2. Kullanıcı telefonuna uygulamayı yüklemiş olmalıdır. 3. Kullanıcının telefonunda internet erişimi olmalıdır. Kullanıcı sisteme giriş yapmış olmalıdır. Ana akış: 1. Kullanıcı, telefonun menüsünden uygulamayı başlatır. 2. Ekrandaki login butonuna tıklar. 3. Program kullanıcıya giriş ekranını açar. 4. Kullanıcı giriş ekranında foursquare e ait mail adresini ve şifresini girer. 5. Program bu mail ve şifreyi foursquare üzerinden kontrol eder. 6. Sonrasında ana menüye kullanıcıyı yönlendirir. Alternatif Akış: *a. İnternet bağlantısının olmadığı durumlarda internet hata sayfasına yönlendirilir. 5a. Mail adresi veya şifrenin geçerli olmaması koşulunda giriş ekranına geri döner. 10

icity Analiz Use Case UC2 : Kapsam: Birincil Aktör : Paydaşlar : Önşartlar : Başarı Şartı : Senaryo : Kullanıcının Arkadaşlarının Son Check-inlerini Görmesi Arkadaşların Son Check-in ler Paneli Kullanıcılar Kullanıcılar : Programı kullanarak şehir, arkadaşları ve mekanlar hakkında bilgi almayı hedeflemişlerdir. 1. Kullanıcını sisteme başarılı bir şekilde giriş yapmış olmalıdır. 2. Kullanıcı telefonuna uygulamayı yüklemiş olmalıdır. 3. Kullanıcının telefonunda internet erişimi olmalıdır. Kullanıcı arkadaşlarına ait son check-in lerini görmelidir. Ana akış: 1. Kullanıcı ana menuden son check-inler sekmesine tıklar. 2. Sistem foursquare üzerinden kullanıcının arkadaşlarına ait tüm son check-in leri hesaplar. 3. Bir liste halinde bu check-inler kullanıcıya listelenir. Alternatif Akış: *a. İnternet bağlantısının olmadığı durumlarda internet hata sayfasına yönlendirilir. 2a. Foursquare kaynaklı hatalardan dolayı arkadaş listesine ait checkin leri almada sorun yaşanabilir.bu durumda sistem hata mesajı üretir. icity Analiz Use Case UC3 : Kapsam: Birincil Aktör : Paydaşlar : Önşartlar : Başarı Şartı : Senaryo : Kullanıcının Arkadaşlarının Son Check-inlerine Yorum Yazması Arkadaşların Son Check-in ler Paneli Yorum Kısmı Kullanıcılar Kullanıcılar : Programı kullanarak şehir, arkadaşları ve mekanlar hakkında bilgi almayı hedeflemişlerdir. 1. Kullanıcını sisteme başarılı bir şekilde giriş yapmış olmalıdır. 2. Kullanıcı telefonuna uygulamayı yüklemiş olmalıdır. 3. Kullanıcının telefonunda internet erişimi olmalıdır. 4. Kullanıcı arkadaşlarının son check-in leri listesine erişmiş olmalıdır. Kullanıcı arkadaşlarından herhangi birinin check-in ine yorum yazmış olmalıdır. Ana akış: 1. Kullanıcı arkadaşlarının son check-in lerinin listelendiği ekrandan herhangi bir arkadaşının check-in inen tıklar. 2. Program yorum penceresi açar. 3. Kullanıcı buraya yorumunu yazar ve gönder butonuna tıklar. 4. Program yorumu Foursquare e iletir. Alternatif Akış: * a. İnternet bağlantısının olmadığı durumlarda internet hata sayfasına yönlendirilir. 4a. Foursquare kaynaklı hatalardan yorumu iletmede sorun yaşanabilir.bu durumda sistem hata mesajı üretir. 11

icity Analiz Use Case UC4 : Kapsam: Birincil Aktör : Paydaşlar : Önşartlar : Başarı Şartı : Senaryo : Kullanıcının Sistemden Öneri İstemesi Kullanıcı Mekan Öneri Paneli Kullanıcılar Kullanıcılar : Programı kullanarak şehir, arkadaşları ve mekanlar hakkında bilgi almayı hedeflemişlerdir. 1. Kullanıcı sisteme başarılı bir şekilde giriş yapmış olmalıdır. 2. Kullanıcı telefonuna uygulamayı yüklemiş olmalıdır. 3. Kullanıcının telefonunda internet erişimi olmalıdır. Kullanıcıya tercihlerine göre ve seçtiği kategoriye göre mekan öneri listesi sunulmalıdır. Ana akış: 1. Kullanıcı ana menuden suggest sekmesine tıklar. 2. Sistem kullanıcıya 9 ana kategori listesini getirir. 3. Kullanıcı 9 ana kategori içerisinden bir tanesini seçer. 4. Sistem bu ana kategoriye ait kullanıcı tercihlerine uyan mekanları öneri mekanizmasını kullanarak listeler. Alternatif Akış: *a. İnternet bağlantısının olmadığı durumlarda internet hata sayfasına yönlendirilir. 2a. Foursquare kaynaklı hatalardan dolayı kategori listesini almada sorun yaşanabilir.bu durumda sistem hata mesajı üretir. 3a. Foursquare ve programkaynaklı hatalardan dolayı kategori listesini almada sorun yaşanabilir.bu durumda sistem hata mesajı üretir. icity Analiz 12

icity Analiz Tasarım It s fine to celebrate success but it is more important to heed the lessons of failure. Bill Gates 13

icity Tasarım İnternet Bağlantısının Algılanması icity Tasarım İnternet Bağlantısının Algılanması 14

icity Tasarım İnternet Bağlantısının Algılanması 05-12 19:51:49.669: D/NetworkConnectivityListener(1307): onreceive(): mnetworkinfo=networkinfo: type: : WIFI[], state: : CONNECTED/CONNECTED, reason: (unspecified), extra: (none), roaming: false, failover: false, isavailable: true mothernetworkinfo = [none] mstate=connected 05-12 20:14:00.524: D/NetworkConnectivityListener(1307): onreceive(): mnetworkinfo=networkinfo: type: : WIFI[], state: : DISCONNECTED/DISCONNECTED, reason: (unspecified), extra: (none), roaming: false, failover: false, isavailable: false mothernetworkinfo = [none] mstate=not_connected icity Tasarım Login Kullanıcı log in butonuna tıkladığında, açılanfoursquare api web view ile uygulamamıza login olur. 15

icity Tasarım Application Base 1. Uygulama kullanıcısının kim olduğunu login sürecinden sonra tutar. (mainuser:user) 2. Kullanıcının arkadaş listesi ne uygulamamızın bu sınıfından erişmek mümkündür. (friendlist:friendlist) 3. Foursquare tarafında var olabilecek tüm kategorilerin listesi tutulmaktadır. (venuecategorylist:venuecategorylist) 4. Kullanıcıya ilişkin session bilgileri (Access token vb.) tutulmaktadır. (fssession:foursquaresession) 5. Foursquare API ile ilgili yapılabilecek tüm işlemler FSAdapterInterface ile yapılmıştır. FSAdapterInterface bir java interface olarak tasarlanmıştır ve ileride başka API ler kullanılmak istendiğinde uygulama üzerinde herhangi bir değişiklik yapılmasına gerek kalmayacaktır. (fpadapter:fsadapterinterface) 6. Web servis işlemleri WebServiceOperator ile yapılmaktadır. (webserviceoperator:webserviceoperator) 1. Wi-Fi, 3G, 2G / Edge bağlantılarının durumlarına ilişkin bilgiler observer patternine uygun olarak tasarlanmış olan NetworkConnectivityListener tarafından yapılacaktır. (nconnlistener:networkconnectivitylistener) 2. GPS Lokasyonuna ilişkin bilgiler de GOLocationManager ile tutulmaktadır. Sekil 5.3 Uygulama Başlangıç Nesnesi icity Tasarım Login Mobil uygulama kullanıcısının FoursquareApiile iletişime geçebilmesi için ise sisteme oauth ile login olması gerekmektedir. Buna göre; 1. Kullanıcı uygulamanın login paneline girer. 2. oauth güvenli authorization panelimiz açılır. 3. Kullanıcı adı ve şifre girişini yapar. 4. Kullanıcıya ilişkin bilgiler ile foursquare üzerinde koşacak olan api key foursquare tarafına gönderilir. 5. Foursquare servisi kullanıcıyı login ettikten sonra access token dönüşü yapar. 6. Kullanıcıya spesifik bu access token key ile, izinler dahilinde işlemler yapılmaktadır. 16

icity Tasarım Login icity Tasarım Login 17

icity DEMO icity Tasarım Uygulama Ana Ekranı Action Bar Sub Activity TabGroup 18

icity Tasarım Uygulama Ana Ekranı icity Tasarım Son Check-in Yapılan Yerler 19

icity Tasarım Son Check-in Yapılan Yerler icity Tasarım Son Check-in Yapılan Yerler Son check-in yapılan yerleri tek tek Foursquare apiile birlikte sorgulama yapmak oldukça performans düşürücü olacağından bu konuda akıllı bir çözüm üretilmiştir. Bu sebeple de www.yoncamodaevi.com/foursquaregetcheckins.php sayfası liste olarak kullanıcının arkadaş listelerini alır ve bu arkadaş listesine göre son check-in lerinlistesi dönülür. Bu sayfada kullanıcıdan alınan accesstokenile CURL altyapısı kullanılarak sorgulama yapılmaktadır. Bu sayede sonuçlar mobil uygulamaya göre çok daha hızlı bir uzak server üzerinde toplu halde hesaplanır ve bu da oldukça akıllı bir çözüm olmaktadır. 20

icity Tasarım Mekan Arama Kategori kısıtlamaları (Akıllı Öneride Kullanılacak) Her kategoriye ait alt kategoriler bulunmaktadır. Tablar üzerindeki yazılar kaymakta icity Tasarım Mekan Arama (Kısıtlamalar) 21

icity Tasarım Mekan Arama icity Tasarım Mekan Arama (Harita) 22

icity Tasarım Mekan Arama (Harita) icity Tasarım Check-in Yapma Süreci 23

icity Tasarım Check-in Yapma Süreci icity Tasarım Check-in Yapma Süreci 24

icity DEMO icity Tasarım Akıllı Yer Önerme Kullanıcılar daha önce hiç gitmedikleri yerler hakkında bilgi edinebilmek istediklerinde akıllı yer önerme algoritması kullanılmaktadır. Akıllı yer önermeyi sağlayabilmek için, kullanıcının sosyal ağ üzerinde yaptığı bir takım işlemleri, web servisimiz aracılığıyla kendi veritabanımızdatutmak suretiyle kayıt altına aldık. Bu kayıtlar kişinin sevdiği ya da sevmediği yerler hakkında bilgilerin tutulması ve mekanlar hakkında puanlamanın yapılabilmesi için kullanılmaktadır. Akıllı yer önermenin temel amacı kullanıcıya daha önce hiç gezmediği mekanları, daha önce gittiği mekanlardan ve arkadaşlarının gittiği mekanlardan yola çıkarak mantıklı biçimde önerebilmektir. 25

icity Tasarım Akıllı Yer Önerme istek Foursquare API istek kayıt http://obenws.yoncamodaevi.com icity Tasarım Akıllı Yer Önerme 26

icity Tasarım Akıllı Yer Önerme icity Tasarım Akıllı Yer Önerme 27

icity Tasarım Akıllı Yer Önerme PROCEDURE [dbo].[graduationsp_getuserssuggestedvenues] 1. Check-in tablosundan kullanıcının daha önce gitmediği ve kullanıcıya yakın mesafedeki mekanlar getirilir. 2. Mekanların kategori bilgileri ilgili tablodan alınmakta ve sonrasında web servise dönderilmektedir. 3. Web servis daha önceden almış olduğu kullanıcının geçmiş check-in lerinin kategori bilgilerine göre bu mekanlar arasında çok sevilenden az sevilene göre bir sıralama yapmaktadır. Örnek vermek gerekirse; İncelediğimiz kullanıcı daha önceden 3 kere fastfoodkategorili mekanda ve 2 kez de eğitim kategorili mekanlarda check-in olmuş ise, sistem bu kullanıcı için fastfoodkategorisine sahip mekanı listede eğitim kategorili mekanlardan daha ön sıralara koyacaktır. I am as proud of what we don t do as I am of Teşekkürler. what we Sorular? do. Steve Jobs Oben ISIK Gökhan KARACA 28