Kebab Framework

ŞANTİYE2023 PROGRAMININ GELİŞTİRİLMESİ VE SATIŞI 20.02.2012 TARİHİ İTİBARİ İLE DURDURULMUŞTUR.
ŞANTİYE YÖNETİMİ İÇİN YENİ PROGRAMIMIZ coNinja PROGRAMINI İNCELEYİNİZ.
Kebab, programcıların mükemmel web uygulamalarını çok kısa süre içinde geliştirmek için tasarlanmış açık kaynak kodlu bir çatıdır. Yetkilendirme, raporlama gibi unsurları üzerinde barındırır.
1.Genel Bakış
Kebab, programcıların web uygulamalarını çok kısa süre içinde geliştirmek için tasarlanmış açık kaynak kodlu bir çatıdır. Kebab, internet sitesi mantığı ile çalıştığından Javascript destekleyen her hangi bir tarayıcısı olan bilgisayar, dizüstü bilgisayar veya mobil cihaz üzerinde kuruluma gerek olmadan çalışabilen programlar yapılmasını sağlar.
Peki neden Kebab? İsim olarak uluslararası dillere yoğurt sözcüğü ile giriş yapan iki türkçe sözcükten bir tanesidir. Ayrıca iki tane b harfi olması ve jenerik isim olmasıyla akılda kalıcıdır. Bütün dillerde bilinen, telaffuzu kolay ve türk malı olduğunu belirtmek için Kebab ismini uygun gördük!
2.Gereksinimler
Aşağıda belirtilen gereksinmelerin hepsi lisanssız programlardır.
Sunucu Tarafında
- Apache 2.0
- Php 5.3
- MySQL 5.1
İstemci Tarafında
- JavaScript ve popüler internet teknolojilerini sorunsuzca destekleyen bir tarayıcı. Safari veya Chrome tavsiye edilir.
3.Teknolojiler
- Php tarafında Zend Framework
- JavaScript tarafında ExtJS
- Veri tabanı olarak MySQL
- Mobil uygulama tarafında Sencha Touch
4.Özellikler
a.Masaüstü Özelliği
Kebab diğer PHP çatıların aksine kullanıcıya bir arayüz yapısında sunmaktadır. Tarayıcıda çalışan Kebab aslında bir işletim sistemini arayüzüne benzemektedir. Örneğin Kebab’ta, başlat çubuğu, başlat menüsü, hızlı başlat menüsü, arka plan, tema desteği ve pencereler vardır. Böylece internet tecrübesi olmayan son kullanıcıların Kebab’a alışması çok basittir. İnternet sitelerinin aksine Kebab ile geliştirilen programlar tazelenmediğinden sanki masaüstü programları gibi çalışılır.
b.Pencere Özelliği
Kebab üzerine geliştiren programlar pencere mantığı ile çalışmaktadır. Pencereler aynı işletim sistemlerinde olduğu gibi boyutlanabilir, küçültülebilir, kapatılabilir, tam ekran yapılabilir, çubuk şekline getirilebilir ve taşınabilir. İki pencerede ayrı ayrı çalışılabilir. Bir pencerede radyo açılırken diğer pencerede kayıt girişi yapılabilir. Pencereler arasında çalışma açısından bağlantı olup olmaması tamamen programcı inisiyatifindedir.
c.Kişiselleştirme Özelliği
Kebab kullanıcılara aşağıda belirtilen maddelerde özelleştirmeler sağlar.
- Masaüstü arkada planın resminin veya renginin değiştirilmesi
- Pencereler için stil ve görünüşün değiştirilmesi
- Masaüstünde bulunacak ikonların tespiti
- Uygulamayı açar açmaz çalışacak pencerelerin tespiti
- Hızlı başlat menüsünde oluşacak pencerelerin tespiti
d.Kimlik Özelliği
Kebab sistemine kullanıcılar belli bir kullanıcı adı ve şifre ile girmektedir. Böylece Kebab kullanıcının kim olduğunu bilir ve ona göre davranır. Kebab böylece kullanıcıya göre kendini kişiselleştirebilir, kullanıcın yetkisine göre davranabilir.
e.Yetkilendirme Özelliği
Yetkilendirme sistemi rol tabanlıdır. Örneğin yönetici, patron, müdür gibi sisteme tanımlanan roller vardır. Bütün bu rollerin değişik yetkileri vardır. Kullanıcı role göre yetkiye sahiptir. Kebab’ta toplam üç tip yetkilendirme vardır.
- Arayüzde yetkilendirme
- İşlemde yetkilendirme
- Veride yetkilendirme
f.Modülüler Yapı
Kebab üzerinde geliştirilen modüller çalışmak için birbirlerine ihtiyaç duyabileceği gibi birbirinden bağımsızda çalışabilir. Yani kullanıcıların yeni ihtiyaçları eski modülleri etkilemeden Kebab üzerine yapılabileceği gibi eski modüllerin gücünden de faydalanabilir. Bu firmalara yeni ihtiyaçları çıktığından farklı programlar almak yerine ihtiyaçlarını yine aynı kebab sistemi üzerinden kısa, esnek sürede yeni modüller ile çözmelerini sağlamaktadır.
g.Mobil Desteği
Kebab, web tabanlı bir program olduğundan mobil cihazlar üzerinden erişilebilir ancak mobil cihazların arayüz destekleri monitörler kadar geniş ve iyi olmadığından mobil programlar için ayrıca arayüz dizayn edilmesi gerekmektedir. Şu an için Kebab, sadece iPhone için arayüz dizayn edecek özellikleri içinde barındırmaktadır.
Her hangi bir kullanıcının el terminali veya başka bir çözünürlükteki kios, iPad, başka bir mobil cihaz üzerinde Kebab’ın özelliklerini kullanmak istemesi sadece arayüzlerin o cihaz için tasarlanmasından dolayı çok kısa sürede cevap verilebilir.
h.Çoklu Masaüstü
Kebab, internet deneyimi olmayan kullanıcılara kolay kullanabilirlilik sunmak için masaüstü şeklinde tasarlanmıştır ancak ileride sol tarafta menü sağ tarafta ana ekran şeklinde Outlook görünümü şeklinde bir tasarım yapılması kararlaştırılmıştır.
NOT : Bu işlemin yapım süresi yaklaşık 1 aydır ve versiyon v.2 de düşünülmektedir.
j.Kısayol Desteği
Kebab, modüllerinde kullanılmak üzere kısayolları desteklemektedir. Örneğin programcı kullanıcı için F2 tuşunu kaydet yapabilir. Bizim öngörümüz bunun çok sağlıklı bir çözüm olmayışıdır. Bizler kullanıcının “Kaydet” için isterse “CTRL+S” isterse “F2” kullanabilmesinin daha mantıklı olduğunu düşünüyoruz. Böylece kullanıcı eski programlarındaki alışkanlıklarını buraya taşıyabilir. Hatta Logo, Netsis veya DOS ksıayol seti gibi genel tanımlamalar yapılabilir. Bu yüzden modül ve pencere bazlı kısayolların ayarlanabileceği bir kısayol desteği Kebab’a eklenecektir.
Not : Bu işlemin yapım süresi yaklaşık 2 haftadır ve versiyon v.2 de düşünülmektedir.
k.Dil Desteği
Kebab UTF-8 standartında çoklu dili desteklemektedir. Yalnız modülleri geliştiren programcıların modüllerinin dil desteği olacak şekilde kodlaması gerekmektedir. Dil desteği ile ilgili hedefimiz çevirlerin yapılması için bir arayüz tasarlanması ve son kullanıcının çevirlerini bu arayüzden yapabilmesidir. Böylece son kullanıcı veya firmalar çevirlerini hiç bir programcıya ihtiyaç duymadan yapabilirler.
Not : Son kullanıcının çevirleri yapabileceği arayüz henüz tasarlanmamıştır. Tahmini 1 haftalık süresi vardır.
5.Üzerindeki Bazı Uygulamalar
Aşağıda belirtilen uygulamalar Kebab üzerinde kurulu gelir. Tabii ki isterse programcı bu uygulamaları kendisine göre düzenleyebilir.
a.Kullanıcı
a.1. Profil
Profil uygulaması kullanıcının kişisel bilgilerini değiştirmesini sağlamaktadır. Email, şifre, TCNO, doğum günü gibi bilgileri değiştirmek için kullanılır.
a.2. Tercihler
Tercihler uygulaması kullanıcının arayüzleri kendisine göre kişiselleştirmesini sağlar. Tercihler ile
- Masaüstünde hangi uygulamaların ikonlarının bulunacağı
- Kebab’a çevrimiçi olunca otomatik çalışacak uygulamaları
- Hızlı başlat menüsündeki ikonları
- Pencere stil ve görünümleri yani temayı
- Masaüstü arkada planını ve renkleri değiştirebilir.
b.Yönetim
b.1. Kullanıcı
Kebab’ta bulunacak roller ve rollerin yetkileri belirlenir. Ayrıca kullanıcı ve kullanıcıların hangi rolde olduklarıda buradan yönetilir.
b.2. Yedekleme
Yedekleme uygulaması, Kebab üzerinde belirlenen dizinlerdeki dosyaları ve veritabanını, belirtilen periyotlarda yedek alınmasını ve bunu yöneticinin kendi bilgisayarına indirebilmesini sağlayan basit bir uygulamadır.
Not : Yedekleme şu an otomatik olarak her akşam yapılmaktadır. Sadece sistem yöneticisinin yedek dosyalarını indirebileceği arayüz yapılmamıştır. Tahmini süre 1 gündür.
b.3. Kategori Yöneticisi
Kategori içeren her türlü alanın yönetildiği ve düzenlendiği bölümdür. Örneğin organizasyon şeması, ürün ağacı gibi gibi alt alta olan bütün kategoriler buradan yönetilebilir. Böylece sistem yöneticisi programcıya ihtiyaç duymadan ilgili kategorileri tek bir uygulamadan yönetebilir.
c.Medya Yöneticisi
Medya yöneticisi resim, video, belge gibi dosyaların yönetildiği ve her hangi bir oldu ile ilişkilendirildiği uygulamadır. Örneğin kullanıcı ile kullanıcının resmi veya ürün ile ürün resmi, ürün ile ürün kullanma kılavuzu bu modül ile tek bir yerden yönetilir.
d.Rapor
d.1.Basit Rapor
Basit rapor, bilgi işlem sorumlusunun veya programıcının yazacağı bir SQL ile otomatik tablo mantığı ile oluşan ve excel dökümantasyonu çıktı veren bir rapordur. Basit raporun adı gibi basit bir filitreleme özelliği vardır. Örneğin
- Sayısal değerler X sayısından büyüktür, Y sayısından küçüktür veya Z sayısına eşit olanlarlar diye
- Tarihsel değerler X gününden önce, Y günün sonra, Z gününde diye
- Yazı şeklinde olan değerler ise içinde şu ifadeyi bulunduran şeklinde filitrilendirilebilir.
d.2.Pano Rapor
Pano rapor daha ziyade sürekli göz önünde bulunması istenen, grafiksel, bütünü gösteren raporlar bütünüdür. Bir nevi patron ekranı olarakta bilinir. Her modül kendi içinde bu pano raporda gösterilecek raporları barındırır. Kullanıcı yetkisi dahilinde hangi modülden hangi raporu görmek istiyorsa bu raporu panosuna ekler ve sürekli görür.
Not : Şu an için pano raporlar için bir yetkilendirme yapılmamıştır. Pano raporu ekranı açık olan kullanıcı bütün raporları görebilir. Şu an için sadece makine parkı modülünün pano raporu yapılmıştır. Tahmini yetkilendirme özelliğinin eklenmesi 4 gündür.