İyileştirme

Test ve geri bildirimle projeni küçük adımlarla iyileştirmeyi ve 'yeterince iyi'yi bilmeyi öğren.

PROJE PUSULASI

Bu sayfayı ne için kullanacaksın?

Ana fikir

İyileştirme, çalışan bir projeyi test ve geri bildirimle küçük adımlar hâlinde daha iyi hâle getirmektir; her adımda planlar, yapar, test eder ve öğrenirsin ve proje "yeterince iyi" olduğunda durursun.

Üretilecek kanıt

Kendi projelerinden birini (ya da hata günlüğünde kullandığın projeyi) seç ve bir iyileştirme listesi hazırla. Amaç, kafandaki dağınık "şunu da yapsam" fikirlerini önceliğe göre düzenlemek. Aşağıdaki şablonu kopyala ve doldur: PROJE: ____________________ AMAÇ (tek cümle): ____________________ İYİLEŞTİRME LİSTESİ No | Fikir | Öncelik | Durum…

Kontrol tuzağı

Aynı anda çok şeyi değiştirmek Beş şeyi birden değiştirir ve proje düzelirse hangisinin işe yaradığını bilemezsin. Bozulursa da nedenini bulamazsın. Her turda tek bir değişiklik yap. Test etmeden "iyileştirdim" demek Bir değişiklik yaptın diye proje iyileşmiş sayılmaz. Belki bir yeri düzeltirken başka bir yeri bozdun.…

Sonraki bağlantı

Projeyi Belgelemek: Çalışan ve yeterince iyi hâle gelmiş projeni, başkalarının da anlayıp tekrar üretebilmesi için nasıl belgelersin?

Modül kaynakları: Python Tutorial · Arduino Learn

SeviyeBaşlangıç
Yaş10–16
Süre30–45 dk
Ön koşulHata Günlüğü
İçerikStandart ders · 1.496 kelime
Son güncelleme

Bir cümlelik özet

İyileştirme, çalışan bir projeyi test ve geri bildirimle küçük adımlar hâlinde daha iyi hâle getirmektir; her adımda planlar, yapar, test eder ve öğrenirsin ve proje "yeterince iyi" olduğunda durursun.

Neden önemli?

Hata günlüğündeki hataları kapattın ve projen artık çalışıyor. Gece lamban karanlıkta yanıyor, sönmesi gerekince sönüyor. İşte tam burada çoğu insan iki yanlıştan birine düşer.

Bazıları "Çalışıyor, bitti" der ve durur. Oysa "çalışıyor" ile "iyi çalışıyor" aynı şey değildir. Lamba yanıyor ama belki bir saniye geç yanıyor ya da gündüz de arada bir yanıp sönüyor. Bunlar hata değil; sadece daha iyi olabilecek şeyler.

Bazıları ise tam tersini yapar: hiç durmadan iyileştirmeye çalışır, her gün yeni bir özellik ekler ve proje bir türlü bitmez. Sunum günü gelir, elde çalışan bir şey yoktur çünkü her şey "yarım ve daha iyi" durumdadır.

İyileştirme dersi bu ikisinin ortasını bulmayı öğretir: projeyi bilinçli olarak, küçük ve test edilmiş adımlarla daha iyi yapmak, ama bir noktada "bu kadarı yeter" diyebilmek. Mühendislerin ve yazılımcıların yaptığı işin büyük kısmı zaten budur. İlk sürüm nadiren en iyi sürümdür; asıl iş, onu adım adım geliştirmektir.

İyileştirme döngüsü: Planla – Yap – Test et – Öğren

İyileştirme rastgele değişiklik yapmak değildir. Bir döngü izler. Bu döngünün dört adımı vardır ve her tur seni biraz daha ileri götürür:

        ┌──────────────┐
        │   PLANLA     │  Neyi, neden değiştireceğim?
        └──────┬───────┘
               ↓
        ┌──────────────┐
        │    YAP       │  Sadece o tek değişikliği yap.
        └──────┬───────┘
               ↓
        ┌──────────────┐
        │   TEST ET    │  Değişiklik işe yaradı mı?
        └──────┬───────┘
               ↓
        ┌──────────────┐
        │   ÖĞREN      │  Ne öğrendim? Sırada ne var?
        └──────┬───────┘
               ↓
        (döngü baştan başlar)

Planla

Önce tek bir şeyi seç. "Gece lambası çok geç tepki veriyor" gibi somut bir hedef belirle ve neden değiştireceğini yaz. Aynı anda beş şeyi birden değiştirmeye çalışma; sonra hangisinin işe yaradığını bilemezsin.

Yap

Planladığın o tek değişikliği yap. Işık eşiğini biraz düşür ya da sensörün okuma aralığını kısalt. Kod ya da devrede yalnız o küçük parçaya dokun.

Test et

Önceki modüldeki test senaryolarını yeniden çalıştır. Değişiklik işe yaradı mı? Bir de kontrol et: yeni bir hata çıkmış olabilir mi? İyileştirme yaparken bir yeri düzeltip başka bir yeri bozmak çok olağandır.

Öğren

Sonucu değerlendir. İşe yaradıysa değişikliği tut ve sıradaki iyileştirmeye geç. İşe yaramadıysa geri al ve neden olmadığını düşün. Her tur, projeyi de seni de biraz daha iyi yapar.

Küçük adımlar ve "ikinci sürüm" fikri

Neden küçük adım?

Bir kâğıt uçak yaptığını düşün. İyi uçmuyor. Aynı anda kanatları büyütür, burnunu ağırlaştırır ve kuyruğunu kıvırırsan ve uçak düzelirse hangi değişikliğin işe yaradığını asla bilemezsin. Ama tek tek denersen her değişikliğin etkisini görürsün. Projeler de böyledir: küçük, tek adımlar hem test edilebilir hem de geri alınabilir.

Küçük adımın bir faydası daha var: her adımdan sonra elinde hâlâ çalışan bir proje kalır. Büyük bir değişikliğe girişip yarıda kalırsan, elinde çalışmayan bir şey olur. Küçük adımlarla ilerlersen her an "işte bu çalışıyor" diyebileceğin bir sürümün olur.

"İkinci sürüm" fikri

Profesyoneller bir projeyi tek seferde mükemmel yapmaya çalışmaz. Önce çalışan bir birinci sürüm çıkarırlar. Sonra onu kullanır, test eder, geri bildirim toplar ve öğrendikleriyle bir ikinci sürüm yaparlar.

Bu, senin için de geçerli. Gece lambanın birinci sürümü sadece "karanlıkta yan, aydınlıkta sön" yapıyordu. İkinci sürümde şunları ekleyebilirsin:

Dikkat et: bunların hiçbiri "hata düzeltme" değil. Hepsi, çalışan bir şeyi daha iyi yapma. İkinci sürüm fikri sana şunu söyler: birinci sürümü bitir, sonra öğrendiklerinle bir üstüne çık.

Geri bildirim nasıl toplanır?

En iyi iyileştirme fikirleri çoğu zaman senden değil, projeyi *senin dışında birinin* denemesinden gelir. Sen projeyi tanıdığın için nasıl kullanılacağını zaten bilirsin. Başka biri ise senin hiç düşünmediğin şeyi yapar.

Çizgi izleyen robotunu bir arkadaşına test ettir. "Şurada niye yavaşladı?" ya da "Bu düğme ne işe yarıyor?" gibi sorular sana yeni iyileştirme fikirleri verir. Geri bildirim isterken açık uçlu sor: "Beğendin mi?" yerine "Neyi anlamadın?" ya da "Sence en can sıkıcı yanı neydi?" diye sor. Bu sorular daha işe yarar cevaplar getirir.

Nereye kadar iyileştirmeli? "Yeterince iyi"

İyileştirmenin en zor kısmı ne zaman *duracağını* bilmektir. Her projeyi sonsuza kadar geliştirebilirsin, ama bir noktada eklediğin her yeni şey çok az fayda sağlar ve çok zaman alır. İşte o noktaya "yeterince iyi" denir.

"Yeterince iyi" tembellik değildir. Projenin amacını hatırlayıp, o amacı karşılayıp karşılamadığına bakmaktır. Gece lambasının amacı karanlıkta yol göstermekse ve bunu güvenilir biçimde yapıyorsa, ışığın rengini ayarlamak "olmasa da olur" bir eklentidir.

İyileştirme fikirlerini önceliğe göre ayırmak için basit bir tablo kullanabilirsin:

Nereye kadar iyileştirmeli? "Yeterince iyi" tablosu
ÖncelikAnlamıGece lambası örneği
OlmalıAmaç bunsuz gerçekleşmezKaranlıkta güvenilir yansın
Olsa iyi olurProjeyi belirgin biçimde iyileştirirIşık yumuşak açılıp kapansın
Olmasa da olurHoş ama gerekli değilIşığın rengi ayarlanabilsin

Önce "olmalı" satırını bitir. Zamanın kalırsa "olsa iyi olur" satırına geç. "Olmasa da olur" satırı ise ancak her şey hazırsa sıraya girer. Sunum ya da teslim tarihi yaklaşıyorsa "olmasa da olur" fikirlerini rahatça bir kenara koyabilirsin.

Bir projenin "yeterince iyi" olup olmadığını şu kısa kontrol listesiyle sınayabilirsin:

YETERİNCE İYİ Mİ? KONTROL LİSTESİ
[ ] Proje asıl amacını yerine getiriyor mu?
[ ] Tüm test senaryolarından geçiyor mu?
[ ] Açık (kapatılmamış) ciddi bir hata kaldı mı?
[ ] Başka biri yardımsız kullanabiliyor mu?
[ ] Kalan fikirler sadece "olmasa da olur" mu?

Beş kutunun ilk dördü işaretliyse ve son madde "evet" ise
proje büyük ihtimalle yeterince iyidir. Durabilirsin.

Mini uygulama

Kendi projelerinden birini (ya da hata günlüğünde kullandığın projeyi) seç ve bir iyileştirme listesi hazırla. Amaç, kafandaki dağınık "şunu da yapsam" fikirlerini önceliğe göre düzenlemek.

Aşağıdaki şablonu kopyala ve doldur:

PROJE: ____________________
AMAÇ (tek cümle): ____________________

İYİLEŞTİRME LİSTESİ
No | Fikir                     | Öncelik            | Durum
---|---------------------------|--------------------|-------
1  |                           | Olmalı             | Planlandı
2  |                           | Olsa iyi olur      | Planlandı
3  |                           | Olmasa da olur     | Planlandı

ÖNCELİK: Olmalı / Olsa iyi olur / Olmasa da olur
DURUM: Planlandı / Yapılıyor / Test edildi / Bitti

KURAL: Bir fikri "Bitti" yapmadan önce test senaryosuyla dene.

Sonra döngüyü tek bir tur çalıştır: listedeki en yüksek öncelikli fikri seç (Planla), sadece o değişikliği yap (Yap), test senaryolarını çalıştır (Test et) ve sonucu bir cümleyle not et (Öğren). Bir tur bitince ne kadar az değiştirip ne kadar çok öğrendiğine dikkat et.

Sık yapılan hatalar

Aynı anda çok şeyi değiştirmek

Beş şeyi birden değiştirir ve proje düzelirse hangisinin işe yaradığını bilemezsin. Bozulursa da nedenini bulamazsın. Her turda tek bir değişiklik yap.

Test etmeden "iyileştirdim" demek

Bir değişiklik yaptın diye proje iyileşmiş sayılmaz. Belki bir yeri düzeltirken başka bir yeri bozdun. Her değişiklikten sonra test senaryolarını yeniden çalıştır.

Hiç durmamak

Her projeye sonsuza kadar özellik eklenebilir. Amacı gözden kaçırıp süslemelerle uğraşırsan asıl iş hiç bitmez. "Yeterince iyi" kontrol listesini kullan ve zamanında dur.

Çalışan sürümü kaybetmek

Büyük bir değişikliğe girişip çalışan hâli bozarsan, geri dönecek bir yerin kalmayabilir. Küçük adımlarla ilerle ki her an elinde çalışan bir sürüm olsun.

Sadece kendi kullanımına göre iyileştirmek

Sen projeyi tanıdığın için her şey sana açık gelir. Başkasına test ettirmezsen, senin için apaçık olan ama başkası için kafa karıştırıcı olan yerleri hiç fark etmezsin.

Güvenlik notu

İyileştirirken donanıma tekrar tekrar dokunacaksın: kablo değiştirecek, dirençleri söküp takacak, motorları yeniden ayarlayacaksın. Her seferinde önce gücü kes, sonra dokun. Sıcak yüzey, pil ve motor gibi parçalarla çalışırken bir yetişkinden yardım iste. Ayrıca projeni başkasına test ettirirken geri bildirimi kibarca iste ve kibarca ver: amaç kişiyi değil, projeyi eleştirmektir. Sana gelen "şurası çalışmadı" sözü bir hakaret değil, ücretsiz bir iyileştirme ipucudur.

Ders özeti

Kontrol soruları

  1. İyileştirme döngüsünün dört adımı nedir ve sırası nasıldır?
  2. Neden her turda sadece tek bir değişiklik yapman önerilir?
  3. "Birinci sürüm" ile "ikinci sürüm" arasındaki fark nedir? Bir örnekle açıkla.
  4. Bir projeyi "yeterince iyi" saymak için hangi soruları sorarsın (en az üç tane)?
  5. En iyi iyileştirme fikirleri neden çoğu zaman başkasına test ettirmekten gelir?

Cevaplar

  1. Planla, Yap, Test et, Öğren. Öğren adımından sonra döngü baştan başlar; her tur projeyi biraz daha ileri götürür.
  2. Çünkü aynı anda birkaç şey değiştirirsen, sonuç iyi de olsa kötü de olsa hangi değişikliğin sorumlu olduğunu bilemezsin. Tek değişiklik hem test edilebilir hem geri alınabilir.
  3. Birinci sürüm, amacı karşılayan ilk çalışan hâldir (gece lambası karanlıkta yanıp aydınlıkta söner). İkinci sürüm, onu kullanıp geri bildirim topladıktan sonra yapılan daha iyi hâldir (ışık yumuşak açılıp kapanır, kısa gölgeler onu titretmez).
  4. Örneğin: Proje asıl amacını yapıyor mu? Tüm test senaryolarından geçiyor mu? Açık ciddi bir hata kaldı mı? Başka biri yardımsız kullanabiliyor mu? Kalan fikirler sadece "olmasa da olur" mu?
  5. Çünkü sen projeyi tanıdığın için nasıl kullanılacağını zaten bilirsin ve sorunları göremezsin. Başka biri senin hiç düşünmediğin şeyi yapar ve senin için apaçık olan ama başkası için kafa karıştıran yerleri ortaya çıkarır.

Kaynak ve doğrulama notu

“İyileştirme” dersi için doğrulama odağı İyileştirme döngüsü: Planla – Yap – Test et – Öğren ile Yap arasındaki ilişkinin örnekler üzerinde tutarlı çalışmasıdır. Proje sayfalarında sonuç iddiası ancak gerçek prototip, test kaydı veya gözlemle desteklendiğinde kullanılmalıdır. Maliyet, süre ve başarı oranı gibi sayılar tahminse açıkça “tahmin” olarak işaretlenmelidir.

Sonraki ders

Projeyi Belgelemek: Çalışan ve yeterince iyi hâle gelmiş projeni, başkalarının da anlayıp tekrar üretebilmesi için nasıl belgelersin?

Quiz’i BaşlatProje Atölyesi bölümüne dön
SORU HAVUZU

Bu dersi 10 soruyla pekiştir

Bu ders için 20 soruluk bir havuz hazırlandı. Her başlangıçta 10 soru ve seçenekler yeniden karıştırılır.