Genel Bilgi

Proje Ekibi



  • Tülay ÖZKAN
  • Ümit ÖZKAN
  • Ekrem ÇOLAK


Proje Hakkında



Adı: Bütçe Uygulaması

Türü: Web Uygulaması

Platform: .NET 2.0



BÜTÇE UYGULAMASI


ÜMİT ÖZKAN, EKREM ÇOLAK, TÜLAY ÖZKAN SOYKAL





PROJE TEKLİFİ


YAZILIM GELİŞTİRME PROJESİ

BİLGİ TEKNOLOJİLERİ SERTİFİKA PROGRAMI

İDEA: ODTÜ SANAL KAMPÜSÜ













13.05.2012








AMAÇ


Bu bütçe uygulaması ile kurumsal bütçe’nin planlanması, satınalma ve harcamaların formal bir yapıya kavuşturulup, fiansal takip, analiz imkanının ilgili kurum kullanıcılarına sunulması amaçlanmıştır.


PROJE TANIMI

Kurumsal bütçe oluşturulması, satınalma va harcama kayıtlarının düzenli tutulması ve güncellenmesini sağlayan bir bütçe uygulaması gerçekleştirmek.


PROJENİN KAPSAMI

Uygulama ile bütçe oluşturulabilecek, satınalma ve harcama kayıtları tutulacak ve kayıtlara göre bütçe güncellenecektir.


Uygulamanın temel özellikleri:

  • Web tabanlı,
  • Çok kullanıcılı,
  • Giriş kontrolü ve oturum yönetimi olan,
  • Performansı maksimum düzeyde tutmak için kullanıcı taraflı yoğun programlama ve data yönetimi,
  • Http istekleri asenkron çalıştırılıyor,
  • Kullanıcı bazlı basit işlem yetki kontrolüne sahip,







YÖNTEMLER, YAZILIM ARAÇLARI VE PLATFORM



Süreç Modeli

  • Helezon Süreç Modeli

Çözümleme ve Tasarım Araçları

  • UML

Platform

  • .NET 2.0

Kodlama Araçları

  • Visual Studio 2008
  • MS SQL 2008 Management Studio

Kodlama

  • Server Side : C#
  • Client Side : Javascript, HTML, CSS

Yayınlama

  • Web sunucu : Server 2008 (IIS 7.0)








SÜREÇ MODELİ






KABA PROJE PLANI VE UYGULAMA TAKVİMİ









PROJE ANALİZİ


YAZILIM GELİŞTİRME PROJESİ

BİLGİ TEKNOLOJİLERİ SERTİFİKA PROGRAMI

İDEA: ODTÜ SANAL KAMPÜSÜ


















30.05.2012









BELGEDE KULLANILACAK TANIMLAR


Kavram karmaşasını engellemek ve konuları doğru ifade edebilmek için aşapıda belirilen kavramlar çerçevesinde analiz yürütülecektir.

Bütçe kodu: Kurumun yapısına uygun harcama kalemlerini belirten kod ve ad niteliklerine sahip hiyerarşik tanımlama yapısı.

Bütçe kalemi:Kurumun cari yıl , bütçe kodu ve bu kod için ayrılmış para miktarını belirten kayıt.

Ödenek: Bütçe kalemine ayrılmış para miktarı

İşlem: Bütçe kalemine bağlı yapılmış satına alma faaliyetinin her biri.

Bloke: İşlem için ayrılmış para miktarı

Harcama: İşlem adına ilgili muhataba yapılan para ödeme miktarı.

ÖZ

Kurumun yıllık harcayabileceği maksimum paranın (toplam ödenek) tahmini harcama alanlarına paylaştırılmasını sağlamak, paylaşım üzerinden satınalma işlemlerini kayıt ve takibini yürütmek.

PROJE TANIMI

Bütçe Projesi ile;

Kuruma ayrılan toplam ödeneğin, kuruma ait bütçe kodlarına göre paylaşımı yapılacak (ödenek miktarlarının belirlenmesi), bu paylaşım üzerinden satın alma işlemlerinin gerçekleştirilmesi yapılacaktır.

İşlem için yeterli miktarda para ilgili bütçe kaleminden bloke edilir, ilgili bütçe kalemi altında yer alan her bir işlem blokesi toplamı ödenek miktarını aşamayacaktır.

Son aşamada harcamalar ele alınacaktır. Harcama bir işleme ait olup, her işlemin en az bir harcaması olmalı ve harcamalar toplamı işlem blokesini geçmemelidir.



SİSTEM MİMARİSİ


Sistem Mimarisi



Kullanım Örnekleri:



İSTERLER ANALİZİ (REQUİREMENTS ANALYSİS)


GENEL :

  • Uygulama kullanıcı girişi kontrolü ile kullanılabilsin
  • Yapılan her türlü kayıt değişiklikleri izlenebilsin
  • Kullanıcıya bağlı olarak sınırsız sayıda kurumun bütçesini oluşturmaya izin verebilsin
  • Kullanıcı bazında basit yetki kontrolü olsun

BÜTÇE:

  • Bütçe kodlarına göre toplam ödenek en alt seviye bütçe kodlarına göre paylaştırılsın,
  • Geçmiş yıl kayıtları değiştirilemesin, gelecek yıllar kayıtları oluşturulamasın
  • Bu kayıtlar sadece cari yıl içinde oluşturulabilsin ve de değiştirilebilsin
  • Her bir bütçe kalemi, eğer herhangi bir satın alma işlemine sahip değilse silinebilsin
  • Bütçe kalemine ait barındırılacak bilgiler:
    • B.Kodu: Hiyerarşik standart kod sistemi
    • Ödenek: cari yıl için bütçe kalemine ayrılan para miktarı
    • Aktarilan: Bütçe kalemine sonradan aktarılan para miktarı
    • Eksiltilen: başka kaleme aktarmak üzere çıkarılan para miktarı
    • Net ödenek: ödenek + aktarılan - eksiltien
    • Kapsam: ayrılan ödeneğin hangi tür harcama alanında hrcanacağı (mal, hizmet, yap-inşaat)
    • Yıl:
  • Bütçe kalemine bağlı satına alma işlemi oluşturulsun
  • Satın alma işlemine ait barındırılacak bilgiler
    • Tarih:
    • İşin adı:
    • İlk bloke: işlem için ayrılmış para miktarı (hesap dışı)
    • Bloke: işlem için ayrılmış para miktarı (hesplamalara esas)
    • İşi yapan: satın alınan hizm.ürün vs firma
    • Şube: satın alınan ürünü kullancak kurum alt birimi
    • Alım tipi: mevzuatta tanımlı standart alım tipleri (doğrudan alım, ihale-istisna ile alım vb.)
    • Notlar: işleme dair açıklama ve notlar
    • İptal Tarihi: işlem iptal tarihi (iptal ise)
    • İptal açıklama:
  • Satına alma işlemine ait harcama kayıtları oluşturulsun
  • Satına alma işlemi 1 ya da daha fazla harcama kaydına sahip olabilsin
  • Satın alma işleminin ihale istisna olduğu bazı durumlarda tek kalem harcama içerir (harcama kaydı otomatize edilebilir (iş kolaylaştırma))
  • Harcamalar toplamı bağlı işlem blokesini geçemez
  • İşlem blokeler toplamı ilgili bütçe kalem ödeneğini geçemez
  • İşlem blokesi bağlı harcamalar toplamından küçük olarak güncellenemez
  • Bütçe ödeneği bağlı işlem blokeleri toplamından küçük olarak güncellenemez
  • Harcamalar bitmiş ve bloke harcamalar toplamından fazla ise harcama sonalandırılabilsin (iş kolaylaştırma)
  • Doğrudan alım tipindeki satın alma işlemi blokeler toplamı ilgili bütçe kaleminin bağlı olduğu kapsama ayrılan ödenek miktarının % 10'nu geçemez
  • İşlem/harcama tarihleri kontrol edilmeli
  • İşlem/harcama alt kaydı olmadığı hallerde iptal edilebilsin
  • işlem/harcama iptal tarihi kayıt tarihinden önce olamaz, bitiş kontrolü de yapılır
  • Her türlü kaydın ilk oluşturanı ve de son değişiklik yapanı bilinebilsin
  • Harcama kaydına ait barındırılacak bilgiler:
    • Tarih:
    • Muhatap: ödeme yapılan firma
    • Miktar: ödeme yapılan para miktarı
    • Notlar:
    • İptal tarihi:
    • İptal açılama:
  • Cari yıl bütçe özeti görüntülenebilsin



PROJE PLANI VE UYGULAMA TAKVİMİ




KAYNAKÇA








PROJE TASARIMI


YAZILIM GELİŞTİRME PROJESİ

BİLGİ TEKNOLOJİLERİ SERTİFİKA PROGRAMI

İDEA: ODTÜ SANAL KAMPÜSÜ

















23.05.2012








Not: Proje içerisinde yer alan resim(ler) tıklanarak daha net bir görüntüleme sağlanabilir.

ÖZ


Belgede Bütçe Uygulaması'nın kapsamı ifade edilecek ve gerçekleştirim için gerekli tasarım aşamaları olan, veri yapıları, işlevler ve işlevlerin sınıflandırılması ve bağlı olarak modül yapıları netleştirilerek son olarak ta kullanıcı arayüzü ortaya çıkarılacaktır.

KAPSAM


Yazılımın Hedefleri: Web tabanlı bir yaklaşımla, platform bağımsız olarak kullanıcının kurumsal mali verilerine ulaşım, ve yetki durumuna göre düzenleme imkanı sağlayarak, zaman ve emek kaybını önlemek. Ayrıca Hedef alınan kurum (Ankara İl Sağlık Müdürlüğü) benzeri kurumlarında var olduğu düşünülerek birden fazla kurum tarafından kullanılabilir olması hedeflenmiştir.

Başlıca Müşteri İsterleri: Kuruma ayrılan paranın tanımlı bütçe kodlarına göre paylaşımını sağlamak, paylaşım üzerinden işlemleri oluşturmak ve işlemler üzerinden ödemeleri gerçekleştirmek müşteri isterlerinin omurgasını oluşturmaktadır. Bu omurga üzerinden paranın paylaşımı, işlemlere ayrılan para ve bu para üzerinden ödemelerin kaydı sağlanacak ve görüntülenebilecektir.

Tasarım Sınırlamaları: Kodlama .NET tabanlı olacağından sunucu tarafı windows bağımlı olacaktır.

Çok kullanıcılı bir uygulama olmasına rağmen aynı kayıt üzerinde birden fazla kullanıcının işlem yapma olasılığı göz ardı edilmiş, ancak bazı işlem doğrulamaları veri bütünlüğü ve uygulama hedeflerinin garantilenebilmesi amacı ile sunucu taraflı kontroller ile sağlanmıştır.

MİMARİ TASARIM


Performans en öncelikli konu olarak belirlendi. Bu yüzden uygulamanın her katmanında gereği halinde fonksiyonel yapılar, gereği halinde nesne yapıları kullanılacaktır. Bu aynı zamanda projenin daha hızlı tamamlanmasını da sağlayacak diye düşünüldü. Uygulama ne tam olarak nesne yönelimli ne de fonksiyoneldir.

Uygulama sistem tasarımı modüler olarak aşağıda gösterildiği şekilde ifade edilebilir:


İşbirliği Diyagramları

Kayıt işlemleri her üç form (bütçe, işlem ve harcama) için aynı sürece sahip olduklarından tek diyagram ile gösteriliyor.


Görüntüleme işlemleri her üç form (bütçe, işlem ve harcama) için aynı sürece sahip olduklarından tek diyagram ile gösteriliyor.




Sınıf ve Nesne Tasarımları

Performans açısından kullanıcı tarafında uygulamaya özgün yapılar kurulurken diğer taraftan da uygulama arayüzünü dinamik hale getirebilmek için nesne yönelimli yapılar kurulacaktır. Sunucu tarafında kullanıcı tarafındaki uygulama nesnelerinin tamamlayıcısı niteliğinde nesne ve işlevler tanımlanacaktır.

Kullanıcı tarafı ile sunucu arasında, uygulama başlatıldığı anda arayüze ilişkin tüm veriler yüklenmiş olacak, sonraki işlemlerin tamamında ham verilerin dışında herhangi bir data transferi olmayacak.

Sunucu Tarafı Class İlişki Diyagramı



Kullanıcı Tarafı Class İlişki Diyagramı



VERİ TASARIMI


Veri Tabanı Diyagramı



Form Değişkenleri


Bütçe Form Değişkenleri

  • BKodu: string
  • Odenek: float - Money
  • Aktarilan: float - Money
  • Eksiltilen: float - Money
  • NetOdenek: float - Money
  • Kapsam: int
  • Yil:int

İşlem Form Değişkenleri

  • IslmTarih:Date
  • IsinAdi:string
  • Ilkbloke:float - Money
  • Bloke:float - Money
  • IsiYapan:string
  • Sube:int
  • AlimTipi:int
  • IslmNotlar:string
  • Iptal:bool
  • IslmIptalTarihi:Date
  • IptalAciklama: string

Harcama Form Değişkenleri

  • HarcaTarih: Date
  • Muhatap: string
  • Miktar: float - Money
  • HarcaNotlar:string
  • Iptal:bool
  • HarcaIptalTarihi: Date
  • HarcaIptalAciklama: string

Arayüz Grafik Tasarımları


Bütçe formu



İşlem(satın alma) formu


Harcama formu (durum 1)


Harcama formu (durum 2)


Özet bütçe görünümü


PROJE PLANI VE UYGULAMA TAKVİMİ





KAYNAKÇA










PROJE GERÇEKLEŞTİRİM BELGESİ


YAZILIM GELİŞTİRME PROJESİ

BİLGİ TEKNOLOJİLERİ SERTİFİKA PROGRAMI

İDEA: ODTÜ SANAL KAMPÜSÜ

















10.07.2012








Not: Proje içerisinde yer alan resim(ler) tıklanarak daha net bir görüntüleme sağlanabilir.




ÖZ

Projenin Gerçekleştirimine dair açıklamalar ile proje tanıtımı ve kullanımı veritabanı yapısı detaylı olarak tanımlanacatır.

Karşılaşılan Sorunlar ve Çözüm Yöntemleri

Aşağıda belirtilen hususlar/ihtiyaçlar gerçekleştirim aşamasında ortaya çıkmışlar ve projenin genel mantığı çerçevesinde tasarıma dahil edilmişlerdir. Geliştirme yöntemi olarak Helezon Modeli Benimsendiğinden aşağıda belirtilen hususlar bir sorun değil projenin devemı olarak düşünülebilir.


    İsterlere eklenenler:
  • Bütçe kalemi silinebilmeli
  • Hiyerarşik yapıda bulunan bütçe yapısında ödenek ayırma işlemi en alt seviyede bulunan bütçe kalemleri üzerinden gerçekleştirilecek şekilde tasarlandı. Ancak kullanıcı bu alt kalemlerin toplamlarının hiyerarşide yer alan bir üst kaleme yansıtılarak gösterimini talep etti.
  • İşlem iptali edilebilmeli

    Tasarımda fark edilen/ortaya çıkan gereksinimler:
  • Harcamanın bloke miktarına erişmeden sona erdiği durumlar olabildiği ve bu durumda kullanıcının işlem blokesini güncellemek ile zaman kaybettiği fark edildi. Bu amaçla işlem ve harcama formlarında ortak bir yapı ile bu işlem minimize edilmiş oldu. Yan fayda olarak ta bu işlem için arayüze konulan buton ile kullanıcıya seçili işlem ya da harcama için harcanabilir miktar olup olmadığına dair görsel bir mesaj da verilmiş oldu.


YAZILIMIN BİLEŞENLERİ VE GÖREVLERİ

Sistemin Kaba Algoritması


Kodlama öncesi hazırlık amacı ile oluşturulmuş ve kodlama esnasında özellikle kritik iş kontrollerinin takibini kolaylaştırmak amacı ile oluşturulmuş bulunan kaba sistem algoritması:

Algoritmada kullanılacak kısaltmaların açıklanması:

SS (Server Side): işlevin sunucuda yerine getirilmesi

CS (Client Side): işlevin kullanıcı tarayıcısında (javascrip fn) yerine getirilmesi

VT (Veri Tabanında): İşlevin storedprocedure içerisinde yerine getirilmesi

VT ve CS kısaltmaları algoritma da peşi sıra kullanılmış, ara bsamaklarda kullanılmamıştır. Bu durumlarda en son kullanılan geçerli olduğu düşünülmelidir. Algoritma basamak başında kullanılan "+" "-" işaretleri kontrolün uygulamaya yansıtıldığını ya da yansıtılmasığını ifade etmektedir.

SP(Storedprocedure): Veri tabanında depolanmış ve adlandırılmış sorgu kümesi, VT Yapısında isimleri verilmelte ayrıca, script dosyası aşağıda sunulmaktadır. Script dosyası içinde kodlarla birlikte yeterli yorum satırları içerilmiştir.

retVal : İşlev ya da SP’nin dönüş değeri, genel olarak işlem burada sonlanır, istisnaları vardır. Bu değer kullanıcı tarafında yakalanack ve kullanıcıya gerekli ileti gösterilecektir.

BÜTÇE ALGORİTMASI

- CS Listeden ibutce kalemi seç (list.row.click())
  + form veilerini set et
    + VT butce silinebilr mi                        SP: butce_silinebilirMi
      + iptal edilmemis alt islemi var mı?
+ CS silinebilr mi cevabini degerlendir:
  + silinebilirse btnSil visible
  + degilse btnSil invisible
  + btnSil.click() [ prog.butceSil() ]
    + VT sil islemini bsalat                        SP: butce_Sil
      + iptal edilmemis islemi yoksa
***   + butce_silinebilirMi                        SP: butce_silinebilirMi
        + iptal edilmis alt islemi varsa
***       + alt islemlerin iptal edilmis harcamalari varsa
              + iptal edilmis harcamalari sil
              + iptal edilmis islemleri sil
              + butce kalemini sil                  retVal	1
  + CS sil basarili ise
    + list.silRow()
      + data arr dan kayit arr i cikar
      + tablodan sil (table.delteRow(idx))
      + liste.secRow = null
+ CS kaydet
  + genel kontrol
    + odenek negatif degilse
    + kapsam belirtilmisse
    + butce yili cari yil ise
  + yeni kayit kontrolü
    + kod hiearchi sinde en alt seviyedense
  + kayit update kontrolü
    + odenek, dogrudan ve ihale blokeleri toplamindan kucuk degilse
    + butce yili, kodu degistirilemez (form.design hallediliyor)
  + kontroller ok sa
    + VT KAYİT BASLAT                                   SP: butce_kayit
      + genel kontroller
        + odenek negatif ise                            retVal -5
          + log tut                                     SP: logtut_butce
      + insert kontrolleri
***     + butce kodu kaydi yok ise                     retVal -2
  + CS kayit basarili ise
    + yeni kayitsa:
      + list data arr in basina data ekle
      + tablonun basina row ekle ve datayi manipüle et
      + row u sec [ list.row.click() ] 
      + menu disayn: set düzenle mod
    + degilse
      + data arr da kayit data yi bul ve guncelle
      + tablo satirini yenile (guncellenmis verileri goster)
      + satiri hesapla (bazı alanlar dinamik olusur)
      + tablo colon toplamlarini hesapla ve goster
  + from datayi guncelle

İŞLEM ALGORİTMASI

+ CS Listeden işlem seç (list.row.click())  
   + form veilerini set et
   + işlem KAYDET
      + kontroller:
        + işlem en  alt butce kaleminden yapılır [ butce tarafinda garanti ediliyor ]
        + işlem tarih yili butce yilindan once olamaz, sonraki yilin 3. ayindan büyük olamaz
        + blokeler toplami butce odenegini gecemez
        + şube/birim belirtilmeli
        + baslangic bloke belirtilmemisse blokeye esitle
        + alim yontemi belirtilmeli
        + dogrudan alim ise harca checkbox visible
        + degilse harca checkbox invisible
        + yeni kayit ise
           + set  basbloke = bloke
        + islem yeni kayit degil
           + hrcanan > 0 ise basbloke degismez: set basbloke = bloke
           + iptal checked ise iptal alanları visible
              - gecerli tarih girilmelidir
              - tarih işlem tarihinden önce ve sonraki yılın 3. ayını geçemez
      - kontroller ok se
        - VT Kayit islemine basla                                   SP: butce_kayitIslem
          + bloke < 0 ise                                           retVal  = -9
          + kayit update ise
            + automatic harcama updatette gorulmnez
***         + kayit iptal isteginde alt kaydi varsa                    retVal = -4
            + gerceklesmis harcama kaydı varsa (iptal ya da degil) 
              set basBlokesi = bloke
***         + bloke iptal edilmemis harcamalar toplamindan kucukse    retVal = -5
***         + kapsamdaki iptal edilmemis doğrudan blokeler  toplami kapsamdaki 
              ödenekler toplaminin %10'u gecemez                      retVal = -6
            + blokeler toplami butce odenegini geciyorsa              retVal = -7
***         + işlem iptal ise                                         retVal = -10
            + kayit UPDATE                                            retVal = kayitID
          + yeni kayit ise
            + iptal kaydi girilemez (defautl olarak iptal gorulmez)
            + kayıt INSERT                                            retVal = kayitID
            + autoHarca true ve alim ihale istisna ve retVal  > 0 ise
              + harcama kaydet                                        SP: butce_kayitHarca
              + kayit gerceklesmemisse                                retVal = -8
            + retVal > 0 ise (kayıt gerceklesmisse)
              + iptal edilmemis islem harcamalar/blokeler 
                toplamini butceye guncelle                            SP: butce_guncelleBlokeHarcanan
              + log tut                                               SP: logtut_butce_islem
   + CS basarili insert/update
     + blokeler ve harcamalar toplamini butce data ve tablosuna guncelle
     + automatic harca true ve yeni kayıt ise
     + islem ve bütçe tablolarına yansımaları gerçekleştir
   + basarisiz ise kullanici mesaji ilet

HARCAMA ALGORİTMASI

+ CS Listeden iharcama seç (list.row.click()) 
  + form veilerini set et
  + işlem KAYDET
    - kontroller
      - harcama tarihi islem tarihinden once ve sonraki yılın 3. ayından sonra olamaz
      - iptal tarihi harcama tarihinden once olamaz
      - 0 ve < 0 harcama kaydi olusturulamaz
      - harcamalar toplami islem blokesinden buyuk olamaz
    - kontroller tamam ise
      - VT kayit islemine basla:                            SP: butce_kayitHarca
***     + harcamalar toplamı blokeyi geciyorsa              retVal -5
        + 0 ve < 0 harcama kaydi girilemez                  retVal -6
        + kayit INSERT                                      retVal = kayitID
          + kayitID > 0 ise
            + log tut                                       SP: logtut_butce_harcama
            + harcamalar toplamini islem tablosuna guncelle butce_guncelleBlokeHarcanan
              + harcama isleminin harcamalar toplamini alim yontemine gore butce tablosuna guncelle	                            SP: butce_guncelleHarcanan
  + CS basarili harcama insert/update :  
    + harcama miktarındaki degisimi
	  + islem data, tablo secili row ve toplam rovuna eklenir	(ilgili diğer alanlar yeniden hesaplanır)
	  + butce data, tablo secili row ve toplam rowuna eklenir (ilgili diğer alanlar yeniden hesaplanır)
  + bsaraisiz ise kullanıcyı bilgilendir
                
 
***	Kritik kısımlar: bu kısımlar kullanıcı tarafında da kontrol edilebilirken aynı zamanda VT’de 
kontrol edilerek çok kullanıcıdan kaynaklı olası hatalar engellenmesi amaçlanmıştır.  

NOT: Analiz ve tasarım aşamalarında belirtilmemiş olsa da uygulamanın kullanıcı giriş modülü ve sistem yöneticisine ait kullanım örneği için geliştirme yapılmayacaktır. Kullanıcı giriş modülü var olan bir yapı kullanılıyor, sistem yöneticisine ait kullanım örneğinde belirtilen ihtiyaçların geliştirilmesi buradaki sürede tamamlanamayacağı için plan dışında tutulmuş, sistem uzmanı tarafından doğrudan vt yönetim araçları ile sağlanması uygun görülmüştür.

Veri Tabanı Yapısı

VT

VT Oluşturma Script Dosyasını İndir


VT Sabit Tanımlamalar Script Dosyasını İndir

Kullanıcı Tarafı Yapılar

Aşağıda Kullanıcı tarafında yer alan ana yapılar açıklanmaktadır. Söz konusu yapılar javascript ve DOM (Docüment Object Model) etkileşimi ile çalışmakta ve kodlamayı oldukça kısaltarak, esnek, yönetilebilir ve performansa dayalı bir sistem kurulumunu mümkün kılmaktadır.

Form Class: Class olarak tasarlanmış olan bu yapının, çalışma zamanında 3 örneği (Bütçe-işlem-harcama)oluşturulmaktadır. Aşağıda belirtilecek olan list ve menü yapıları ile ilişkide olcaktır.

List Class: Class olarak tasarlanmış olan bu yapının, çalışma zamanında 3 örneği (Bütçe-işlem-harcama)oluşturulmaktadır. her form örneği oluşurken bu form aynı zamanda bir liste örneği oluşturur ve sonraki süreçte form ve liste daima birbirlerine bağlı klaırlar. Form aktive olurken liste de aktive olur, inaktive olurken listede inaktive olur.

Menü Static Class: Static Class olarak tasarlanmış bu yapı çalışma zamanında static olarak çalışır. Form aktive olurken kendisine kaydolur. Bu kaydolma esnasında formun son durum özelliklerini edinir ve disaynı ayarlar. Bu yapının asıl amacı her form için gerekli menü opsiyonları ile etkileişim kurup, gerekli işlev ile bağlantı kurmaktır. (yeni, kaydet, vazgeç, düzenle, listele, yazdır vs.)

Asenkron Istek Yapısı: Kullanıcı ile sunucu arasında gerçekleşecek istek/cevapları yönetmektir. Henüz yeterince sıkılaştırılmamış olan bu yapı ayrıca üzerinde çalışılması gerekmektedir.

Bahsedilen Yapıları içeren javaScript dosyasınıindir

Sunuc Tarafı Yapılar

Bütçe Class Aşağıda verilen "ButceKalem", "ButceIslem", "ButceHarcama" class'larına ortak zemin oluşturmaktadır. (Abstract olarak tasarlanmadı/olabilirdi.)

BütçeKalem Class "Butce" class'ında inherit edilen bu class ile gerekli kaydet sil guncelle gibi işlevler yerine getirilmekte, vegerekli dönüş deeğrleri sağlanmaktadır.

BütçeIslem Class "Butce" class'ında inherit edilen bu class ile gerekli kaydet sil guncelle gibi işlevler yerine getirilmekte, vegerekli dönüş deeğrleri sağlanmaktadır.

BütçeHarcama "Butce" class'ında inherit edilen bu class ile gerekli kaydet sil guncelle gibi işlevler yerine getirilmekte, vegerekli dönüş deeğrleri sağlanmaktadır.

Bahsedilen Yapıları içeren C# dosyasınıindir


Diğer Classlar Genel ihtiyaç duuyulan fonksiyonlar içerilmiştir.

Classları içeren C# dosyalarını indir genel fonksiyonlartarih fonksiyonları HTML fonksiyonları


Data Class VT ile bütçe class ları aarsında yer alarak gerekli VT operasyonları yönetilmektedir.

Data classını içeren C# dosyasınıindir



KULLANIM KLAVUZU

Detaylı kullanıcı klavuzunu indir


NOT: Belgede giriş modülü ve sistem yönetimi ele alınmamıştır. Giriş Modülü bu proje öncesinde hazır olduğundan ve bu proje daha önce yapılmış bulunana modüllerin kapsamına dahil edildiğinden proje kapsamı dışında tutuldu. Sistem yönetimi için sürenin yeterli olmayacağı düşünüldüğünden kapsam dışı tutulmuştur. Sistem yöneticisi gerekl işlem leri VT yönetim araçları ile sağlayabilecektir.






PROJE TEST BELGESİ


YAZILIM GELİŞTİRME PROJESİ

BİLGİ TEKNOLOJİLERİ SERTİFİKA PROGRAMI

İDEA: ODTÜ SANAL KAMPÜSÜ

















20.07.2012









ÖZ


Bu belgede projenin test işlemlerine dair yapılan işlemler açıklamaları ile raporlandırılmıştır. Test takvimi, test edilen modüller ve tarifi ve test sonuçları ele alınmıştır.

TEST PLANI


Test Takvimi : Proje test takvimi aşağıda verilmiştir:


7-8 Temmuz 2012Test Planı
8-10 Temmuz 2012Test Uygulamaları ve Verilerinin Toplanması
10-11 Temmuz 2012Test Sonuçlarının Değerlendirilmesi ve Raporlanması

Test Edilecek Modül Gruplarının (Prosedürünün) Tarifi: Kuruma ayrılan paranın tanımlı bütçe kodlarına göre paylaşımını sağlamak, paylaşım üzerinden işlemleri oluşturmak ve işlemler üzerinden ödemeleri gerçekleştirmek müşteri isterlerinin omurgasını oluşturmaktadır. Bu omurga üzerinden paranın paylaşımı, işlemlere ayrılan para ve bu para üzerinden ödemelerin kaydı sağlanacak ve görüntülenebilecektir.

  • Silme Modül eksikliği.
  • Seçilen İşlem Satırının formdaki text box’larda otomatik olarak yerleştirilerek aktif olması.
  • Tarayıcı da çözünürlüğe göre boyutlandırmadaki eksiklik giderildi.
  • İşlem yapmak için seçilen satırın tabloda aktif olması ile aktif olan butonlara açıklamalar yazıldı.
  • Satın alma sayfasında yapılan ekleme, çıkarma ve de güncellemenin bütçe sayfasına doğru yansıyıp yansımadığı test edildi.
  • Harcama sayfasında yapılan ekleme, çıkarma ve de güncellemenin satın alma formuna ve bütçe sayfasına doğru yansıyıp yansımadığı test edildi.

GERÇEK TEST SONUÇLARI


  • Uygulama genel olarak kayıt ekleme modülüne sahipken, kullanıcıların verileri düzeltmenin yanında silme işlemi yapabilmesi için silme modülü eksikliği gidermiştir.

     

    temizle buton

     

  • Mevcut tablolarda oluşturulan kayıtların düzeltilmesi yada değiştirilmesi kullanıcı tarafından gerçekleştirilebilmesi için seçilen kaydın otomatik olarak forma aktarılması gerçekleştirildi. Bu sayede seçilen kalemde işlem yapılması kolaylaştı.

     

    text box
  •  

  • Farklı çözünürlükler için ekran görüntüsü optimize edildi.

     

    bozuk görsel

     

    Tablodaki hücrelerin ilgili kriterlerle aynı hizada olmadan önceki hali

     

    duzeltilmiş görsel

    Tablodaki eksikliğin giderilmesinden sonraki hali

     

  • Açıklamaları eklenen bazı bileşenlerin ekran görüntüleri aşağıdadır.

     

    yeni kayıt butonu

     

    temizle buton

     

    çıkış buton

     

  • Satın alma işlemindeki tablodaki veriler:

     

    satın alma

    Bütçe Tablosundaki veriler:

    secili butce kalemi

    Seçili olan bütçe kaleminin satın alma işlemi tablosundaki yapılan değişikliğin bütçe tablosunda da aynen yansıdığını görüyoruz.

     

  • Harcama tablosundaki veriler:

     

    harcama

    Satın Alma Tablosundaki veriler:

    satın alma

     

    Harcama tablosundaki seçilen kalemde yapılan değişikliğin satın alma tablosunda da aynı değerler olarak değiştiğini görüyoruz.

    Yapılan testlerde bu ve benzeri testler yapılmış olup, hatalar, eksikler giderilmiştir. Kurumda aktif olarak kullanılmaya devam edildiğinden test ve eksiklerin görülmesi aktif olarak kullanıcılar tarafından yapılmakta olup, test aşaması bir nevi halen devam etmektedir.

KAYNAKÇA







Sunum Yapıldı
Güncelleme : 20.07.2012Sayfamız Chrome ya da Firefox tarayıcılarında daha düzgün görüntülenmektedir !
Kapat