Öğrenci kayıtları, öğretmen araçları, not defteri ve güvenli mesajlaşma için bir okul web uygulaması nasıl planlanır, tasarlanır ve başlatılır öğrenin.

Ekran taslağı çizmeye veya teknoloji yığını seçmeye başlamadan önce, hangi tür okul için çalıştığınızı ve işlerin günlük olarak nasıl yürüdüğünü netleştirin. Küçük bir özel okul için yapılan "okul yönetim web uygulaması" K–12 bölgesi veya bir kurs dışı program tarafından kullanılan uygulamadan çok farklı görünebilir.
Önce ortamı adlandırın: K–12, bölge çapında, özel, charter, dil okulu, etüt merkezi veya okul sonrası program gibi. Sonra sistemi kimlerin ne sıklıkla kullanacağını listeleyin: ön büro, öğretmenler, rehberlik, öğrenciler, veliler/vasiler, müdürler ve bazen bölge personeli.
Hızlı bir doğrulama sorusu: "Kim günlük, haftalık veya sadece dönem sonunda giriş yapıyor?" Bu cevap önceliklerinizi şekillendirmeli.
Uygulamanızın ilk günden desteklemesi gereken temel görevleri yazın:
Sözcükleri somut ve eylem odaklı tutun. "İletişimi geliştirmek" belirsizdir; "iki tıklamayla velilere sınıf duyurusu göndermek" ölçülebilirdir.
Çoğu okulun zaten bir sistemi vardır—hatta gayri resmi bile olsa:
Hataların ve zaman kaybının olduğu yerleri belgeleyin. Bunlar en yüksek etkili fırsatlarınızdır.
Lansmandan sonra takip edebileceğiniz 2–4 başarı metriği seçin, örneğin:
Bu hedefler, MVP kapsamını belirlerken ödünleşmeleri yönlendirir ve gösterişli ama gerçek işi azaltmayan özellikleri inşa etmenizi engeller.
Bir okul uygulaması güven üzerine kurulur: insanlar kimin neyi görebileceğini, kimlerin değiştirebileceğini ve kimin kimle iletişim kurabileceğini bilmek ister. Roller ve izinleri özellikleri sonra karar verirseniz, ekranları, raporları ve hatta veritabanı kurallarını yeniden yazmak zorunda kalırsınız.
Çoğu okul dört kovadan daha fazlasına ihtiyaç duyar. İlk günde destekleyeceğiniz rolleri eşleyin—yönetici, ön büro, öğretmen, rehberlik, öğrenci ve veli/vasiler—ve her rolün görebileceği, düzenleyebileceği, dışa aktarabileceği ve mesaj gönderebileceği şeyleri yazın.
Sıklıkla atlanan örnekler:
Velilik nadiren birebirdir. Şuna hazırlıklı olun:
Bu, iletişim listelerinden bildirim tercihleri ve denetim kayıtlarına kadar her şeyi etkiler.
Okullar sürekli değişir. İzinleri zaman bazlı ve geçici erişim gözeterek oluşturun:
Son olarak, "dışa aktarma"yı "görme"den ayrı tanımlayın. Bir öğretmenin bir not defterini görmesi normaldir; iletişim bilgileriyle birlikte tam bir öğrenci listesi indirmek sıkı kontrol ve izleme gerektirmelidir.
Bir okul uygulaması veri modeli üzerinden başarır veya başarısız olur. Altındaki "nesneler" okulların nasıl çalıştığıyla uyuşmazsa, her özellik (not defteri, mesajlaşma, raporlar) garip hissedecektir.
En azından bu varlıkları ve ilişkilerini planlayın:
Yararlı bir kural: ilişkileri (ör. Enrollments) yalnızca öğrencinin üzerindeki bir liste olarak değil, birinci sınıf kayıtlar olarak ele alın. Bu, transferleri, program değişikliklerini ve dönem ortası ayrılmaları temizce yönetmenizi sağlar.
Her öğrenci ve personele asla değişmeyecek bir benzersiz dahili ID verin. E-postayı tek kimlik olarak kullanmaktan kaçının—öğrencilerin e-postaları değişir, veliler e-posta paylaşır ve bazı kullanıcıların e-postası olmayabilir. E-postayı yine giriş seçeneği olarak saklayabilirsiniz.
Okullar farklı notlandırma sistemleri kullanır. Puan vs yüzde, kategori, ağırlık ve geç/eksik politikaları için sınıf (veya okul) başına yapılandırma desteği modelleyin; sabit kodlanmış mantık kullanmayın.
Uzun vadede hangi bilgilerin saklanacağını açıkça belirleyin: geçmiş yıllar, arşivlenmiş sınıflar, not geçmişi ve transkript hazır nihai notlar. Önceki dönemlerin doğru kalması için salt okunur arşivler planlayın, böylece politikalar değişse bile geçmiş bozulmaz.
Bir okul web uygulaması hızla "herkes için her şey"e dönüşebilir. Okulların benimseyeceği bir ürünü en hızlı şekilde sunmanın yolu, günlük işi çözen küçük bir MVP tanımlayıp gerçek kullanım verilerine göre genişletmektir.
Çoğu okul için minimum faydalı döngü şudur:
Bu üçlü, öğretmenler, ön büro ve veliler için anlık değer yaratır, gelişmiş analitik veya özelleştirilmiş süreç gerektirmez.
MVP'nizi insanların her gün açtığı ekranlar etrafında tasarlayın. Örneğin:
Bir paydaş bir özellik istediğinde, onu bir ekrana eşleyin. Günlük kullanım ekranına işaret edemiyorsanız, bu muhtemelen v2 öğesidir.
İyi bir MVP'nin net "henüz değil" kararları vardır. Yaygın örnekler:
Sınırlar "asla demek" değildir; zaman çizelgesini korur ve yeniden işi azaltır.
Her özellik için "bitti"nin ne anlama geldiğini teknik olmayan personelin doğrulayabileceği şekilde tanımlayın.
Örnek: Öğretmen not girişi kabul kriterleri:
Açık kabul kriterleri yanlış anlamaları önler ve güvenle teslim edilebilecek bir ilk sürüm sunar.
Okul personeli ve aileler uygulamanızı özelliklere göre değil, bir görevi ne kadar hızlı bitirebildiklerine göre değerlendirir. İnsanların her gün tekrar ettiği birkaç yolculuğu taslak halinde çizin:
Ekranlar "Sonraki adım ne?" sorusunu yanıtlamalı. Birincil eylemleri kullanıcıların beklediği yerlere koyun (üst sağ veya mobilde sabit alt). Geçerli dönem, bugünün tarihi ve öğretmenin aktif sınıfı gibi mantıklı varsayılanlar kullanın.
Bilgiyi gizleyen karmaşık UI kalıplarından kaçının. Meşgul kullanıcılar genellikle güçlü filtreleme olan basit bir tabloyu, hızlı kullanılmayan güzel bir pano yerine tercih eder.
Erişilebilirlik herkes için kullanılabilirlik iyileştirmesidir. Temelleri kapsayın:
Ayrıca kesinti için tasarlayın: taslakları otomatik kaydetme, yıkıcı işlemler için onay ve formları kısa tutma.
Birçok veli telefon kullanır. En yaygın eylemleri mobil uyumlu yapın: notlara bakma, duyuruları okuma, mesajlara cevap verme ve iletişim bilgilerini güncelleme. Büyük dokunma hedefleri kullanın, yatay kaydırmadan kaçının ve bildirimlerin ilgili ekrana (sadece gelen kutusuna değil) doğrudan bağlanmasını sağlayın.
Bir kural: bir veli bir sayfayı beş saniyede anlayamazsa, basitleştirin.
Bu modül, bir öğrencinin kim olduğu ve nerede bulunduğu konusunda tek gerçek kaynaktır. Burada dağınıklık olursa downstream (not defteri, mesajlaşma, raporlama) her şey sinir bozucu hale gelir.
Profilü personelin günlük olarak kullandığı bilgilerle sınırlayın:
Tasarım ipucu: "olsa iyi olur" alanları zorunlu alanlardan ayırın ki ön büro personeli hızlıca öğrenci oluşturup detayları sonra doldursun.
Kaydı tek bir onay kutusu olarak değil, bir zaman çizelgesi olarak modelleyin. Öğrenciler transfer olur, program değiştirir veya bölüm değiştirir.
İyi çalışan basit yapı:
Bu, programları, listeleri ve tarihsel raporlamayı kolaylaştırır.
Günlük mi, ders bazlı mı yoksa her ikisini mi takip edeceğinize erken karar verin. Basit bir kurulum bile şunları yönetmelidir:
Temel değişiklikler—iletişim bilgileri, kayıt hareketleri, kayıttan çıkarmalar—için bir denetim kaydı saklayın: kim neyi değiştirdi, ne zaman ve (mümkünse) neden. Bu anlaşmazlıkları azaltır ve yöneticilerin hataları tahmin etmeden düzeltmesine yardımcı olur.
Bir not defteri ek iş gibi hissettiriyorsa başarısız olur. Hedefiniz hız, netlik ve öngörülebilir kurallar—öğretmenler beş dakikalık arada not girebilmeli ve ailelerin ne göreceğine güvenebilmelidir.
Liste yönetimini giriş noktası yapın: bir sınıf seçin, hemen öğrencileri görün ve gezinmeyi sığ tutun.
İsteğe bağlı ama faydalı: oturma planı veya hızlı not panosu (örn. düzenlemeler, katılım notları). Bunları hafif ve sadece personele özel tutun.
Öğretmenler kategori (Ödev, Quiz, Laboratuvar), son tarih ve puanlama yöntemleriyle düşünür. Sunun:
Ayrıca ortalama hesaplarını etkilemeyen "not olmayan" öğeleri (alıştırma çalışmaları) destekleyin.
Ana ekran bir ızgara olmalı: öğrenciler satırlar, ödevler sütunlar.
Toplu işlemler (tümünü hazır olarak işaretle), klavye navigasyonu ve net durum bildiren autosave ekleyin. Eksik/geç/mazeret bayrakları için sahte sıfırlar girilmeksizin seçenekler sunun.
Hesaplamaları şeffaf tutun: kategori ağırlıkları, atılan puanlar ve elle verilen düzeltmeler toplamı nasıl etkiler açıkça gösterin.
Aileler sadece bir sayı değil, bağlam ister. Gösterin:
Bu, destek e-postalarını azaltır ve not defterinin adil hissettirmesini sağlar.
İletişim, bir okul uygulamasını ya yardımcı ya da gürültülü hâle getirir. Başlangıçta iki yüksek değerli modu destekleyin: hassas öğrenci-özel konular için birebir mesajlar ve öngörülebilir toplu güncellemeler için duyurular. Kuralları açık tutun ki personel yanlış kişiye mesaj gönderip göndermediğini merak etmesin.
Gerçek operasyonlara uyan alıcı kurallarını tanımlayın:
Alıcıları kayıt ve rollere dayandırın, manuel listelere değil. Bu, öğrenciler transfer olduğunda hataları önler.
Okullar aynı mesajları tekrarlar: eksik ödev, gezi duyurusu, program değişikliği. Düzenlenebilir yer tutucular (öğrenci adı, son tarih) içeren mesaj şablonları ekleyin ki öğretmenler hızlı ve tutarlı notlar gönderebilsin.
Okul çok dilli ailelere hizmet veriyorsa, çeviri desteği planlayın. Bu, tercih edilen dili saklamak ve personelin iki versiyon göndermesine izin vermek kadar basit olabilir—veya ileride entegrasyon eklenebilir; sadece arayüzün çok dil yönetimini engellememesine dikkat edin.
Ekler faydalıdır (izin formları, PDF'ler), ama kurallar gerektirir:
Bildirimler e-posta, uygulama içi ve (isteğe bağlı) SMS ile yapılandırılabilir olmalı.
Varsayılan olarak teslim durumu (gönderildi/başarısız) sunun. Okul politikası ve kullanıcı tercihlerine bağlı olarak okundu bilgisi (read receipts) ekleyin—bazı topluluklar özellikle öğrenci iletişiminde bunun rahatsız edici olduğunu düşünebilir.
Mesajlaşma, doğru kişilerin iletişim kurmasını kolaylaştırırken aşırıya kaçarsa kaotik hâle gelir. Amaç, doğru kişilerin kolayca iletişim kurmasını sağlamak; aşırı yüklenmeyi, tacizi veya yanlış paylaşımı engellemek.
Gerçek okul politikalarına uyan basit, açık kurallarla başlayın.
Örneğin: öğretmenler kendi sınıflarındaki velilere ve öğrencilere mesaj atabilir; veliler personele cevap verebilir ama diğer ailelere mesaj atamaz; öğrenciler yaşa ve okul kurallarına bağlı olarak sadece öğretmenleriyle mesajlaşabilir veya hiç mesajlaşamayabilir.
Bu kuralları okul ve sınıf düzeyinde yapılandırılabilir yapın, ama varsayılan seçenekleri sınırlı tutun ki yöneticiler baştan politika tasarlamak zorunda kalmasın.
Bir şey ters gittiğinde ne olacağı akılda olsun. Mesajlar ve duyurular üzerinde Şikayet Et eylemi ekleyin. Şikayet edildiğinde şunları kaydedin: şikayetçi, zaman damgası, mesaj ID'si, katılımcılar ve metnin bir anlık görüntüsü. Kimlerin uyarılacağını belirleyin (örn. müdür, rehberlik veya belirlenmiş uyum kutusu) ve sonraki adımları tanımlayın (incele, göndericiyi sustur, mesajlaşmayı kısıtla veya yükselt).
Sistemi denetlenebilir tutun: moderasyon eylemlerini kim gerçekleştirdi ve neden ile birlikte saklayın.
Duyurular güçlüdür ve kazara kötüye kullanılabilir.
Gönderici başına saatte en fazla X duyuru gibi hız limitleri ve hedef başına Y sınırı ekleyin. Basit korumalar kullanın: kopya tespit ("Bu, son duyurunuzla aynı görünüyor") ve tekrarlı gönderimlerde yavaşlama.
Gürültülü uygulamalar göz ardı edilir. Sessiz saatler, kanal bazlı tercihler (e-posta vs push) ve özetler (ör. "Her gün 17:00'de günlük özet gönder") ekleyin. Ayrıca "acil" mesajlar için haklar tanıyın ama bu ayrıcalığı belirli rollere sınırlayın ki her şey acil olmasın.
Okullar hassas bilgilerle çalışır: öğrenci kimlikleri, notlar, devamsızlık, sağlık notları ve aile iletişim bilgileri. Güvenlik ve gizliliği bir kontrol listesi değil, ürün özelliği olarak ele alın. Bir avukat olmanız gerekmez, ama net kararlar ve tutarlı uygulama gerekir.
Okulun mevcut işleyişine uygun bir yöntem seçin:
Parola reset ve hesap kurtarmayı teknik olmayan kullanıcılar için dostça yapın. Kısa, net e-postalar kullanın, kafa karıştırıcı güvenlik sorularından kaçının ve kilitlenmiş personele yönetici destekli kurtarma yolu sağlayın.
Rolleri (öğretmen, öğrenci, veli/guardian, yönetici, rehberlik) tanımlayın ve rol tabanlı erişim kontrolünü yalnızca UI'da değil, her API endpoint'inde zorlayın. Bir öğretmen sadece ders verdiği öğrencileri görmeli; bir veli yalnızca kendi çocuğunu görmelidir.
Not değişiklikleri, roster düzenlemeleri ve mesaj gönderimleri gibi ana işlemleri zaman damgası ve kim tarafından yapıldığıyla birlikte loglayın. Bu, soruşturmalara, itirazlara ve desteğe yardımcı olur.
İş akışı için gerçekten gerekli olanı toplayın. Ardından okul liderliği ile saklama ve silme kurallarını planlayın ve belgeleyin (ne saklanır, ne kadar süre, silme kim onaylar). Yöneticilerin kayıt taleplerini karşılayabilmesi için dışa aktarma seçenekleri ekleyin.
FERPA tarzı gizlilik hedefliyorsanız, en az ayrıcalık erişimi, net onay sınırları ve öğrenci kayıtlarının güvenli işlenmesine odaklanın.
En iyi "okul yönetim web uygulaması" yığını, ekibinizin yıllarca güvenle çalıştırabileceği yığıntır: işe alıp destekleyebileceğiniz, rapor haftasında sabah 8'de hata ayıklayabileceğiniz ve korkmadan yükseltebileceğiniz bir yapı.
Çoğu ekip için klasik ve popüler seçenekler kazanır:
Trend olan karmaşıklıktan ziyade net konvansiyonları, iyi admin araçlarını ve öngörülebilir dağıtımları tercih edin.
Erken iterasyonlarda (MVP ve dahili pilotlar için) daha hızlı ilerlemek isterseniz, Koder.ai gibi sohbetle yönlendirilen bir spec'ten React + Go + PostgreSQL temeli üretebilen platformlar size hız kazandırabilir. Kaynak kodunu dışa aktarabildiğiniz için uzun vadeli, sürdürülebilir bir mimariye uydurmak mümkündür.
API'ye ihtiyacınız varsa (mobil uygulama, entegrasyonlar, ayrı frontend), REST genellikle anlaşılması en kolay yaklaşımdır. Tutarlı kaynak isimleri ve kalıplar kullanın:
/students, /classes, /enrollments, /gradebooks, /messagesOpenAPI/Swagger ile ilk günden belgeleyin, sayfalama ve filtreleme ekleyin ve sürümlemeyi dikkatli yapın (örn. /v1/...). GraphQL iyi olabilir, ama operasyonel ve güvenlik yükü getirir—gerçek bir ihtiyaç yoksa seçmeyin.
Notlar ve mesajlar genellikle PDF, IEP belgeleri ve ekler içerir. Dosyaları veritabanında değil, obje depolamada (S3 veya uyumlu) saklayın.
Özel bucket'lar, kısa ömürlü imzalı URL'ler ve temel güvenlik kontrolleri (boyut limitleri, izin verilen tipler, kötü amaçlı yazılım taraması) kullanın.
Tek bir okulla başlasanız bile, daha fazlasına satma olasılığınızı düşünün. Temel tablolara school_id (tenant) ekleyin ve her sorguda zorunlu kılın. Okul başına ayarlar (not ölçekleri, dönemler, varsayılan izinler) için ayrı bir yapı katmanı tutun ki yeni okullar özel kod gerektirmesin.
Entegrasyonlar okul uygulamalarını ya zaman kazandıran ya da yeni bir iş yığını yaratan noktadır. Okulların zaten nasıl çalıştığına uyan az sayıda yüksek etkili bağlantıya odaklanın.
Temel kayıtlar için CSV içe/dışa aktarımla başlayın: öğrenciler, veliler, sınıflar/bölümler ve kayıtlar. Ofis personelinin formatı tahmin etmek zorunda kalmaması için basit şablonlar ve örnekler sağlayın.
Pratik bir yaklaşım:
Ayrıca aynı veri setlerini dışa aktarma imkanı verin. Uygulamanız iyi olsa bile, okulların çıkış yolu ve bölge/auditorlarla paylaşım için veri ihtiyacı olur.
E-posta/SMS teslimatını kendiniz inşa etmek yerine bir sağlayıcı entegrasyonu yapın ve uygulamanızın kimin ne alacağını yönetmesine odaklanın. Onay ve tercihleri görünür kılın:
Bu, şikayetleri azaltır ve rıza/izin beklentileri ile uyumu kolaylaştırır.
Takvim senkronizasyonu benimsenmeyi artıran "iyi-olur" bir özellik olabilir: ödevler, son tarihler ve etkinlikler aile takvimine gönderilir. Opsiyonel ve sınırlı tutun (sınıf başına, çocuk başına) ki takvimler spam olmasın.
Raporlamayı hafif ama kullanışlı tutun: sınıf bazlı not özetleri, zaman içindeki devam toplamları ve basit etkileşim metrikleri (girişler, mesaj okuma). Filtreleri (tarih aralığı, sınıf, öğrenci) ve tek tıkla CSV dışa aktarma önceliklendirin.
Daha derin bir yol isterseniz ileride bir /reports merkezi ekleyin—ama başlangıçta bir dakika içinde çalıştırılabilecek raporlar sunun.
Bir okul web uygulaması lansmanda kazanır veya kaybeder—kod yüzünden değil, gerçek insanların ona güvenmesi, anlayıp günlük işlerine entegre etmesi yüzünden. Yayını bir dağıtım değil, operasyonel bir değişim olarak planlayın.
Kullanıcıları davet etmeden önce kritik akışları gerçekçi verilerle uçtan uca test edin:
Her rol için basit bir kontrol listesi kullanın ve her sürümde yeniden çalıştırın.
Tam dağıtımdan önce bir okulla veya küçük bir öğretmen grubuyla başlayın. Pilot, varsayımlarınızı (örn. "dönem" ne demek, not ölçekleri nasıl çalışıyor, kim ne mesaj atıyor) riske atmadan doğrulamanıza yardımcı olur.
Pilot sırasında birkaç pratik metriği takip edin: giriş başarısı, ortak görevleri tamamlama süresi ve en sık gelen destek soruları.
Meşgul kullanıcılar kılavuz istemez. Sunun:
Kullanıcılar sorun bildirdiğinde nasıl ilerleyeceğini açıkça tanımlayan bir destek iş akışı kurun: beklenen yanıt süreleri ve güncellemelerin nasıl bildirileceği. İletişim seçeneklerini uygulama içinde ve /contact sayfasında bulundur
Düzeltildiğini ve sırada ne olduğunu paylaşarak döngüyü kapatın. Ücretli katmanlar veya eklentiler sunuyorsanız, /pricing üzerinde şeffaf olun.
Kararlılık gereken ortamlarda, geri alma işlemlerini güvenli kılan sürüm araçlarını düşünün. Koder.ai gibi platformlar anlık görüntüler, geri alma ve barındırma/domainde yönetim sağlar; bu, gereksinimler henüz netleşirken pilotta riski azaltabilir.
Son olarak, küçük sürümlerle yineleyin. Okullar istikrarı sever, ama hafta hafta sürtünmeyi azaltan sürekli küçük iyileştirmeleri de takdir eder.
Başlamadan önce gerçek günlük iş akışlarını ve bu işleri yapan kişileri (ön büro personeli, öğretmenler, veliler, öğrenciler) haritalayın. Ardından 2–4 ölçülebilir başarı metriği belirleyin (örn. “bir öğrenciyi 15 dakika içinde kaydetmek”, “liste düzeltmelerini %50 azaltmak”). Bu kısıtlar, özellik veya UI'dan başlamaktan çok daha kolay MVP kararları almanızı sağlar.
Pratik bir v1 genellikle şunları içerir:
Bu kombinasyon, öğretmenler, ön büro ve veliler için günlük döngüyü karşılar ve sizi tam bir LMS karmaşıklığına zorlamaz.
Gerçek rolleri listeleyin (ön büro personeli, öğretmen, rehberlik, veli/guardian, öğrenci, yönetici) ve her rolün neyi görebileceğini, düzenleyebileceğini, dışa aktarabileceğini ve mesajlaşabileceğini belgeleyin. Bu kuralları yalnızca UI'da değil, API katmanında zorlayın ve not değişiklikleri ile liste düzenlemeleri gibi hassas işlemler için denetim (audit) logları ekleyin.
Veli/koruyuculuğu çoktan-çoğa olarak modelleyin:
Bu yapı, gerçek velayet ve hane senaryolarını destekler ve iletişim listelerindeki hataları önler.
İlişkileri Enrollments gibi birinci sınıf kayıtlar olarak ele alın: başlangıç/bitiş tarihleri olan kayıtlar. Bu, transferleri, bölüm değişikliklerini ve dönem ortası ayrılmaları tarihe zarar vermeden yönetmenizi sağlar. Basit bir yapı:
E-postayı tek başına birincil kimlik olarak kullanmaktan kaçının. Her öğrenci ve personele asla değişmeyecek bir benzersiz dahili ID verin. E-postalar değişebilir, paylaşılabilir veya küçük öğrenciler için olmayabilir—bu yüzden e-posta login/iletişim özniteliği olarak saklanmalı, birincil anahtar olmamalıdır.
Not giriş ekranını bir elektronik tablo gibi davranacak şekilde tasarlayın:
Ayrıca "kaydet" ile "yayınla"yı ayırın, böylece aileler öğretmen istemeden önce notları görmezler.
Alıcıları manuel listeler yerine kayıt (enrollment) temelli kurallarla belirleyin:
Ayrıca şablonlar ve teslimat durumu bilgisi ekleyin; bu, mesajlaşmayı hızlı, güvenilir ve hata ihtimaline karşı dayanıklı yapar.
Koruyucu önlemler ekleyin:
Bunlar, iletişimi kaosa dönüştürmek yerine kullanışlı tutar.
İlk etapta şunları yapın:
FERPA benzeri beklentileri hedefliyorsanız, en az ayrıcalık (least-privilege) erişim ve öğrenci kayıtları etrafında net sınırlar öncelikli olmalıdır.