SlideShare una empresa de Scribd logo
1 de 102
TELİF HAKKI


       Copyright © 2010 Kocaeli Üniversitesi
       Bu projenin tüm hakları Kocaeli Üniversitesi Bilgisayar
       Mühendisliği Bölümüne aittir. Her hakkı saklıdır. Hiçbir
       bölümü ve paragrafı kısmen veya tamamen ya da özet halinde,
       fotokopi veya başka herhangi bir şekilde çoğaltılamaz,
       dağıtılamaz.




ÖZET



                                    2
Online Okul Web Otomasyon Sistemi; ilköğretim, Lise, Yüksekokul ve Özel eğitim
kurumları için hazırlanmış bir otomasyon sistemidir.

Bu sistem ile okullara ait her türlü bilgi, duyuru, doküman, resim gibi içerikleri
online bir şekilde web sitesinde yayınlanabilmektedir.
Sistem sadece web üzerinden yayınlanan içeriklerden öte, öğrenci bilgi sistemini de
içermektedir. Bu sistem ile öğrenci ve veliler not, devamsızlık, öğretmen görüşleri ve
ödevlerini internet üzerinden takip edebilirler.

Öğretmenler internet erişimi olan her bilgisayardan öğrenci notları, ödevleri ve
öğrenciler hakkındaki görüşleri sisteme girebilirler. Ayrıca öğretmenlerin genel
ihtiyaçları arasında olan sınıf listeleri, öğrenci not durumu, devamsızlıklık durumu
gibi listelere sistem üzerinden ulaşabilirler.

Sistemin en büyük amacı öğrenci-Veli-Öğretmen-İdareci işbirliğini arttırmak ve
bunun sonucu olarak eğitimde kaliteyi yükseltmeyi hedeflemektedir. Sistemin kolay
kullanılması, web üzerinden güncellenebilmesi, sistemi kullanmak için ekstra
internet bilgisine gerek kalmaması öğrenci ,veli ve öğretmenlerin işlemlerini
kolaylaştırması büyük önem taşımaktadır.




SUMMARY



                                          3
School web otomation system is prepared for primary schools, high school and
universities to make easier to share and get informations easily.

The users of this system can easily access all kinds of informations, advirtisements,
documents, pictures,etc. which according themselves.

The system not only include the web contentns but also the student information
system. By this system students can easily access their educational information,
marks, teacher’s thoughts about themselves.

The teachers can save the marks about the student’s exams, homeworks, etc. easily if
they have an internet connection. In addition they can see the lessons which they
have. Also they can see the lack of continuities about the students.

The most important purpose of this system is to make beter the teacher-parents and
manager relationship and make higher the level of the education quality. It is
important for the users that the system can be used easily and make easy to do all the
processes without any knowladge about using the internet, so everyone can use this
systen practically.




ÖNSÖZ



                                          4
Sunmuş olduğumuz proje online bir Okul Otomasyon sistemidir. Sistem okullara ait
her türlü bilgi, doküman, duyuru gibi bilgilerin paylaşılmasına, öğretmenlerin, ilgili
öğrencilerinin notlarını kolay bir şekilde sisteme kaydedebilmesi, yönetebilmesi ve
değerlendirebilmesine,    öğrencilere   ait    bilgilerin   kolayca   erişilebilmesine,
öğrencilerin kendilerine ait not listesi, devamsızlık listesi gibi bir takım bilgilere
ulaşabilmesine olanak sağlamaktadır. Ayrıca idareciler de kendileri ile ilgili
sorumlulukları dahilindeki alanlara veri girme, güncelleme işlemlerini kolayca
gerçekleştirebilmektedir. Bu proje ile öğrenci-Veli-Öğretmen-İdareci işbirliğini
arttırmak ve bunun sonucu olarak eğitimde kaliteyi yükseltmeyi hedeflemiştir.


                                              Saygılarımızla,


                                              Enes ÇAĞLAR - Şeyda YILMAZ




                                          5
İÇİNDEKİLER

ÖZET..............................................................................................................................................2
SUMMARY.....................................................................................................................................3
ÖNSÖZ...........................................................................................................................................4
ŞEKİLLER DİZİNİ..............................................................................................................................9
TABLOLAR DİZİNİ.........................................................................................................................11
    GİRİŞ................................................................................................................................................12
BÖLÜM II.....................................................................................................................................14
    2.1. PROJEDE KULLANILAN TEKNOLOJİLER......................................................................................14
       2.1.1. ASP.NET Ve .NET Framework............................................................................................14
             2.1.1.1. .NET Framework ......................................................................................................................14
             2.1.1.2. Server Kontrol ..........................................................................................................................15
             2.1.1.3. Web.Config .............................................................................................................................15
             2.1.1.4. State Management...................................................................................................................17
             2.1.1.5. Master Page..............................................................................................................................18
             2.1.1.6. Web User Control ....................................................................................................................23
                2.1.1.6.1 Özellikleri ..........................................................................................................................23
        2.1.2. SQL ve MSSQL.....................................................................................................................24
             2.1.2.1. SQL Veri Tanımlama Deyimleri..................................................................................................25
                2.1.2.1.1. ALTER TABLE tablo_adı.....................................................................................................25
                2.1.2.1.2. DROP TABLE tablo_adı......................................................................................................25
                2.1.2.1.3. TRUNCATE TABLE tablo_adı..............................................................................................25
                2.1.2.1.4. CREATE VIEW görüş_adı...................................................................................................25
                2.1.2.1.5. DROP VIEW görüş_adı......................................................................................................25
                2.1.2.1.6. CREATE INDEX indeks_adı.................................................................................................25
                2.1.2.1.7. DROP INDEX indeks_adı....................................................................................................25
                2.1.2.1.8. SELECT deyimi...................................................................................................................26
                2.1.2.1.9. UPDATE deyimi.................................................................................................................26
                2.1.2.1.10. INSERT deyimi.................................................................................................................26
                2.1.2.1.11. DELETE deyimi................................................................................................................26
             2.1.2.2. SQL Deyimleri............................................................................................................................26
             2.1.2.3. DML (Data Manipulation Language) Deyimleri,........................................................................27
                2.1.2.3.1. Select Deyimi....................................................................................................................28
                2.1.2.3.2. Aritmetik İşlemler.............................................................................................................29
                2.1.2.3.3.Verileri Sıralamak...............................................................................................................29
                2.1.2.3.4. Gruplandırma İşlemleri.....................................................................................................30
                2.1.2.3.5. Insert Deyimi....................................................................................................................30
                2.1.2.3.6. Update Deyimi..................................................................................................................30
                2.1.2.3.7. Delete Deyimi..................................................................................................................31
    2.2. KODLAMA STANDARTLARI....................................................................................................................31
       2.2.1. Tanımlar ve Kısaltmalar.....................................................................................................31
             2.2.1.1. PascalCase.................................................................................................................................31
             2.2.1.2. CamelCase................................................................................................................................32
             2.2.1.3. UpperCase................................................................................................................................32
             2.2.1.4. LowerCase.................................................................................................................................32
        2.2.2. C# İsimlendirme Standartları..............................................................................................32
             2.2.2.1. Değişken Tanımlama Standartları.............................................................................................33
             2.2.2.2. Genel Hata Yönetimi.................................................................................................................33
             2.2.2.3. Programlama Pratikleri.............................................................................................................34
             2.2.2.4. Veritabanı Nesne Adlandırma Kuralları.....................................................................................34
             2.2.2.5. Tabloların İsimlendirilmesi........................................................................................................35
             2.2.2.6. Saklı Prosedürlerin İsimlendirilmesi..........................................................................................36
             2.2.2.7. Tetikleyicilerin (Trigger) İsimlendirilmesi..................................................................................37
             2.2.2.8. Birincil Anahtarlar (Primary Keys).............................................................................................38
             2.2.2.9. Sekanslar(Sequences)...............................................................................................................38




                                                                               6
2.2.3. PROJE İÇERİĞİNİN ANLATILMASI........................................................................................38
   2.2.3.1.UYGULAMA KISMI......................................................................................................................38
      2.2.3.1.1. Öğrenci ve Veli Kısmı........................................................................................................44
          2.2.3.1.1.1. Öğrenci Bilgi Paneli Özellik ve İşlevleri......................................................................44
             2.2.3.1.1.1.1 Öğrenci Not Görüntüleme.................................................................................44
             2.2.3.1.1.1.2 Devamsızlık Bilgileri...........................................................................................45
             2.2.3.1.1.1.3 Ödev Görüntüleme............................................................................................46
             2.2.3.1.1.1.4 Öğretmen Görüşleri Görüntüleme....................................................................47
             2.2.3.1.1.1.4 Ders Listesi Görüntüleme..................................................................................47
             2.2.3.1.1.1.5 Şifre Güncelleme...............................................................................................47
          2.2.3.1.1.2 Editör Bölümü............................................................................................................48
             2.2.3.1.1.2.1 Editör Ana Menü...............................................................................................48
             2.2.3.1.1.2.2 Duyurular..........................................................................................................48
             2.2.3.1.1.2.3 Personel Bilgisi..................................................................................................49
             2.2.3.1.1.2.4 Resim Galerisi ...................................................................................................51
             2.2.3.1.1.2.5 Ziyaretçi Defteri.................................................................................................52
             2.2.3.1.1.2.6 Makaleler..........................................................................................................53
             2.2.3.1.1.2.7. Etkinlikler .........................................................................................................54
             2.2.3.1.1.2.8. Başarılar...........................................................................................................55
             2.2.3.1.1.2.9 Okul Ziyaretçi Takibi .........................................................................................56
          2.2.3.1.1.3 Öğretmen Bölümü.....................................................................................................57
             2.2.3.1.1.3.1. Öğretmen Girişi................................................................................................57
             2.2.3.1.1.3.2. Öğretmen Anasayfa..........................................................................................58
             2.2.3.1.1.3.3. Ödev Girişi .......................................................................................................58
             2.2.3.1.1.3.4. Öğrenci Görüş Bildirme ...................................................................................60
             2.2.3.1.1.3.5. Okul Ziyaretçi Bilgileri.......................................................................................61
             2.2.3.1.1.3.6. Şifre Değiştirme ...............................................................................................62
             2.2.3.1.1.3.7. Rehberlik Servisleri...........................................................................................62
             2.2.3.1.1.3.8. Öğrenci Not Girişi ............................................................................................64
             2.2.3.1.1.3.9. Bilgi Listeleri.....................................................................................................65
                 2.2.3.1.1.3.9.1. Öğrenci Durum Dökümanı .......................................................................65
                 2.2.3.1.1.3.9.2. Sınıf Listeleri.............................................................................................66
                 2.2.3.1.1.3.9.3. Toplu Sınıf Not Listesi...............................................................................67
                 2.2.3.1.1.3.9.4. Toplu Sınıf Devamsızlık Listesi..................................................................69
                 2.2.3.1.1.3.9.5. Öğretmen Listesi......................................................................................70
          2.2.3.1.1.4. Yönetici Bölümü.......................................................................................................70

             2.2.3.1.1.4.1. Web Sitesi Bilgi Yönetim Bölümleri ve İşleveri..................................................70
             2.2.3.1.1.4.2 Yönetici Giriş.....................................................................................................71
             2.2.3.1.1.4.3. Bölüm Bilgileri.................................................................................................72
             2.2.3.1.1.4.4. Tarihçe Bilgisi...................................................................................................73
             2.2.3.1.1.4.5. Logo Yönetimi...................................................................................................74
             2.2.3.1.1.4.6. Site Ayarları......................................................................................................74
             2.2.3.1.1.4.7. Mezun Bilgileri..................................................................................................75
             2.2.3.1.1.4.8. Akademik Takvim.............................................................................................76
             2.2.3.1.1.4.9. Şifre Yenileme..................................................................................................77
             2.2.3.1.1.4.10. Editör Ekleme.................................................................................................77
             2.2.3.1.1.4.11. Link Yönetimi..................................................................................................79
   2.2.3.2. VERİTABANI KISMI....................................................................................................................79
      2.2.3.2.1. Saklı Yordamlar - Stored Procedures.................................................................................80
          2.2.3.2.1.1. Sp_DeletetblAnketler...............................................................................................80
          2.2.3.2.1.2. Sp_DeletetblBolumler..............................................................................................80
          2.2.3.2.1.3. Sp_DeletetblDersler.................................................................................................80
          2.2.3.2.1.4. Sp_DeletetblDevamsizlikBilgileri..............................................................................80
          2.2.3.2.1.5. Sp_DeletetblOdevler................................................................................................81
          2.2.3.2.1.6. Sp_DeletetblOgrenciler............................................................................................81
          2.2.3.2.1.7. Sp_DeletetblSiniflar..................................................................................................81
          2.2.3.2.1.8. Sp_GetAnketIds........................................................................................................81
          2.2.3.2.1.9. Sp_GetDersAdi.........................................................................................................81
          2.2.3.2.1.10. Sp_GetOgretmenList..............................................................................................81
          2.2.3.2.1.11. Sp_GetOgrIdByOgrNo.............................................................................................82
          2.2.3.2.1.12. Sp_GetSinifIdbyName.............................................................................................82




                                                                  7
2.2.3.2.1.13. Sp_GetSiniftakiOgrenciler.......................................................................................82
                   2.2.3.2.1.14. Sp_GettblAnketler..................................................................................................82
                   2.2.3.2.1.15. Sp_GettblBolumler.................................................................................................82
                   2.2.3.2.1.16. Sp_GettbBolumlerList.............................................................................................83
                   2.2.3.2.1.17. Sp_GettblDersler....................................................................................................83
                   2.2.3.2.1.18. Sp_GettblDerslerList...............................................................................................83
                   2.2.3.2.1.19. Sp_GettblDevamsizlikBilgileri.................................................................................83
                   2.2.3.2.1.20. Sp_GettblDevamsizlikBilgileriList............................................................................83
                   2.2.3.2.1.21. Sp_GettblOdevler...................................................................................................83
                   2.2.3.2.1.22. Sp_GettblOdevlerList..............................................................................................83
                   2.2.3.2.1.24. Sp_GettblOgrencilerList..........................................................................................84
                   2.2.3.2.1.25. Sp_GettblSınıflar.....................................................................................................84
                   2.2.3.2.1.26. Sp_GettblSınıflarList...............................................................................................84
                   2.2.3.2.1.27. Sp_GetTopluNotList................................................................................................84
                   2.2.3.2.1.28. Sp_GetTopluOgrenciBilgileri...................................................................................85
                   2.2.3.2.1.29. Sp_GetZiyaretciBilgileri...........................................................................................85
                   2.2.3.2.1.30. Sp_InserttblAnketler...............................................................................................85
                   2.2.3.2.1.31. Sp_InserttblBolumler..............................................................................................85
                   2.2.3.2.1.1. Sp_InserttblDersler...................................................................................................85
                   2.2.3.2.1.1. Sp_InserttblDevamsizlikBilgileri................................................................................85
                   2.2.3.2.1.32. Sp_InserttblOdevler................................................................................................86
                   2.2.3.2.1.33. Sp_InserttblOgrenciler............................................................................................86
                   2.2.3.2.1.34. Sp_InserttblRehberlikFormlari................................................................................86
                   2.2.3.2.1.35. Sp_InserttblSiniflar.................................................................................................86
                   2.2.3.2.1.36. Sp_InsertOgretmenYorumu....................................................................................86
                   2.2.3.2.1.37. Sp_selectAnketCevaplari........................................................................................86
                   2.2.3.2.1.38. Sp_selectAnketSorulari...........................................................................................87
                   2.2.3.2.1.39. Sp_selectOgretmenDersler.....................................................................................87
                   2.2.3.2.1.40. Sp_UpdatetblAnketler............................................................................................87
                   2.2.3.2.1.42. Sp_UpdatetblDersler..............................................................................................87
                   2.2.3.2.1.43. Sp_UpdatetblDevamsizlikBilgileri...........................................................................87
                   2.2.3.2.1.44. Sp_UpdatetblOgrenciler.........................................................................................87
                   2.2.3.2.1.45. Sp_UpdatetblSiniflar...............................................................................................87
                2.2.3.2.2. Tablolar.............................................................................................................................88
                   2.2.3.2.2.1. Anketler Tablosu.......................................................................................................88
                   2.2.3.2.2.2. Başarılar Tablosu......................................................................................................88
                   2.2.3.2.2.3. Bölümler Tablosu .....................................................................................................89
                   2.2.3.2.2.4. Dersler Tablosu.........................................................................................................89
                   2.2.3.2.2.5. Devamsızlık Bilgileri Tablosu.....................................................................................89
                   2.2.3.2.2.6. Duyurular Tablosu....................................................................................................90
                   2.2.3.2.2.7. Editörler Tablosu......................................................................................................90
                   2.2.3.2.2.8. Etkinlikler Tablosu....................................................................................................91
                   2.2.3.2.2.9. Görüşler Tablosu......................................................................................................91
                   2.2.3.2.2.10. Kullanıcı Bilgileri Tablosu........................................................................................92
                   2.2.3.2.2.11. Makaleler Tablosu..................................................................................................92
                   2.2.3.2.2.12. Notlar Tablosu........................................................................................................93
                   2.2.3.2.2.13. Ödevler Tablosu......................................................................................................93
                   2.2.3.2.2.14. Öğrenciler Tablosu..................................................................................................94
                   2.2.3.2.2.15. Öğretmenler Tablosu..............................................................................................94
                   2.2.3.2.2.16. Öğretmen Sınıf ve Dersler Tablosu.........................................................................94
                   2.2.3.2.2.17. Öğretmen Yorumları Tablosu..................................................................................95
                   2.2.3.2.2.18. Okul Ziyaretçi Bilgileri Tablosu................................................................................95
                   2.2.3.2.2.19. Personel Tablosu....................................................................................................96
                   2.2.3.2.2.20. Rehberlik Formları Tablosu.....................................................................................96
                   2.2.3.2.2.21. Resim Galerisi Tablosu............................................................................................97
                   2.2.3.2.2.22. Sınıflar Tablosu.......................................................................................................97
                   2.2.3.2.2.23. Site Ayarları Tablosu...............................................................................................98
                   2.2.3.2.2.24. Ziyaretçi Defteri......................................................................................................98

SONUÇ VE ÖNERİLER.................................................................................................................100
KAYNAKLAR...............................................................................................................................101




                                                                              8
ŞEKİLLER DİZİNİ


Şekil 2.1.    State Management olmadığı durum
Şekil 2.2.    State management olduğu durum
Şekil 2.3.    Master page oluşturma
Şekil 2.4.    Master Page oluşturma
Şekil 2.5.    Saklı yordamların avantajları
Şekil 2.6.    Projeye ait solution explorer görüntüsü
Şekil 2.7.    Tüm kullanıcıların giriş yaptığı anasayfa
Şekil 2.8.    Öğrenci Ana Menü
Şekil 2.9.    Öğrenci Not Götüntüleme
Şekil 2.10.   Devamsızlık Bilgileri
Şekil 2.11.   Ödev Görüntüleme
Şekil 2.12.   Öğretmen Yorumları
Şekil 2.13.   Ders Listesi
Şekil 2.14.   Öğrenci Şifre Güncelleme
Şekil 2.15.   Editör Ana Menü
Şekil 2.16.   Duyurular
Şekil 2.17.   Yeni Duyuru Ekleme
Şekil 2.18.   Personel Tablosu
Şekil 2.19.   Personel Tablosunda güncelleme işlemi
Şekil 2.20.   Yeni Personel Ekleme
Şekil 2.21.   Resimler
Şekil 2.22.   Yeni Resim Ekleme
Şekil 2.23.   Makaleler
Şekil 2.24.   Yeni Makale Ekleme
Şekil 2.25.   Etkinlikler
Şekil 2.26.   Yeni Etkinlik Ekleme
Şekil 2.27.   Başarılar
Şekil 2.28.   Yeni Başarı Ekleme
Şekil 2.29.   Okul Ziyaretçi Bilgileri
Şekil 2.30.   Yeni Ziyaretçi Ekleme
Şekil 2.31.   Öğretmen Giriş Ekran Ekranı
Şekil 2.32.   Öğretmen Ana Menü
Şekil 2.33.   Öğretmen Ödev Görüntüleme
Şekil 2.34.   Ödev Ekleme




                                         9
Şekil 2.35.   Öğrenci Görüş Bildirme 1. Aşaması
Şekil 2.36.   Görüş Bildirme Ekranı
Şekil 2.37.   Okul Ziyaretçi Bilgileri
Şekil 2.38.   Şifre Güncelleme
Şekil 2.39.   Rehberlik Servisleri
Şekil 2.40.   Görüş Bildirme-Öğrenci Seçimi
Şekil 2.41.   Rehberlik Anketi
Şekil 2.42.   Öğrenci Not Giriş-Sınıf Seçimi
Şekil 2.43.   Öğrenci Not Giriş Ekranı
Şekil 2.44.   Yeni Not Giriş ve Güncelleme
Şekil 2.45.   Bilgi Listeleri
Şekil 2.46.   Öğrenci Durum Dökümanı Birinci Aşama
Şekil 2.47.   Öğrenci Durum Dökümanı
Şekil 2.48.   Öğretmenin Derslerine Girdiği Sınıfların Listesi
Şekil 2.49.   Sınıfa Ait Öğrenci Listesi
Şekil 2.50.   Toplu sınıf Not Listesi-Öğretmene ait sınıfların GörüntülenmesiŞekil
Şekil 2.51.   Toplu Sınıf Not Listesi- Dönem Seçimi
Şekil 2.52.   Toplu Sınıf Not Listesi
Şekil 2.53.   Toplu Sınıf Devamsızlık Listesi
Şekil 2.54.   Toplu Sınıf Devamsızlık Listesi
Şekil 2.55.   Öğretmen Listesi
Şekil 2.56.   Yönetici Girişi
Şekil 2.57.   Yönetici ana Menü
Şekil 2.58.   Yönetici Bölüm Ekleme
Şekil 2.59.   Tarihçe Bilgisi Ekleme
Şekil 2.60.   Logo Yönetimi
Şekil 2.61.   Site Ayarları
Şekil 2.62.   Mezun Arama
Şekil 2.63.   Akademik Takvim
Şekil 2.64.   Yeni Akademik Takvim Ekleme
Şekil 2.65.   Yönetici Şifre Değiştirme
Şekil 2.66.   Editör Yetki Alanları
Şekil 2.67.   Yeni Editor Ekleme
Şekil 2.68.   Link Yönetimi
Şekil 2.69.   Link Ekleme




                                        10
TABLOLAR DİZİNİ


Tablo 2.1.    tblAnketler Tablosu
Tablo 2.2.    tblBasarilar Tablosu
Tablo 2.3.    tblBolumler Tablosu
Tablo 2.4.    tblDersler Tablosu
Tablo 2.5.    Devamsizlik Bilgileri Tablosu
Tablo 2.6.    Duyurular Tablosu
Tablo 2.7.    Editorler Tablosu
Tablo 2.8.    Etkinlikler Tablosu
Tablo 2.9.    Gorusler Tablosu
Tablo 2.10.   Kullanici Bilgileri Tablosu
Tablo 2.11.   Makaleler Tablosu
Tablo 2.12.   Notlar Tablosu
Tablo 2.13.   Odevler Tablosu
Tablo 2.14.   Ogrenciler Tablosu
Tablo 2.15.   Ogretmenler Tablosu
Tablo 2.16.   Öğretmenin Sinif ve Dersleri Tablosu
Tablo 2.17.   OgretmenYorumlari Tablosu
Tablo 2.18.   OkulZiyaretci Tablosu
Tablo 2.19.   Personel Tablosu
Tablo 2.20.   Rehberlik Formlari Tablosu
Tablo 2.21.   Resim Galerisi Tablosu
Tablo 2.22.   Siniflar Tablosu
Tablo 2.23.   Site Ayarlari Tablosu
Tablo 2.24.   Ziyaretci Defteri Tablosu




                                       11
BÖLÜM I

GİRİŞ


Online Okul Web Otomasyon Sistemi; ilköğretim, Lise, Yüksekokul ve Özel eğitim
kurumları için hazırlanmış bir otomasyon sistemidir.


Bu sistem ile okulunuza ait her türlü bilgi, duyuru, doküman, resim gibi içerikleri
online bir şekilde web sitenizde yayınlayabilirsiniz.


Sistem sadece web üzerinden yayınlanan içeriklerden öte, öğrenci bilgi sistemini de
içermektedir. Bu sistem ile öğrenci ve veliler not, devamsızlık, öğretmen görüşleri ve
ödevlerini internet üzerinden takip edebilirler.


Okulda kullandığınız programa girdiğiniz bilgileri ayrıca web not sistemine
girmenize gerek kalmadan tüm bilgileri web sayfasına aktarabilirsiniz. Bu işlem
sayesinde büyük bir kolay sağlanmakta, bilgilerin teker teker girilerek işlemlerin
zorlaşması önlenmektedir.


Öğretmenler internet erişimi olan her bilgisayardan öğrenci notları, ödevleri ve
öğrenciler hakkındaki görüşleri sisteme girebilirler. Ayrıca öğretmenlerin genel
ihtiyaçları arasında olan sınıf listeleri, öğrenci not durumu, devamsızlıklık durumu
gibi listelere sistem üzerinden ulaşabilirler.


Sistemin en büyük amacı öğrenci-Veli-Öğretmen-İdareci işbirliğini arttırmak ve



                                            12
bunun sonucu olarak eğitimde kaliteyi yükseltmeyi hedeflemektedir. Sistemin kolay
kullanılması, web üzerinden güncellenebilmesi, sistemi kullanmak için ekstra
internet bilgisine gerek kalmaması öğrenci ,veli ve öğretmenlerin işlemlerini
kolaylaştırması büyük önem taşımaktadır.


Okul otomasyon sistemi .Net kullanılarak hazırlanmıştır. Veritabanı olarak MSSQL
veritabanı kullanılmıştır. ASP.NET ile üç katmanlı mimari ile hazırlanmış olup
veritabanı işlemleri için stored procedur ler kullanılarak güvenlik sağlanmıştır.
Proje dört ana kısımda incelenebilir. Bunlar öğrenci, öğretmen, editör ve idareci
kısımlarıdır. Her bir kullanıcının görevleri ayrıdır ve sistemden bu görevleri yerine
getirebilirler. Her bir kullanıcı kendilerine ait kullanıcı adı ve şifrelerini kullanarak
sisteme giriş yaparlar ve kendilerine ait alanları görebilirler. Aşağıda her bir kullanıcı
için kullanıcının yapabileceği işlevler belirtilmiştir.
Öğrenci ve Veliler internet üzerinden öğrencinin derslerine ait yazılı, sözlü ve ödev
notlarını görebilir, Öğrencinin yapmış olduğu devamsızlıklık durumunu sistemden
öğrenebilirler. Ayrıca ders öğretmenleri tarafından verilen ödevleri ve öğretmenlerin
öğrenci hakkındaki görüşlerini sistemden takip edebilirler.




                                            13
BÖLÜM II


PROJEDE KULLANILAN TEKNOLOJİLER


KODLAMA STANDARTLARI


PROJE İÇERİĞİNİN ANLATILMASI




2.1. PROJEDE KULLANILAN TEKNOLOJİLER




Proje ASP.NET ve C# yazılım dilleri kullanılarak yazılmıştır. Veritabanı sunucusu
olarak ise Microsoft SQL Server 2005 veritabanı sunucusu kullanılmıştır. ASP.NET
teknolojisi çok geniş bir alana yayılmaktadır. Aşağıda bu teknolojinin projede
kulanılan bazı kısımlarına değinilmektedir.


2.1.1. ASP.NET Ve .NET Framework



2.1.1.1. .NET Framework


.Net Framework, .Net platformunun bir dayanak noktasıdır. .Net Framework gücünü
içerisinde
barındırdığı yüzlerce sınıf (class) kütüphanesinden alır. .Net framework, sunucu




                                         14
tarafında çalışan bir yapı kurulabilmesini sağlar, olaya dayalı programlama modeli
sayesinde daha hızlı ve verimli uygulamalar geliştirebilmesini ve bunları istenilen
programlama diliyle yazabilmesini sağlar.


.Net’in destek verdiği diller
Visual         Basic C#                              Microsoft Microsoft Jscript Microsoft
.Net                                      Visual J# .NET       .Net             Visual C+
                                                                                +
 Pyhton               Oberon              Perl                 Haskell          APL
Cobol                 Scheme              Pascal               ML               Eiffel
Mercury              Ada                  SmallTalk            Caml             C


Çoklu dil desteğinin avantajları:
    •    Kod modülleri yeniden kullanılabilir. Bir kod modülü, bir dil içinde yazılıp
         farklı diller içinde kullanılabilir.
    •    Tüm diller için object kütüphanesi aynıdır ve aynı object modeli kullanılır.
    •    Eski dillerde yazılmış programlar güncellenebilir.
    •    .NET Framework içindeki tüm diller eşit performansa sahiptir. Bütün .NET
         tabanlı diller Microsoft Intermediate Language (MSIL)’a derlenir. Tüm MSIL
         ler native kod’a derlenir. Bu run-time’dır ve hepsi aynı derleyici kullanır.


2.1.1.2. Server Kontrol


Kullanıcı arabirimi veya diğer ilişkisel fonksiyonlar oluşturmak üzere Server
üzerinde çalışan
componentlere server kontrol denir. Server kontroller runat= “server” özelliğine
sahiptirler.


2.1.1.3. Web.Config


Asp.Net’in yeniliklerinden olan web.config dosyası aslında bir ayar dosyasıdır.
Ayarları bir XML formatında oluşturur ve ona göre kullanıcı işlemleri gerçekleştirilir.
Web.config dosyası Asp.Net çalışmalarında mutlaka olmalıdır. Web.Config olmadığı




                                                15
durumlarda daha üst bir seviyede
olan machine.config dosyası bulunmaktadır. Web.Config olmadığı durumlarda bu
dosyadan ayarlar okunur.


Bir web site oluşturulduğunda Soution Explorer'da web.config dosyasının
eklendiğini görülür. Web.Config dosyamızın birimleri aşağıdaki gibidir.


Birim Adı                                             Tanımı
<trace>                                               Asp.Net          trace     ayarlarının
                                                      yapılmasını sağlar.
<globalization>                                       Uygulada       herhangi     bir     hata
                                                      verdiğinde ne yapılması gerektiği
                                                      belirlenebilir. Hata sayfasına git,
                                                      mesaj iletisi ver gibi işlemler
                                                      yapılabilir.
<authentication>                                      Üyelik                   sistemlerinde
                                                      kullanıcıların            geçerliliğini
                                                      sağlamak için kullanılır.
<sessionState>                                        Session          state      ayarlarını
                                                      bulundurur.
<webservices>                                         Web servisleri ile ilgili ayarları
                                                      tutar.
<securityPolicy>                                      Kullunılabilecek               güvenlik
                                                      ayarlarını içerir.


Örnek verilecek olursa; KOURYS projesinde veritabanına bağlanmak için
tanımlanan        connection   string   nesnesi,   webconfig    dosyasında      şu      şekilde
tanımlanmıştır.


<appSettings>
    <add key="systemConnectionString" value="Data Source=SEYDA-PCSQLEXPRESS; Initial
Catalog=OkulOtomasyon; Integrated Security=sspi"></add>
 </appSettings>




                                             16
2.1.1.4. State Management


Web sayfalarında en çok kullanılan yöntemlerden biriside bir bilginin sayfalar arasın
geçiş yapmasıdır.
Bunun en iyi örneği üye girişi yapan bir kullanıcının web sitesinde dolaşabilmesidir.
Asp.Net teknolojisi sayfalar arasında kullanıcı bilgilerini tutmayı (state) sağlar. Bu
tarz uygulamalar windows uygulamalarda rahatlıkla yapılırken, her isteği sürekli
olarak server’a post edilmesinden dolayı Asp.Net uygulamalarından biraz farklıdır.
State management yok ise gönderilen bilgileri diğer sayfalar algılayamayacaktır.




                    Şekil 2.1. State Management olmadığı durum




                     Şekil 2.2. State management olduğu durum


Kullanıcı bilgilerini saklamak ve kullanmak için kullanabilecek yöntemler vardır.
Bunlar:




                                         17
•    View State
    •    Session State
    •    Application State




View State kontrolü kendisine verilen bilgiyi gizli bir alanda tutar. Bu bilgi hafızaya
Base64      formatında     bir    karakter     dizisi     olarak   yazılır   ve   her   geri
postalamada(postback) sunucuya getirilir. Ancak viewstate özelliği sunucu
kontrolleriyle sınırlıdır. Yüklenen bilgi ya sizin tarafınızdan oluşturlan bir custom
object ya da basit bir bilgi türü olmak zorundadır.


Session State kontrolü HttpSessionState sınıfını kullanır. Kullanıcıların bilgilerini
içeren kod bilgileri, 120 bit’lik Session ID’de tutulur. Bilgileri tespit etmek, Session
ID yardımı ile olur. Session tanımlama ASP.NET'te şu şekilde olabilir:


Session["OgrenciNo"] = reader["OgrenciAdi"].ToString();


Burada veritabanından dönen bir değer Session[“OgrenciNo”] isimli session a
atılmıştır. Diğer sayfalara geçiş yapıldığında bu nesne kullanılabilecektir.
Application State web uygulaması içindeki türm sayfalar için global bir sistemdir.
Ziyaretçi sayısını
tutulması Application üzerinden kullanılır.


2.1.1.5. Master Page


Internet siteleri göz önüne aldındığında, siteye ait sayfaların sıklıkla aynı şablonları
kullandığı görülmektedir. Özellike, header, footer, navigasyon ve advertisement
alanları, çoğunlukla siteye ait tüm sayfalarda aynı yerlerde kullanılır. Bu, siteye ait
sayfaların standart olarak aynı görünümde olmasını sağlamakla kalmaz, değişen
içeriğinde ortak bir şablon üzerinde durmasına imkan tanır.


Htmli in ilk zamanlarında, bu tarz işlemleri gerçekleştirmek için, ortak olan alanlar




                                              18
kopyalanarak diğer sayfalara yapıştırılırdı. Ya da, ana şablonu ihtiva eden bir
sayfadan diğer sayfalar "save as" metodu ile oluşturulur ve içerikleri değiştirilirdi.
Bu tekniğin en büyük dezavantajı, şablondaki herhangi bir değişikliğin diğer
sayfalara yansıtılması sırasında ortaya çıkmaktadır. Nitekim yüzlerce alt sayfaya aynı
şablon uygulanıyorsa, bu gerçekten büyük bir problemdir.


Bu soruna çözüm Asp ile gelmiştir. Asp, include takılarını kullanarak, sayfalarda
tekrar eden içeriklerin kolayca kullanılabilmesini ve değişikliklerin tüm sayfalarda
görünebilmesini sağlamıştır. Ancak elbetteki include takısınında bir takım sorunları
vardır. Bunlardan birisi, tasarım zamanında include takısının işaret ettiği içeriğin
görünememesidir. Dolayısıyla sayfanın bütünün nasıl göründüğünü inceleyebilmek
için mutlaka çalıştırmak gerekmektedir. Diğer yandan, include tekniği takılar üzerine
kurulu olduğundan, özellikle açık unutulan takılar sayfalarda istenmeyen Html
çıktılarının                 oluşmasına                 yol                     açmaktadır.


Asp.Net, bu tip ortak içeriklerin kullanılmasına daha güçlü ve etkin bir yaklaşımı
getirmiştir. User Controls (Kullanıcı tanımlı kontroller), normal aspx içeriğine sahip
olabilmekte ve .Net mimarisinin güçlü özelliklerini kullanabilmektedir. Her ne kadar
etkili bir teknik olsada, user controlö 'ler içinde tek bir sorun öne çıkmaktadır. Bu
sorun,    tasarım     zamanında       user    control       içeriğinin   görülememesidir.


Asp.Net 2.0, Master Page yaklaşımı ile, yukarıda bahsedilen dezavantajları ortadan
kaldırmayı başarmıştır. Bir Master Page, uygulandığı diğer aspx sayfalarının nasıl
görünmesi      gerektiğine   karar   veren   bir   şablon     gibidir. Ancak,     sağladığı
ContentPlaceHolder bileşeni sayesinde, Master Pagei             leri uygulayan diğer aspx
sayfalarının, istenilen içeriğe sahip olmasınıda sağlamaktadır. En güzel yanı ise,
normal bir aspx sayfası gibi tasarlanabilmesi, yani html, image, server control gibi
üyeleri içerebilmesidir. Bunlara ek olarak, olay güdümlü programlama modelinide
destekler. Dolayısıyla bir Master Page aslında bir aspx sayfasından farksızdır.


Ancak asıl fark, bir Master Page bir aspx sayfasına uygulandığında ortaya çıkar.
Master Pagef i uygulayan bir aspx sayfası tarayıcıda açıldığında tarayıcıya gelen
sayfa, Master Page ile aspx sayfasının birleştirilmesi sonucu ortaya çıkan başka bir




                                             19
aspx sayfasıdır. Bu, .net framework      ün getirdiği partial class tekniği sayesinde
gerçekleşebilmektedir. Bunun, Master Pagee
değişik kodlama etkileride vardır.


Projede kullanılan Master Page'in oluşturulma aşamalarına değinildiğinde,          ilk
olarak, Visual Studio.Net 2008'de bir web sitesi açılmalıdır. Siteye Master Page
eklemek için tek yapılması gereken, Solutiont 'a sağ tıklamak ve Add New ItemP
den gelen pencerede, Master Page tipini seçmektir. Master Pagee     ler master uzantılı
dosyalardır.




                           Şekil 2.3. Master page oluşturma


Masterpage'i oluşturduktan sonra bu sayfalara her bir yeni sayfa türetildiğinde
eklenecek yeni özellikler için bir alan ayrılmalıdır. Bu da ContentPlaceHolder
bileşeni ile gerçekleştirilmektedir.
Burada ContentPlaceHolder bileşeni, bu Master Pageı i uygulayacak olan sayfaların
serbestçe erişebilecekleri ve içerik oluşturabilecekleri alanları tanımlamaktadır.




                                         20
Master Page°       lerde, normal aspx sayfaları gibi tasarlanabilirler. Bir başka deyişle,
Html kodları, aspx bileşenleri vb. içerebilirler.


Projeye      ait    MasterPage.master      isimli   masterpage,     image,     menu      ve
ContentPlaceHolder ve PlaceHolder bileşenlerinden oluşmaktadır.




                             Şekil 2.4. Master Page oluşturma


Burada standart olarak bir web sayfasının tasarlanmasından farklı bir işlem
yapılmamıştır. En önemli nokta Master Paget
yazabilecekleri ContentPlaceHolder bileşeninin kullanılmasıdır. Dilersek bir Master
Page içinde, birden fazla ContentPlaceHolder bileşeninede yer verebiliriz. Master
Page      in aspx kodlarına bakıldığında normal aspx sayfalarına göre en önemli
değişik page direktifi yerine master direktifinin kullanılmasıdır. Master direktifi
sayfanın           bir       Master         Page         olduğunu          belirtmektedir.


<%@       Master   Language="C#"    AutoEventWireup="true"   CodeFile="MasterPage.master.cs"
Inherits="AnaSayfa" %>


ContentPlaceHolder bileşeni ise,




                                             21
<asp:ContentPlaceHolder id="ContentPlaceHolder1" runat="server"> </asp:ContentPlaceHolder>


Anasayfanın masterpage tabanlı oluşturulması için anasayfaya yazılması gerek kod
şu şekilde olmaktadır:


<%@    Page      Language="C#"   MasterPageFile="~/MasterPage.master" AutoEventWireup="true"
CodeFile="OkulOtomasyon-AnaSayfa.aspx.cs"        Inherits="AnaSayfa"     Title="OkulOtomasyon-
Anasayfa" %>


Yukarıda bulunan        tek satır aslında çok şey ifade etmektedir. Herşeyden önce,
MasterPageFile özelliği, sayfaya uygulanan Master Pagek                 in yolunu belirtir. Bu,
sayfanın bir Master Page            i uyguladığını başka bir deyişle master pager           den
türetilerek üretildiğini gösterir. Kendi sınıfı ve code-behind dosyası vardır.


Eğer sayfadaki Content alanı içerisinde düzenleme yapmak istenirse                        bunu
sağlayabilmek için, Master Pagee de yer alan ContentPlaceHolder bileşeninin, bu
sayfada bir Content bileşeni ile eşleştirilmesi gerekmektedir. Bunun için, web
sayfasına      aşağıdaki     aspx     kodları    yazılmalıdır.         Content     bileşeninin,
ContentPlaceHolderID         özelliği,    uygulanan      Master        Pagee     deki     hangi
ContentPlaceHolder bileşenini eşleştireceğini belirtmektedir. Bu özelliğin değeri,
birden falza ContentPlaceHolderş           ın, Master Pagel        i uygulayan sayfalarda
eşleştirilmesinde önem kazanır.


<asp:Content     ID="Content1"   ContentPlaceHolderID="ContentPlaceHolder1"      Runat="server">
</asp:Content>


Projede kullanılan diğer bir master page ise master isimli master page'tir. Bu master
page'in içeriği örnek verilerek hem contentPlaceHolder hem de masterpage'in diğer
özellikleri açıklanabilir:


Eklenmiş olan tüm kontroller ve diğer içerikler, ContentPlaceHolder bileşenine ait
takılar içerisinde yer almaktadır. Diğer taraftan ContentPlaceHolder takıları dışında
herhangibir içerik oluşturmayı sağlayacak bileşenleri kullanma imkanı yoktur. Bir
diğer önemli özellik de, içeriğin herhangi bir form takısı içerisinde yer almıyor




                                                22
oluşudur. Bunun sebebi, form takısının zaten Master Pageo de uygulanmış olmasıdır.
Dolayısıyla web sayfası, Master Pageı den kalıtımsal olarak türetildiği için form
takılarının             burada           kullanılmasına            gerek         yoktur.


2.1.1.6. Web User Control


Daha önceden varolan bazı server ve HTML componentlerini kullanarak yeni bir
görünüş yapmamıza yararlar. Yaptığımız bu controller .ascx dosyalarında saklanır ve
nerede           kullanılmak        istenirse        orada       sayfaya     eklenebilir.
Oluşturulan bir Web User Control sayfanın istenilen yerine koyulabilir ve orada onun
görünmesi                                                                   sağlanabilir.


2.1.1.6.1 Özellikleri


Web user controller proje içerisinde yaratılan ascx dosyalarıdır. Bu dosyalar
içerisinde daha önceden var olan HTML ve server componentleri kullanılarak yeni
bir görünüm oluşturulabilir. Web User Controller kullanıldıkları her proje içerisinde
mutlaka bulunmalıdırlar. Bunun nendeni ise bunların compile edilememesidir..Yani
Web User Controller derlenerek bir dll yapılıp bu DLL istenilen projede kullanılma
imkanı yoktur. User Controller VS toolbox ında yani araç çubuğunda bulunmazlar.
Onları herhangi bir projeye eklemek için Solution Explorer dan ascx dosyasını
tutarak sayfada istenilen yere bırakılmalıdır. User Control kodları ise Web Formlar
load edildikten sonra yüklenir. Page_Load eventi User Controlü yuklenmesinden
önce gerçekleşmektedir. Bu özellikler .NET deki diğer componentlerde olmayan
özelliklerdir.


2.1.1.6.2 Web User Control Oluşturma


VS editöründe Solution Explorer da projeye sağ tıklanır ve Add New Item seçeneğini
seçilir. Buarad açılan pencereden Web USer Controlü seçilip adı verilerek onaylanır.
Böylelikle       yeni    bir     ascx   dosyası      projenize   eklenmiş   olacaktır.




                                                23
User kontrole örnek olarak menü örneği verilebilir. Örneğin bir menü kontrolü var ve
bu menü projenin her sayfasında kullanılıyor. Ve bu menude bazen değişiklikler
yapılması gerekiyorsa bu durumda her sayfada bu işin tek tek yapılması yerine tek
bir menü sayfası oluşturup bunu her sayfada kullanmak daha mantıklı olacaktır. Bu
kullanım için bir user control oluşturulabilir.
Menü de herhangi bir değişiklik yapılmak istendiğinde sadece bir yerde değişiklik
yapılması yeterli olacaktır. Bu değişiklikler user control ün kullanılmış olduğu tüm
sayfalarda geçerli olacaktır.


2.1.2. SQL ve MSSQL


SQL, (İngilizce "Structured Query Language", Türkçe: Yapılandırılmış Sorgu Dili)
verileri yönetmek ve tasarlamak için kullanılan bir veritabanı yönetim sistemidir.
SQL, kendisi bir programlama dili olmamasına rağmen birçok kişi tarafından
programlama dili olarak bilinir. SQL herhangi bir veritabanı ortamında kullanılan bir
alt dildir. KOURYS sisteminde kullanılan MSSQL de SQL dilini kullanan bir
veritabanıdır. Bu yüzden KOURYS sisteminde kullanılan SQL komutları aşağıda
anlatılmıştır. SQL ile yalnızca veri tabanı üzerinde işlem yapılabilir. SQL'e özgü
cümleler kullanarak veri tabanına kayıt eklenebilir, olan kayıtlar değiştirilebilir,
silinebilir ve bu kayıtlardan listeler oluşturulabilir.
SQL veri tanımlama deyimlerinden başlıcaları şunlardır:
CREATE TABLE tablo_adı
        Yeni bir tablo oluşturmak için kullanılır.
CREATE TABLE tabloilceler (
    ilceNo mediumint(8) unsigned DEFAULT '0' NOT NULL,
    ilce varchar(30) NOT NULL,
    postakodu varchar(5),
    ilceTel char(3),
    plakaKodu char(2) NOT NULL
)




                                             24
2.1.2.1. SQL Veri Tanımlama Deyimleri


2.1.2.1.1. ALTER TABLE tablo_adı


Yeni bir sütun eklemek, sütunun tipini veya uzunluğunu değiştirmek vb. yapısal
değişiklikler yapılması için kullanılır.


2.1.2.1.2. DROP TABLE tablo_adı


Tabloyu fiziksel olarak siler.


2.1.2.1.3. TRUNCATE TABLE tablo_adı


Tablodaki tüm verileri siler (tablo yapısı kalır)


2.1.2.1.4. CREATE VIEW görüş_adı


Görüntü oluşturmak için kullanılır.


2.1.2.1.5. DROP VIEW görüş_adı


Görüntüyü siler.


2.1.2.1.6. CREATE INDEX indeks_adı


Tablonun (en azından bir) sütun adı üzerinde indeks oluşturmak için kullanılır.


2.1.2.1.7. DROP INDEX indeks_adı




                                           25
Yaratılan indeksleri veri tabanından kaldırmak için kullanılır..



2.1.2.1.8. SELECT deyimi


SELECT ilce, postakodu FROM tabloIlceler WHERE plakaKodu = '06'
Ankara'nın ilçeleri ile posta kodlarını gösterir.


2.1.2.1.9. UPDATE deyimi


UPDATE tabloIlceler SET postakodu = '06720' WHERE ilce = 'Bala'                     Bala'nın
posta kodunu değiştirir.


2.1.2.1.10. INSERT deyimi


INSERT INTO tabloIlceler VALUES (, 'Yenişehir', , , '53') Yeni veriler ekler


2.1.2.1.11. DELETE deyimi


DELETE FROM tabloIlceler WHERE plakaKodu = '53' plakaKodu 53 olan bütün
verileri siler


MSSQL de projede kullanılan veritabanıdır. MSSQL de SQL dilini kullanan bir
veritabanıdır.



2.1.2.2. SQL Deyimleri


SQL     deyimleri    veritabanları   üzerinde       çeşitli   işlemleri   yerine   getirirler.
Veritabanından sorgulama yapmak için SELECT, ekleme yapmak için INSERT
güncelleme yapmak için UPDATE, silme yapmak için DELETE, yeni tablo




                                            26
oluşturmak için CREATE TABLE gibi komutlara sahiptir. Bu komutlar işlevlerine
göre şu şekilde kategorilendirilir:


     DDL (Data Definition Language): Veri tanımlama deyimleri.
     DML (Data Manuplation Language) : Veri düzenleme dili.
     DCL (Data Control Language): Veri kontrol dili.


DDL deyimleri veritabanı üzerinde nesne yaratmak için kullanılırlar. En yaygın
kullanılan DDL deyimleri şunlardır: CREATE , ALTER, DROP


Create deyimi tablo ve view gibi bir veritabanı nesnesi yaratmayı sağlar.
Tablo Yaratmak:
Veritabanı üzerinde bir tablo yaratmak için CREATE deyimi kullanılır.
Yapısı: CREATE <tablo adı>


Alter Deyimi daha önce yaratılmış nesnenin değiştirilmesini sağlar. Örneği bir
tablonun tasarımını değiştirmek gibi.


Örnek: ALTER TABLE Musteri
ADD tel varchar(20) NOT NULL
Yukarıdaki deyimde müşteri tablosunun alanlarına tel adlı bir alan daha eklenmiştir.


Drop deyimi bir nesnesin silinmesini sağlar.
Örnek: DROP TABLE MUSTERI
Müşteri tablosunun verilerini ve tabloyu siler.


2.1.2.3. DML (Data Manipulation Language) Deyimleri,


Veritabanı içindeki verileri elde etmek ve değiştirmekle ilgili SQL deyimleridir.
           1. SELECT
           2. INSERT
           3. UPDATE




                                          27
4. DELETE




2.1.2.3.1. Select Deyimi


Veritabanındaki verilere erişmenin, diğer bir deyişle onları görmenin ya da onları
elde etmenin en sık kullanılan yöntemidir. Genellikle bir ya da daha çok tablonun
bütün alanlarıya da belli alanları için SELECT deyimi yazılır.


Temel Yapısı:


SELECT [ALL] [DISTINCT] liste [INTO yeni tablo] FROM [tablo]
          [WHERE ifade]
          [GROUP BY ifade]
          [HAVING ifade]
          [ORDER BY ifade]
          [COMPUTE ifade]


Seçeneklerin Anlamları:


All sözcüğü bütün satırların sonuç listesinde görünmesini sağlar.


Distinct sözcüğü sadece tek olan (unique) kayıtların sonuç listesinde yer almasını
sağlar.
liste parametresi veriden seçilecek kolonu (sütunu) belirtir.


Into sözcüğü yeni bir tablo yaratmayı sağlar.
yeni tablo parametresi sorgu sonucu yaratılacak tabloyu belirtir.


From sözcüğü belli bir tablonun seçilmesini sağlar.
tablo parametresi ise sorgulanacak olan tablo ya da tabloları, görünümleri belirtir.




                                           28
Where bir koşulu belirterek sadece o kuşula uyan kayıtların seçilmesini sağlar.


Group By Kayıtların gruplanmasını sağlar. HAVING deyimiyle de ara toplamların
alınmasını sağlar.


Having sözcüğü de kayıtlarda kısıtlama yapar ancak hesaplamayı etkilemez.


Order Bysözcüğü ise belirtilen kolona göre listelenen kayıtları sıralamayı sağlar.
Sıralama artan (ASC) ya da azalan (DESC) olabilir


Compute sözcüğü ise hesaplama yapar. Tipik olarak SUM, AVG, MIN, MAX,
COUNT gibi fonksiyonları kullanarak hesaplama yapar.




2.1.2.3.2. Aritmetik İşlemler


Aritmetik işlemleri gerçekleştirmek için belli operatörler kullanılır:


   •   + Toplama
   •   - Çıkarma
   •   / Bölme
   •   * Çarpma


2.1.2.3.3.Verileri Sıralamak


SELECT deyimi ile elde edilen veriler istenirse sıralanabilir. Sıralama belirtilen bir
ya da daha fazla kolona göre yapılır. Bunun dışında sıralama ASC (ascending-artan)
ya da DESC (descending-azalan) olarak belirtilebilir.


SELECT * FROMmusteri ORDER BY ad




                                           29
Yukarıdaki deyim ile müşteri tablosundaki bütün kayıtlar ad alanına göre sıralı olarak
listelenirler.




2.1.2.3.4. Gruplandırma İşlemleri


Gruplama seçenekleri tablo satırlarının belli alanlarına göre gruplandırılmasını
sağlar.


GROUP BY sözcüğü ise yapılan bir gruplandırma işlemine göre listeleme sağlar.
Örnek: SELECT grup, sum(bakiye) FROM musteri
GROUP BY grup


2.1.2.3.5. Insert Deyimi


Tabloya veri girmek için kullanılır. INSERT INTO <tablo adı> (sütunlar listesi)
VALUES (değerler listesi)


Örnek: INSERT INTO CARIANA
(kodu, adi, grubu, adresi)
VALUES ('600', 'FARUK', 'A', '76 sokak no 5')


Örnek: INSER INTO deyimi ile bir tabloyu diğer bir tablodan doldurmak:


2.1.2.3.6. Update Deyimi


Tablodaki verileri güncellemek için kullanılır. Genellikle güncelleştirilecek satırı
belirtmek için WHERE sözcüğüyle kullanılır.
Mevcut bir tablodaki satırları değiştirmek için UPDATE deyimi kullanılır. UPDATE
deyimi sadece bir tablo üzerinde kullanılmalıdır. UPDATE deyimi ile SET ve
WHERE sözcüğü kullanılır.



                                         30
SET sözcüğü değiştirilecek kolonları ve değerleri belirtir. WHERE sözcüğü ise
değiştirilecek satırı belirtir.




Update deyiminin kullanım biçimi:


UPDATE tablo
SET kolon = ifade
WHERE arama_koşulu


2.1.2.3.7. Delete Deyimi


Bir tablodaki verileri silmek için DELETE komutu kullanılır. Örneğin Öğrenci
tablosundaki tüm verileri silmek için;
Kullanım biçimi:


DELETE tablo
WHERE arama_koşulu
Örnek: Tablodan satır silmek


Aşağıdaki örnekte müşteri tablosundan 'B' grubuna sahip olan müşteriler silinir.
DELETE musteri
WHERE grubu = 'B'



2.2. Kodlama Standartları

2.2.1. Tanımlar ve Kısaltmalar



2.2.1.1. PascalCase


İlk karakterin ve içerisinde yer alan tüm kelimelerin ilk harfinin büyük, diğer
harflerin küçük olduğu isimdir. Örnek : MusteriNo




                                         31
2.2.1.2. CamelCase


İlk karakterin küçük, içerisinde yer alan tüm kelimelerin ilk harfinin büyük, diğer
harflerin küçük olduğu isimdir. Örnek : musteriNo


2.2.1.3. UpperCase


Tüm karakterleri büyük harf olan isimdir. Örnek : MUSTERINO


2.2.1.4. LowerCase


Tüm karakterleri küçük harf olan isimdir. Örnek : musterino


2.2.2. C# İsimlendirme Standartları


   •   Tüm class, method, property, vb. tüm isimler Türkçe verilmeli, isim
       içerisinde Türkçe karakter(‘ıİçÇğĞşŞöÖüÜ’) kesinlikle kullanılmamalıdır.
   •   Tüm     isimler,   anlamlı,      açıklayıcı   olmalı   ve   içerisinde    kısaltma
       kullanılmamalıdır.
   •   Finart katman bileşenleri (entity, facade vs.) dışındaki public class isimleri ile
       tüm public member (metod, property, vb.) isimleri PascalCase verilmelidir.
   •   Tüm     private    değişkenler     ve     metodların   parametreleri     camelCase
       isimlendirilmelidir.
   •   Constant’lar UPPERCASE ve kelimeler arasında ‘_’ kullanılacak şekilde
       isimlendirilmelidir.
   •   Değişken isimleri için i, j, a, vb. gibi tek karakterler, döngülerdeki
       iterasyonlar dışında kullanılmamalıdır.
   •   Metodlar için, bir emir ifade eden isimler (Oku, Getir, Kaydet, İptal, Sil vs.)
       seçilmesi tavsiye edilmektedir.
   •   Form ve üzerinde kullanılan kontrollerin isimlendirilmesi için aşağıdaki




                                            32
standartlara uyulmalıdır.


                 .Net Bileşenleri                  Ön Ek
                 Label                             Lbl
                 TextBox                           Txt
                 ComboBox                          Cmb
                 CheckBox                          Chk
                 NumericUpDown                     Nud
                 GroupBox                          Grp
                 Buton                             Btn
                 Panel                             Pnl
                 Form                              Form
                 ListView                          Lvw
                 RadioButton                       Rdb
                 ContextMenu                       Cm
                 TabControl                        Tbc
                 TabPage                           Tbp
                 ListBox                           Lbx
                 PictureBox                         Pbx
                                    .Net Bileşenleri


2.2.2.1. Değişken Tanımlama Standartları


   •   Her satırda bir değişken tanımlanmalıdır. Bu şekilde yapılan tanımlama,
       açıklama girişini kolaylaştırmaktadır.
   •   Değişkenlere, tanımlandığı anda değer atanmasına özen gösterilmelidir.
   •   Tanımlanan her değişken mutlaka kullanılmalıdır.
   •   Her değişken sadece bir amaç için kullanılmalıdır.
          Örnek: int musteriNo = musteri.No; // Müşteri Numarası


2.2.2.2. Genel Hata Yönetimi


   •   Yakalanan exception sonrası kullanıcıya, anlayabileceği ve yönlendirici bir




                                          33
mesaj verilmelidir.
   •   Çok büyük try-catch blokları oluşturulmamalı, bunun yerine her farklı iş için
       ayrı bir blok kullanılmalı ve blok spesifik bir kod bölümünü kapsamalıdır.
       Bu şekilde hangi kod parçaçığının exception’ı oluşturduğunu kolaylıkla
       bulunabilir.
   •   Static bir class’ın, constructor’ında alınan hata sebebiyle initialize işlemi
       gerçekleştirilemez ise, constructor bir daha çalışmayacak olduğu için
       uygulamada beklenmeyen hatalar oluşabilir. Constructor’a sahip statik class
       kullanımları için kontrol yöntemleri oluşturulmalıdır.


2.2.2.3. Programlama Pratikleri


   •   Kod tekrarından kaçınılmalı, belirli bir işi yapan kod parçaları ayrı bir metod
       içerisine alınmalıdır.
   •   Tasarım sırasında, kod birimlerinin tek başına iş yapabilirliğinin yüksek,
       diğer birimler ile olan bağımlılığının düşük olmasına dikkat edilmelidir.
   •   Dış girdiler ve dış kaynaklardan gelen veri (kullanıcı girdisi, dosya, vb.) için
       girdi kontrolleri oluşturulmalı, girdinin doğruluğu kontrol edilmelidir.
   •   Değişkenler mümkün olan en küçük yaşam döngüsüne sahip olmalıdır.
   •   En sık kullanılan case’ler ilk olarak kontrol ediliyor olmalıdır.
   •   System namespace’i altında tanımlı tipler yerine C# spesifik tipler
       kullanılmalıdır.
               int yas; // Int32
               string musteriAd; // String
               object kulaniciBilgi; // Object
Beklenmeyen değerlerin/durumların oluşma olasılığı her zaman düşünülmeli ve
gerekli kontrol yapısı kurulmalıdır.


2.2.2.4. Veritabanı Nesne Adlandırma Kuralları


Bu bölüm, veritabanı nesnelerinin adlandırılmasında kullanılacak standartları
içermektedir. Bu standartların uygulanması sonucunda, veritabanı üzerinde işlem




                                          34
yapması (değişiklikler yapma, sorun giderme, kod yazımı gibi) gerekli olabilecek
tüm teknik personelin rahatlıkla anlayabileceği bir veritabanı oluşmuş ve yönetilmiş
olacaktır. Bu bölüm, aşağıdaki başlıklarda tercih edilen adlandırma kurallarını
içermektedir:


   •   Tablolar – Tables
   •   Geçici Tablolar – Temporary Tables
   •   Görünümler - Views
   •   Saklı prosedürler - Stored procedures
   •   Kullanıcı tanımlı fonksiyonlar - User defined functions
   •   Tetikleyiciler - Triggers
   •   İndeksler – Indexes
   •   Sütunlar – Columns
   •   Kullanıcı tanımlı veri türleri - User defined data types
   •   Primary keys
   •   Foreign keys
   •   Default bilgileri ve Kontrol kısıtları - Default and Check constraints
   •   Değişkenler - Variables
   •   Paketler – Packages
   •   Sekanslar – Sequences


İsimlendirmelerde 30 karakter olarak bir sınırlandırma getirilmiştir. Bu sınırlandırma
çerçevesinde veritabanı nesneleri isimlendirilmelidir. Nesne isimleri tüm harfleri
büyük olacak şekilde, yani “UPPERCASE” formatında yazılmalıdır. Türkçe harflere
yazımda yer verilmemelidir.



2.2.2.5. Tabloların İsimlendirilmesi


Tablolar, herhangi bir varlığın anlık bilgilerini sunmaktadır. Örneğin, tüm müsteri
bilgileri bir tabloda saklanmaktadır. Burada “müsteri” bir varlık niteliğindedir, ve
müsteri tablosunun tüm satırları “müsteri” varlığının anlık bilgilerini sunmaktadır.




                                          35
Bu durumda, tabloyu, bilgilerini sunduğu varlığın ismi uyarınca adlandırmak
gereklidir – yani “Musteriler”. Tabloda müsterilerin farklı anlardaki bilgileri
sunulduğu için, tablo isminin çoğul olarak belirlenmesi gereklidir.


Yazım Formatı:


tbl(3 karakter)AmacaYonelikKısım
Örn: tblKullaniciBilgileri
şeklinde olacaktır.


2.2.2.6. Saklı Prosedürlerin İsimlendirilmesi


Saklı prosedürler, iyi tanımlanmıs ve spesifik görev üstlenirler ve eylem/hareket
odaklıdırlar. Bu nedenle, isimlerinin üstlendikleri görevleri ifade ediyor olması
gereklidir. Üstlenilen görevi betimlemek için “fiil” yapısındaki kelimeler
kullanılmalıdır.


Yazım Formatı:


sp_AmacaYonelikFiiller


Örn: sp_getUsersInformation
şeklinde olacaktır.


Kelime dizgesinin başında stored procedure olduğunu belirten sp kelimesi
kullanılacaktır.
Prosedür yazım formatında ISLEM olarak belirtilen kelime yerine islemin amacına
göre:


         insert islemleri için “INS”,
         delete islemleri için “DEL”
         update islemleri için “UPD”
         select gibi sorgulama islemleri için “SEL”




                                          36
yukarıda belirtilen “UPD” ve “SEL” lerin beraber kullanıldığı durumlarda
veya
         scheduled işlemlerde “BAT”


kelimeleri kullanılacaktır.


Saklı Yordamlar yardımıyla tablolara veri eklemek son derece kolay, hızlı ve
etkilidir. Bununla birlikte Saklı Yordamlar sağladıkları güvenlik kazanımları nedeni
ilede tercih edilirler. Saklı Yordamları geliştirmek son derece kolaydır. İstediğiniz sql
işlemini, satır silmek, satır aramak gibi işlemler kolayca gerçekleştirilmektedir.




Şekil 2.5. Saklı yordamların avantajları



2.2.2.7. Tetikleyicilerin (Trigger) İsimlendirilmesi


Yazım Formatı:


MODULKODU(3 karakter)_AMACAYONELIKISIM_ISLEM(3 karakter)_TRG


Amaca Yönelik olarak kullanılan Kelimeler arasında “_” karekteri kulanılmayacaktır.
Kelime dizgesinin sonuna triger olduğunu belirten TRG kelimesi kullanılacaktır.
Tetikleyici yazım formatında ISLEM olarak belirtilen kelime yerine islemin amacına
göre:
        insert (ekleme) için “INS”
        update (güncelleme) için “UPD”
        delete (silme) için “DEL”
kelimeleri kullanılacaktır.




                                           37
2.2.2.8. Birincil Anahtarlar (Primary Keys)


Birincil anahtar sütun(lar)ı, tablodaki her bir satırı birincil (unique) olarak belirleyen
sütun(lar)dır.Bu nedenle, Birincil anahtar adlandırma kuralı olarak, tablo isminin
önüne 'PK_' eklenmelidir.




Yazım Formatı:


  PK_TABLOADI


2.2.2.9. Sekanslar(Sequences)


             Ardışık sırada numara üretmek için kullanılan yapılardır. Burada
isimlendirmeler :


Yazım Formatı:


       MODULKODU(3 karakter)_AMACAYONELIKISIM_SEQ                                şeklinde
olmalıdır.



2.2.3. PROJE İÇERİĞİNİN ANLATILMASI


Projenin uygulama kısmı ve veritabanı tasarımı aynı eş zamanlı tasarlanmıştır. Fakat
anlaşılır olması açısından bu aşamalar uygulama kısmı ve veritabanı kısmı olarak iki
kısımda anlatılacaktır.


2.2.3.1.UYGULAMA KISMI


Projeye başlamadan önce projenin kullanıcılarının kimler olacağı belirlenmiştir.
Bunlar:



                                           38
ι) Öğrenciler
    ιι) Öğretmenler
    ιιι) Editör
    ιϖ) İdareci


Her bir kullanıcının görevleri ayrıdır ve sistemden bu görevleri yerine getirebilirler.
Her bir kullanıcı kendilerine ait kullanıcı adı ve şifrelerini kullanarak sisteme giriş
yaparlar ve kendilerine ait alanları görebilirler. Aşağıda her bir kullanıcı için
kullanıcının yapabileceği işlevler belirtilmiştir.


Uygulama      kısmında    projenin   oluşturulduğu   yazılım   programında    projenin
bileşenlerinin görebileceği solution explorer kısmında projenin 3 katmanlı bir yapıya
sahip olduğu görülmektedir. Bu katmanlardan ilki Blog isimli bir website kısmıdır.
Diğer katmanlar ise metotların bulunduğu DAL isimli project katmanı ve nesnelerin
bulunduğu PROPERTY katmanıdır. Solution explorerda website katmanında web
page, user controls, style dosyaları ve masterpage nesneleri bulunmaktadır. Project
kısmında ise nesnelere ait sınıflar bulunmaktadır. Bu sınıflar içinde web controls
tarafından kullanılan metotlar bulunmaktadır. Web sayfaları masterpage ve user
controls kullanılarak oluşturulmuştur. Masterpage, aynı özelliklerin ya da menülerin
kullanıldığı benzer sayfaları oluştururken büyük kolaylık sağlamaktadır. Aşağıda
projenin oluşturulduğu programda, projeye ait solution explorer'ın ekran görüntüsü
mevcuttur.




                                            39
40
41
42
Şekil 2.6. Projeye ait solution explorer görüntüsü
Ana sayfada tüm kullanıcıların kendilerine ait menülere erişebilcekleri bağlantılar
bulunmaktadır. Ayrıca açılan sayfada editör tarafından eklenmiş olan makaleler
kullanıcılara sunulmaktadır. Ana sayfanın ekran görüntüsü Şekil 2.8 de
görülmektedir.




                                        43
Şekil 2.7. Tüm kullanıcıların giriş yaptığı anasayfa


2.2.3.1.1. Öğrenci ve Veli Kısmı


Öğrenci ve Veliler internet üzerinden öğrencinin derslerine ait yazılı, sözlü ve ödev
notlarını görebilir, Öğrencinin yapmış olduğu devamsızlıklık durumunu sistemden
öğrenebilirler. Ayrıca ders öğretmenleri tarafından verilen ödevleri ve öğretmenlerin
öğrenci hakkındaki görüşlerini sistemden takip edebilirler.




2.2.3.1.1.1. Öğrenci Bilgi Paneli Özellik ve İşlevleri


- Not Durumunu Öğrenme
- Devamsızlık Durumunu Öğrenme
- Verilen Ders Ödevlerini Öğrenme
- Öğretmen Görüşlerini Öğrenme
- Okul Ziyaretçi Bilgilerini Öğrenme
- Şifre Güncelleme


Öğrenci kullanıcı adı ve şifresini kullanarak giriş yapar ve ana sayfasına ulaşmış olur.
Öğrenci anasayfası aşağıda görülmektedir.




                            Şekil 2.8. Öğrenci Ana Menü



2.2.3.1.1.1.1 Öğrenci Not Görüntüleme




                                          44
Öğrencinin yapabilecekleri menüde listelenmiştir. Öğrenci notlarını görüntüleyebilir,
okul devamsızlık bilgilerini görebilir, eğer varsa verilen ödevlerini görebilir,
öğretmenin kendisi için yapmış olduğu görüşleri okuyabilir, kendi ders listesini
görebilir ve mevcut şifresini güncelleyebilir.
Öğrenci menüden notlarını görüntülemek istediğinde aşağıdaki ekran karşısına
gelmektedir. Öğrenci burada dönem seçimi yaparak o döneme ait not bilgilerini
görüntüleyebilmektedir.




                          Şekil 2.9. Öğrenci Not Götüntüleme


Buradan öğrenci görüntülemek istediği not listesi için dönemini seçer ve seçtiği
döneme göre öğrencinin notları listelenir. Burada notlar her ders için ayrı ayrı
gösterilmektedir. Not, ödev ve sözlü için farklı not alanları bulunmaktadır. Bunlar
derslere göre ayrı ayrı listelenmektedir.




2.2.3.1.1.1.2 Devamsızlık Bilgileri


Öğrenci devamsızlık bilgilerini öğrenmek istediğinde ise menüden ilgili menüyü
seçmelidir. Daha sonra ise öğrencinin devamsızlık bilgileri aşağıdaki gibi
listelenmektedir .




                                            45
Şekil 2.10. Devamsızlık Bilgileri


Devamsızlık bilgileri devamsız, geç, izinli, raporlu, cezalı, faaliyet ve sevk olmak
üzere farklı alanlarda belirtilmektedir. Ekranın üst kısmında ise öğrenci bilgileri ve
toplam devamsızlık günü gösterilir.


2.2.3.1.1.1.3 Ödev Görüntüleme


Öğrenci aynı zamanda kendi sayfasından öğretmenler tarafından verilen ödevleri de
görüntüleyebilmektedir. Ödev içeriğini, ödev bitiş tarihini, hangi ders için ödev
verildiğini görebilmektedir.
                               Şekil 2.11. Ödev Görüntüleme




                                           46
2.2.3.1.1.1.4 Öğretmen Görüşleri Görüntüleme


Öğrenci öğretmen görüşleri altında öğretmenlerinin kendisi için yazmış olduğu
yorumları ve kendisi için doldurulan anket cevaplarını görebilmektedir.




                           Şekil 2.12. Öğretmen Yorumları



2.2.3.1.1.1.4 Ders Listesi Görüntüleme


Öğrenci bulunduğu sınıf için ders listesini listeleyebilmektedir. Öğrenci kullanıcı
girişi yaptıktan sonra ders listesine ulaşılmış hali şekilde görülmektedir.




                                Şekil 2.13. Ders Listesi


Öğrenci anasayfaya dön seçeneği ile kendisine ait ana sayfaya geri dönüş
yapabilmektedir.



2.2.3.1.1.1.5 Şifre Güncelleme


En son kısımda da öğrenci mevcut şifresini güncelleyebilmektedir.




                                           47
Şekil 2.14. Öğrenci Şifre Güncelleme


Öğrenci eski şifresini girdikten sonra yeni şifresini girer ve tekrar yeni şifresini teyit
ederek güncellenmiş şifresini bir sonraki kullanıcı girişinde kullanabilmektedir.



2.2.3.1.1.2 Editör Bölümü


Editör sistemin bir çok alanına erişim hakkına sahiptir. Bu bölümde editor bir çok
alanda görüntüleme, silme, güncelleme işlemlerini yapabilmektedir. Editör;
Duyurular, Personel Bilgileri, Resim Galerisi, Ziyaretçi Defteri, Makaleler,
Etkinlikler, Etkinlikler, Başarılar, Okul Ziyaretçi Takibi gibi alanları yönetme
hakkına sahiptir.



2.2.3.1.1.2.1 Editör Ana Menü


Editörün anasayfasındaki menudur. İşlemlere bu menu aracılığıyla ulaşmaktadır.




                                   Şekil 2.15. Editör Ana Menü

2.2.3.1.1.2.2 Duyurular


Duyurular Menüsünde yayımlanan duyurular görüntülenir ve silme, güncelleme
işlemleri yapılır. Duyuru Ekle linki ile ise yeni bir duyuru eklenir. Bu menulerin
ekran çıktısı aşağıdaki gibidir.




                                             48
Şekil 2.16. Duyurular
Şekil 2.16' da görüldüğü gibi Editör duyurulara ait Id, Içerik ve duyurunun
yayınlandığı tarih ve saat bilgilerine erişebilmekte, bu bilgileri Düzenle butonu ile
güncelleyebilmekte, Sil butonu ile seçilen duyuruyu silebilmektedir. Yeni Duyuru
Ekle Linki ile Duyuru Ekleme sayfasına ulaşabilmektedir. AnaSayfaya Dön linki ile
kendi anasayfasına ulaşabilmektedir.




                            Şekil 2.17. Yeni Duyuru Ekleme


Şekil 2.17' de ise Editör duyuru ekleyebilmektedir. Duyuruya ait konu, içerik, tarih
ve saat bilgilerini girerek duyuru ekleme işlemini Kaydet butonuna basarak
tamamlamaktadır. Kayıt gerçekleştikten sonra Duyurular sayfasına yönlendirilip yeni
yapılan kayıt görülmektedir. İptal butonu ile duyuru ekleme işlemi tamamlanmadan
duyurular sayfasına yönlendirme işlemi gerçekleştirilir.



2.2.3.1.1.2.3 Personel Bilgisi


Editör, personel menüsü ile personel bilgilerini görüntüleme, güncelleme ya da silme
işlemlerini yapabilmektedir. Personel Ekle menüsü ile ise yeni personel




                                          49
ekleyebilmektedir. Personel ekle menüsü esnek bir menu olup eklenecek personele
ait tüm kişisel bilgileri içermektedir. Bu menulerin ekran çıktıları aşağıdaki gibidir.




                               Şekil 2.18. Personel Tablosu


Şekil 2.18'de Editörün personellere ait Id,Ad,Soyad,Görev,Unvan,Telefon,Email
bilgileri görüntüdiği görülmektedir. Düzenle butonu ile ilgili satırdaki personel
bilgileri düzenlenebilmektedir. Sil butonu ile seçilen satırdaki personel bilgileri
silinmektedir.
Güncelle butonu ile aşağıdaki şekilde de görüldüğü gibi seçilen satırda bulunan
personel bilgileri güncellenebilmektedir.




                    Şekil 2.19. Personel Tablosunda güncelleme işlemi


   Şekil 2.19'da Güncelleme yapılan alanlar tamamlandıktan sonra tekrar Güncelle
   Butonuna basılarak güncelleme işlemi tamamlanır.
   Personel Ekle linki ile Yeni personel ekleme sayfasına yönlendirilip, editörün
   yeni personel eklemesini sağlayan sayfa açılmaktadır.




                                            50
Şekil 2.20. Yeni Personel Ekleme


Şekil 2.20'de görüldüğü gibi eklenecek personele ait yetki alanı, kişisel bilgiler,
iletişim bilgileri, özgeçmiş gibi bilgiler ilgili alanlara doldurulduktan sonra Kaydet
butonuna basılarak kayıt personel kaydetme işlemi tamamlanmış olur. İptal butonu
ile personel ekleme işlemi tamamlanmadan personeller sayfasına yönlendirme işlemi
gerçekleştirilir.



2.2.3.1.1.2.4 Resim Galerisi


Bu menu ile resim galerisindeki resimlere ait bilgileri görüntüleme, güncelleme ya da
silme işlemleri yapılır. Resim Ekleme işleminde ise resime ait bilgiler girilir ve
kaydedilir. Bu işlemleri gösteren ekran çıktıları aşağıdaki gibidir.




                                           51
Şekil 2.21. Resimler


Sekil 2.21'de Editörün Resimlerle ilgili görüntüleyebildiği ve düzenleyebildiği
alanlar verilmiştir. Diğer menulerde de oldugu gibi yine Düzenle ve Sil butonları ile
güncelleme ve silme işlemleri yapılabilmektedir.




                              Şekil 2.22. Yeni Resim Ekleme


Şekil 2.22'de görüldüğü üzere Eklenecek resime ait resmin adı, eğer küçük resim
eklenecekse Küçük Resim Url alanına, küçük resim eklenecekse Küçük Resim Url
alanına Url adresi yazılır. Açıklama kısmına ise resimle ilgili açıklama yazılıp
Kaydet butonu ile resim ekleme işlemi tamamlanır. İptal butonu ile resim ekleme
işlemi tamamlanmadan resimler sayfasına yönlendirme işlemi gerçekleştirilir.



2.2.3.1.1.2.5 Ziyaretçi Defteri


Bu menu ile editor, siteyi ziyaret eden kişilerin görüşlerini bildirdiği Ziyaretçi Defteri




                                           52
sayfasına erişir. Bu sayfada ziyaretçilerin yazdıgı yorumları görüntüleme işlemlerini
yapabilmektedir. Ziyaretçi defter ayrıntıları ilerleyen bölümlerde anlatılacaktır.



2.2.3.1.1.2.6 Makaleler


Makaleler menüsü ile makaleler görüntülenmektedir. Makale Ekle Menüsü ile ise
yeni bir makale ekleme işlemi gerçekleştirilmektedir.




                                  Şekil 2.23. Makaleler


Şekil 2.23' de görüldüğü gibi Editör, makalelere ait Konu, İçerik, Yazar, Tarih ve Saat
bilgilerini görüntüleyebilmektedir. Güncelle Butonu ile ilgili satırdaki makaleye ait
bilgileri düzenleyebilir. Sil butonu ile ilgili satırdaki makaleyi silebilir. Yeni makale
Ekle Linki ile Editör Yeni makale ekleme ile ilgili sayfaya yönlendirilir.




                            Şekil 2.24. Yeni Makale Ekleme


Şekil 2.24'de yeni makale ekleme sayfası görülmektedir. Makaleye ait Konu, Yazar




                                           53
ve Açıklama alanına makale içeriği yazılır. Kaydet butonu ile makale ekleme işlemi
tamamlanır. İptal butonu ile makale ekleme işlemi tamamlanmadan makaleler
sayfasına yönlendirme işlemi gerçekleştirilir.



2.2.3.1.1.2.7. Etkinlikler


Etkinlikler menüsü ile editor okulla ilgili etkinlikleri düzenleyebilir. Zamanı gecen
etkinlikleri silebilir ya da zaman aşımına uğramamış fakat düzenlenmesi gereken
etkinlikler düzenleyebilir. Yeni Etkinlik ekle linki ile Yeni Etkinlik ekleme sayfasına
yönlendirilir ve Etkinliğe ait bilgileri girerek yeni etkinlik kaydını gercekleştirir.




                                   Şekil 2.25. Etkinlikler


Şekil 2.25' de etkinliklere ait konu ve açıklama bilgileri görüntülenmektedir.
Düzenle butonu ile ilgili etkinlik bilgileri güncelenir. Sil butonu ile ilgili etkinlik
listeden silinir.
Yeni etkinlik Ekle linki ile yeni etkinlik ekleme sayfasına yönlendirilir.




                              Şekil 2.26. Yeni Etkinlik Ekleme



                                            54
Sekil Şekil 2.26'da Eklenecek etkinliğe ait konu ve açıklama bilgileri ilgili alanlara
yazıldıktan sonra Kaydet butonu ile etkinlik kaydı tamamlanır. İptal butonu ile
etkinlik ekleme işlemi tamamlanmadan etkinlikler sayfasına yönlendirme işlemi
gerçekleştirilir.



2.2.3.1.1.2.8. Başarılar


Başarılar menüsünde okulun bu zamana kadar göstermiş oldugu başarılar ve almış
olduğu ödüller gibi bilgileri bulunduram bir tablo yer almaktadır. Bu tabloda silme ve
güncelleme işlemleri gerçekleştirilmektedir.




                                      Şekil 2.27. Başarılar


Şekil 2.27 de görüldüğü gibi başarılara ait konu ve açıklama bilgilerine
erişilebilmekte, Düzenle butonu ile bu bilgiler güncellenebilmekte ya da Sil butonu
ile ilgili satır silinebilmektedir.
Yeni Başarı Ekle Linki ile Yeni başarı ekleme sayfasına yönlendirilmektedir.




                                Şekil 2.28. Yeni Başarı Ekleme


Başarıya ait konu ve içerik yazıldıktan sonra Kaydet butonu ile basarı kaydı




                                             55
tamamlanır. İptal butonu ile başarı ekleme işlemi tamamlanmadan başarılar sayfasına
yönlendirme işlemi gerçekleştirilir.



2.2.3.1.1.2.9 Okul Ziyaretçi Takibi


Öğrencilerin velileri, yakınları zaman zaman bilgi almak amacıyla okula gelip yetkili
kişilerle görüşmeler yapmaktadır. Bu bilgilerin kayıt altında tutulması hem öğrenci
ve veli açısından hem de idari grevli ve öğretmenler açısından önem taşımaktadır. Bu
nedenle ziyaretçilere ve ziyaret sebebine ait bilgiler de sistemde tutulmaktadır. Editör
bu bilgileri görüntüleme, güncelleme, silme ya da yeni kayıt ekleme yetkilerine
sahiptir.




                           Şekil 2.29. Okul Ziyaretçi Bilgileri


Şekil 2.29’da okula gelen ziyaretçilere ait bilgiler görülmektedir. Ziyaretçinin adı,
Ziyaretçinin kiminle görüşme yaptığı, ziyaret nedeni ve ziyaretçinin geldiği tarih gibi
bilgiler Editör tarafından görüntülenmektedir. Bu bilgiler editor tarafından Düzenle
butonu ile düzenlenebilmekte ya da sil butonu ile silinebilmektedir.
Yeni Ziyaretçi ekle linki ile yeni ziyaretçi ekleme sayfasına yönlendirilir.




                            Şekil 2.30. Yeni Ziyaretçi Ekleme




                                           56
Şekil 2.30'da yeni ziyaretçi eklerken ziyaretçinin adı, görüştüğü kişi, adresi, ziyaret
nedeni, ziyaret tarih ve saat bilgileri ve ziyareti kaydeden kişinin kim oldugu
bilgilerinin girildiği görülmektedir. Bu bilgiler girildikten sonra Kaydet butonu ile
ziyaretçi kaydı tamamlanır. İptal butonu ile ziyaretçi ekleme işlemi tamamlanmadan
Okul ziyaretçiler sayfasına yönlendirme işlemi gerçekleştirilir.



2.2.3.1.1.3 Öğretmen Bölümü


Okul otomasyon sisteminin amaçlarının en başında öğretmenlerin kendi derslerine ait
notlarını görsel bir şekilde bir arada görebilmesi, notların kayıtlarının kolay bir
şekilde yapılabilmesi, öğrencilerin dersteki durum ve tutumlarının kaydedilmesi ile
öğrenciler hakkında doğru karar verebilmesi, öğrencilerin devamsızlık bilgilerini
kontrol ederek öğrencilerin dersteki performans düşüş nedenlerini saptayabilmesi
gibi birçok neden gelmektedir. Öğretmenlerin bu işlemleri kolay ve hızlı bir şekilde
yapabilmeleri için tasarlanan Öğretmenler Alanı kullanımı kolay ve pratik olması
açısından pek çok avantaj sağlamaktadır.
Öğretmenler AnaSayfa’da bulunan Öğretmen Girişi linki üzerinden kendilerine ait
sayfaya yönlendirilmektedir. Kendilerine ait sayfaya yönlendirilirken login kontrolü
yapılmaktadır.    Daha   sonra    karşılarına   gelen   menüden    İstedikleri   işlemi
yapabilmektedirler.



2.2.3.1.1.3.1. Öğretmen Girişi


Öğretmenler kullanıcı adlarını ve kendilerine ait şifreyi girerek kendilerine ait alana
giriş yaparlar.




                      Şekil 2.31. Öğretmen Giriş Ekran Ekranı




                                           57
Kullanıcı Adı ve Şifre girilerek giriş yapılır. Eger kullanıcı adı ya da şifre hatalıysa,
kullanıcılar uyarı mesajı ile karşılaşırlar. Şifre ve kullanıcı adı doğru ise, kendilerine
ait ana menünün olduğu sayfaya yönlendirilirler.



2.2.3.1.1.3.2. Öğretmen Anasayfa


Öğretmenler login işlemini gerçekleştirdikten sonra ana menünün olduğu sayaya
yönlendirilirler. Bu sayfadaki ana menüde, Ödev Girişi, Öğrenci Görüş bildirme,
Okul ziyaretçi Bilgileri, Şifre Değiştirme, Rehberlik Servisi, Öğrenci Not girişi ve
Bilgi Listeleri seçenekleri bulunmaktadır. Bu menüde bazı seçenekler alt menülere
ayrılmaktadır. Bu alt menüler ilerleyen bölümlerde anlatılacaktır.




                           Şekil 2.32. Öğretmen Ana Menü


Şekil daki menüden seçilen seçenege göre kullanıcılar ilgili sayfaya yönlendirilirler.



2.2.3.1.1.3.3. Ödev Girişi


Bu menu ile Öğretmenler seçtikleri sınıfa ödev vermektedir. Verilen bu ödevler
öğrencilerin kendi sayfalarındaki menüden ulaşılıp görülebilmektedir. Öğretmenler
Ödev girişi ekranında kendileri verdikleri ödevleri ve bu ödevlere ait bilgileri
görüntüleyebilmekte ve verilen ödevlerde eklenen dosyaları da bilgisayarlarına
indirebilmektedirler.




                                           58
Şekil 2.33. Öğretmen Ödev Görüntüleme


Yeni Ödev Ekle linki ile öğretmenler yeni ödev ekleyecekleri sayfaya
yönlendirilirler.
Yeni ödev ekleme ekranında, ödevin konusu, hangi sınıfa verileceği, teslim tarihi,
açıklama ve varsa ödeve ait belge,dosya,resim,vb. dokumanlar eklenerek kaydet
butonunu ile ödev ekleme işlemi gerçekleştirilir.




                                          59
Şekil 2.34. Ödev Ekleme



2.2.3.1.1.3.4. Öğrenci Görüş Bildirme


Bu menu ile öğretmenler öğrenciler hakkında görüşleri bildiriler. Görüş bildirme iki
aşamada tamamlanır. Önce öğrenci numarası girilir ve öğrenci bilgilerinin ve
görüşün bildirileceği alanın bulunduğu sayfaya yönlendirilir.




                   Şekil 2.35. Öğrenci Görüş Bildirme 1. Aşaması




                                         60
Şekil 2.36. Görüş Bildirme Ekranı


Şekilde öğrenci bilgileri sayfa açıldıgında otomatik olarak gelmektedir. Öğretmen
ilgili alana görüşlerini yazıp Görüş Bildir butonu ile görüş kaydetme işlemini
tamamlamaktadır. Öğrenciler kendilerine ait yapılmış görüşlere kendi sayfalarından
ulaşabilmektedirler.



2.2.3.1.1.3.5. Okul Ziyaretçi Bilgileri


Okula zaman zaman veliler gelip öğrencileri hakkında bilgi alırlar. Bu görüşmelerin
ne zaman, kim ile, kim hakkınd ve kim tarafından yapıldıgı bilgileri de sistemde
tutulur. Bu bilgileri öğretmenler görüntüleyebilmektedir.




                         Şekil 2.37. Okul Ziyaretçi Bilgileri




                                          61
2.2.3.1.1.3.6. Şifre Değiştirme


Öğretmenlerin kendilerine verilen şifreyi güncelleyebilmeleri için oluşturulmuş bir
seçenektir.




                              Şekil 2.38. Şifre Güncelleme


Öğretmenler     yeni    şifrelerini   girip   Güncelle   butonuna     basarak     şifrelerini
değiştirebilirler. Şifre değiştirme işlemi sırasında kullanıcıdan şifreyi iki kere girmesi
istenmektedir. Böylece kullanıcının yanlış bir şifre güncellemesi yapması sağlanır.
Eğer iki alana girilen şifreler birbirinden farklı ise Şifre güncelleme işlemi
gerçekleştirilemez.



2.2.3.1.1.3.7. Rehberlik Servisleri


Öğretmen öğrenciler hakkındaki görüşlerini rehberlik servisleri aracılığı ile
bildirebilmektedir. Öğretmen          ilgili menüden rehberlik      servisleri menüsüne
ulaştığında rehberlik bilgi formu girişi ve rehberlik bilgi dökümü seçenekleri
karşısına çıkmaktadır. Öğretmen rehberlik bilgi formu girişinden görüş bildirmek
istediği   öğrencinin     öğrenci     numarasını   girerek      o   öğrenci     için   görüş
bildirebilmektedir.




                             Şekil 2.39. Rehberlik Servisleri




                                              62
Öğretmen rehberlik bilgi formu bilgisini girmek istediğinde sistem öğretmene hangi
öğrenci için görüş bildirmek istiyorsa o öğrencinin öğrenci numarasını girerek o kişi
hakkında görüş bildirmesini sağlayabilmektedir.




                    Şekil 2.40. Görüş Bildirme-Öğrenci Seçimi


Öğretmen öğrencinin öğrenci numarasını girerek görüş bildirmek istediği öğrencinin
görüş bildirme arayüzüne ulaşmış olmaktadır. Öğrenci numarası girilerek işlem
onaylandığında öğretmenin görüş bildirebilmesi için ilgili ekran öğretmenin karşısına
gelmektedir.




                              Şekil 2.41. Rehberlik Anketi


Burada   öğretmen    ilgili   anketi   doldurarak   öğrenci   hakkındaki   görüşlerini
bildirebilmektedir. Eğer öğretmen girdiği bilgileri görüntülemek isterse rehberlik
bilgi formu dökümü menüsünü kullanmaktadır.




                                          63
2.2.3.1.1.3.8. Öğrenci Not Girişi


          Bu bölümde öğretmenler, derslerine girdikleri sınıflarda bulunan öğrencilere
ait, yazılı, sözlü ve ödev notlarını kolayca girebilmektedirler. Not giriş işlemi üç
aşamada gerçekleşmektedir. Öncelikle öğretmenlerin karşısına, derslerine girdikleri
sınıflar ve ilgili sınıflarda hangi derse girdiklerine ait bir tablo gelmektedir. Bu tablo
aşağıdaki şekildeki gibidir.




                      Şekil 2.42. Öğrenci Not Giriş-Sınıf Seçimi


Sınıf seçimi yapıldıktan dönem seçimi ekranı gelmektedir. Öğretmen 1.Dönem ya da
2. Dönem linkini tıklayarak ilgili dönemin notlarını girmek için bir sonraki aşamaya
yönlendirilir. Dönem seçimi yapıldıktan sonra, seçilen sınıf ve döneme ait tüm
öğrenciler ve o öğrencilere ait ilgili öğretmenin verdiği derse ait notlar gelmektedir.




                         Şekil 2.43. Öğrenci Not Giriş Ekranı


Şekilde    de   görüldüğü      gibi   öğretmenler   hem   tüm    öğrencilerin    notlarını
görüntüleyebilmekte hem de Güncelle butonu ile yeni not bilgisi girebilmekte hem
de güncelleme işlemini yapabilmektedir. Böylece işlemler çok pratik bir şekilde
gerçekleşebilmektedir. Düzenle butonunun işlevi şekilde görülmektedir.




                                            64
Şekil 2.44. Yeni Not Giriş ve Güncelleme


Şekilde görüldüğü gibi seçilen öğrencinin notları güncellenebilmekte, yeni not girişi
yapılabilmektedir. İstenirse İptal butonu ile yapılan değişiklikler yapılmadan bu
ekrandan çıkılabilmektedir.



2.2.3.1.1.3.9. Bilgi Listeleri


Bilgi listeleri menüsü alt menülere ayrılan ve öğretmenlere bir çok konudaki bilgilere
pratik ve kolay erişim sağlar. Bu menünün alt Öğrenci durum Dökümanı, Sınıf
Listeleri, Toplu Sınıf Not Listesi, Toplu Sınıf Devamsızlık Listesi ve Öğretmen
Listesi olmak üzere beş seçenektir.




                                 Şekil 2.45. Bilgi Listeleri



2.2.3.1.1.3.9.1. Öğrenci Durum Dökümanı


Bu menu ile istenen öğrencinin birinci ve ikinci dönemde aldığı tüm notlar
görüntülenmektedir.     Bu işlem iki aşamada gerçekleşmektedir. Öğrenci Durum
Dökümanı linkine basıldığında bilgileri görüntülenmek istenen öğrencinin numarası
girilir ve Devam Et butonu ile ikinci aşamaya geçilir.




                                             65
Şekil 2.46. Öğrenci Durum Dökümanı Birinci Aşama


Öğrenci numarası girilip Devam Et butonuna basıldığında, kullanıcı, ilgili öğrencinin
bilgileri ve notlarının görüntülendiği sayfaya yönlendirilir.




                         Şekil 2.47. Öğrenci Durum Dökümanı


Şekil    2.47’ de Öğrencinin kişisel bilgileri ve Birinci ve İkinci dönem notları
görülmektedir. Öğretmenlerin bu notları görerek öğrenciyi değerlendirmesinin daha
kolay ve etkin olacağı düşünülerek bu menu eklenmiştir.



2.2.3.1.1.3.9.2. Sınıf Listeleri


Bu menu ile öğretmenler kendilerine ait sınıfları listeleyebilmektedir. Ayrıca
listelenen bu sınıflardan seçilen sınıfın öğrenci listesi de görüntülenebilmektedir.




                                           66
Şekil 2.48. Öğretmenin Derslerine Girdiği Sınıfların Listesi


Şekil 2.48’de bulunan listele butonu ile ilgili sınıfta bulunan öğrenciler
listelenebilmektedir.




                        Şekil 2.49. Sınıfa Ait Öğrenci Listesi


Şekil 2.49’da ise bir önceki aşamada seçilen sınıfa ait sınıf listesi göülmektedir.
Öğrenciye ait öğrenci numarası, Öğrencinin Adı ve Öğrencinin soyadı bilgileri
listelenmektedir. Ayrıca sınıfın toplam mevcudu da görülmektedir.



2.2.3.1.1.3.9.3. Toplu Sınıf Not Listesi


Bu menu ile öğretmenler derslerine girdikleri sınıfa ait notları seçilen sınıftaki tüm
öğrencilerin notlarını bir arada görecek şekilde görüntüleyebilmektedir.




                                           67
Şekil 2.50. Toplu sınıf Not Listesi-Öğretmene ait sınıfların Görüntülenmesi


Şekil de Öğretmene ait sınıflar görüntülenmektedir. Öğretmen Listele Butonu ile,
hangi dönem notlarını görüntülemek istediğini seçer ve daha sonra ilgili sınıfın tüm
öğrencilerinin   kendi    dersinden    aldıkları   o   döneme     ait   tüm    notları
görüntüleyebilmektedir.




                 Şekil 2.51. Toplu Sınıf Not Listesi- Dönem Seçimi


1.Dönem linki ile öğrencilerin öğretmenin kendisinden aldıkları birinci Dönem
notları görüntülenir. 2. Dönem linki ile öğrencilerin öğretmenin kendisinden aldıkları
ikinci Dönem notları görüntülenir.




                          Şekil 2.52. Toplu Sınıf Not Listesi




                                          68
Okul otomasyon rapor
Okul otomasyon rapor
Okul otomasyon rapor
Okul otomasyon rapor
Okul otomasyon rapor
Okul otomasyon rapor
Okul otomasyon rapor
Okul otomasyon rapor
Okul otomasyon rapor
Okul otomasyon rapor
Okul otomasyon rapor
Okul otomasyon rapor
Okul otomasyon rapor
Okul otomasyon rapor
Okul otomasyon rapor
Okul otomasyon rapor
Okul otomasyon rapor
Okul otomasyon rapor
Okul otomasyon rapor
Okul otomasyon rapor
Okul otomasyon rapor
Okul otomasyon rapor
Okul otomasyon rapor
Okul otomasyon rapor
Okul otomasyon rapor
Okul otomasyon rapor
Okul otomasyon rapor
Okul otomasyon rapor
Okul otomasyon rapor
Okul otomasyon rapor
Okul otomasyon rapor
Okul otomasyon rapor
Okul otomasyon rapor
Okul otomasyon rapor

Más contenido relacionado

La actualidad más candente

Personel,Özlük İşleri ve Bordrolama-3
Personel,Özlük İşleri ve Bordrolama-3Personel,Özlük İşleri ve Bordrolama-3
Personel,Özlük İşleri ve Bordrolama-3Univerist
 
İnşaat Sektöründe Proje Planlama ve Yönetim
İnşaat Sektöründe Proje Planlama ve Yönetimİnşaat Sektöründe Proje Planlama ve Yönetim
İnşaat Sektöründe Proje Planlama ve YönetimYusuf Yıldız
 
Rapport Projet Application Web De Domotique Arduino - Liotard Roulleau
Rapport Projet Application Web De Domotique Arduino - Liotard RoulleauRapport Projet Application Web De Domotique Arduino - Liotard Roulleau
Rapport Projet Application Web De Domotique Arduino - Liotard RoulleauNicolas Roulleau
 
ExpressQueue systeme de gestion de file d'attente
ExpressQueue systeme de gestion de file d'attenteExpressQueue systeme de gestion de file d'attente
ExpressQueue systeme de gestion de file d'attenteExpressInformatique
 
inşaat mühendisliği şantiye staj defteri
inşaat mühendisliği şantiye staj defteriinşaat mühendisliği şantiye staj defteri
inşaat mühendisliği şantiye staj defteriStaj Defterim
 
Rapport projet Master 2 - Intelligence Artificielle
Rapport projet Master 2 - Intelligence ArtificielleRapport projet Master 2 - Intelligence Artificielle
Rapport projet Master 2 - Intelligence ArtificielleYanis Marchand
 
Mémoire PEF application client server gestion des projet collaborative
Mémoire PEF application client server gestion des projet collaborativeMémoire PEF application client server gestion des projet collaborative
Mémoire PEF application client server gestion des projet collaborativeMessaoud Hatri
 
Урок 11. Створення, редагування та форматування графічних об′єктів у текстово...
Урок 11. Створення, редагування та форматування графічних об′єктів у текстово...Урок 11. Створення, редагування та форматування графічних об′єктів у текстово...
Урок 11. Створення, редагування та форматування графічних об′єктів у текстово...Василь Тереховський
 
Rapport final-Marwen ben khalifa
Rapport final-Marwen ben khalifaRapport final-Marwen ben khalifa
Rapport final-Marwen ben khalifaMarwen Ben Khalifa
 
rapport-finale-ZoubairWassim.pdf
rapport-finale-ZoubairWassim.pdfrapport-finale-ZoubairWassim.pdf
rapport-finale-ZoubairWassim.pdfSyrinaGaddour
 
Chp1 - Introduction aux méthodologies de Conception
Chp1 - Introduction aux méthodologies de ConceptionChp1 - Introduction aux méthodologies de Conception
Chp1 - Introduction aux méthodologies de ConceptionLilia Sfaxi
 
Conception et développement d'une marketplace basée sur l'architecture micros...
Conception et développement d'une marketplace basée sur l'architecture micros...Conception et développement d'une marketplace basée sur l'architecture micros...
Conception et développement d'une marketplace basée sur l'architecture micros...Adem Amen Allah Thabti
 
Chris memoire fin PDF
Chris memoire fin PDFChris memoire fin PDF
Chris memoire fin PDFChris Mukasa
 

La actualidad más candente (20)

Personel,Özlük İşleri ve Bordrolama-3
Personel,Özlük İşleri ve Bordrolama-3Personel,Özlük İşleri ve Bordrolama-3
Personel,Özlük İşleri ve Bordrolama-3
 
İnşaat Sektöründe Proje Planlama ve Yönetim
İnşaat Sektöründe Proje Planlama ve Yönetimİnşaat Sektöründe Proje Planlama ve Yönetim
İnşaat Sektöründe Proje Planlama ve Yönetim
 
Rapport Projet Application Web De Domotique Arduino - Liotard Roulleau
Rapport Projet Application Web De Domotique Arduino - Liotard RoulleauRapport Projet Application Web De Domotique Arduino - Liotard Roulleau
Rapport Projet Application Web De Domotique Arduino - Liotard Roulleau
 
Урок 4. Архітектура комп'ютера
Урок 4. Архітектура комп'ютераУрок 4. Архітектура комп'ютера
Урок 4. Архітектура комп'ютера
 
Excel Giriş
Excel GirişExcel Giriş
Excel Giriş
 
ExpressQueue systeme de gestion de file d'attente
ExpressQueue systeme de gestion de file d'attenteExpressQueue systeme de gestion de file d'attente
ExpressQueue systeme de gestion de file d'attente
 
inşaat mühendisliği şantiye staj defteri
inşaat mühendisliği şantiye staj defteriinşaat mühendisliği şantiye staj defteri
inşaat mühendisliği şantiye staj defteri
 
PFE MASTER ENSET-2023
PFE MASTER ENSET-2023PFE MASTER ENSET-2023
PFE MASTER ENSET-2023
 
Promodel ödev
Promodel ödevPromodel ödev
Promodel ödev
 
Rapport projet Master 2 - Intelligence Artificielle
Rapport projet Master 2 - Intelligence ArtificielleRapport projet Master 2 - Intelligence Artificielle
Rapport projet Master 2 - Intelligence Artificielle
 
Mémoire PEF application client server gestion des projet collaborative
Mémoire PEF application client server gestion des projet collaborativeMémoire PEF application client server gestion des projet collaborative
Mémoire PEF application client server gestion des projet collaborative
 
Guide projet Iset
Guide projet IsetGuide projet Iset
Guide projet Iset
 
Ilac Guvenligi
Ilac GuvenligiIlac Guvenligi
Ilac Guvenligi
 
Урок 11. Створення, редагування та форматування графічних об′єктів у текстово...
Урок 11. Створення, редагування та форматування графічних об′єктів у текстово...Урок 11. Створення, редагування та форматування графічних об′єктів у текстово...
Урок 11. Створення, редагування та форматування графічних об′єктів у текстово...
 
Teknik Rapor Nasıl Yazılır?
Teknik Rapor Nasıl Yazılır?Teknik Rapor Nasıl Yazılır?
Teknik Rapor Nasıl Yazılır?
 
Rapport final-Marwen ben khalifa
Rapport final-Marwen ben khalifaRapport final-Marwen ben khalifa
Rapport final-Marwen ben khalifa
 
rapport-finale-ZoubairWassim.pdf
rapport-finale-ZoubairWassim.pdfrapport-finale-ZoubairWassim.pdf
rapport-finale-ZoubairWassim.pdf
 
Chp1 - Introduction aux méthodologies de Conception
Chp1 - Introduction aux méthodologies de ConceptionChp1 - Introduction aux méthodologies de Conception
Chp1 - Introduction aux méthodologies de Conception
 
Conception et développement d'une marketplace basée sur l'architecture micros...
Conception et développement d'une marketplace basée sur l'architecture micros...Conception et développement d'une marketplace basée sur l'architecture micros...
Conception et développement d'une marketplace basée sur l'architecture micros...
 
Chris memoire fin PDF
Chris memoire fin PDFChris memoire fin PDF
Chris memoire fin PDF
 

Destacado

Prof.dr. halit hami oz 01-hastane otomasyonu-amaç kapsam ve standartlar
Prof.dr. halit hami oz 01-hastane otomasyonu-amaç kapsam ve standartlarProf.dr. halit hami oz 01-hastane otomasyonu-amaç kapsam ve standartlar
Prof.dr. halit hami oz 01-hastane otomasyonu-amaç kapsam ve standartlarProf. Dr. Halit Hami Öz
 
003 Uml Semalari [94 Slides]
003 Uml Semalari [94 Slides]003 Uml Semalari [94 Slides]
003 Uml Semalari [94 Slides]Erol Bozkurt
 
Kocaeli Üniversitesi Randevu Yönetim Sistemi Raporu
Kocaeli Üniversitesi Randevu Yönetim Sistemi RaporuKocaeli Üniversitesi Randevu Yönetim Sistemi Raporu
Kocaeli Üniversitesi Randevu Yönetim Sistemi RaporuEnes Caglar
 
Tasarım Analiz Raporu: Üniversite Web Sitesi
Tasarım Analiz Raporu: Üniversite Web SitesiTasarım Analiz Raporu: Üniversite Web Sitesi
Tasarım Analiz Raporu: Üniversite Web Sitesitrkaplan
 
Sosyal KulüPler Yillik Faaliyet Raporu
Sosyal  KulüPler Yillik Faaliyet RaporuSosyal  KulüPler Yillik Faaliyet Raporu
Sosyal KulüPler Yillik Faaliyet Raporuderslopedi
 
Okul örgütü ve yöneti̇mi̇ rapor
Okul örgütü ve yöneti̇mi̇ raporOkul örgütü ve yöneti̇mi̇ rapor
Okul örgütü ve yöneti̇mi̇ raportubapkok
 
Prof.dr. halit hami oz 08-hastane otomasyonu-poli̇kli̇ni̇k modülü
Prof.dr. halit hami oz 08-hastane otomasyonu-poli̇kli̇ni̇k modülüProf.dr. halit hami oz 08-hastane otomasyonu-poli̇kli̇ni̇k modülü
Prof.dr. halit hami oz 08-hastane otomasyonu-poli̇kli̇ni̇k modülüProf. Dr. Halit Hami Öz
 
An Architectural Model for Adapting Domain-Specific AOM Applications
An Architectural Model for Adapting Domain-Specific AOM ApplicationsAn Architectural Model for Adapting Domain-Specific AOM Applications
An Architectural Model for Adapting Domain-Specific AOM Applicationseduardomg23
 
Use of hog descriptors in phishing detection
Use of hog descriptors in phishing detectionUse of hog descriptors in phishing detection
Use of hog descriptors in phishing detectionSelman Bozkır
 
007 Uml Modelleri Analiz Ve Tasarim [74 Slides]
007 Uml Modelleri Analiz Ve Tasarim [74 Slides]007 Uml Modelleri Analiz Ve Tasarim [74 Slides]
007 Uml Modelleri Analiz Ve Tasarim [74 Slides]Erol Bozkurt
 
DeğişİK Modül Notları
DeğişİK Modül NotlarıDeğişİK Modül Notları
DeğişİK Modül NotlarıMUSTAFA BAYINDIR
 
Sistem analizi ve yönetim bilgi sistemleri
Sistem analizi ve yönetim bilgi sistemleriSistem analizi ve yönetim bilgi sistemleri
Sistem analizi ve yönetim bilgi sistemleriGokhan Gokkurt
 

Destacado (20)

Hastane Poliklinik Otomasyonu
Hastane Poliklinik OtomasyonuHastane Poliklinik Otomasyonu
Hastane Poliklinik Otomasyonu
 
UML ile Modelleme
UML ile ModellemeUML ile Modelleme
UML ile Modelleme
 
Class Diagram
Class DiagramClass Diagram
Class Diagram
 
Prof.dr. halit hami oz 01-hastane otomasyonu-amaç kapsam ve standartlar
Prof.dr. halit hami oz 01-hastane otomasyonu-amaç kapsam ve standartlarProf.dr. halit hami oz 01-hastane otomasyonu-amaç kapsam ve standartlar
Prof.dr. halit hami oz 01-hastane otomasyonu-amaç kapsam ve standartlar
 
003 Uml Semalari [94 Slides]
003 Uml Semalari [94 Slides]003 Uml Semalari [94 Slides]
003 Uml Semalari [94 Slides]
 
Yazılım Gereksinim Mühendisliği Semineri
Yazılım Gereksinim Mühendisliği SemineriYazılım Gereksinim Mühendisliği Semineri
Yazılım Gereksinim Mühendisliği Semineri
 
Kocaeli Üniversitesi Randevu Yönetim Sistemi Raporu
Kocaeli Üniversitesi Randevu Yönetim Sistemi RaporuKocaeli Üniversitesi Randevu Yönetim Sistemi Raporu
Kocaeli Üniversitesi Randevu Yönetim Sistemi Raporu
 
Tasarım Analiz Raporu: Üniversite Web Sitesi
Tasarım Analiz Raporu: Üniversite Web SitesiTasarım Analiz Raporu: Üniversite Web Sitesi
Tasarım Analiz Raporu: Üniversite Web Sitesi
 
Proje raporu
Proje raporuProje raporu
Proje raporu
 
Gereksinim Analizi Dokümanı Hazırlama
Gereksinim Analizi Dokümanı HazırlamaGereksinim Analizi Dokümanı Hazırlama
Gereksinim Analizi Dokümanı Hazırlama
 
İlaç Takip Sistemi ve Ötesi
İlaç Takip Sistemi ve Ötesiİlaç Takip Sistemi ve Ötesi
İlaç Takip Sistemi ve Ötesi
 
Sosyal KulüPler Yillik Faaliyet Raporu
Sosyal  KulüPler Yillik Faaliyet RaporuSosyal  KulüPler Yillik Faaliyet Raporu
Sosyal KulüPler Yillik Faaliyet Raporu
 
Okul örgütü ve yöneti̇mi̇ rapor
Okul örgütü ve yöneti̇mi̇ raporOkul örgütü ve yöneti̇mi̇ rapor
Okul örgütü ve yöneti̇mi̇ rapor
 
Prof.dr. halit hami oz 08-hastane otomasyonu-poli̇kli̇ni̇k modülü
Prof.dr. halit hami oz 08-hastane otomasyonu-poli̇kli̇ni̇k modülüProf.dr. halit hami oz 08-hastane otomasyonu-poli̇kli̇ni̇k modülü
Prof.dr. halit hami oz 08-hastane otomasyonu-poli̇kli̇ni̇k modülü
 
Google Servisleri
Google ServisleriGoogle Servisleri
Google Servisleri
 
An Architectural Model for Adapting Domain-Specific AOM Applications
An Architectural Model for Adapting Domain-Specific AOM ApplicationsAn Architectural Model for Adapting Domain-Specific AOM Applications
An Architectural Model for Adapting Domain-Specific AOM Applications
 
Use of hog descriptors in phishing detection
Use of hog descriptors in phishing detectionUse of hog descriptors in phishing detection
Use of hog descriptors in phishing detection
 
007 Uml Modelleri Analiz Ve Tasarim [74 Slides]
007 Uml Modelleri Analiz Ve Tasarim [74 Slides]007 Uml Modelleri Analiz Ve Tasarim [74 Slides]
007 Uml Modelleri Analiz Ve Tasarim [74 Slides]
 
DeğişİK Modül Notları
DeğişİK Modül NotlarıDeğişİK Modül Notları
DeğişİK Modül Notları
 
Sistem analizi ve yönetim bilgi sistemleri
Sistem analizi ve yönetim bilgi sistemleriSistem analizi ve yönetim bilgi sistemleri
Sistem analizi ve yönetim bilgi sistemleri
 

Similar a Okul otomasyon rapor

Sunucu işletim sistemi 5
Sunucu işletim sistemi 5Sunucu işletim sistemi 5
Sunucu işletim sistemi 5Erol Dizdar
 
Sunucu işletim sistemi 1
Sunucu işletim sistemi 1Sunucu işletim sistemi 1
Sunucu işletim sistemi 1Erol Dizdar
 
Bulut Bilişim ve Bilgisayar Ağları
Bulut Bilişim ve Bilgisayar AğlarıBulut Bilişim ve Bilgisayar Ağları
Bulut Bilişim ve Bilgisayar Ağlarıcgoze
 
Sunucu işletim sistemi 4
Sunucu işletim sistemi 4Sunucu işletim sistemi 4
Sunucu işletim sistemi 4Erol Dizdar
 
5.sunucu i̇şletim sistemi
5.sunucu i̇şletim sistemi5.sunucu i̇şletim sistemi
5.sunucu i̇şletim sistemiFatih Tüzen
 
11-İşletim Sistemleri Temeller
11-İşletim Sistemleri Temeller11-İşletim Sistemleri Temeller
11-İşletim Sistemleri TemellerMücahit Gürsoy
 
11 isletimsistemleritemeller-090313144650-phpapp01
11 isletimsistemleritemeller-090313144650-phpapp0111 isletimsistemleritemeller-090313144650-phpapp01
11 isletimsistemleritemeller-090313144650-phpapp01Sercan Asler
 
1 sunucu isletim sistemi
1 sunucu isletim sistemi1 sunucu isletim sistemi
1 sunucu isletim sistemiFatih Tüzen
 
BTT. Modül 12.İşletim Sistemleri Kurulum
BTT. Modül 12.İşletim Sistemleri KurulumBTT. Modül 12.İşletim Sistemleri Kurulum
BTT. Modül 12.İşletim Sistemleri Kurulumdeniz armutlu
 
14-İşletim Sistemleri Gelismis Özellikleri
14-İşletim Sistemleri Gelismis Özellikleri14-İşletim Sistemleri Gelismis Özellikleri
14-İşletim Sistemleri Gelismis ÖzellikleriMücahit Gürsoy
 
Nesne tabanlı programlama 2
Nesne tabanlı programlama 2Nesne tabanlı programlama 2
Nesne tabanlı programlama 2Erol Dizdar
 
Veri tabanı planlama
Veri tabanı planlamaVeri tabanı planlama
Veri tabanı planlamakhan_27
 
BTT. Modul 14. Isletim Sistemleri Gelismis Ozellikler Megep Modulu
BTT. Modul 14. Isletim Sistemleri Gelismis Ozellikler Megep ModuluBTT. Modul 14. Isletim Sistemleri Gelismis Ozellikler Megep Modulu
BTT. Modul 14. Isletim Sistemleri Gelismis Ozellikler Megep Moduludeniz armutlu
 
Sunucu işletim sistemi 6
Sunucu işletim sistemi 6Sunucu işletim sistemi 6
Sunucu işletim sistemi 6Erol Dizdar
 
BTT. Modül 11.İşletim Sistemleri Temelleri
BTT. Modül 11.İşletim Sistemleri TemelleriBTT. Modül 11.İşletim Sistemleri Temelleri
BTT. Modül 11.İşletim Sistemleri Temellerideniz armutlu
 
Sunucu işletim sistemi 2
Sunucu işletim sistemi 2Sunucu işletim sistemi 2
Sunucu işletim sistemi 2Erol Dizdar
 

Similar a Okul otomasyon rapor (20)

Sunucu işletim sistemi 5
Sunucu işletim sistemi 5Sunucu işletim sistemi 5
Sunucu işletim sistemi 5
 
Sunucu işletim sistemi 1
Sunucu işletim sistemi 1Sunucu işletim sistemi 1
Sunucu işletim sistemi 1
 
Bulut Bilişim ve Bilgisayar Ağları
Bulut Bilişim ve Bilgisayar AğlarıBulut Bilişim ve Bilgisayar Ağları
Bulut Bilişim ve Bilgisayar Ağları
 
Sunucu işletim sistemi 4
Sunucu işletim sistemi 4Sunucu işletim sistemi 4
Sunucu işletim sistemi 4
 
5.sunucu i̇şletim sistemi
5.sunucu i̇şletim sistemi5.sunucu i̇şletim sistemi
5.sunucu i̇şletim sistemi
 
11-İşletim Sistemleri Temeller
11-İşletim Sistemleri Temeller11-İşletim Sistemleri Temeller
11-İşletim Sistemleri Temeller
 
11 isletimsistemleritemeller-090313144650-phpapp01
11 isletimsistemleritemeller-090313144650-phpapp0111 isletimsistemleritemeller-090313144650-phpapp01
11 isletimsistemleritemeller-090313144650-phpapp01
 
1 sunucu isletim sistemi
1 sunucu isletim sistemi1 sunucu isletim sistemi
1 sunucu isletim sistemi
 
BTT. Modül 12.İşletim Sistemleri Kurulum
BTT. Modül 12.İşletim Sistemleri KurulumBTT. Modül 12.İşletim Sistemleri Kurulum
BTT. Modül 12.İşletim Sistemleri Kurulum
 
14-İşletim Sistemleri Gelismis Özellikleri
14-İşletim Sistemleri Gelismis Özellikleri14-İşletim Sistemleri Gelismis Özellikleri
14-İşletim Sistemleri Gelismis Özellikleri
 
Nesne tabanlı programlama 2
Nesne tabanlı programlama 2Nesne tabanlı programlama 2
Nesne tabanlı programlama 2
 
Veri tabanı planlama
Veri tabanı planlamaVeri tabanı planlama
Veri tabanı planlama
 
482 bk0083
482 bk0083482 bk0083
482 bk0083
 
Flash 2
Flash 2Flash 2
Flash 2
 
BTT. Modul 14. Isletim Sistemleri Gelismis Ozellikler Megep Modulu
BTT. Modul 14. Isletim Sistemleri Gelismis Ozellikler Megep ModuluBTT. Modul 14. Isletim Sistemleri Gelismis Ozellikler Megep Modulu
BTT. Modul 14. Isletim Sistemleri Gelismis Ozellikler Megep Modulu
 
Ağ temelleri
Ağ temelleriAğ temelleri
Ağ temelleri
 
Sunucu işletim sistemi 6
Sunucu işletim sistemi 6Sunucu işletim sistemi 6
Sunucu işletim sistemi 6
 
BTT. Modül 11.İşletim Sistemleri Temelleri
BTT. Modül 11.İşletim Sistemleri TemelleriBTT. Modül 11.İşletim Sistemleri Temelleri
BTT. Modül 11.İşletim Sistemleri Temelleri
 
7-Post(İlk Açılış)
7-Post(İlk Açılış)7-Post(İlk Açılış)
7-Post(İlk Açılış)
 
Sunucu işletim sistemi 2
Sunucu işletim sistemi 2Sunucu işletim sistemi 2
Sunucu işletim sistemi 2
 

Más de Enes Caglar

Dijital i̇mza ve ssl
Dijital i̇mza ve sslDijital i̇mza ve ssl
Dijital i̇mza ve sslEnes Caglar
 
Blowfish Şifreleme Algoritması
Blowfish Şifreleme AlgoritmasıBlowfish Şifreleme Algoritması
Blowfish Şifreleme AlgoritmasıEnes Caglar
 
Ethernet arp anahtarlar yönlendiriciler ppp
Ethernet arp anahtarlar yönlendiriciler pppEthernet arp anahtarlar yönlendiriciler ppp
Ethernet arp anahtarlar yönlendiriciler pppEnes Caglar
 
2 baglanti katman_1_6s
2 baglanti katman_1_6s2 baglanti katman_1_6s
2 baglanti katman_1_6sEnes Caglar
 

Más de Enes Caglar (10)

Web Crawlers
Web CrawlersWeb Crawlers
Web Crawlers
 
Dns security
Dns securityDns security
Dns security
 
Dijital i̇mza ve ssl
Dijital i̇mza ve sslDijital i̇mza ve ssl
Dijital i̇mza ve ssl
 
IIS
IISIIS
IIS
 
Diffie hellman
Diffie  hellmanDiffie  hellman
Diffie hellman
 
Wimax Sunum
Wimax SunumWimax Sunum
Wimax Sunum
 
Wimax sunum
Wimax sunumWimax sunum
Wimax sunum
 
Blowfish Şifreleme Algoritması
Blowfish Şifreleme AlgoritmasıBlowfish Şifreleme Algoritması
Blowfish Şifreleme Algoritması
 
Ethernet arp anahtarlar yönlendiriciler ppp
Ethernet arp anahtarlar yönlendiriciler pppEthernet arp anahtarlar yönlendiriciler ppp
Ethernet arp anahtarlar yönlendiriciler ppp
 
2 baglanti katman_1_6s
2 baglanti katman_1_6s2 baglanti katman_1_6s
2 baglanti katman_1_6s
 

Okul otomasyon rapor

  • 1.
  • 2. TELİF HAKKI Copyright © 2010 Kocaeli Üniversitesi Bu projenin tüm hakları Kocaeli Üniversitesi Bilgisayar Mühendisliği Bölümüne aittir. Her hakkı saklıdır. Hiçbir bölümü ve paragrafı kısmen veya tamamen ya da özet halinde, fotokopi veya başka herhangi bir şekilde çoğaltılamaz, dağıtılamaz. ÖZET 2
  • 3. Online Okul Web Otomasyon Sistemi; ilköğretim, Lise, Yüksekokul ve Özel eğitim kurumları için hazırlanmış bir otomasyon sistemidir. Bu sistem ile okullara ait her türlü bilgi, duyuru, doküman, resim gibi içerikleri online bir şekilde web sitesinde yayınlanabilmektedir. Sistem sadece web üzerinden yayınlanan içeriklerden öte, öğrenci bilgi sistemini de içermektedir. Bu sistem ile öğrenci ve veliler not, devamsızlık, öğretmen görüşleri ve ödevlerini internet üzerinden takip edebilirler. Öğretmenler internet erişimi olan her bilgisayardan öğrenci notları, ödevleri ve öğrenciler hakkındaki görüşleri sisteme girebilirler. Ayrıca öğretmenlerin genel ihtiyaçları arasında olan sınıf listeleri, öğrenci not durumu, devamsızlıklık durumu gibi listelere sistem üzerinden ulaşabilirler. Sistemin en büyük amacı öğrenci-Veli-Öğretmen-İdareci işbirliğini arttırmak ve bunun sonucu olarak eğitimde kaliteyi yükseltmeyi hedeflemektedir. Sistemin kolay kullanılması, web üzerinden güncellenebilmesi, sistemi kullanmak için ekstra internet bilgisine gerek kalmaması öğrenci ,veli ve öğretmenlerin işlemlerini kolaylaştırması büyük önem taşımaktadır. SUMMARY 3
  • 4. School web otomation system is prepared for primary schools, high school and universities to make easier to share and get informations easily. The users of this system can easily access all kinds of informations, advirtisements, documents, pictures,etc. which according themselves. The system not only include the web contentns but also the student information system. By this system students can easily access their educational information, marks, teacher’s thoughts about themselves. The teachers can save the marks about the student’s exams, homeworks, etc. easily if they have an internet connection. In addition they can see the lessons which they have. Also they can see the lack of continuities about the students. The most important purpose of this system is to make beter the teacher-parents and manager relationship and make higher the level of the education quality. It is important for the users that the system can be used easily and make easy to do all the processes without any knowladge about using the internet, so everyone can use this systen practically. ÖNSÖZ 4
  • 5. Sunmuş olduğumuz proje online bir Okul Otomasyon sistemidir. Sistem okullara ait her türlü bilgi, doküman, duyuru gibi bilgilerin paylaşılmasına, öğretmenlerin, ilgili öğrencilerinin notlarını kolay bir şekilde sisteme kaydedebilmesi, yönetebilmesi ve değerlendirebilmesine, öğrencilere ait bilgilerin kolayca erişilebilmesine, öğrencilerin kendilerine ait not listesi, devamsızlık listesi gibi bir takım bilgilere ulaşabilmesine olanak sağlamaktadır. Ayrıca idareciler de kendileri ile ilgili sorumlulukları dahilindeki alanlara veri girme, güncelleme işlemlerini kolayca gerçekleştirebilmektedir. Bu proje ile öğrenci-Veli-Öğretmen-İdareci işbirliğini arttırmak ve bunun sonucu olarak eğitimde kaliteyi yükseltmeyi hedeflemiştir. Saygılarımızla, Enes ÇAĞLAR - Şeyda YILMAZ 5
  • 6. İÇİNDEKİLER ÖZET..............................................................................................................................................2 SUMMARY.....................................................................................................................................3 ÖNSÖZ...........................................................................................................................................4 ŞEKİLLER DİZİNİ..............................................................................................................................9 TABLOLAR DİZİNİ.........................................................................................................................11 GİRİŞ................................................................................................................................................12 BÖLÜM II.....................................................................................................................................14 2.1. PROJEDE KULLANILAN TEKNOLOJİLER......................................................................................14 2.1.1. ASP.NET Ve .NET Framework............................................................................................14 2.1.1.1. .NET Framework ......................................................................................................................14 2.1.1.2. Server Kontrol ..........................................................................................................................15 2.1.1.3. Web.Config .............................................................................................................................15 2.1.1.4. State Management...................................................................................................................17 2.1.1.5. Master Page..............................................................................................................................18 2.1.1.6. Web User Control ....................................................................................................................23 2.1.1.6.1 Özellikleri ..........................................................................................................................23 2.1.2. SQL ve MSSQL.....................................................................................................................24 2.1.2.1. SQL Veri Tanımlama Deyimleri..................................................................................................25 2.1.2.1.1. ALTER TABLE tablo_adı.....................................................................................................25 2.1.2.1.2. DROP TABLE tablo_adı......................................................................................................25 2.1.2.1.3. TRUNCATE TABLE tablo_adı..............................................................................................25 2.1.2.1.4. CREATE VIEW görüş_adı...................................................................................................25 2.1.2.1.5. DROP VIEW görüş_adı......................................................................................................25 2.1.2.1.6. CREATE INDEX indeks_adı.................................................................................................25 2.1.2.1.7. DROP INDEX indeks_adı....................................................................................................25 2.1.2.1.8. SELECT deyimi...................................................................................................................26 2.1.2.1.9. UPDATE deyimi.................................................................................................................26 2.1.2.1.10. INSERT deyimi.................................................................................................................26 2.1.2.1.11. DELETE deyimi................................................................................................................26 2.1.2.2. SQL Deyimleri............................................................................................................................26 2.1.2.3. DML (Data Manipulation Language) Deyimleri,........................................................................27 2.1.2.3.1. Select Deyimi....................................................................................................................28 2.1.2.3.2. Aritmetik İşlemler.............................................................................................................29 2.1.2.3.3.Verileri Sıralamak...............................................................................................................29 2.1.2.3.4. Gruplandırma İşlemleri.....................................................................................................30 2.1.2.3.5. Insert Deyimi....................................................................................................................30 2.1.2.3.6. Update Deyimi..................................................................................................................30 2.1.2.3.7. Delete Deyimi..................................................................................................................31 2.2. KODLAMA STANDARTLARI....................................................................................................................31 2.2.1. Tanımlar ve Kısaltmalar.....................................................................................................31 2.2.1.1. PascalCase.................................................................................................................................31 2.2.1.2. CamelCase................................................................................................................................32 2.2.1.3. UpperCase................................................................................................................................32 2.2.1.4. LowerCase.................................................................................................................................32 2.2.2. C# İsimlendirme Standartları..............................................................................................32 2.2.2.1. Değişken Tanımlama Standartları.............................................................................................33 2.2.2.2. Genel Hata Yönetimi.................................................................................................................33 2.2.2.3. Programlama Pratikleri.............................................................................................................34 2.2.2.4. Veritabanı Nesne Adlandırma Kuralları.....................................................................................34 2.2.2.5. Tabloların İsimlendirilmesi........................................................................................................35 2.2.2.6. Saklı Prosedürlerin İsimlendirilmesi..........................................................................................36 2.2.2.7. Tetikleyicilerin (Trigger) İsimlendirilmesi..................................................................................37 2.2.2.8. Birincil Anahtarlar (Primary Keys).............................................................................................38 2.2.2.9. Sekanslar(Sequences)...............................................................................................................38 6
  • 7. 2.2.3. PROJE İÇERİĞİNİN ANLATILMASI........................................................................................38 2.2.3.1.UYGULAMA KISMI......................................................................................................................38 2.2.3.1.1. Öğrenci ve Veli Kısmı........................................................................................................44 2.2.3.1.1.1. Öğrenci Bilgi Paneli Özellik ve İşlevleri......................................................................44 2.2.3.1.1.1.1 Öğrenci Not Görüntüleme.................................................................................44 2.2.3.1.1.1.2 Devamsızlık Bilgileri...........................................................................................45 2.2.3.1.1.1.3 Ödev Görüntüleme............................................................................................46 2.2.3.1.1.1.4 Öğretmen Görüşleri Görüntüleme....................................................................47 2.2.3.1.1.1.4 Ders Listesi Görüntüleme..................................................................................47 2.2.3.1.1.1.5 Şifre Güncelleme...............................................................................................47 2.2.3.1.1.2 Editör Bölümü............................................................................................................48 2.2.3.1.1.2.1 Editör Ana Menü...............................................................................................48 2.2.3.1.1.2.2 Duyurular..........................................................................................................48 2.2.3.1.1.2.3 Personel Bilgisi..................................................................................................49 2.2.3.1.1.2.4 Resim Galerisi ...................................................................................................51 2.2.3.1.1.2.5 Ziyaretçi Defteri.................................................................................................52 2.2.3.1.1.2.6 Makaleler..........................................................................................................53 2.2.3.1.1.2.7. Etkinlikler .........................................................................................................54 2.2.3.1.1.2.8. Başarılar...........................................................................................................55 2.2.3.1.1.2.9 Okul Ziyaretçi Takibi .........................................................................................56 2.2.3.1.1.3 Öğretmen Bölümü.....................................................................................................57 2.2.3.1.1.3.1. Öğretmen Girişi................................................................................................57 2.2.3.1.1.3.2. Öğretmen Anasayfa..........................................................................................58 2.2.3.1.1.3.3. Ödev Girişi .......................................................................................................58 2.2.3.1.1.3.4. Öğrenci Görüş Bildirme ...................................................................................60 2.2.3.1.1.3.5. Okul Ziyaretçi Bilgileri.......................................................................................61 2.2.3.1.1.3.6. Şifre Değiştirme ...............................................................................................62 2.2.3.1.1.3.7. Rehberlik Servisleri...........................................................................................62 2.2.3.1.1.3.8. Öğrenci Not Girişi ............................................................................................64 2.2.3.1.1.3.9. Bilgi Listeleri.....................................................................................................65 2.2.3.1.1.3.9.1. Öğrenci Durum Dökümanı .......................................................................65 2.2.3.1.1.3.9.2. Sınıf Listeleri.............................................................................................66 2.2.3.1.1.3.9.3. Toplu Sınıf Not Listesi...............................................................................67 2.2.3.1.1.3.9.4. Toplu Sınıf Devamsızlık Listesi..................................................................69 2.2.3.1.1.3.9.5. Öğretmen Listesi......................................................................................70 2.2.3.1.1.4. Yönetici Bölümü.......................................................................................................70 2.2.3.1.1.4.1. Web Sitesi Bilgi Yönetim Bölümleri ve İşleveri..................................................70 2.2.3.1.1.4.2 Yönetici Giriş.....................................................................................................71 2.2.3.1.1.4.3. Bölüm Bilgileri.................................................................................................72 2.2.3.1.1.4.4. Tarihçe Bilgisi...................................................................................................73 2.2.3.1.1.4.5. Logo Yönetimi...................................................................................................74 2.2.3.1.1.4.6. Site Ayarları......................................................................................................74 2.2.3.1.1.4.7. Mezun Bilgileri..................................................................................................75 2.2.3.1.1.4.8. Akademik Takvim.............................................................................................76 2.2.3.1.1.4.9. Şifre Yenileme..................................................................................................77 2.2.3.1.1.4.10. Editör Ekleme.................................................................................................77 2.2.3.1.1.4.11. Link Yönetimi..................................................................................................79 2.2.3.2. VERİTABANI KISMI....................................................................................................................79 2.2.3.2.1. Saklı Yordamlar - Stored Procedures.................................................................................80 2.2.3.2.1.1. Sp_DeletetblAnketler...............................................................................................80 2.2.3.2.1.2. Sp_DeletetblBolumler..............................................................................................80 2.2.3.2.1.3. Sp_DeletetblDersler.................................................................................................80 2.2.3.2.1.4. Sp_DeletetblDevamsizlikBilgileri..............................................................................80 2.2.3.2.1.5. Sp_DeletetblOdevler................................................................................................81 2.2.3.2.1.6. Sp_DeletetblOgrenciler............................................................................................81 2.2.3.2.1.7. Sp_DeletetblSiniflar..................................................................................................81 2.2.3.2.1.8. Sp_GetAnketIds........................................................................................................81 2.2.3.2.1.9. Sp_GetDersAdi.........................................................................................................81 2.2.3.2.1.10. Sp_GetOgretmenList..............................................................................................81 2.2.3.2.1.11. Sp_GetOgrIdByOgrNo.............................................................................................82 2.2.3.2.1.12. Sp_GetSinifIdbyName.............................................................................................82 7
  • 8. 2.2.3.2.1.13. Sp_GetSiniftakiOgrenciler.......................................................................................82 2.2.3.2.1.14. Sp_GettblAnketler..................................................................................................82 2.2.3.2.1.15. Sp_GettblBolumler.................................................................................................82 2.2.3.2.1.16. Sp_GettbBolumlerList.............................................................................................83 2.2.3.2.1.17. Sp_GettblDersler....................................................................................................83 2.2.3.2.1.18. Sp_GettblDerslerList...............................................................................................83 2.2.3.2.1.19. Sp_GettblDevamsizlikBilgileri.................................................................................83 2.2.3.2.1.20. Sp_GettblDevamsizlikBilgileriList............................................................................83 2.2.3.2.1.21. Sp_GettblOdevler...................................................................................................83 2.2.3.2.1.22. Sp_GettblOdevlerList..............................................................................................83 2.2.3.2.1.24. Sp_GettblOgrencilerList..........................................................................................84 2.2.3.2.1.25. Sp_GettblSınıflar.....................................................................................................84 2.2.3.2.1.26. Sp_GettblSınıflarList...............................................................................................84 2.2.3.2.1.27. Sp_GetTopluNotList................................................................................................84 2.2.3.2.1.28. Sp_GetTopluOgrenciBilgileri...................................................................................85 2.2.3.2.1.29. Sp_GetZiyaretciBilgileri...........................................................................................85 2.2.3.2.1.30. Sp_InserttblAnketler...............................................................................................85 2.2.3.2.1.31. Sp_InserttblBolumler..............................................................................................85 2.2.3.2.1.1. Sp_InserttblDersler...................................................................................................85 2.2.3.2.1.1. Sp_InserttblDevamsizlikBilgileri................................................................................85 2.2.3.2.1.32. Sp_InserttblOdevler................................................................................................86 2.2.3.2.1.33. Sp_InserttblOgrenciler............................................................................................86 2.2.3.2.1.34. Sp_InserttblRehberlikFormlari................................................................................86 2.2.3.2.1.35. Sp_InserttblSiniflar.................................................................................................86 2.2.3.2.1.36. Sp_InsertOgretmenYorumu....................................................................................86 2.2.3.2.1.37. Sp_selectAnketCevaplari........................................................................................86 2.2.3.2.1.38. Sp_selectAnketSorulari...........................................................................................87 2.2.3.2.1.39. Sp_selectOgretmenDersler.....................................................................................87 2.2.3.2.1.40. Sp_UpdatetblAnketler............................................................................................87 2.2.3.2.1.42. Sp_UpdatetblDersler..............................................................................................87 2.2.3.2.1.43. Sp_UpdatetblDevamsizlikBilgileri...........................................................................87 2.2.3.2.1.44. Sp_UpdatetblOgrenciler.........................................................................................87 2.2.3.2.1.45. Sp_UpdatetblSiniflar...............................................................................................87 2.2.3.2.2. Tablolar.............................................................................................................................88 2.2.3.2.2.1. Anketler Tablosu.......................................................................................................88 2.2.3.2.2.2. Başarılar Tablosu......................................................................................................88 2.2.3.2.2.3. Bölümler Tablosu .....................................................................................................89 2.2.3.2.2.4. Dersler Tablosu.........................................................................................................89 2.2.3.2.2.5. Devamsızlık Bilgileri Tablosu.....................................................................................89 2.2.3.2.2.6. Duyurular Tablosu....................................................................................................90 2.2.3.2.2.7. Editörler Tablosu......................................................................................................90 2.2.3.2.2.8. Etkinlikler Tablosu....................................................................................................91 2.2.3.2.2.9. Görüşler Tablosu......................................................................................................91 2.2.3.2.2.10. Kullanıcı Bilgileri Tablosu........................................................................................92 2.2.3.2.2.11. Makaleler Tablosu..................................................................................................92 2.2.3.2.2.12. Notlar Tablosu........................................................................................................93 2.2.3.2.2.13. Ödevler Tablosu......................................................................................................93 2.2.3.2.2.14. Öğrenciler Tablosu..................................................................................................94 2.2.3.2.2.15. Öğretmenler Tablosu..............................................................................................94 2.2.3.2.2.16. Öğretmen Sınıf ve Dersler Tablosu.........................................................................94 2.2.3.2.2.17. Öğretmen Yorumları Tablosu..................................................................................95 2.2.3.2.2.18. Okul Ziyaretçi Bilgileri Tablosu................................................................................95 2.2.3.2.2.19. Personel Tablosu....................................................................................................96 2.2.3.2.2.20. Rehberlik Formları Tablosu.....................................................................................96 2.2.3.2.2.21. Resim Galerisi Tablosu............................................................................................97 2.2.3.2.2.22. Sınıflar Tablosu.......................................................................................................97 2.2.3.2.2.23. Site Ayarları Tablosu...............................................................................................98 2.2.3.2.2.24. Ziyaretçi Defteri......................................................................................................98 SONUÇ VE ÖNERİLER.................................................................................................................100 KAYNAKLAR...............................................................................................................................101 8
  • 9. ŞEKİLLER DİZİNİ Şekil 2.1. State Management olmadığı durum Şekil 2.2. State management olduğu durum Şekil 2.3. Master page oluşturma Şekil 2.4. Master Page oluşturma Şekil 2.5. Saklı yordamların avantajları Şekil 2.6. Projeye ait solution explorer görüntüsü Şekil 2.7. Tüm kullanıcıların giriş yaptığı anasayfa Şekil 2.8. Öğrenci Ana Menü Şekil 2.9. Öğrenci Not Götüntüleme Şekil 2.10. Devamsızlık Bilgileri Şekil 2.11. Ödev Görüntüleme Şekil 2.12. Öğretmen Yorumları Şekil 2.13. Ders Listesi Şekil 2.14. Öğrenci Şifre Güncelleme Şekil 2.15. Editör Ana Menü Şekil 2.16. Duyurular Şekil 2.17. Yeni Duyuru Ekleme Şekil 2.18. Personel Tablosu Şekil 2.19. Personel Tablosunda güncelleme işlemi Şekil 2.20. Yeni Personel Ekleme Şekil 2.21. Resimler Şekil 2.22. Yeni Resim Ekleme Şekil 2.23. Makaleler Şekil 2.24. Yeni Makale Ekleme Şekil 2.25. Etkinlikler Şekil 2.26. Yeni Etkinlik Ekleme Şekil 2.27. Başarılar Şekil 2.28. Yeni Başarı Ekleme Şekil 2.29. Okul Ziyaretçi Bilgileri Şekil 2.30. Yeni Ziyaretçi Ekleme Şekil 2.31. Öğretmen Giriş Ekran Ekranı Şekil 2.32. Öğretmen Ana Menü Şekil 2.33. Öğretmen Ödev Görüntüleme Şekil 2.34. Ödev Ekleme 9
  • 10. Şekil 2.35. Öğrenci Görüş Bildirme 1. Aşaması Şekil 2.36. Görüş Bildirme Ekranı Şekil 2.37. Okul Ziyaretçi Bilgileri Şekil 2.38. Şifre Güncelleme Şekil 2.39. Rehberlik Servisleri Şekil 2.40. Görüş Bildirme-Öğrenci Seçimi Şekil 2.41. Rehberlik Anketi Şekil 2.42. Öğrenci Not Giriş-Sınıf Seçimi Şekil 2.43. Öğrenci Not Giriş Ekranı Şekil 2.44. Yeni Not Giriş ve Güncelleme Şekil 2.45. Bilgi Listeleri Şekil 2.46. Öğrenci Durum Dökümanı Birinci Aşama Şekil 2.47. Öğrenci Durum Dökümanı Şekil 2.48. Öğretmenin Derslerine Girdiği Sınıfların Listesi Şekil 2.49. Sınıfa Ait Öğrenci Listesi Şekil 2.50. Toplu sınıf Not Listesi-Öğretmene ait sınıfların GörüntülenmesiŞekil Şekil 2.51. Toplu Sınıf Not Listesi- Dönem Seçimi Şekil 2.52. Toplu Sınıf Not Listesi Şekil 2.53. Toplu Sınıf Devamsızlık Listesi Şekil 2.54. Toplu Sınıf Devamsızlık Listesi Şekil 2.55. Öğretmen Listesi Şekil 2.56. Yönetici Girişi Şekil 2.57. Yönetici ana Menü Şekil 2.58. Yönetici Bölüm Ekleme Şekil 2.59. Tarihçe Bilgisi Ekleme Şekil 2.60. Logo Yönetimi Şekil 2.61. Site Ayarları Şekil 2.62. Mezun Arama Şekil 2.63. Akademik Takvim Şekil 2.64. Yeni Akademik Takvim Ekleme Şekil 2.65. Yönetici Şifre Değiştirme Şekil 2.66. Editör Yetki Alanları Şekil 2.67. Yeni Editor Ekleme Şekil 2.68. Link Yönetimi Şekil 2.69. Link Ekleme 10
  • 11. TABLOLAR DİZİNİ Tablo 2.1. tblAnketler Tablosu Tablo 2.2. tblBasarilar Tablosu Tablo 2.3. tblBolumler Tablosu Tablo 2.4. tblDersler Tablosu Tablo 2.5. Devamsizlik Bilgileri Tablosu Tablo 2.6. Duyurular Tablosu Tablo 2.7. Editorler Tablosu Tablo 2.8. Etkinlikler Tablosu Tablo 2.9. Gorusler Tablosu Tablo 2.10. Kullanici Bilgileri Tablosu Tablo 2.11. Makaleler Tablosu Tablo 2.12. Notlar Tablosu Tablo 2.13. Odevler Tablosu Tablo 2.14. Ogrenciler Tablosu Tablo 2.15. Ogretmenler Tablosu Tablo 2.16. Öğretmenin Sinif ve Dersleri Tablosu Tablo 2.17. OgretmenYorumlari Tablosu Tablo 2.18. OkulZiyaretci Tablosu Tablo 2.19. Personel Tablosu Tablo 2.20. Rehberlik Formlari Tablosu Tablo 2.21. Resim Galerisi Tablosu Tablo 2.22. Siniflar Tablosu Tablo 2.23. Site Ayarlari Tablosu Tablo 2.24. Ziyaretci Defteri Tablosu 11
  • 12. BÖLÜM I GİRİŞ Online Okul Web Otomasyon Sistemi; ilköğretim, Lise, Yüksekokul ve Özel eğitim kurumları için hazırlanmış bir otomasyon sistemidir. Bu sistem ile okulunuza ait her türlü bilgi, duyuru, doküman, resim gibi içerikleri online bir şekilde web sitenizde yayınlayabilirsiniz. Sistem sadece web üzerinden yayınlanan içeriklerden öte, öğrenci bilgi sistemini de içermektedir. Bu sistem ile öğrenci ve veliler not, devamsızlık, öğretmen görüşleri ve ödevlerini internet üzerinden takip edebilirler. Okulda kullandığınız programa girdiğiniz bilgileri ayrıca web not sistemine girmenize gerek kalmadan tüm bilgileri web sayfasına aktarabilirsiniz. Bu işlem sayesinde büyük bir kolay sağlanmakta, bilgilerin teker teker girilerek işlemlerin zorlaşması önlenmektedir. Öğretmenler internet erişimi olan her bilgisayardan öğrenci notları, ödevleri ve öğrenciler hakkındaki görüşleri sisteme girebilirler. Ayrıca öğretmenlerin genel ihtiyaçları arasında olan sınıf listeleri, öğrenci not durumu, devamsızlıklık durumu gibi listelere sistem üzerinden ulaşabilirler. Sistemin en büyük amacı öğrenci-Veli-Öğretmen-İdareci işbirliğini arttırmak ve 12
  • 13. bunun sonucu olarak eğitimde kaliteyi yükseltmeyi hedeflemektedir. Sistemin kolay kullanılması, web üzerinden güncellenebilmesi, sistemi kullanmak için ekstra internet bilgisine gerek kalmaması öğrenci ,veli ve öğretmenlerin işlemlerini kolaylaştırması büyük önem taşımaktadır. Okul otomasyon sistemi .Net kullanılarak hazırlanmıştır. Veritabanı olarak MSSQL veritabanı kullanılmıştır. ASP.NET ile üç katmanlı mimari ile hazırlanmış olup veritabanı işlemleri için stored procedur ler kullanılarak güvenlik sağlanmıştır. Proje dört ana kısımda incelenebilir. Bunlar öğrenci, öğretmen, editör ve idareci kısımlarıdır. Her bir kullanıcının görevleri ayrıdır ve sistemden bu görevleri yerine getirebilirler. Her bir kullanıcı kendilerine ait kullanıcı adı ve şifrelerini kullanarak sisteme giriş yaparlar ve kendilerine ait alanları görebilirler. Aşağıda her bir kullanıcı için kullanıcının yapabileceği işlevler belirtilmiştir. Öğrenci ve Veliler internet üzerinden öğrencinin derslerine ait yazılı, sözlü ve ödev notlarını görebilir, Öğrencinin yapmış olduğu devamsızlıklık durumunu sistemden öğrenebilirler. Ayrıca ders öğretmenleri tarafından verilen ödevleri ve öğretmenlerin öğrenci hakkındaki görüşlerini sistemden takip edebilirler. 13
  • 14. BÖLÜM II PROJEDE KULLANILAN TEKNOLOJİLER KODLAMA STANDARTLARI PROJE İÇERİĞİNİN ANLATILMASI 2.1. PROJEDE KULLANILAN TEKNOLOJİLER Proje ASP.NET ve C# yazılım dilleri kullanılarak yazılmıştır. Veritabanı sunucusu olarak ise Microsoft SQL Server 2005 veritabanı sunucusu kullanılmıştır. ASP.NET teknolojisi çok geniş bir alana yayılmaktadır. Aşağıda bu teknolojinin projede kulanılan bazı kısımlarına değinilmektedir. 2.1.1. ASP.NET Ve .NET Framework 2.1.1.1. .NET Framework .Net Framework, .Net platformunun bir dayanak noktasıdır. .Net Framework gücünü içerisinde barındırdığı yüzlerce sınıf (class) kütüphanesinden alır. .Net framework, sunucu 14
  • 15. tarafında çalışan bir yapı kurulabilmesini sağlar, olaya dayalı programlama modeli sayesinde daha hızlı ve verimli uygulamalar geliştirebilmesini ve bunları istenilen programlama diliyle yazabilmesini sağlar. .Net’in destek verdiği diller Visual Basic C# Microsoft Microsoft Jscript Microsoft .Net Visual J# .NET .Net Visual C+ + Pyhton Oberon Perl Haskell APL Cobol Scheme Pascal ML Eiffel Mercury Ada SmallTalk Caml C Çoklu dil desteğinin avantajları: • Kod modülleri yeniden kullanılabilir. Bir kod modülü, bir dil içinde yazılıp farklı diller içinde kullanılabilir. • Tüm diller için object kütüphanesi aynıdır ve aynı object modeli kullanılır. • Eski dillerde yazılmış programlar güncellenebilir. • .NET Framework içindeki tüm diller eşit performansa sahiptir. Bütün .NET tabanlı diller Microsoft Intermediate Language (MSIL)’a derlenir. Tüm MSIL ler native kod’a derlenir. Bu run-time’dır ve hepsi aynı derleyici kullanır. 2.1.1.2. Server Kontrol Kullanıcı arabirimi veya diğer ilişkisel fonksiyonlar oluşturmak üzere Server üzerinde çalışan componentlere server kontrol denir. Server kontroller runat= “server” özelliğine sahiptirler. 2.1.1.3. Web.Config Asp.Net’in yeniliklerinden olan web.config dosyası aslında bir ayar dosyasıdır. Ayarları bir XML formatında oluşturur ve ona göre kullanıcı işlemleri gerçekleştirilir. Web.config dosyası Asp.Net çalışmalarında mutlaka olmalıdır. Web.Config olmadığı 15
  • 16. durumlarda daha üst bir seviyede olan machine.config dosyası bulunmaktadır. Web.Config olmadığı durumlarda bu dosyadan ayarlar okunur. Bir web site oluşturulduğunda Soution Explorer'da web.config dosyasının eklendiğini görülür. Web.Config dosyamızın birimleri aşağıdaki gibidir. Birim Adı Tanımı <trace> Asp.Net trace ayarlarının yapılmasını sağlar. <globalization> Uygulada herhangi bir hata verdiğinde ne yapılması gerektiği belirlenebilir. Hata sayfasına git, mesaj iletisi ver gibi işlemler yapılabilir. <authentication> Üyelik sistemlerinde kullanıcıların geçerliliğini sağlamak için kullanılır. <sessionState> Session state ayarlarını bulundurur. <webservices> Web servisleri ile ilgili ayarları tutar. <securityPolicy> Kullunılabilecek güvenlik ayarlarını içerir. Örnek verilecek olursa; KOURYS projesinde veritabanına bağlanmak için tanımlanan connection string nesnesi, webconfig dosyasında şu şekilde tanımlanmıştır. <appSettings> <add key="systemConnectionString" value="Data Source=SEYDA-PCSQLEXPRESS; Initial Catalog=OkulOtomasyon; Integrated Security=sspi"></add> </appSettings> 16
  • 17. 2.1.1.4. State Management Web sayfalarında en çok kullanılan yöntemlerden biriside bir bilginin sayfalar arasın geçiş yapmasıdır. Bunun en iyi örneği üye girişi yapan bir kullanıcının web sitesinde dolaşabilmesidir. Asp.Net teknolojisi sayfalar arasında kullanıcı bilgilerini tutmayı (state) sağlar. Bu tarz uygulamalar windows uygulamalarda rahatlıkla yapılırken, her isteği sürekli olarak server’a post edilmesinden dolayı Asp.Net uygulamalarından biraz farklıdır. State management yok ise gönderilen bilgileri diğer sayfalar algılayamayacaktır. Şekil 2.1. State Management olmadığı durum Şekil 2.2. State management olduğu durum Kullanıcı bilgilerini saklamak ve kullanmak için kullanabilecek yöntemler vardır. Bunlar: 17
  • 18. View State • Session State • Application State View State kontrolü kendisine verilen bilgiyi gizli bir alanda tutar. Bu bilgi hafızaya Base64 formatında bir karakter dizisi olarak yazılır ve her geri postalamada(postback) sunucuya getirilir. Ancak viewstate özelliği sunucu kontrolleriyle sınırlıdır. Yüklenen bilgi ya sizin tarafınızdan oluşturlan bir custom object ya da basit bir bilgi türü olmak zorundadır. Session State kontrolü HttpSessionState sınıfını kullanır. Kullanıcıların bilgilerini içeren kod bilgileri, 120 bit’lik Session ID’de tutulur. Bilgileri tespit etmek, Session ID yardımı ile olur. Session tanımlama ASP.NET'te şu şekilde olabilir: Session["OgrenciNo"] = reader["OgrenciAdi"].ToString(); Burada veritabanından dönen bir değer Session[“OgrenciNo”] isimli session a atılmıştır. Diğer sayfalara geçiş yapıldığında bu nesne kullanılabilecektir. Application State web uygulaması içindeki türm sayfalar için global bir sistemdir. Ziyaretçi sayısını tutulması Application üzerinden kullanılır. 2.1.1.5. Master Page Internet siteleri göz önüne aldındığında, siteye ait sayfaların sıklıkla aynı şablonları kullandığı görülmektedir. Özellike, header, footer, navigasyon ve advertisement alanları, çoğunlukla siteye ait tüm sayfalarda aynı yerlerde kullanılır. Bu, siteye ait sayfaların standart olarak aynı görünümde olmasını sağlamakla kalmaz, değişen içeriğinde ortak bir şablon üzerinde durmasına imkan tanır. Htmli in ilk zamanlarında, bu tarz işlemleri gerçekleştirmek için, ortak olan alanlar 18
  • 19. kopyalanarak diğer sayfalara yapıştırılırdı. Ya da, ana şablonu ihtiva eden bir sayfadan diğer sayfalar "save as" metodu ile oluşturulur ve içerikleri değiştirilirdi. Bu tekniğin en büyük dezavantajı, şablondaki herhangi bir değişikliğin diğer sayfalara yansıtılması sırasında ortaya çıkmaktadır. Nitekim yüzlerce alt sayfaya aynı şablon uygulanıyorsa, bu gerçekten büyük bir problemdir. Bu soruna çözüm Asp ile gelmiştir. Asp, include takılarını kullanarak, sayfalarda tekrar eden içeriklerin kolayca kullanılabilmesini ve değişikliklerin tüm sayfalarda görünebilmesini sağlamıştır. Ancak elbetteki include takısınında bir takım sorunları vardır. Bunlardan birisi, tasarım zamanında include takısının işaret ettiği içeriğin görünememesidir. Dolayısıyla sayfanın bütünün nasıl göründüğünü inceleyebilmek için mutlaka çalıştırmak gerekmektedir. Diğer yandan, include tekniği takılar üzerine kurulu olduğundan, özellikle açık unutulan takılar sayfalarda istenmeyen Html çıktılarının oluşmasına yol açmaktadır. Asp.Net, bu tip ortak içeriklerin kullanılmasına daha güçlü ve etkin bir yaklaşımı getirmiştir. User Controls (Kullanıcı tanımlı kontroller), normal aspx içeriğine sahip olabilmekte ve .Net mimarisinin güçlü özelliklerini kullanabilmektedir. Her ne kadar etkili bir teknik olsada, user controlö 'ler içinde tek bir sorun öne çıkmaktadır. Bu sorun, tasarım zamanında user control içeriğinin görülememesidir. Asp.Net 2.0, Master Page yaklaşımı ile, yukarıda bahsedilen dezavantajları ortadan kaldırmayı başarmıştır. Bir Master Page, uygulandığı diğer aspx sayfalarının nasıl görünmesi gerektiğine karar veren bir şablon gibidir. Ancak, sağladığı ContentPlaceHolder bileşeni sayesinde, Master Pagei leri uygulayan diğer aspx sayfalarının, istenilen içeriğe sahip olmasınıda sağlamaktadır. En güzel yanı ise, normal bir aspx sayfası gibi tasarlanabilmesi, yani html, image, server control gibi üyeleri içerebilmesidir. Bunlara ek olarak, olay güdümlü programlama modelinide destekler. Dolayısıyla bir Master Page aslında bir aspx sayfasından farksızdır. Ancak asıl fark, bir Master Page bir aspx sayfasına uygulandığında ortaya çıkar. Master Pagef i uygulayan bir aspx sayfası tarayıcıda açıldığında tarayıcıya gelen sayfa, Master Page ile aspx sayfasının birleştirilmesi sonucu ortaya çıkan başka bir 19
  • 20. aspx sayfasıdır. Bu, .net framework ün getirdiği partial class tekniği sayesinde gerçekleşebilmektedir. Bunun, Master Pagee değişik kodlama etkileride vardır. Projede kullanılan Master Page'in oluşturulma aşamalarına değinildiğinde, ilk olarak, Visual Studio.Net 2008'de bir web sitesi açılmalıdır. Siteye Master Page eklemek için tek yapılması gereken, Solutiont 'a sağ tıklamak ve Add New ItemP den gelen pencerede, Master Page tipini seçmektir. Master Pagee ler master uzantılı dosyalardır. Şekil 2.3. Master page oluşturma Masterpage'i oluşturduktan sonra bu sayfalara her bir yeni sayfa türetildiğinde eklenecek yeni özellikler için bir alan ayrılmalıdır. Bu da ContentPlaceHolder bileşeni ile gerçekleştirilmektedir. Burada ContentPlaceHolder bileşeni, bu Master Pageı i uygulayacak olan sayfaların serbestçe erişebilecekleri ve içerik oluşturabilecekleri alanları tanımlamaktadır. 20
  • 21. Master Page° lerde, normal aspx sayfaları gibi tasarlanabilirler. Bir başka deyişle, Html kodları, aspx bileşenleri vb. içerebilirler. Projeye ait MasterPage.master isimli masterpage, image, menu ve ContentPlaceHolder ve PlaceHolder bileşenlerinden oluşmaktadır. Şekil 2.4. Master Page oluşturma Burada standart olarak bir web sayfasının tasarlanmasından farklı bir işlem yapılmamıştır. En önemli nokta Master Paget yazabilecekleri ContentPlaceHolder bileşeninin kullanılmasıdır. Dilersek bir Master Page içinde, birden fazla ContentPlaceHolder bileşeninede yer verebiliriz. Master Page in aspx kodlarına bakıldığında normal aspx sayfalarına göre en önemli değişik page direktifi yerine master direktifinin kullanılmasıdır. Master direktifi sayfanın bir Master Page olduğunu belirtmektedir. <%@ Master Language="C#" AutoEventWireup="true" CodeFile="MasterPage.master.cs" Inherits="AnaSayfa" %> ContentPlaceHolder bileşeni ise, 21
  • 22. <asp:ContentPlaceHolder id="ContentPlaceHolder1" runat="server"> </asp:ContentPlaceHolder> Anasayfanın masterpage tabanlı oluşturulması için anasayfaya yazılması gerek kod şu şekilde olmaktadır: <%@ Page Language="C#" MasterPageFile="~/MasterPage.master" AutoEventWireup="true" CodeFile="OkulOtomasyon-AnaSayfa.aspx.cs" Inherits="AnaSayfa" Title="OkulOtomasyon- Anasayfa" %> Yukarıda bulunan tek satır aslında çok şey ifade etmektedir. Herşeyden önce, MasterPageFile özelliği, sayfaya uygulanan Master Pagek in yolunu belirtir. Bu, sayfanın bir Master Page i uyguladığını başka bir deyişle master pager den türetilerek üretildiğini gösterir. Kendi sınıfı ve code-behind dosyası vardır. Eğer sayfadaki Content alanı içerisinde düzenleme yapmak istenirse bunu sağlayabilmek için, Master Pagee de yer alan ContentPlaceHolder bileşeninin, bu sayfada bir Content bileşeni ile eşleştirilmesi gerekmektedir. Bunun için, web sayfasına aşağıdaki aspx kodları yazılmalıdır. Content bileşeninin, ContentPlaceHolderID özelliği, uygulanan Master Pagee deki hangi ContentPlaceHolder bileşenini eşleştireceğini belirtmektedir. Bu özelliğin değeri, birden falza ContentPlaceHolderş ın, Master Pagel i uygulayan sayfalarda eşleştirilmesinde önem kazanır. <asp:Content ID="Content1" ContentPlaceHolderID="ContentPlaceHolder1" Runat="server"> </asp:Content> Projede kullanılan diğer bir master page ise master isimli master page'tir. Bu master page'in içeriği örnek verilerek hem contentPlaceHolder hem de masterpage'in diğer özellikleri açıklanabilir: Eklenmiş olan tüm kontroller ve diğer içerikler, ContentPlaceHolder bileşenine ait takılar içerisinde yer almaktadır. Diğer taraftan ContentPlaceHolder takıları dışında herhangibir içerik oluşturmayı sağlayacak bileşenleri kullanma imkanı yoktur. Bir diğer önemli özellik de, içeriğin herhangi bir form takısı içerisinde yer almıyor 22
  • 23. oluşudur. Bunun sebebi, form takısının zaten Master Pageo de uygulanmış olmasıdır. Dolayısıyla web sayfası, Master Pageı den kalıtımsal olarak türetildiği için form takılarının burada kullanılmasına gerek yoktur. 2.1.1.6. Web User Control Daha önceden varolan bazı server ve HTML componentlerini kullanarak yeni bir görünüş yapmamıza yararlar. Yaptığımız bu controller .ascx dosyalarında saklanır ve nerede kullanılmak istenirse orada sayfaya eklenebilir. Oluşturulan bir Web User Control sayfanın istenilen yerine koyulabilir ve orada onun görünmesi sağlanabilir. 2.1.1.6.1 Özellikleri Web user controller proje içerisinde yaratılan ascx dosyalarıdır. Bu dosyalar içerisinde daha önceden var olan HTML ve server componentleri kullanılarak yeni bir görünüm oluşturulabilir. Web User Controller kullanıldıkları her proje içerisinde mutlaka bulunmalıdırlar. Bunun nendeni ise bunların compile edilememesidir..Yani Web User Controller derlenerek bir dll yapılıp bu DLL istenilen projede kullanılma imkanı yoktur. User Controller VS toolbox ında yani araç çubuğunda bulunmazlar. Onları herhangi bir projeye eklemek için Solution Explorer dan ascx dosyasını tutarak sayfada istenilen yere bırakılmalıdır. User Control kodları ise Web Formlar load edildikten sonra yüklenir. Page_Load eventi User Controlü yuklenmesinden önce gerçekleşmektedir. Bu özellikler .NET deki diğer componentlerde olmayan özelliklerdir. 2.1.1.6.2 Web User Control Oluşturma VS editöründe Solution Explorer da projeye sağ tıklanır ve Add New Item seçeneğini seçilir. Buarad açılan pencereden Web USer Controlü seçilip adı verilerek onaylanır. Böylelikle yeni bir ascx dosyası projenize eklenmiş olacaktır. 23
  • 24. User kontrole örnek olarak menü örneği verilebilir. Örneğin bir menü kontrolü var ve bu menü projenin her sayfasında kullanılıyor. Ve bu menude bazen değişiklikler yapılması gerekiyorsa bu durumda her sayfada bu işin tek tek yapılması yerine tek bir menü sayfası oluşturup bunu her sayfada kullanmak daha mantıklı olacaktır. Bu kullanım için bir user control oluşturulabilir. Menü de herhangi bir değişiklik yapılmak istendiğinde sadece bir yerde değişiklik yapılması yeterli olacaktır. Bu değişiklikler user control ün kullanılmış olduğu tüm sayfalarda geçerli olacaktır. 2.1.2. SQL ve MSSQL SQL, (İngilizce "Structured Query Language", Türkçe: Yapılandırılmış Sorgu Dili) verileri yönetmek ve tasarlamak için kullanılan bir veritabanı yönetim sistemidir. SQL, kendisi bir programlama dili olmamasına rağmen birçok kişi tarafından programlama dili olarak bilinir. SQL herhangi bir veritabanı ortamında kullanılan bir alt dildir. KOURYS sisteminde kullanılan MSSQL de SQL dilini kullanan bir veritabanıdır. Bu yüzden KOURYS sisteminde kullanılan SQL komutları aşağıda anlatılmıştır. SQL ile yalnızca veri tabanı üzerinde işlem yapılabilir. SQL'e özgü cümleler kullanarak veri tabanına kayıt eklenebilir, olan kayıtlar değiştirilebilir, silinebilir ve bu kayıtlardan listeler oluşturulabilir. SQL veri tanımlama deyimlerinden başlıcaları şunlardır: CREATE TABLE tablo_adı Yeni bir tablo oluşturmak için kullanılır. CREATE TABLE tabloilceler ( ilceNo mediumint(8) unsigned DEFAULT '0' NOT NULL, ilce varchar(30) NOT NULL, postakodu varchar(5), ilceTel char(3), plakaKodu char(2) NOT NULL ) 24
  • 25. 2.1.2.1. SQL Veri Tanımlama Deyimleri 2.1.2.1.1. ALTER TABLE tablo_adı Yeni bir sütun eklemek, sütunun tipini veya uzunluğunu değiştirmek vb. yapısal değişiklikler yapılması için kullanılır. 2.1.2.1.2. DROP TABLE tablo_adı Tabloyu fiziksel olarak siler. 2.1.2.1.3. TRUNCATE TABLE tablo_adı Tablodaki tüm verileri siler (tablo yapısı kalır) 2.1.2.1.4. CREATE VIEW görüş_adı Görüntü oluşturmak için kullanılır. 2.1.2.1.5. DROP VIEW görüş_adı Görüntüyü siler. 2.1.2.1.6. CREATE INDEX indeks_adı Tablonun (en azından bir) sütun adı üzerinde indeks oluşturmak için kullanılır. 2.1.2.1.7. DROP INDEX indeks_adı 25
  • 26. Yaratılan indeksleri veri tabanından kaldırmak için kullanılır.. 2.1.2.1.8. SELECT deyimi SELECT ilce, postakodu FROM tabloIlceler WHERE plakaKodu = '06' Ankara'nın ilçeleri ile posta kodlarını gösterir. 2.1.2.1.9. UPDATE deyimi UPDATE tabloIlceler SET postakodu = '06720' WHERE ilce = 'Bala' Bala'nın posta kodunu değiştirir. 2.1.2.1.10. INSERT deyimi INSERT INTO tabloIlceler VALUES (, 'Yenişehir', , , '53') Yeni veriler ekler 2.1.2.1.11. DELETE deyimi DELETE FROM tabloIlceler WHERE plakaKodu = '53' plakaKodu 53 olan bütün verileri siler MSSQL de projede kullanılan veritabanıdır. MSSQL de SQL dilini kullanan bir veritabanıdır. 2.1.2.2. SQL Deyimleri SQL deyimleri veritabanları üzerinde çeşitli işlemleri yerine getirirler. Veritabanından sorgulama yapmak için SELECT, ekleme yapmak için INSERT güncelleme yapmak için UPDATE, silme yapmak için DELETE, yeni tablo 26
  • 27. oluşturmak için CREATE TABLE gibi komutlara sahiptir. Bu komutlar işlevlerine göre şu şekilde kategorilendirilir:  DDL (Data Definition Language): Veri tanımlama deyimleri.  DML (Data Manuplation Language) : Veri düzenleme dili.  DCL (Data Control Language): Veri kontrol dili. DDL deyimleri veritabanı üzerinde nesne yaratmak için kullanılırlar. En yaygın kullanılan DDL deyimleri şunlardır: CREATE , ALTER, DROP Create deyimi tablo ve view gibi bir veritabanı nesnesi yaratmayı sağlar. Tablo Yaratmak: Veritabanı üzerinde bir tablo yaratmak için CREATE deyimi kullanılır. Yapısı: CREATE <tablo adı> Alter Deyimi daha önce yaratılmış nesnenin değiştirilmesini sağlar. Örneği bir tablonun tasarımını değiştirmek gibi. Örnek: ALTER TABLE Musteri ADD tel varchar(20) NOT NULL Yukarıdaki deyimde müşteri tablosunun alanlarına tel adlı bir alan daha eklenmiştir. Drop deyimi bir nesnesin silinmesini sağlar. Örnek: DROP TABLE MUSTERI Müşteri tablosunun verilerini ve tabloyu siler. 2.1.2.3. DML (Data Manipulation Language) Deyimleri, Veritabanı içindeki verileri elde etmek ve değiştirmekle ilgili SQL deyimleridir. 1. SELECT 2. INSERT 3. UPDATE 27
  • 28. 4. DELETE 2.1.2.3.1. Select Deyimi Veritabanındaki verilere erişmenin, diğer bir deyişle onları görmenin ya da onları elde etmenin en sık kullanılan yöntemidir. Genellikle bir ya da daha çok tablonun bütün alanlarıya da belli alanları için SELECT deyimi yazılır. Temel Yapısı: SELECT [ALL] [DISTINCT] liste [INTO yeni tablo] FROM [tablo] [WHERE ifade] [GROUP BY ifade] [HAVING ifade] [ORDER BY ifade] [COMPUTE ifade] Seçeneklerin Anlamları: All sözcüğü bütün satırların sonuç listesinde görünmesini sağlar. Distinct sözcüğü sadece tek olan (unique) kayıtların sonuç listesinde yer almasını sağlar. liste parametresi veriden seçilecek kolonu (sütunu) belirtir. Into sözcüğü yeni bir tablo yaratmayı sağlar. yeni tablo parametresi sorgu sonucu yaratılacak tabloyu belirtir. From sözcüğü belli bir tablonun seçilmesini sağlar. tablo parametresi ise sorgulanacak olan tablo ya da tabloları, görünümleri belirtir. 28
  • 29. Where bir koşulu belirterek sadece o kuşula uyan kayıtların seçilmesini sağlar. Group By Kayıtların gruplanmasını sağlar. HAVING deyimiyle de ara toplamların alınmasını sağlar. Having sözcüğü de kayıtlarda kısıtlama yapar ancak hesaplamayı etkilemez. Order Bysözcüğü ise belirtilen kolona göre listelenen kayıtları sıralamayı sağlar. Sıralama artan (ASC) ya da azalan (DESC) olabilir Compute sözcüğü ise hesaplama yapar. Tipik olarak SUM, AVG, MIN, MAX, COUNT gibi fonksiyonları kullanarak hesaplama yapar. 2.1.2.3.2. Aritmetik İşlemler Aritmetik işlemleri gerçekleştirmek için belli operatörler kullanılır: • + Toplama • - Çıkarma • / Bölme • * Çarpma 2.1.2.3.3.Verileri Sıralamak SELECT deyimi ile elde edilen veriler istenirse sıralanabilir. Sıralama belirtilen bir ya da daha fazla kolona göre yapılır. Bunun dışında sıralama ASC (ascending-artan) ya da DESC (descending-azalan) olarak belirtilebilir. SELECT * FROMmusteri ORDER BY ad 29
  • 30. Yukarıdaki deyim ile müşteri tablosundaki bütün kayıtlar ad alanına göre sıralı olarak listelenirler. 2.1.2.3.4. Gruplandırma İşlemleri Gruplama seçenekleri tablo satırlarının belli alanlarına göre gruplandırılmasını sağlar. GROUP BY sözcüğü ise yapılan bir gruplandırma işlemine göre listeleme sağlar. Örnek: SELECT grup, sum(bakiye) FROM musteri GROUP BY grup 2.1.2.3.5. Insert Deyimi Tabloya veri girmek için kullanılır. INSERT INTO <tablo adı> (sütunlar listesi) VALUES (değerler listesi) Örnek: INSERT INTO CARIANA (kodu, adi, grubu, adresi) VALUES ('600', 'FARUK', 'A', '76 sokak no 5') Örnek: INSER INTO deyimi ile bir tabloyu diğer bir tablodan doldurmak: 2.1.2.3.6. Update Deyimi Tablodaki verileri güncellemek için kullanılır. Genellikle güncelleştirilecek satırı belirtmek için WHERE sözcüğüyle kullanılır. Mevcut bir tablodaki satırları değiştirmek için UPDATE deyimi kullanılır. UPDATE deyimi sadece bir tablo üzerinde kullanılmalıdır. UPDATE deyimi ile SET ve WHERE sözcüğü kullanılır. 30
  • 31. SET sözcüğü değiştirilecek kolonları ve değerleri belirtir. WHERE sözcüğü ise değiştirilecek satırı belirtir. Update deyiminin kullanım biçimi: UPDATE tablo SET kolon = ifade WHERE arama_koşulu 2.1.2.3.7. Delete Deyimi Bir tablodaki verileri silmek için DELETE komutu kullanılır. Örneğin Öğrenci tablosundaki tüm verileri silmek için; Kullanım biçimi: DELETE tablo WHERE arama_koşulu Örnek: Tablodan satır silmek Aşağıdaki örnekte müşteri tablosundan 'B' grubuna sahip olan müşteriler silinir. DELETE musteri WHERE grubu = 'B' 2.2. Kodlama Standartları 2.2.1. Tanımlar ve Kısaltmalar 2.2.1.1. PascalCase İlk karakterin ve içerisinde yer alan tüm kelimelerin ilk harfinin büyük, diğer harflerin küçük olduğu isimdir. Örnek : MusteriNo 31
  • 32. 2.2.1.2. CamelCase İlk karakterin küçük, içerisinde yer alan tüm kelimelerin ilk harfinin büyük, diğer harflerin küçük olduğu isimdir. Örnek : musteriNo 2.2.1.3. UpperCase Tüm karakterleri büyük harf olan isimdir. Örnek : MUSTERINO 2.2.1.4. LowerCase Tüm karakterleri küçük harf olan isimdir. Örnek : musterino 2.2.2. C# İsimlendirme Standartları • Tüm class, method, property, vb. tüm isimler Türkçe verilmeli, isim içerisinde Türkçe karakter(‘ıİçÇğĞşŞöÖüÜ’) kesinlikle kullanılmamalıdır. • Tüm isimler, anlamlı, açıklayıcı olmalı ve içerisinde kısaltma kullanılmamalıdır. • Finart katman bileşenleri (entity, facade vs.) dışındaki public class isimleri ile tüm public member (metod, property, vb.) isimleri PascalCase verilmelidir. • Tüm private değişkenler ve metodların parametreleri camelCase isimlendirilmelidir. • Constant’lar UPPERCASE ve kelimeler arasında ‘_’ kullanılacak şekilde isimlendirilmelidir. • Değişken isimleri için i, j, a, vb. gibi tek karakterler, döngülerdeki iterasyonlar dışında kullanılmamalıdır. • Metodlar için, bir emir ifade eden isimler (Oku, Getir, Kaydet, İptal, Sil vs.) seçilmesi tavsiye edilmektedir. • Form ve üzerinde kullanılan kontrollerin isimlendirilmesi için aşağıdaki 32
  • 33. standartlara uyulmalıdır. .Net Bileşenleri Ön Ek Label Lbl TextBox Txt ComboBox Cmb CheckBox Chk NumericUpDown Nud GroupBox Grp Buton Btn Panel Pnl Form Form ListView Lvw RadioButton Rdb ContextMenu Cm TabControl Tbc TabPage Tbp ListBox Lbx PictureBox Pbx .Net Bileşenleri 2.2.2.1. Değişken Tanımlama Standartları • Her satırda bir değişken tanımlanmalıdır. Bu şekilde yapılan tanımlama, açıklama girişini kolaylaştırmaktadır. • Değişkenlere, tanımlandığı anda değer atanmasına özen gösterilmelidir. • Tanımlanan her değişken mutlaka kullanılmalıdır. • Her değişken sadece bir amaç için kullanılmalıdır. Örnek: int musteriNo = musteri.No; // Müşteri Numarası 2.2.2.2. Genel Hata Yönetimi • Yakalanan exception sonrası kullanıcıya, anlayabileceği ve yönlendirici bir 33
  • 34. mesaj verilmelidir. • Çok büyük try-catch blokları oluşturulmamalı, bunun yerine her farklı iş için ayrı bir blok kullanılmalı ve blok spesifik bir kod bölümünü kapsamalıdır. Bu şekilde hangi kod parçaçığının exception’ı oluşturduğunu kolaylıkla bulunabilir. • Static bir class’ın, constructor’ında alınan hata sebebiyle initialize işlemi gerçekleştirilemez ise, constructor bir daha çalışmayacak olduğu için uygulamada beklenmeyen hatalar oluşabilir. Constructor’a sahip statik class kullanımları için kontrol yöntemleri oluşturulmalıdır. 2.2.2.3. Programlama Pratikleri • Kod tekrarından kaçınılmalı, belirli bir işi yapan kod parçaları ayrı bir metod içerisine alınmalıdır. • Tasarım sırasında, kod birimlerinin tek başına iş yapabilirliğinin yüksek, diğer birimler ile olan bağımlılığının düşük olmasına dikkat edilmelidir. • Dış girdiler ve dış kaynaklardan gelen veri (kullanıcı girdisi, dosya, vb.) için girdi kontrolleri oluşturulmalı, girdinin doğruluğu kontrol edilmelidir. • Değişkenler mümkün olan en küçük yaşam döngüsüne sahip olmalıdır. • En sık kullanılan case’ler ilk olarak kontrol ediliyor olmalıdır. • System namespace’i altında tanımlı tipler yerine C# spesifik tipler kullanılmalıdır. int yas; // Int32 string musteriAd; // String object kulaniciBilgi; // Object Beklenmeyen değerlerin/durumların oluşma olasılığı her zaman düşünülmeli ve gerekli kontrol yapısı kurulmalıdır. 2.2.2.4. Veritabanı Nesne Adlandırma Kuralları Bu bölüm, veritabanı nesnelerinin adlandırılmasında kullanılacak standartları içermektedir. Bu standartların uygulanması sonucunda, veritabanı üzerinde işlem 34
  • 35. yapması (değişiklikler yapma, sorun giderme, kod yazımı gibi) gerekli olabilecek tüm teknik personelin rahatlıkla anlayabileceği bir veritabanı oluşmuş ve yönetilmiş olacaktır. Bu bölüm, aşağıdaki başlıklarda tercih edilen adlandırma kurallarını içermektedir: • Tablolar – Tables • Geçici Tablolar – Temporary Tables • Görünümler - Views • Saklı prosedürler - Stored procedures • Kullanıcı tanımlı fonksiyonlar - User defined functions • Tetikleyiciler - Triggers • İndeksler – Indexes • Sütunlar – Columns • Kullanıcı tanımlı veri türleri - User defined data types • Primary keys • Foreign keys • Default bilgileri ve Kontrol kısıtları - Default and Check constraints • Değişkenler - Variables • Paketler – Packages • Sekanslar – Sequences İsimlendirmelerde 30 karakter olarak bir sınırlandırma getirilmiştir. Bu sınırlandırma çerçevesinde veritabanı nesneleri isimlendirilmelidir. Nesne isimleri tüm harfleri büyük olacak şekilde, yani “UPPERCASE” formatında yazılmalıdır. Türkçe harflere yazımda yer verilmemelidir. 2.2.2.5. Tabloların İsimlendirilmesi Tablolar, herhangi bir varlığın anlık bilgilerini sunmaktadır. Örneğin, tüm müsteri bilgileri bir tabloda saklanmaktadır. Burada “müsteri” bir varlık niteliğindedir, ve müsteri tablosunun tüm satırları “müsteri” varlığının anlık bilgilerini sunmaktadır. 35
  • 36. Bu durumda, tabloyu, bilgilerini sunduğu varlığın ismi uyarınca adlandırmak gereklidir – yani “Musteriler”. Tabloda müsterilerin farklı anlardaki bilgileri sunulduğu için, tablo isminin çoğul olarak belirlenmesi gereklidir. Yazım Formatı: tbl(3 karakter)AmacaYonelikKısım Örn: tblKullaniciBilgileri şeklinde olacaktır. 2.2.2.6. Saklı Prosedürlerin İsimlendirilmesi Saklı prosedürler, iyi tanımlanmıs ve spesifik görev üstlenirler ve eylem/hareket odaklıdırlar. Bu nedenle, isimlerinin üstlendikleri görevleri ifade ediyor olması gereklidir. Üstlenilen görevi betimlemek için “fiil” yapısındaki kelimeler kullanılmalıdır. Yazım Formatı: sp_AmacaYonelikFiiller Örn: sp_getUsersInformation şeklinde olacaktır. Kelime dizgesinin başında stored procedure olduğunu belirten sp kelimesi kullanılacaktır. Prosedür yazım formatında ISLEM olarak belirtilen kelime yerine islemin amacına göre: insert islemleri için “INS”, delete islemleri için “DEL” update islemleri için “UPD” select gibi sorgulama islemleri için “SEL” 36
  • 37. yukarıda belirtilen “UPD” ve “SEL” lerin beraber kullanıldığı durumlarda veya scheduled işlemlerde “BAT” kelimeleri kullanılacaktır. Saklı Yordamlar yardımıyla tablolara veri eklemek son derece kolay, hızlı ve etkilidir. Bununla birlikte Saklı Yordamlar sağladıkları güvenlik kazanımları nedeni ilede tercih edilirler. Saklı Yordamları geliştirmek son derece kolaydır. İstediğiniz sql işlemini, satır silmek, satır aramak gibi işlemler kolayca gerçekleştirilmektedir. Şekil 2.5. Saklı yordamların avantajları 2.2.2.7. Tetikleyicilerin (Trigger) İsimlendirilmesi Yazım Formatı: MODULKODU(3 karakter)_AMACAYONELIKISIM_ISLEM(3 karakter)_TRG Amaca Yönelik olarak kullanılan Kelimeler arasında “_” karekteri kulanılmayacaktır. Kelime dizgesinin sonuna triger olduğunu belirten TRG kelimesi kullanılacaktır. Tetikleyici yazım formatında ISLEM olarak belirtilen kelime yerine islemin amacına göre: insert (ekleme) için “INS” update (güncelleme) için “UPD” delete (silme) için “DEL” kelimeleri kullanılacaktır. 37
  • 38. 2.2.2.8. Birincil Anahtarlar (Primary Keys) Birincil anahtar sütun(lar)ı, tablodaki her bir satırı birincil (unique) olarak belirleyen sütun(lar)dır.Bu nedenle, Birincil anahtar adlandırma kuralı olarak, tablo isminin önüne 'PK_' eklenmelidir. Yazım Formatı: PK_TABLOADI 2.2.2.9. Sekanslar(Sequences) Ardışık sırada numara üretmek için kullanılan yapılardır. Burada isimlendirmeler : Yazım Formatı: MODULKODU(3 karakter)_AMACAYONELIKISIM_SEQ şeklinde olmalıdır. 2.2.3. PROJE İÇERİĞİNİN ANLATILMASI Projenin uygulama kısmı ve veritabanı tasarımı aynı eş zamanlı tasarlanmıştır. Fakat anlaşılır olması açısından bu aşamalar uygulama kısmı ve veritabanı kısmı olarak iki kısımda anlatılacaktır. 2.2.3.1.UYGULAMA KISMI Projeye başlamadan önce projenin kullanıcılarının kimler olacağı belirlenmiştir. Bunlar: 38
  • 39. ι) Öğrenciler ιι) Öğretmenler ιιι) Editör ιϖ) İdareci Her bir kullanıcının görevleri ayrıdır ve sistemden bu görevleri yerine getirebilirler. Her bir kullanıcı kendilerine ait kullanıcı adı ve şifrelerini kullanarak sisteme giriş yaparlar ve kendilerine ait alanları görebilirler. Aşağıda her bir kullanıcı için kullanıcının yapabileceği işlevler belirtilmiştir. Uygulama kısmında projenin oluşturulduğu yazılım programında projenin bileşenlerinin görebileceği solution explorer kısmında projenin 3 katmanlı bir yapıya sahip olduğu görülmektedir. Bu katmanlardan ilki Blog isimli bir website kısmıdır. Diğer katmanlar ise metotların bulunduğu DAL isimli project katmanı ve nesnelerin bulunduğu PROPERTY katmanıdır. Solution explorerda website katmanında web page, user controls, style dosyaları ve masterpage nesneleri bulunmaktadır. Project kısmında ise nesnelere ait sınıflar bulunmaktadır. Bu sınıflar içinde web controls tarafından kullanılan metotlar bulunmaktadır. Web sayfaları masterpage ve user controls kullanılarak oluşturulmuştur. Masterpage, aynı özelliklerin ya da menülerin kullanıldığı benzer sayfaları oluştururken büyük kolaylık sağlamaktadır. Aşağıda projenin oluşturulduğu programda, projeye ait solution explorer'ın ekran görüntüsü mevcuttur. 39
  • 40. 40
  • 41. 41
  • 42. 42
  • 43. Şekil 2.6. Projeye ait solution explorer görüntüsü Ana sayfada tüm kullanıcıların kendilerine ait menülere erişebilcekleri bağlantılar bulunmaktadır. Ayrıca açılan sayfada editör tarafından eklenmiş olan makaleler kullanıcılara sunulmaktadır. Ana sayfanın ekran görüntüsü Şekil 2.8 de görülmektedir. 43
  • 44. Şekil 2.7. Tüm kullanıcıların giriş yaptığı anasayfa 2.2.3.1.1. Öğrenci ve Veli Kısmı Öğrenci ve Veliler internet üzerinden öğrencinin derslerine ait yazılı, sözlü ve ödev notlarını görebilir, Öğrencinin yapmış olduğu devamsızlıklık durumunu sistemden öğrenebilirler. Ayrıca ders öğretmenleri tarafından verilen ödevleri ve öğretmenlerin öğrenci hakkındaki görüşlerini sistemden takip edebilirler. 2.2.3.1.1.1. Öğrenci Bilgi Paneli Özellik ve İşlevleri - Not Durumunu Öğrenme - Devamsızlık Durumunu Öğrenme - Verilen Ders Ödevlerini Öğrenme - Öğretmen Görüşlerini Öğrenme - Okul Ziyaretçi Bilgilerini Öğrenme - Şifre Güncelleme Öğrenci kullanıcı adı ve şifresini kullanarak giriş yapar ve ana sayfasına ulaşmış olur. Öğrenci anasayfası aşağıda görülmektedir. Şekil 2.8. Öğrenci Ana Menü 2.2.3.1.1.1.1 Öğrenci Not Görüntüleme 44
  • 45. Öğrencinin yapabilecekleri menüde listelenmiştir. Öğrenci notlarını görüntüleyebilir, okul devamsızlık bilgilerini görebilir, eğer varsa verilen ödevlerini görebilir, öğretmenin kendisi için yapmış olduğu görüşleri okuyabilir, kendi ders listesini görebilir ve mevcut şifresini güncelleyebilir. Öğrenci menüden notlarını görüntülemek istediğinde aşağıdaki ekran karşısına gelmektedir. Öğrenci burada dönem seçimi yaparak o döneme ait not bilgilerini görüntüleyebilmektedir. Şekil 2.9. Öğrenci Not Götüntüleme Buradan öğrenci görüntülemek istediği not listesi için dönemini seçer ve seçtiği döneme göre öğrencinin notları listelenir. Burada notlar her ders için ayrı ayrı gösterilmektedir. Not, ödev ve sözlü için farklı not alanları bulunmaktadır. Bunlar derslere göre ayrı ayrı listelenmektedir. 2.2.3.1.1.1.2 Devamsızlık Bilgileri Öğrenci devamsızlık bilgilerini öğrenmek istediğinde ise menüden ilgili menüyü seçmelidir. Daha sonra ise öğrencinin devamsızlık bilgileri aşağıdaki gibi listelenmektedir . 45
  • 46. Şekil 2.10. Devamsızlık Bilgileri Devamsızlık bilgileri devamsız, geç, izinli, raporlu, cezalı, faaliyet ve sevk olmak üzere farklı alanlarda belirtilmektedir. Ekranın üst kısmında ise öğrenci bilgileri ve toplam devamsızlık günü gösterilir. 2.2.3.1.1.1.3 Ödev Görüntüleme Öğrenci aynı zamanda kendi sayfasından öğretmenler tarafından verilen ödevleri de görüntüleyebilmektedir. Ödev içeriğini, ödev bitiş tarihini, hangi ders için ödev verildiğini görebilmektedir. Şekil 2.11. Ödev Görüntüleme 46
  • 47. 2.2.3.1.1.1.4 Öğretmen Görüşleri Görüntüleme Öğrenci öğretmen görüşleri altında öğretmenlerinin kendisi için yazmış olduğu yorumları ve kendisi için doldurulan anket cevaplarını görebilmektedir. Şekil 2.12. Öğretmen Yorumları 2.2.3.1.1.1.4 Ders Listesi Görüntüleme Öğrenci bulunduğu sınıf için ders listesini listeleyebilmektedir. Öğrenci kullanıcı girişi yaptıktan sonra ders listesine ulaşılmış hali şekilde görülmektedir. Şekil 2.13. Ders Listesi Öğrenci anasayfaya dön seçeneği ile kendisine ait ana sayfaya geri dönüş yapabilmektedir. 2.2.3.1.1.1.5 Şifre Güncelleme En son kısımda da öğrenci mevcut şifresini güncelleyebilmektedir. 47
  • 48. Şekil 2.14. Öğrenci Şifre Güncelleme Öğrenci eski şifresini girdikten sonra yeni şifresini girer ve tekrar yeni şifresini teyit ederek güncellenmiş şifresini bir sonraki kullanıcı girişinde kullanabilmektedir. 2.2.3.1.1.2 Editör Bölümü Editör sistemin bir çok alanına erişim hakkına sahiptir. Bu bölümde editor bir çok alanda görüntüleme, silme, güncelleme işlemlerini yapabilmektedir. Editör; Duyurular, Personel Bilgileri, Resim Galerisi, Ziyaretçi Defteri, Makaleler, Etkinlikler, Etkinlikler, Başarılar, Okul Ziyaretçi Takibi gibi alanları yönetme hakkına sahiptir. 2.2.3.1.1.2.1 Editör Ana Menü Editörün anasayfasındaki menudur. İşlemlere bu menu aracılığıyla ulaşmaktadır. Şekil 2.15. Editör Ana Menü 2.2.3.1.1.2.2 Duyurular Duyurular Menüsünde yayımlanan duyurular görüntülenir ve silme, güncelleme işlemleri yapılır. Duyuru Ekle linki ile ise yeni bir duyuru eklenir. Bu menulerin ekran çıktısı aşağıdaki gibidir. 48
  • 49. Şekil 2.16. Duyurular Şekil 2.16' da görüldüğü gibi Editör duyurulara ait Id, Içerik ve duyurunun yayınlandığı tarih ve saat bilgilerine erişebilmekte, bu bilgileri Düzenle butonu ile güncelleyebilmekte, Sil butonu ile seçilen duyuruyu silebilmektedir. Yeni Duyuru Ekle Linki ile Duyuru Ekleme sayfasına ulaşabilmektedir. AnaSayfaya Dön linki ile kendi anasayfasına ulaşabilmektedir. Şekil 2.17. Yeni Duyuru Ekleme Şekil 2.17' de ise Editör duyuru ekleyebilmektedir. Duyuruya ait konu, içerik, tarih ve saat bilgilerini girerek duyuru ekleme işlemini Kaydet butonuna basarak tamamlamaktadır. Kayıt gerçekleştikten sonra Duyurular sayfasına yönlendirilip yeni yapılan kayıt görülmektedir. İptal butonu ile duyuru ekleme işlemi tamamlanmadan duyurular sayfasına yönlendirme işlemi gerçekleştirilir. 2.2.3.1.1.2.3 Personel Bilgisi Editör, personel menüsü ile personel bilgilerini görüntüleme, güncelleme ya da silme işlemlerini yapabilmektedir. Personel Ekle menüsü ile ise yeni personel 49
  • 50. ekleyebilmektedir. Personel ekle menüsü esnek bir menu olup eklenecek personele ait tüm kişisel bilgileri içermektedir. Bu menulerin ekran çıktıları aşağıdaki gibidir. Şekil 2.18. Personel Tablosu Şekil 2.18'de Editörün personellere ait Id,Ad,Soyad,Görev,Unvan,Telefon,Email bilgileri görüntüdiği görülmektedir. Düzenle butonu ile ilgili satırdaki personel bilgileri düzenlenebilmektedir. Sil butonu ile seçilen satırdaki personel bilgileri silinmektedir. Güncelle butonu ile aşağıdaki şekilde de görüldüğü gibi seçilen satırda bulunan personel bilgileri güncellenebilmektedir. Şekil 2.19. Personel Tablosunda güncelleme işlemi Şekil 2.19'da Güncelleme yapılan alanlar tamamlandıktan sonra tekrar Güncelle Butonuna basılarak güncelleme işlemi tamamlanır. Personel Ekle linki ile Yeni personel ekleme sayfasına yönlendirilip, editörün yeni personel eklemesini sağlayan sayfa açılmaktadır. 50
  • 51. Şekil 2.20. Yeni Personel Ekleme Şekil 2.20'de görüldüğü gibi eklenecek personele ait yetki alanı, kişisel bilgiler, iletişim bilgileri, özgeçmiş gibi bilgiler ilgili alanlara doldurulduktan sonra Kaydet butonuna basılarak kayıt personel kaydetme işlemi tamamlanmış olur. İptal butonu ile personel ekleme işlemi tamamlanmadan personeller sayfasına yönlendirme işlemi gerçekleştirilir. 2.2.3.1.1.2.4 Resim Galerisi Bu menu ile resim galerisindeki resimlere ait bilgileri görüntüleme, güncelleme ya da silme işlemleri yapılır. Resim Ekleme işleminde ise resime ait bilgiler girilir ve kaydedilir. Bu işlemleri gösteren ekran çıktıları aşağıdaki gibidir. 51
  • 52. Şekil 2.21. Resimler Sekil 2.21'de Editörün Resimlerle ilgili görüntüleyebildiği ve düzenleyebildiği alanlar verilmiştir. Diğer menulerde de oldugu gibi yine Düzenle ve Sil butonları ile güncelleme ve silme işlemleri yapılabilmektedir. Şekil 2.22. Yeni Resim Ekleme Şekil 2.22'de görüldüğü üzere Eklenecek resime ait resmin adı, eğer küçük resim eklenecekse Küçük Resim Url alanına, küçük resim eklenecekse Küçük Resim Url alanına Url adresi yazılır. Açıklama kısmına ise resimle ilgili açıklama yazılıp Kaydet butonu ile resim ekleme işlemi tamamlanır. İptal butonu ile resim ekleme işlemi tamamlanmadan resimler sayfasına yönlendirme işlemi gerçekleştirilir. 2.2.3.1.1.2.5 Ziyaretçi Defteri Bu menu ile editor, siteyi ziyaret eden kişilerin görüşlerini bildirdiği Ziyaretçi Defteri 52
  • 53. sayfasına erişir. Bu sayfada ziyaretçilerin yazdıgı yorumları görüntüleme işlemlerini yapabilmektedir. Ziyaretçi defter ayrıntıları ilerleyen bölümlerde anlatılacaktır. 2.2.3.1.1.2.6 Makaleler Makaleler menüsü ile makaleler görüntülenmektedir. Makale Ekle Menüsü ile ise yeni bir makale ekleme işlemi gerçekleştirilmektedir. Şekil 2.23. Makaleler Şekil 2.23' de görüldüğü gibi Editör, makalelere ait Konu, İçerik, Yazar, Tarih ve Saat bilgilerini görüntüleyebilmektedir. Güncelle Butonu ile ilgili satırdaki makaleye ait bilgileri düzenleyebilir. Sil butonu ile ilgili satırdaki makaleyi silebilir. Yeni makale Ekle Linki ile Editör Yeni makale ekleme ile ilgili sayfaya yönlendirilir. Şekil 2.24. Yeni Makale Ekleme Şekil 2.24'de yeni makale ekleme sayfası görülmektedir. Makaleye ait Konu, Yazar 53
  • 54. ve Açıklama alanına makale içeriği yazılır. Kaydet butonu ile makale ekleme işlemi tamamlanır. İptal butonu ile makale ekleme işlemi tamamlanmadan makaleler sayfasına yönlendirme işlemi gerçekleştirilir. 2.2.3.1.1.2.7. Etkinlikler Etkinlikler menüsü ile editor okulla ilgili etkinlikleri düzenleyebilir. Zamanı gecen etkinlikleri silebilir ya da zaman aşımına uğramamış fakat düzenlenmesi gereken etkinlikler düzenleyebilir. Yeni Etkinlik ekle linki ile Yeni Etkinlik ekleme sayfasına yönlendirilir ve Etkinliğe ait bilgileri girerek yeni etkinlik kaydını gercekleştirir. Şekil 2.25. Etkinlikler Şekil 2.25' de etkinliklere ait konu ve açıklama bilgileri görüntülenmektedir. Düzenle butonu ile ilgili etkinlik bilgileri güncelenir. Sil butonu ile ilgili etkinlik listeden silinir. Yeni etkinlik Ekle linki ile yeni etkinlik ekleme sayfasına yönlendirilir. Şekil 2.26. Yeni Etkinlik Ekleme 54
  • 55. Sekil Şekil 2.26'da Eklenecek etkinliğe ait konu ve açıklama bilgileri ilgili alanlara yazıldıktan sonra Kaydet butonu ile etkinlik kaydı tamamlanır. İptal butonu ile etkinlik ekleme işlemi tamamlanmadan etkinlikler sayfasına yönlendirme işlemi gerçekleştirilir. 2.2.3.1.1.2.8. Başarılar Başarılar menüsünde okulun bu zamana kadar göstermiş oldugu başarılar ve almış olduğu ödüller gibi bilgileri bulunduram bir tablo yer almaktadır. Bu tabloda silme ve güncelleme işlemleri gerçekleştirilmektedir. Şekil 2.27. Başarılar Şekil 2.27 de görüldüğü gibi başarılara ait konu ve açıklama bilgilerine erişilebilmekte, Düzenle butonu ile bu bilgiler güncellenebilmekte ya da Sil butonu ile ilgili satır silinebilmektedir. Yeni Başarı Ekle Linki ile Yeni başarı ekleme sayfasına yönlendirilmektedir. Şekil 2.28. Yeni Başarı Ekleme Başarıya ait konu ve içerik yazıldıktan sonra Kaydet butonu ile basarı kaydı 55
  • 56. tamamlanır. İptal butonu ile başarı ekleme işlemi tamamlanmadan başarılar sayfasına yönlendirme işlemi gerçekleştirilir. 2.2.3.1.1.2.9 Okul Ziyaretçi Takibi Öğrencilerin velileri, yakınları zaman zaman bilgi almak amacıyla okula gelip yetkili kişilerle görüşmeler yapmaktadır. Bu bilgilerin kayıt altında tutulması hem öğrenci ve veli açısından hem de idari grevli ve öğretmenler açısından önem taşımaktadır. Bu nedenle ziyaretçilere ve ziyaret sebebine ait bilgiler de sistemde tutulmaktadır. Editör bu bilgileri görüntüleme, güncelleme, silme ya da yeni kayıt ekleme yetkilerine sahiptir. Şekil 2.29. Okul Ziyaretçi Bilgileri Şekil 2.29’da okula gelen ziyaretçilere ait bilgiler görülmektedir. Ziyaretçinin adı, Ziyaretçinin kiminle görüşme yaptığı, ziyaret nedeni ve ziyaretçinin geldiği tarih gibi bilgiler Editör tarafından görüntülenmektedir. Bu bilgiler editor tarafından Düzenle butonu ile düzenlenebilmekte ya da sil butonu ile silinebilmektedir. Yeni Ziyaretçi ekle linki ile yeni ziyaretçi ekleme sayfasına yönlendirilir. Şekil 2.30. Yeni Ziyaretçi Ekleme 56
  • 57. Şekil 2.30'da yeni ziyaretçi eklerken ziyaretçinin adı, görüştüğü kişi, adresi, ziyaret nedeni, ziyaret tarih ve saat bilgileri ve ziyareti kaydeden kişinin kim oldugu bilgilerinin girildiği görülmektedir. Bu bilgiler girildikten sonra Kaydet butonu ile ziyaretçi kaydı tamamlanır. İptal butonu ile ziyaretçi ekleme işlemi tamamlanmadan Okul ziyaretçiler sayfasına yönlendirme işlemi gerçekleştirilir. 2.2.3.1.1.3 Öğretmen Bölümü Okul otomasyon sisteminin amaçlarının en başında öğretmenlerin kendi derslerine ait notlarını görsel bir şekilde bir arada görebilmesi, notların kayıtlarının kolay bir şekilde yapılabilmesi, öğrencilerin dersteki durum ve tutumlarının kaydedilmesi ile öğrenciler hakkında doğru karar verebilmesi, öğrencilerin devamsızlık bilgilerini kontrol ederek öğrencilerin dersteki performans düşüş nedenlerini saptayabilmesi gibi birçok neden gelmektedir. Öğretmenlerin bu işlemleri kolay ve hızlı bir şekilde yapabilmeleri için tasarlanan Öğretmenler Alanı kullanımı kolay ve pratik olması açısından pek çok avantaj sağlamaktadır. Öğretmenler AnaSayfa’da bulunan Öğretmen Girişi linki üzerinden kendilerine ait sayfaya yönlendirilmektedir. Kendilerine ait sayfaya yönlendirilirken login kontrolü yapılmaktadır. Daha sonra karşılarına gelen menüden İstedikleri işlemi yapabilmektedirler. 2.2.3.1.1.3.1. Öğretmen Girişi Öğretmenler kullanıcı adlarını ve kendilerine ait şifreyi girerek kendilerine ait alana giriş yaparlar. Şekil 2.31. Öğretmen Giriş Ekran Ekranı 57
  • 58. Kullanıcı Adı ve Şifre girilerek giriş yapılır. Eger kullanıcı adı ya da şifre hatalıysa, kullanıcılar uyarı mesajı ile karşılaşırlar. Şifre ve kullanıcı adı doğru ise, kendilerine ait ana menünün olduğu sayfaya yönlendirilirler. 2.2.3.1.1.3.2. Öğretmen Anasayfa Öğretmenler login işlemini gerçekleştirdikten sonra ana menünün olduğu sayaya yönlendirilirler. Bu sayfadaki ana menüde, Ödev Girişi, Öğrenci Görüş bildirme, Okul ziyaretçi Bilgileri, Şifre Değiştirme, Rehberlik Servisi, Öğrenci Not girişi ve Bilgi Listeleri seçenekleri bulunmaktadır. Bu menüde bazı seçenekler alt menülere ayrılmaktadır. Bu alt menüler ilerleyen bölümlerde anlatılacaktır. Şekil 2.32. Öğretmen Ana Menü Şekil daki menüden seçilen seçenege göre kullanıcılar ilgili sayfaya yönlendirilirler. 2.2.3.1.1.3.3. Ödev Girişi Bu menu ile Öğretmenler seçtikleri sınıfa ödev vermektedir. Verilen bu ödevler öğrencilerin kendi sayfalarındaki menüden ulaşılıp görülebilmektedir. Öğretmenler Ödev girişi ekranında kendileri verdikleri ödevleri ve bu ödevlere ait bilgileri görüntüleyebilmekte ve verilen ödevlerde eklenen dosyaları da bilgisayarlarına indirebilmektedirler. 58
  • 59. Şekil 2.33. Öğretmen Ödev Görüntüleme Yeni Ödev Ekle linki ile öğretmenler yeni ödev ekleyecekleri sayfaya yönlendirilirler. Yeni ödev ekleme ekranında, ödevin konusu, hangi sınıfa verileceği, teslim tarihi, açıklama ve varsa ödeve ait belge,dosya,resim,vb. dokumanlar eklenerek kaydet butonunu ile ödev ekleme işlemi gerçekleştirilir. 59
  • 60. Şekil 2.34. Ödev Ekleme 2.2.3.1.1.3.4. Öğrenci Görüş Bildirme Bu menu ile öğretmenler öğrenciler hakkında görüşleri bildiriler. Görüş bildirme iki aşamada tamamlanır. Önce öğrenci numarası girilir ve öğrenci bilgilerinin ve görüşün bildirileceği alanın bulunduğu sayfaya yönlendirilir. Şekil 2.35. Öğrenci Görüş Bildirme 1. Aşaması 60
  • 61. Şekil 2.36. Görüş Bildirme Ekranı Şekilde öğrenci bilgileri sayfa açıldıgında otomatik olarak gelmektedir. Öğretmen ilgili alana görüşlerini yazıp Görüş Bildir butonu ile görüş kaydetme işlemini tamamlamaktadır. Öğrenciler kendilerine ait yapılmış görüşlere kendi sayfalarından ulaşabilmektedirler. 2.2.3.1.1.3.5. Okul Ziyaretçi Bilgileri Okula zaman zaman veliler gelip öğrencileri hakkında bilgi alırlar. Bu görüşmelerin ne zaman, kim ile, kim hakkınd ve kim tarafından yapıldıgı bilgileri de sistemde tutulur. Bu bilgileri öğretmenler görüntüleyebilmektedir. Şekil 2.37. Okul Ziyaretçi Bilgileri 61
  • 62. 2.2.3.1.1.3.6. Şifre Değiştirme Öğretmenlerin kendilerine verilen şifreyi güncelleyebilmeleri için oluşturulmuş bir seçenektir. Şekil 2.38. Şifre Güncelleme Öğretmenler yeni şifrelerini girip Güncelle butonuna basarak şifrelerini değiştirebilirler. Şifre değiştirme işlemi sırasında kullanıcıdan şifreyi iki kere girmesi istenmektedir. Böylece kullanıcının yanlış bir şifre güncellemesi yapması sağlanır. Eğer iki alana girilen şifreler birbirinden farklı ise Şifre güncelleme işlemi gerçekleştirilemez. 2.2.3.1.1.3.7. Rehberlik Servisleri Öğretmen öğrenciler hakkındaki görüşlerini rehberlik servisleri aracılığı ile bildirebilmektedir. Öğretmen ilgili menüden rehberlik servisleri menüsüne ulaştığında rehberlik bilgi formu girişi ve rehberlik bilgi dökümü seçenekleri karşısına çıkmaktadır. Öğretmen rehberlik bilgi formu girişinden görüş bildirmek istediği öğrencinin öğrenci numarasını girerek o öğrenci için görüş bildirebilmektedir. Şekil 2.39. Rehberlik Servisleri 62
  • 63. Öğretmen rehberlik bilgi formu bilgisini girmek istediğinde sistem öğretmene hangi öğrenci için görüş bildirmek istiyorsa o öğrencinin öğrenci numarasını girerek o kişi hakkında görüş bildirmesini sağlayabilmektedir. Şekil 2.40. Görüş Bildirme-Öğrenci Seçimi Öğretmen öğrencinin öğrenci numarasını girerek görüş bildirmek istediği öğrencinin görüş bildirme arayüzüne ulaşmış olmaktadır. Öğrenci numarası girilerek işlem onaylandığında öğretmenin görüş bildirebilmesi için ilgili ekran öğretmenin karşısına gelmektedir. Şekil 2.41. Rehberlik Anketi Burada öğretmen ilgili anketi doldurarak öğrenci hakkındaki görüşlerini bildirebilmektedir. Eğer öğretmen girdiği bilgileri görüntülemek isterse rehberlik bilgi formu dökümü menüsünü kullanmaktadır. 63
  • 64. 2.2.3.1.1.3.8. Öğrenci Not Girişi Bu bölümde öğretmenler, derslerine girdikleri sınıflarda bulunan öğrencilere ait, yazılı, sözlü ve ödev notlarını kolayca girebilmektedirler. Not giriş işlemi üç aşamada gerçekleşmektedir. Öncelikle öğretmenlerin karşısına, derslerine girdikleri sınıflar ve ilgili sınıflarda hangi derse girdiklerine ait bir tablo gelmektedir. Bu tablo aşağıdaki şekildeki gibidir. Şekil 2.42. Öğrenci Not Giriş-Sınıf Seçimi Sınıf seçimi yapıldıktan dönem seçimi ekranı gelmektedir. Öğretmen 1.Dönem ya da 2. Dönem linkini tıklayarak ilgili dönemin notlarını girmek için bir sonraki aşamaya yönlendirilir. Dönem seçimi yapıldıktan sonra, seçilen sınıf ve döneme ait tüm öğrenciler ve o öğrencilere ait ilgili öğretmenin verdiği derse ait notlar gelmektedir. Şekil 2.43. Öğrenci Not Giriş Ekranı Şekilde de görüldüğü gibi öğretmenler hem tüm öğrencilerin notlarını görüntüleyebilmekte hem de Güncelle butonu ile yeni not bilgisi girebilmekte hem de güncelleme işlemini yapabilmektedir. Böylece işlemler çok pratik bir şekilde gerçekleşebilmektedir. Düzenle butonunun işlevi şekilde görülmektedir. 64
  • 65. Şekil 2.44. Yeni Not Giriş ve Güncelleme Şekilde görüldüğü gibi seçilen öğrencinin notları güncellenebilmekte, yeni not girişi yapılabilmektedir. İstenirse İptal butonu ile yapılan değişiklikler yapılmadan bu ekrandan çıkılabilmektedir. 2.2.3.1.1.3.9. Bilgi Listeleri Bilgi listeleri menüsü alt menülere ayrılan ve öğretmenlere bir çok konudaki bilgilere pratik ve kolay erişim sağlar. Bu menünün alt Öğrenci durum Dökümanı, Sınıf Listeleri, Toplu Sınıf Not Listesi, Toplu Sınıf Devamsızlık Listesi ve Öğretmen Listesi olmak üzere beş seçenektir. Şekil 2.45. Bilgi Listeleri 2.2.3.1.1.3.9.1. Öğrenci Durum Dökümanı Bu menu ile istenen öğrencinin birinci ve ikinci dönemde aldığı tüm notlar görüntülenmektedir. Bu işlem iki aşamada gerçekleşmektedir. Öğrenci Durum Dökümanı linkine basıldığında bilgileri görüntülenmek istenen öğrencinin numarası girilir ve Devam Et butonu ile ikinci aşamaya geçilir. 65
  • 66. Şekil 2.46. Öğrenci Durum Dökümanı Birinci Aşama Öğrenci numarası girilip Devam Et butonuna basıldığında, kullanıcı, ilgili öğrencinin bilgileri ve notlarının görüntülendiği sayfaya yönlendirilir. Şekil 2.47. Öğrenci Durum Dökümanı Şekil 2.47’ de Öğrencinin kişisel bilgileri ve Birinci ve İkinci dönem notları görülmektedir. Öğretmenlerin bu notları görerek öğrenciyi değerlendirmesinin daha kolay ve etkin olacağı düşünülerek bu menu eklenmiştir. 2.2.3.1.1.3.9.2. Sınıf Listeleri Bu menu ile öğretmenler kendilerine ait sınıfları listeleyebilmektedir. Ayrıca listelenen bu sınıflardan seçilen sınıfın öğrenci listesi de görüntülenebilmektedir. 66
  • 67. Şekil 2.48. Öğretmenin Derslerine Girdiği Sınıfların Listesi Şekil 2.48’de bulunan listele butonu ile ilgili sınıfta bulunan öğrenciler listelenebilmektedir. Şekil 2.49. Sınıfa Ait Öğrenci Listesi Şekil 2.49’da ise bir önceki aşamada seçilen sınıfa ait sınıf listesi göülmektedir. Öğrenciye ait öğrenci numarası, Öğrencinin Adı ve Öğrencinin soyadı bilgileri listelenmektedir. Ayrıca sınıfın toplam mevcudu da görülmektedir. 2.2.3.1.1.3.9.3. Toplu Sınıf Not Listesi Bu menu ile öğretmenler derslerine girdikleri sınıfa ait notları seçilen sınıftaki tüm öğrencilerin notlarını bir arada görecek şekilde görüntüleyebilmektedir. 67
  • 68. Şekil 2.50. Toplu sınıf Not Listesi-Öğretmene ait sınıfların Görüntülenmesi Şekil de Öğretmene ait sınıflar görüntülenmektedir. Öğretmen Listele Butonu ile, hangi dönem notlarını görüntülemek istediğini seçer ve daha sonra ilgili sınıfın tüm öğrencilerinin kendi dersinden aldıkları o döneme ait tüm notları görüntüleyebilmektedir. Şekil 2.51. Toplu Sınıf Not Listesi- Dönem Seçimi 1.Dönem linki ile öğrencilerin öğretmenin kendisinden aldıkları birinci Dönem notları görüntülenir. 2. Dönem linki ile öğrencilerin öğretmenin kendisinden aldıkları ikinci Dönem notları görüntülenir. Şekil 2.52. Toplu Sınıf Not Listesi 68