BAŞA DÖN

Proje Başlatma Belgesi (Project Charter)

Erkyazılım için için ileri dönük projeler zaman planı çıkarmaya çalışırken aktif 25 proje ile çalıştığımızı, muhtemel yeni bir kaç projenin daha alınacağını gözlemledim. Fakat bunlarla ilgili projelerin yaklaşık yarısının dokümantasyonu yoktu.

Bu tür projelerinin küçük olmaları gerekçe olsa dahi işleyişi değiştirmek istedim. Bu nedenle “Proje Başlatma Belgesi” (PMI standardında adı Project Charter) oluşturmaya karar verdim. Bu sayede bir projenin adı, açıklaması, proje yöneticisi ve yetkilerini, Business case (iş durumunu) atanan ön kaynakları, Proje ekibini ve paydaşları (Stakeholders), teslim edilecek çıktıları ve ürünün kaba özelliklerini projenin onaylama gereksinimlerine ve onaylayanların bilgilerine erişebilecektim. Aynı zamanda şirkete yeni katılan bir kişinin 2 gün içinde bütün projelerle ilgili oldukça fazla bilgiye erişebilmesini sağlamayı hedefliyordum.

Aslında PMI bu belgeyi müşteri ile firma arasındaki bir sözleşme olarak da değerlendirmekte fakat ben başlamış ve devam eden projelerde bu amacı güdemezdim fakat yeni alınacak projelerde bu belgelerin faydalı olacağını umuyorum. Ayrıca ilk teklifimize hazırladığım bu belgeyi de ekledim.

Aşağıda oluşturduğum örnek Proje başlatma Belgesini bulabilirsiniz.

Proje Başlatma Belgesi

Proje Başlığı ve Açıklaması

(Proje Nedir?)

ACME Banka Hesap Takip Uygulaması

ACME firması aşağıda adları listelenen bankalarda hesaplar tutmaktadır. Bu hesaplar Cari hesaplar olduğu gibi Vadeli hesaplar da olabilmektedir.

Akbank, Garanti, İş Bankası, TEB, Vakıfbank, Yapı Kredi, Ziraat, A Bank, HSBC, Citibank, Denizbank, Halkbank, Finansbank ve ING Bank

ACME firması bu bankalardaki çoklu hesapalrının bakiyelerini ve hareketlerini takip etmek için manuel bir süreç izlemektedir. Kurum bankalarla temasa geçerek hesap hareketlerinin ve hesabın son drumunun bir servis aracılığı ile kendi sistemlerine aktarılmasını ve bu sayede tek bir ekrandan bütün bankaları takip edebilmeyi istemekte.

Ayrıca vadeli hesapların da bankalardan takip edilmesi arzulanmakta. Bütün verilerin detaylarına uygulama içerisinden erişilebilirken konsolide grafik ve raporların da sunulabilmesi arzulanmakta.

Proje Yöneticisi ve Yetkileri

(Projeye kim liderlik edecek ve yetkileri nelerdir? Proje yöneticisi değişiklik isteklerini kabul ve ret edebilir mi? süre veya takvimde değişiklikler yapmaya yetkili mi?)

Proje yöneticisi olarak ERK Proje Yöneticisi atanmıştır. Takımı seçmekte yetkilidir. Proje süresi ve bütçesi üst yönetim tarafından belirlenecektir.

İş Durumu

(Proje neden var? ne tür finansal veya diğer temel faydalar elde edilecek bu projeyi gerçekleyerek? Proje amacını ve mazaretlerini yazınız)

ACME firması finansman departmanı bir çok farklı nedenle banka hesaplarının hareketlerini ve son durumlarını raporlama ihtiyacı hissediyorlar. Bu uygulamayı geliştirerek 10′larca hesabın son durumlarını saniyeler içerisinde kendilerine sunabileceğiz. Bu sayede çok büyük miktarda zaman kaybı engellenecektir.  Diğer bir yan faydası da üst yönetimin yetkileri çerçevesinde hesapların durumuna anında ulaşabilmeleri sağlanacaktır. Bu sayede finansman bölümü devreden çıkarılacak daha az hata ile daha özet veriler sunulabilecektir.

Atanan Ön Kaynaklar

(Kaç tane ve hangi kaynaklar kullanılacak)

Mariana Saha bu projeye atanmıştır. Daha önceki banka servisleri deneyimi ile bu projede hızlı yol alabileceğimizi düşünüyoruz. diğer kaynaklar ihtiyaç oldukça belirlenecekler.

Proje Ekibi

(Projenin ilerleyişini kim etkileyecek ve proje kimleri etkileyecek)

Proje yönetiminde Sam Hok’de bulunacaktır. Diğer firmalardaki benzer ihtiyaçların  belirlenmesindeki deneyimi ile projenin yönlendirilmesinde fikirler verecektir.

Dr. Frank Golan projenin pazarlanması ve müşteri ile iletişiminden ortaya çıkan yeni iş ihtiyaçlarını takıma aktaracaktır.

Alan Harm müşteri yöneticisi olarak müşteri ziyaretlerini ve gerekli sunumları yapacaktır. Müşteri tarafından iletilen değişiklik isteklerini proje yönetimine aktaracaktır.

Shreya Lam ACME firmasında Finansman yöneticisi olarak çalışmakta olup, ihtiyaçların analizi ve uygulamanın ilerlemesini denetleyecektir. Shreya Lam uygulamaya ihtiyaç duyan müşterimizdir.

Rutger Bloom ACME firmasında IT bölümünden bir yetkili olarak projenin sisteme entegrasyonu ve teknik analizi aşamalarında destek ve yönlendirmelerde bulunabilecektir.

Ürün Açıklaması / Çıktılar

(Ne tür özelliklere sahip bir ürün teslim edilecek? Proje sonunda elde edilecek çıktılar nelerdir?)

Müşterimize bir adet Web uygulaması, Bir adet verileri çeken servis ve bir adet mobil uygulama teslim edeceğiz. Uygulama müşterimizin bağlı olduğu bütün bankalardan verileri çekerek kendi kaynaklarında depolayacak, Web uygulaması bütün bankaların özet bilgilerini bir dashboard’ta yayınlayacak ve gerekirse bankaların ve hesaplarının tek tek detaylarını müşterimize iletecektir. Bu detay ve özet verilerin temel raporlarını alabileceklerdir.

Mobil uygulama ise mobil cihazlar için geliştirilmiş olacaktır. güvenlikli erişimle Web uygulaması tarafından tutulan verileri değerlendirip özet grafikler ve rakamlarla “Üst Yönetim Kademesi” için  bir arayüz olacaktır. HTML, HTML 5 veya Native uygulama olacaktır.

Ölçülebilir Proje Hedefleri

(Firmamızın hangi hedefi bu proje ile sağlanacaktı, hangi hedefine katkıda bulunacaktır?  Proje kısıtları nelerdir? Öncelikler nelerdir?)

Müşterimizin bu uygulamaya 2012 yıl sonuna kadar ihtiyacı varken sıkışık tarih nedeni ile en geç Ocak ayı içerisinde uygulamanın teslimini istemekte. Ocak ayının 3. hafta sonu kritik bir tarih olarak hedeflenmektedir.

Bu uygulama 2 kademeli olarak gerçeklenecektir. 1. Kademede sadece Cari hesaplar online olarak alınacak ve projeye harcanan zaman 20 günden fazla olmayacaktır.

10 Adet bankadan hesap hareketleri ile ilgili servis bağlantısı yapılacaktır.

10 adet banka şu an verilerini sunamıyorsa müşterimize borç olarak ileride gerçeklenmek üzere hizmet saklı kalacaktır.

Projenin Onaylanma Gereksinimleri

(Proje için nelerin onaylanması gerekmektedir? Başarıyı neler belirler?)

Proje onayı müşteri tarafından verilecektir.

  • Hangi bankalarla çalışılacağı önceliği müşteri tarafından belirlenecektir
  • Müşterinin bütün riskleri önceden bilmesi sağlanacaktır (onaylamalıdır)
  • Tasarım müşteri tarafından onaylanacak
  • Raporlar müşteri tarafından proje öncesinde verilecek ve bizim tarafımızdan onaylanacak

Yüksek Seviyeli Riskler

(Muhtemel engeller ve fırsatlar)

  • Müşteriye sağlayacağı büyük kolaylık sayesinde finansal analizlerin Web ve mobilde sunulması ile ilgili yeni çalışmalar ortaya çıkabilir.
  • Daha önceden Cari hesap entegrasyonu yapmamamız iş süresini uzatabilir.
  • 10 adet bankanın cari hesap takibi servisi vermemesi ihtimali ortaya çıkabilir
  • İstenebilecek raporların net olmaması süreyi etkileyebilir.

Projeyi Onaylayan Yetkililer

Dr. Frank Golan (Genel Müdür)

Sam Hok (CTO)

Erkyazılım Proje Yöneticisi (PM)

 

 

 

Yazının orjinaline http://www.tugrulkarakaya.com/ornek-proje-baslatma-belgesi-project-charter/ bloğundan ulaşabilirsiniz.


Aydem Elektrik Dağıtım A.Ş.

Aydem, Erkyazılım çözümleri ile müşteri ve işortaklarına internet üzerinden daha kaliteli hizmetler sunmaktadır.

AYDEM Elektrik Dağıtım A.Ş., 2008 yılı Ağustos ayında elektrik dağıtım ve perakende satış hizmetlerine başlamıştır.

Elektrik Piyasası Kanunu’na göre hizmet veren Aydem, sektörde faaliyet gösteren lisanslı ilk özel elektrik dağıtım ve perakende satış şirketidir. Aydın, Denizli, Muğla illerini kapsayan elektrik dağıtım bölgesinde yaklaşık 1,5 milyon aboneye dağıtım ve perakende satış hizmeti vermektedir.

Erkyazılım'ın geliştirmiş olduğu, kurumsal portal ürünü olan "Kolay Portal XL" ve Aydem müşterilerinin borçlarını, tüketim grafiklerini ve endeks bildirimi yapabilecekleri "Online Hizmetler" sistemi kurum içi müşteri takip sistemi ile eşlenik olarak çalışmaktadır.

Aydem'in kurumsal web portalından tesisat numaraları ve sayaç numaraları ile hızlı bir biçimde abone olabilen müşteriler, kendi tanımladıkları e-posta ve şifre ile online hizmetlere giriş yapabilmektedirler. Online hizmetler, Altelk'in geliştirdiği kurum içi müşteri takip sistemine web servisleri aracılığı ile erişerek müşterilere gerçek zamanlı bilgi sağlar.

Müşteriler isterlerse online hizmetler kapsamında bulunan fatura bildirimi hizmetinden de faydalanarak, kendilerine tahakkuk etmiş fatura bilgilerini düzenli olarak e-posta ile alabilmektedirler.

Hizmet verdiği bölgede "sıfır şikayet" ve "mazeret yok" ilkesiyle hareket eden Aydem, Erkyazılım çözümlerini kullanarak gelişen teknoloji ile birlikte müşterilerine en kaliteli hizmeti eksiksiz bir biçimde almalarına çalışmaktadır.


Verileriniz güvenle paketlenir, YEDEKK'lenir ve ihtiyaç olunca açılır (*)

Uzun zamandır kafamızı kurcalayan bir konuydu yedekleme politikası, yedeklerin dışarı çıkarılması, zamanlaması vs.  Aslına bugüne kadar bir şekilde elle alınarak büyük bir sorun olmadan idare etmiştik. Ama ne varki buna ciddi kalıcı bir çözüm bulmalıydık. Ufak kodlarla otomatize ettik bu işi,  fakat bu defada birisinin, disklerin dolup dolmadığını, yedeklerin alınıp alınmadığını kontrol etmesi gerekiyordu. En önemlisi  yedeklenen verilerin lokasyon dışına taşınamaması ciddi bir sorundu. Zira yedeği alsak bile en kötü ihtimali düşünerek (yangın, sel, deprem, hırsızlık vb.) önlemleri maximum seviyede tutmalıydık. Tam bu sırada yardımımıza Amazon S3 Servisi yetişti. S3 alt yapısını kullanarak çok sevdiğimiz ve severek kullandığımız (eminiz siz de seveceksiniz) bir uygulama geliştirdik. Adı YEDEKK.


YEDEKK’in iki parçası var birisi hangi verinin yedekleneceğini, ne zaman  başlanacağı gibi ayarların yapıldığı  yönetim ekranı uygulaması. Diğeri ise bu uygulamada verilen  ayarlara göre yedekleri belirli saatlerde alıp, paketleyip, şifreleyip Amazon S3 altyapısını kullanarak lokasyon dışına taşıyan servis.  

 

YEDEKK Calişma Mantığı


 
İki aydan fazla bir süredir kendi sunucularımızda kurduğumuz YEDEKK’in alfa ve beta testlerini başarıyla gercekleştirdik. Artık yedeklerimiz, biz gece mışıl mışıl uyurken, tatildeyken düzenli olarak alınıyor. Kafamızda böyle bir iş yok, içimiz rahat. Hani olurda ihtiyaç duyarsak bir kaç tıklama ile yedeklerimizi geri alıp kullanabiliyoruz. 

Bilirsiniz, bu tip sistemlerin önemi, istenmeyen bir olayı tecrübe ettiğimiz zaman anlaşılır. Araçların hava yastığı gibi, aracı alırken 10 hava yastığı için çok para verir, aracı kullanırken belki buna hiç ihtiyacımız olmaz ama ihtiyacımız olursa iyi ki varmış deriz. Verileri en az riskle kullanmak istiyorsak bu tip kurallara dikkat etmemiz gerekir. Hiç veri kaybı yaşamamış olmamız, bir gün yaşamayacağımız anlamına gelmez. 

Yedeklediğiniz verilere hiç ihtiyacınız olmamasını umarız. Gene de sağlam bir limana demir atmakta fayda var :)

bkz: Kemerleriniz gösterildiği şekilde bağlanır. Belinize göre ayarlanır ve açılır. 


Yazılım üretiminden fatura kesimine bir iş akışı modeli

Yazılım firması olsak da bazı işlerimizi dış ürünler kullanarak yapıyoruz. Böylelikle hem tekerleği yeniden keşfetmek ile zaman kaybetmiyor hem de işimizi uzmanlara teslim ediyoruz. Usta olabilmek önemli. İşimizi en severek teslim ettiğimiz yazılımlardan birisi Fogbugz, biz ona kısaca Takip diyoruz.

Yaklaşık 3 yıldır Erkyazılım bünyesinde uyguladığımız bir işleri kategorize etme yöntemi var. Bu sayede önümüze gelen işleri Takip sistemimizde sınıflandırıyor ve müşterilerimize en güzel hizmeti üretmeye çalışıyoruz. (Takip yokken günlük eposta raporlarında bunları tutuyor ve takip ediyorduk, illa bir sisteminiz olması gerekmiyor, sistematiğinizin olması önemli)

Üretimi yeni proje, garanti, bakım ve geliştirme olarak sınıflara ayırdık. Gelen her iş kalemi bunlardan birisine giriyor ve orada hata, özellik, araştırma gibi alt kademelere indirgeniyor.

Yeni proje: Satış tarafından gerçekleştirilmiş, paket halinde satılmış, kapsamı belli (x firması y projesi, y projesinin mobili vb.) üretim süreçlerini kapsıyor.

Garanti kapsamı: Yeni almış olduğumuz bir işin proje kapsamında yapılmasını taahhüt edip yaptığımız işleri koyduğumuz kategori. İşler nitelik açısından bakım kapsamı ile aynı olmakla beraber, garanti ve bakım arasındaki fark, garantini kapsamının sadece sözleşmedeki garanti sürecini kapsaması. (Garanti süresi müşteriden müşteriye  değişiklik arz edebiliyor ama genellikle  1 yıldır.)

Bakım kapsamı: Bakım, garanti sonrası yapılan ve programlarımızdaki bize bakan bazı şeylerin düzeltilmesi, yeni sürüm yüklenmesi vb. sürecine verdiğimiz isim. Burada iki durum söz konusu. Eğer bakım anlaşması yapılmış ise müşteriye ücretlendirme yapılmıyor. Eğer bakım anlaşması yapılmadı ise, şu kadar süre bakım yaptık diye aynı geliştirmedeki gibi dönemsel fatura kesiliyor. Bu yüzden neyin bakım neyin, geliştirme olduğu oldukça önemli.

Geliştirme kapsamı: Adı üstünde olan "geliştirme" var olan projeye yeni modüller/özellikler eklemek,  yani daha önceden olmayan değişiklikler ile ortaya çıkan işleri ve bunların sürecini kapsıyor. Bu kalemdeki her çalışma adam/saat bazında ücretlendiriliyor.

Küçük bir teşekkür: Her nekadar akıllı bir yazılım bizlere yardımcı olsa da, bunları derleyip toparlayan, son rapor hallerini yönetim ve müşterilerimiz ile paylaşan birisine her zaman ihtiyaç var. Bu işi bizde yürüten muhasebe yöneticimiz Bayram Çotur'a buradan kocaman bir teşekkür gönderiyorum :)


HTML DOM nedir?

Eğer yaptığınız iş internet ile ilgiliyse, mutlaka HTML, HTML DOM ve Javascript terimleri ile çok karşılaşmışsınızdır. Ama çoğu kimse sadece işine yarayacak kodları alır, kopyalar ve çalıştırır. Gerisine hiç karışmaz. Oysa bir teknolojinin yapısını ne kadar iyi bilirseniz ona  okadar hakim olursunuz ve o ölçüde isteklerinizi onunla rahatlıkla yerine getirebilirsiniz. Mesela uçakla bir adaya düştünüz, yanınıza da 3 şey alamadınız :) acil olarak da matematiksel bir hesap yapmanız gerekiyor. Bu durumda eğer iyi bir marangoz iseniz oduna şekil verme teknolojisini kullanarak bir abaküs yapar onunla yetinirsiniz. Mekanikçi iseniz uçakdaki metallerle mekanik bir hesap makinesi yapmanız mümkün. Elektronikçi iseniz uçakdaki devreleri kullanarak dijital bir hesap makinesi yapabilirsiniz. Yok bilgisayarcı iseniz aklınıza gelen ilk şey uçağın bagaj bölümünde bir Laptop aramak olacaktır :) Kısacası uğraştığımız teknolojilerin yapısını bilmek bizim sonuca gidiş şeklimizide değiştirebilir.

Gelgelelim DOM olayına. HTML bir dil değildir, bir arayüzdür. Javascript,VBscript,vs.. ise birer dildir.  Programlama dillerinin object-oriented olarak HTML ile anlaşması için HTML'i nesneler bütününe çevirecek bir ara standart gereklidir. İşte HTML DOM da tam bu noktada ön plana çıkar.DOM, HTML ile programlama dilleri arasında bir standart oluşturarak bu dillerin HTML den bilgi alıp, bilgi vermesine yardımcı olur. DOM, Nesneler ve özelliklerden oluşur. Herhangi bir metod veya işlem içermez.

Sonuç olarak eğer client-side olarak HTML' e daha fazla hükmetmek istiyorsanız, kullandığınız dil jscript,vbscript ne olursa olsun kesinlikle DOM un erişim yöntemlerini çok iyi biliyor olmanız gerekir.Piyasada DOM ile alakalı olarak bilgi bulabileceğiniz birçok döküman var ama işin derinine inmek için DOM'un hiyerarşisini iyi öğrenmek lazım. Benim bu noktada tavsiye edebileceğim en güzel kaynaklar

EN: http://en.wikipedia.org/wiki/DOM_Events

TR: http://www.mynotlar.com/html_dom/default.aspx

İyi Çalışmalar