IUCN (Uluslararası Doğayı Koruma Birliği), 160’dan fazla ülkede faaliyet gösteren dünyanın en büyük çevre STK’larından birisidir. Habitat kaybını tersine çevirmeyi, ekosistemleri onarmayı ve insanların refahını iyileştirmeyi hedeflemektedir. Bu kapsamdaki önemli projelerden birisi olan MedMIS projesi de, Akdeniz'deki deniz koruma alanlarında (DKA) bulunan deniz istilacı türlerinin takip edilmesi için geliştirilmiş bir çevrimiçi bir bilgi sistemidir. 2000’li yılların başında web tabanlı harita uygulaması ve mobil uygulama olarak geliştirilen bu bilgi sisteminin daha modern teknolojilerle yeniden geliştirilmesi için IUCN, Binbiriz’i tercih etmiştir.
Teknik ekibimiz, güncelleme problemi bulunan ve birçok fonksiyonu çalışmayan eski uygulamayı ve veritabanını detaylı olarak incelemiş, yeni bir veri modeli ortaya koyarak güncel ihtiyaçlar doğrultusunda geliştirme çalışmalarına başlamış ve 2023 yılı ortasında sistemi canlıya almıştır.
İçerik Yönetim Sistemi ve API First Altyapı
Proje; web browserda çalışan bir harita web sitesi, Android ve iOS’da çalışan bir mobil uygulama, bunların datalarının yönetileceği ortak bir veritabanı ve veritabanındaki verileri web uygulaması ve mobil uygulama taraflarına servis eden bir API (uygulama programlama arayüzü) içermektedir.
Bunların harici olarak sıfırdan geliştirilmesi bir yandan ciddi bir geliştirme zamanı ve maliyet anlamına gelmekte, öte yandan ise güvenlik, performans, esneklik problemlerini bünyesinde taşımaktaydı. Bu sebeple bu riskleri minimize etmek, zamandan ve paradan tasarruf etmek için MEDMIS projesinde teknoloji olarak Drupal ve React Native tercih edildi.
Bilindiği gibi Drupal büyük kurumsal seviye işlerde dünyanın en iyi açık kaynak içerik yönetim sistemi iken, React Native de yine dünya genelinde en yaygın kullanılan hibrit mobil uygulama geliştirme araçlarının başında yer almaktadır.
Drupal içerik yönetim sistemi kullanılarak;
- Toplanan konum tabanlı verilerin gösterileceği harita uygulaması kolaylıkla geliştirilmiş,
- Verilerin liste ve detay sayfalarının, MEDMIS projesi hakkındaki diğer sayfaların sunulacağı web sitesi kolaylıkla hayata geçirilmiş,
- Rol yönetimi ve kullanıcı yönetimi hızlı şekilde oluşturulmuş,
- Web uygulaması veritabanı mobil uygulama için de kullanılarak harici bir veritabanı konfigürasyonu gerekliliği ortadan kaldırılmış,
- Web uygulamasının bağrında bulunan API-First altyapı sayesinde harici bir API geliştirilmesi zorunluluğu da ortadan kaldırılmıştır.
Çok Dillilik / Multi-Linguality
Proje, Akdeniz havzasında bulunan istilacı türlerin gözlemlenmesi ve bu gözlemlerin bildirilmesine dayanmaktadır. Akdeniz havzasındaki yerel halkın, balıkçıların ve gözlemcilerin veri girişini kolaylıkla yapabilmelerinin koşulu harita uygulaması ve mobil uygulamanın bu havzada yaygın olarak kullanılan dillerde sunulmasıdır. Başka bir deyişle çok dillilik / multi-linguality projenin olmazsa olmazları arasındadır. Drupal, gelişmiş çok dillilik özelliği ile burada da önemli rol oynamaktadır.
Harita web sitesi ve mobil uygulama İngilizce, Fransızca, İspanyolca, Yunanca ve Türkçe olmak üzere 5 dilli olarak geliştirilmiştir. Uygulama ileride çıkabilecek yeni dil ihtiyaçlarına karşı da hızlı yanıt verebilecek bir esnekliğe sahiptir.
Dinamik Harita Uygulaması
IUCN MEDMIS web uygulamasının son kullanıcıya yönelik en öncelikli ihtiyacı, mobil uygulama üzerinden gelen gözlem verilerinin görselleştirmesidir. Özellikle konum verisi içeren hemen her veri setinde olduğu gibi ilk akla gelen, veri görselleştirme ihtiyacının bir harita uygulaması aracılığıyla yapılmasıdır.
Leaflet ve Map Clustering (Kümeleme)
Medmis harita uygulamasında, toplanan gözlem verileri IUCN adminleri tarafından onaylandıkça anasayfadaki harita üzerinde gösterilmektedir. Akdeniz havzasının genel haritası çok geniş ve gözlem adedi de çok fazla olduğu için, haritanın daha kullanıcı dostu olması ve gözlem yoğunluğunu da gösterebilmesi açısından Leaflet üzerinde map clustering (konumları kümeleme) özelliği kullanılmıştır. Bu kümeleme, aynı zamanda bölgedeki gözlem yoğunluğunu renklerle de ayrıştırdığından, bir çeşit yoğunluk / ısı haritası anlamına da gelmektedir.
Harita yakınlaştırıldıkça (zoom in), yakınlaşan bölgedeki kümelenen gözlemler ayrışmakta ve her gözleme ait detaya tekil olarak da erişilebilmektedir. Harita üzerindeki tekil gözlem kartına tıklandığında ise o gözlemin detay sayfasına gidilebilmektedir.
Dinamik Harita ve İleri Seviye Filtreleme
İçerik yönetim sistemi verileri dinamik olarak tutmakta ve servis etmektedir. Başka bir deyişle gözleme ait konum verisi bir kere girilip onaylanınca bu verinin, hem web sitesinin anasayfasındaki genel gözlemlerin içerisinde gösterilmesine, hem gözlem detay sayfasındaki gözlemin tekil haritasının üzerinde gösterilmesine, hem de mobil uygulama üzerinde gösterilmesine olanak tanımaktadır.
Anasayfa harita üzerinde gösterilen onaylı gözlemler gözlemin yapıldığı yıla, ülkeye, tespit edilen istilacı türe ve gözlemin yapıldığı deniz koruma alanına göre ileri seviye filtreleme özelliklerine sahiptir.
Bunun dışında MPA liste sayfasında da Akdeniz havzasındaki tüm deniz koruma alanları poligon olarak farklı bir harita üzerinde görselleştirilmiştir. Genel MPA haritası üzerinde tekil bir poligona tıklandığında ise ilgili MPA’nın detay sayfasına erişilmektedir.
Data Migration / Veri Taşıma
Birçok yeniden geliştirme projesinde olduğu gibi projenin en temel zorlayıcı noktalarından biri veri taşıma konusudur. Web uygulaması veri tabanı aynı zamanda mobil uygulama tarafına da veri servis edeceği için iki uygulama gözetilerek esnek bir mimari tasarlanmıştır. Kapsamlı planlama sürecinin ardından backendde geliştirmeler yapılmış, buna paralel olarak da bir data migration prosedürü tanımlanmıştır
Eski veri tabanı ile yeni mimariye göre geliştirilmiş yeni veri tabanı arasındaki veri göçünü el değmeden ve tam otomatize olarak yapacak kodlar yazılmıştır. Prosedür ile; veriler çok hızlı ve hatasız olarak taşınabilirken, istendiği anda veri taşıma durdurulabilmekte ve geri alınıp yeniden yapılabilmektedir. Geliştirmelerin tamamlanmasının sonrasında veri taşıma, sıfır veri kaybı ile başarılı şekilde tamamlanmıştır.
Easin Entegrasyon
Easin, Avrupa Yabancı Türler Bilgi Ağı’nın kısaltmasıdır. Tüm Avrupa bünyesindeki istilacı ve yabancı türler Easin veri tabanında toplanmakta ve sonrasında bu verilere göre çeşitli çalışmalar yapılmaktadır. Medmis bünyesindeki Akdeniz havzasında dair toplanan ve onaylanan gözlem verilerin bu veri tabanına kaydedilmesi için Easin entegrasyonu da bu proje kapsamında yapılmıştır.
Harita Uygulaması ve Diğer Özel Yazılım İhtiyaçlarınız için Binbiriz
Özel yazılım alanında uzman ekibimizle veri görselleştirme, harita yazılımı ve mobil uygulama alanında birçok farklı tip projeye imza attık. Dünyanın en büyük çevre STK’larından biri olan IUCN için geliştirdiğimiz bu uygulamalar, çalışmalarımızı küresel ölçekte daha yaygınlaştığının göstergelerinden biridir.
Siz de kurumunuzun dijital dönüşüm ihtiyaçlarında, kendi iş akışlarınıza yönelik özel çözümler arıyorsanız bizimle iletişime geçiniz.