Blog

Blog Yazıları

Kamera Arkası: Canvas LMS Sertifika Sistemi
3 Şubat 2017

Canvas LMS’e bir sertifika sistemi entegrasyonu nasıl sağlanır?

Geçtiğimiz yazılarımızda Turkcell Zeka Gücü projesi kapsamında yapmış olduğumuz çalışmalarımızdan bahsetmiştik. Turkcell Zeka Gücü’nün Çevrimiçi Eğitim Portalı ayağında Canvas LMS çözümünü kullanmıştık. Bu yazımızda Canvas LMS’e bir sertifika sisteminin entegrasyonunu nasıl sağladığımızdan bahsedeceğim.

Canvas LMS, açık kaynak kodlu bir LMS sistemi. Bu LMS sisteminde öğrenciler derslerini kolaylıkla alabildikleri gibi;

  • Tartışma ortamlarını kullanabilir.
  • Ödev ve proje teslimi yapabilir.
  • Sınavlarını çevrimiçi olarak iletebilir.
  • Kendi portfolyosunu oluşturabilir.
  • Ortak çalışma alanlarında çalışabilir.
  • Bireysel performansını görüntüleyebilir.

Artistanbul olarak Turkcell Zeka Gücü projesi kapsamında çevrimiçi eğitim portalı çözümümüz olan Canvas LMS ürününü, ülke çapında 96 BİLSEM okulunda 25 bin öğrencinin kullanımına açtık. Proje kapsamında Maker ve Kodlama Kiti’ne sahip olan öğrenciler bu portalı kullanarak, etkileşimli olarak bu kitin kullanımını öğrendikleri gibi, eğitim sonunda projelerini diğer akranlarıyla paylaşabilecekleri bir ortama kavuştular. Bu büyük toplulukta öğrenciler, almış oldukları eğitimlerin sonunda Başarı Belgesi almaya hak kazanıyorlar.

Canvas LMS’in açık kaynak olan sürümünde ne yazık ki bir sertifika sistemi bulunmuyor. Öğrencilere katılım belgesi verilmesi için sertifika sistemi satın almak yerine kendi çözümümüzü nasıl uygularız/geliştiririz’i düşünerek, Artistanbul’un yazılım geliştirme ve eğitim departmanları ortaklaşa bir sistemin geliştirmesine başladık.

Özgür Yazılım’ın Gücü Adına!

Artistanbul olarak özgür yazılım ürün ve eklentileri kullanma, geliştirme ve katkıda bulunma faaliyetlerini çokça gerçekleştiriyoruz. Sertifika Sistemi için Wkhtmltopdf kütüphanesini ve ottopia isimli geliştiricinin geliştirmiş olduğu CertificateBuilder projesini kullandık. Açık kaynak olan CertificateBuilder, PHP tabanlı çalışan bir PDF Sertifika/Katılım Belgesi yaratma projesi. Bu projeyi Turkcell Zeka Gücü Başarı Belgesi’ne uygun çıktı vermesini amaçlayarak hemen geliştirmelere başladık.

Adım 1: Başarı Belgesinin Tasarımını Giydirmek

Deneme Turkcell Zeka Gücü Başarı Belgesi

Turkcell Zeka Gücü projesine ait görsel tasarım çalışmasını Saime ve Deniz arkadaşlarımız birlikte tamamladılar. Başarı belgesi tasarımını sistem içerisinde kullanabilmemiz için CertificateBuilder projesi içerisinde bulunan templates dizini içerisine yeni bir dizin oluşturarak HTML ve CSS tasarımıyla giydirme çalışmasını yapmamız gerekiyordu. Dilerseniz, default dizinini de örnek olarak kullanabilirsiniz.

Not: Görsel tasarımınızı giydirirken Başarı Belgesi tasarımının değişken kısımlarını da göz önünde bulundurmalı ve önceden belirlemelisiniz. Sistem, her kullanıcı için gelen parametrelere göre isim, tarih ve eğitim adı gibi alanlarda değişkenlik sağlar.

Adım 2: Belgeyi Form ile İndirmeyi Sağlamak

Başarı Belgesi Oluşturma Formu

Hazırlamış olduğumuz tasarımı deneyebilmek ve LMS sistemi üzerinden gelecek Katılım Belgesi taleplerini karşılayabilmek amacıyla Bootstrapkullanarak bir form oluşturduk. Bu form ile kullanıcı ismini ilgili kutucuğa yazarak doğrudan Başarı Belgesi’ni indirebilir hale getirdik.

Adım 3: Belgeyi Parametre ile İndirmeyi Sağlamak

CertificateBuilder projesinde formun iletimi POST metodu ile sağladığından dolayı adres çubuğunda herhangi bir parametre kullanımımız söz konusu olmuyordu. Adres çubuğunda isim parametresi ile indirilebilir olmasını sağlamak amacıyla form içerisinde ve certificate.php dosyası üzerinde POST metodu ile gönderme/alma yapan kodları GET metodu ile değiştirmemiz gerekti.

Not: Adres çubuğuna yazacağınız parametreleri certificate.php içerisinde karşılayabilecek şekilde tanımlayınız.

Adım 4: Canvas LMS’ten Kullanıcı İsim Verisi Almak

Geliştirmiş olduğunuz sertifika sistemi ile Canvas LMS’in birbirinden bağımsız platformlar olduğu düşünüldüğünde, kullanıcı verisini Canvas LMS içerisinden nasıl alabileceğimiz konusunda beyin fırtınası yaptık. Çözümümüz Canvas LMS User API kullanımı oldu.

Kullanıcı verisini Canvas LMS User API ile kolaylıkla okuyabiliyoruz. Bu sayede elde ettiğimiz API verisi içerisinden kullanıcıya ait isim ve soyisim verisini alıp, GET metodu kullanarak isim parametresiyle eşitledik.

Not: Kullanıcı isim verisini API kullanarak alabilmeniz için kullanıcının Canvas LMS üzerinden üyelik girişi yapması gerekir.

Hepsi bu kadar!

Geliştirmiş olduğumuz sistemi GitHub üzerinden yakın zamanda paylaşacağız. Aklınıza takılan her türlü soru, görüş ve önerilerinizi maker@artistanbul.io adresine iletebilirsiniz. Sorularınızı cevaplamaktan mutluluk duyacağım.

Bir sonraki yazımda görüşmek dileğiyle.

Diğer Yazılar
Erzincan Bilim ve Sanat Merkezi Öğrencisi Yusuf Mert Deprem
Zeka Gücü
19 Eylül 2019
Erzincan Bilim ve Sanat Merkezi Esat Alper Aykal
Zeka Gücü
19 Eylül 2019
Yıldız Ertunç/Öğretmen, Erzincan Bilim ve Sanat Merkezi
Zeka Gücü
19 Eylül 2019
Ordu Dr. Hilmi Güler Bilim ve Sanat Merkezi Öğrencisi
Zeka Gücü
19 Eylül 2019
Ordu Dr. Hilmi Güler Bilim ve Sanat Merkezi Öğrencisi
Zeka Gücü
19 Eylül 2019
Üstün Yetenekli Çocuklara Başarılı Anne Babalık Yapmanın Zorlukları
Zeka Gücü
19 Temmuz 2019
Çocuğunuzun Öğretmeniyle Sağlıklı İletişimler Kurmak İçin Ne Yapmalısınız?
Zeka Gücü
21 Temmuz 2019
Turkcell Zeka Gücü Projesi BLOG – 1
Zeka Gücü
21 Temmuz 2019
Üstün Yetenekli Çocuklar Ve Disiplin
Zeka Gücü
21 Temmuz 2019
Aile İçi İletişim
Zeka Gücü
21 Temmuz 2019