1 4. YAZILIM PROJELERİ YARIŞMASI REHBERİ ÖNSÖZ Bu rehber, Atılım Üniversitesi tarafından Bilgisayar Mühendisliği, Yazılım Mühendisliği ve Bilişim Sistemleri Mühendisliği Bölümlerinin koordinatörlüğünde 2016-17 akademik yılında düzenlenen 4. Yazılım Projeleri Yarışmasına katılacaklara yardımcı olmak amacıyla hazırlanmıştır. Yazılım Projesi hazırlayacak olanların başvuruda bulunmadan önce bu rehberi baştan sona dikkatle okumaları kendileri için yararlı olacaktır. Yarışmaya katılacakların, proje konusunun seçimi, gerçekleştirimi, sunumu ve değerlendirilmesi gibi çalışmalarının her aşamasında rehberdeki önerileri dikkate almaları ve konulan ilkelere uymaları, her şeyden önce kendilerine kolaylık sağlayacak ve çalışmalarının en iyi şekilde değerlendirilmesini mümkün kılacaktır. Projelerin değerlendirilmesinde göz önüne alınacak en önemli kıstas, projeye kaynak olan fikrin proje takımına ait olmasıdır. Takımların kendi ürettikleri fikri uygulama aşamasında farklı kurum ve kişilerden destek almaları doğaldır; ancak, bu destek, bilgi alma ile sınırlı kalmalıdır. Yarışmaya katılacak takımlara proje rehberinin yararlı olacağını umar, bilimsel ve teknolojik alandaki tüm çalışmalarınızda başarılar dileriz. Atılım Üniversitesi Yazılım Projeleri Yarışması Koordinatörlüğü ayy@atilim.edu.tr http://ayy.atilim.edu.tr
2 4. YAZILIM PROJELERİ YARIŞMASI YAZILIM PROJESİ AMAÇ VE KAPSAMI Bu yıl dördüncüsü düzenlenmekte olan yarışmanın amacı ülkemizin sorunlarına yönelik olarak yenilikçi ve girişimci bir şekilde bilişim teknolojilerini kullanarak mobil cihazlar (akıllı telefon, tablet vb.) için özgün yazılım çözümleri üretilmesi ve bu doğrultuda bilgi ve becerilerin geliştirilmesi konusunda teşvik sağlanmasıdır. Proje çıktısı toplumsal faydayı gözetecek konularda Mobil Cihaz Uygulama Yazılımı (kod ve dokümantasyon) ortaya konmasıdır. Bu yazılım projesi yarışmasında sunulan problem ve/veya çözümünün Özgün (Yenilikçilik, Etki (Fayda), Uygulanabilirlik, Kullanılabilirlik) olması önemli bir değerlendirme kriteri olarak belirlenmiştir. Özgün bir proje yalnız kendine özgü bir nitelik taşıyan, orijinal bir çalışmadır. Projenin özgün olması, yeni problem sunulması ve/veya var olan problemi farklı ve/veya orijinal bir şekilde çözüm sunarak gerçekleştirilmesidir. Projede insanlar için yarar sağlayacak özellikler olmalıdır. Değerlendirme sürecinde özellikle Atılım Üniversitesi, eğitim kurumları ve kamu yararını gözetecek projelere diğerlerine göre öncelik tanınacaktır. Yarışma için sunulacak projeler halen yürütülmekte olan (en faaliyetlerin (proje, ders, ödev vb.) bir ürünü, çıktısı olabilecektir. Ancak bu tip bir girişime uygun yazılım projesinin yarışma başvuru tarihinin öncesinde tamamlanmamış (belgelenmemiş) olması gerekmektedir. Yarışmaya teklif edilen projelerin daha önce herhangi bir yarışmada ödül, telif hakkı ve patent almamış, hâlihazırda mevcut bir ürünün bütünü ya da kısmı parçası olarak üretilmemiş ve/veya satışa sunulmamış olmaları şartı aranacaktır. Ayrıca şartlardan herhangi birinin yarışmanın herhangi bir safhasında tespit edilmesi ve bu tespitin jüri üyelerinin çoğunluğu tarafından onaylanması halinde, söz konusu proje ve bu proje ile yarışmaya başvuran takım yarışma kapsamından çıkarılacaktır. Her yazılım proje takımı en az iki en çok dört kişiden oluşmalıdır. Katılımcılardan en az birinin Atılım Üniversitesi öğrencisi ya da mezunu olması diğer takım üyelerinin ise T.C. vatandaşı ya da Türkiye de oturma izni olan yabancı uyruklu kişi olması gerekmektedir. Takım üyelerinin farklı disiplinler veya kuruluşlardan olması hatta lise öğrencilerini kapsaması beklentiler içerisindedir. Yarışmanın takvimi aşağıdaki şekilde planlanmıştır: a. Başvuru: 15 Kasım 2016 18 Mart 2017 (http://ayy.atilim.edu.tr online) b. Projelerin (Kod ve Dokümantasyon) Teslimi: 10-14 Nisan 2017 (http://ayy.atilim.edu.tr online) c. Ön Elemenin Yapılması ve İlanı: 15-28 Nisan 2017 d. Finale Kalan Projelerin Sergilenmesi: (Atılım Üniversitesi Bitirme Projeleri ile aynı hafta Atılım Üniversitesinde)
3 e. Final Projeleri Değerlendirmesi ve Ödül Töreni: (Atılım Üniversitesi Bitirme Projeleri ile aynı gün Atılım Üniversitesinde) Değerlendirme sonuçlarına göre ödüllendirilecek projeler belirlenecektir. Ödüllendirme aşağıda olduğu gibidir: Birinci Proje 6000 TL ve takım üyelerine mpad İkinci Proje 4000 TL. ve takım üyelerine mpad Üçüncü Proje 2000 TL. ve grup üyelerine mpad Mansiyon (4. ve 5. projeler) grup üyelerine mpad mpad Atılım Üniversitesi tarafından 3 farklı sürüm olarak geliştirilen tabletlerin ismidir. Halen mpad projesinde 4.sürüm çalışmaları devam etmektedir. Yarışma ve Ödül Alanları, Başvuru Tarihleri, Başvuru Koşulları, Başvuru Sırasında İstenilen Belgeler, Değerlendirme Yöntemi ve Kriterleri vb. bilgilere yarışma internet sitesinden de (ayy.atilim.edu.tr) ulaşılabilir. YAZILIM PROJESİ ÖZELLİKLERİ Yazılım projesinde bir fikrin analizi, tasarım ve programlanması sonucunda yazılım sistemi elde edilmektedir. Her projede olduğu gibi yazılım projesinde paydaşların belirlenmesi ve bunların gereksinimlerinin tespit edilmelidir. Bu paydaşlar arasında müşteri ve son kullanıcı önemli rol oynamaktadır. Bu bağlamda yazılım projesi bir problem çözme yöntemi olarak da görülebilir. Paydaşların gereksinimlerine göre uygun bir yazılım çözümü elde edilmesi gerekir. Gereksinimler fonksiyonel veya kaliteye yönelik olabilir. Kaliteye yönelik gereksinimler örneğin etkinlik, kullanılabilirlik, güvenlik, güvenirlik, esneklik ve performans gibi kriterler paydaşlar tarafından önemsenebilir. Bu paydaş analizi ve gereksinimlerin belirlenmesi yazılım mühendisliği sürecinde ihtiyaç analizi aşamasında yapılmaktadır. Projenin başarılı olabilmesi için iyi planlanması ve yazılım yaşam döngüsü evrelerinin sistematik şekilde gerçekleşmesi gerekmektedir. Projenin evreleri yazılım mühendisliği alanında belirlenen yazılım geliştirme sürecindeki evrelere uygun şekilde hazırlanmalıdır. Yazılım geliştirme sürecindeki başlıca yazılım geliştirme aşamaları şunlardır: 1. Analiz paydaş analizi ve gereksinimlerin belirlenmesi 2. Tasarım sistemin mimari ve detay tasarımı 3. Programlama (Gerçekleştirim) sistemin bir program dili kullanılarak yazılması 4. Test yazılım sisteminin gereksinimleri doğrultusunda uygunluğunun denenmesi
4 Yazılım yaşam döngüsünü sistematik şekilde uygulamak amacıyla uygun proje yönetimi belirlenmesi gerekmektedir. Proje yönetiminde yaşam döngü evrelerini planlama, iş bölümü, zamanlama, işbirliği, iletişim, kalite yönetimi ve dokümantasyon gibi unsurlar ele alınmaktadır. PROJE DOKÜMANTASYONU VE KODLARININ HAZIRLANMASI Yarışmada dokümantasyon projenin önemli aşamalarından biri olarak görülmektedir. Dokümantasyon ne kadar iyi yapılırsa ortaya çıkacak yazılım o kadar iyi olabilir, yazılımın uzun zaman süresince kullanılması ve yazılımın en az problemle kullanılmaya devam ettirilmesi mümkün olabilir. Bu sebeplerle yazılım projelerinde iyi bir tasarımın ortaya konulması ve bunun detaylı bir şekilde dokümantasyonunda belgelendirilmesi gerekmektedir. Proje çıktı (Proje Kodu ve Dokümantasyon) teslimi yarışma web sayfasından ikinci aşamada online (çevrimiçi) olarak yapılacaktır. Dokümantasyon projenin tüm aşamalarının detaylarını içeren bir belge olacaktır. Dokümantasyon mümkün olduğunca detaylı olmalı, kullanıcıların konuyu bildiği varsayımı yapılmamalıdır. Raporun bir belge düzenleyici ile (Word gibi) kelime ve imla yazım hatalarından arındırılarak okunur bir formatta düzenlenmesi gerekmektedir. Sayfalar A4 ebadında, harfler 11 punto büyüklüğünde ve en fazla 30 sayfa olmalıdır. Anlatımı kolaylaştırılacak grafik tabanlı araçlar (UML ve benzeri gösterimler ve araçları) kullanılabilir. Başvuru aşamasında raporlar PDF formatında online olarak yüklenecektir. Aşağıdaki içeriğe uygun olarak hazırlanması gerekmektedir: Dokümantasyon: Kapak Takım Adı : Takımınıza verdiğiniz kısa bir isim. Projenin Açık Adı : Projenize tek bir cümle olacak şekilde; kısa ve öz; okuyana proje çalışması hakkında fikir verecek bir ad veriniz. Takım Üyeleri : Projenin kimler tarafından gerçekleştirileceği, görev dağılımının kabaca nasıl olduğu ve projeye hangi konudaki uzmanlığı/uzmanlıkları ile katkı sağladıkları bu kısımda belirtilmelidir. Anahtar Kelimeler : Projeyi tanımlayan en fazla 5 anahtar kelime belirtilmelidir. İçindekiler 1. Giriş: Geliştirilen sistem hangi probleme çözüm bulmakta, hangi amaçla kullanılacak, kullanım kapsamı ne olacak, bu konuda daha önce yapılan ve ilişkili çözümler var ise bu bölümde belirtilecektir. a. Problem tanımı b. Amaç
5 c. Kapsam d. Literatür taraması ve ilişkili çalışmalar e. Projenin özgünlüğü Yenilikçilik Etki Uygulanabilirlik Kullanışlılık f. Tanımlar, kısaltmalar 2. Sistem tasarımı: Sistemin genel mimari tasarımı, modülleri, modüller arasında etkileşim ve veri aktarımı, (varsa) donanım ve yazılım bileşenleri bu kısımda açıklanacaktır. 3. Veri tasarımı: Sistemin veri kaynakları, veritabanı ve veri dosyaları, veri kaynaklarının genel tasarımı ve kapsamlı açıklamaları bu bölümde şemalar desteğiyle yapılacaktır. 4. Arayüz tasarımı: Sistemin kullanım arayüzü bu kısımda açıklanacaktır. Elle veya bilgisayar yazılımları ile çizilmiş kullanıcı ekran tasarımları bu bölümde yer alacaktır. 5. Araçlar ve kütüphaneler: Sistem geliştirilirken kullanılan yazılım ve (varsa) donanım araçları ile kütüphaneler, kullanım amacı, nasıl edinildiği, web referansları, kullanım arayüzleri ve detaylı açıklamaları ile bu bölümde belirtilecektir. 6. Proje takvimi: Projenin geliştirme takvimi ve takım üyelerinin projede üstlendikleri görevler bu bölümde verilecektir. 7. Referanslar: Yararlanılan kaynaklar akademik referans standartlarına uygun bir şekilde listelenmelidir. Raporda ilgili bölümlerde yararlanılan bu kaynaklara referans verilmelidir. 8. Ekler: İhtiyaç duyulan diğer doküman, resim, şekil ve tablolar burada yer almalıdır. Kod: Tek bir dosya olarak (zip veya rar formatında, maksimum 100 mb olacak şekilde) ikinci aşamada internet sitesine (ayy.atilim.edu.tr) yüklenecektir. Aşağıdaki asgari dosya yapısına uygun olarak üretilmelidir. /bin, /src /lib /data /results /docs Klasörler alt klasörler içerebilirler.
6 PROJELERİN DEĞERLENDİRİLMESİ Elektronik ortamda alınan başvurular, belgeler (dokümantasyon) üzerinden dikkate alınacak ve kodların testi yapılacaktır. Bu kapsamda Projeler Özgünlük (Yenilikçilik, Etki (Fayda), Uygulanabilirlik, Kullanılabilirlik), Geliştirme süreci, Kodlar ve Dokümantasyon yönlerinden değerlendirilecektir. Proje sonuçlarının, teorik bir çıkarımdan ziyade, bir yazılım olması beklenmekte olup yazılımlar test edilecektir. Jüri kanaatine göre aşağıdaki durumlar oluşmuş ise projeler değerlendirme dışında tutulacaktır. Özgün olmaması, Projenin daha önce herhangi bir yarışmada ödül, telif hakkı ve patent almış ve/veya hâlihazırda mevcut bir ürünün bütünü ya da kısmı parçası olarak üretilmiş ve/veya satışa sunulmuş olması (Ayrıca şartlardan herhangi birinin yarışmanın herhangi bir safhasında tespit edilmesi ve bu tespitin jüri üyelerinin çoğunluğu tarafından onaylanması halinde, söz konusu proje ve bu proje ile yarışmaya başvuran takım yarışma kapsamından çıkarılacaktır.), Takım üyelerin en az iki en çok dört kişi dışında oluşturulması, Takım üyelerinden en az birinin Atılım Üniversitesi öğrencisi ya da mezunu olmaması, Takım üyelerinden herhangi birinin T.C. vatandaşı ya da Türkiye de oturma izni olan yabancı uyruklu kişi olmaması, Projede bireylerin temel hak ve özgürlüklerine müdahale edilmesi, bireylere fiziksel veya ruhsal zarar verilmesi Projede kullanılan / toplanan özel nitelikteki bilgilerin paylaşılması, Kurumlarda yapılacak çalışmalarda kurum yetkililerinden izin alınmaması, Proje kapsamında yürütülen çalışmaların halk sağlığı ve güvenliği için risk teşkil ettiğinin / edeceğinin anlaşılması. Finale kalan projeler yarışma öncesi Atılım Üniversitesinde sergilenecektir. Final Projeleri Değerlendirmesi ve Ödül Töreni ise Atılım Üniversitesi Bitirme Projeleri ile aynı gün Atılım Üniversitesinde yapılacaktır (Bkz.Yarışma Takvimi). BAŞVURU ÖNCESİNDE / BAŞVURU SIRASINDA DİKKAT EDİLMESİ GEREKEN HUSUSLAR 1. Başvuru sırasında istenilen belgeler, başvuru tarihleri, ödüller vb. program ait tüm bilgiler http:ayy.atilim.edu.tr adresinden incelenmelidir. İnternet sitesinde hali hazırda yer alan bilgilere dair atılan e-postalar / telefonlar yanıtlanmayacaktır. 2. Başvurular http:ayy.atilim.edu.tr adresi üzerinde iki aşamalı yapılacaktır. İlk aşama ön kayıt olup herhangi bir doküman istenmeyecektir. İkinci aşamada (Proje Kod ve Dokümantasyon Teslimi) ise aynı internet adresi üzerinden online (çevrimiçi) yükleme yapılacaktır.
7 3. Başvuru koşullarından herhangi birini sağlamayan, belgeleri tam olmayan, belgeleri ilanda belirtilen süre içerisinde Atılım Üniversitesi Yazılım Yarışması Koordinatörlüğüne ulaşmayan veya faksla yapılan başvurular işleme konulmayacaktır. 4. Ticari değeri olduğu düşünülen projeler için yarışma süreci içerisinde patent başvurusunda bulunulması önerilir. Bunun için gerekli bilgi www.turkpatent.gov.tr adresinden elde edilebilir. Not: Yazılım yarışması ilke, kural ve sürecinin belirlenmesinde TÜBİTAK Yazılım Projeleri Yarışmaları referans alınmıştır.