Çevik Yazılım Geliştirme, Scrum ve Nesnelerin İnterneti - kapak
Teknoloji#çevik yazılım#scrum#nesnelerin i̇nterneti#yazılım geliştirme

Çevik Yazılım Geliştirme, Scrum ve Nesnelerin İnterneti

Bu özet, çevik yazılım geliştirme metodolojilerini, Scrum çerçevesini ve Nesnelerin İnterneti'nin temel kavramlarını, veri toplama ve iletim teknolojilerini, ayrıca ilgili protokolleri akademik bir yaklaşımla sunmaktadır.

tglclk26 Mart 2026 ~27 dk toplam
01

Sesli Özet

10 dakika

Konuyu otobüste, koşarken, yolda dinleyerek öğren.

Sesli Özet

Çevik Yazılım Geliştirme, Scrum ve Nesnelerin İnterneti

0:009:30
02

Flash Kartlar

25 kart

Karta tıklayarak çevir. ← → ile gez, ⎵ ile çevir.

1 / 25
Tüm kartları metin olarak gör
  1. 1. Programlamada yeni eğilimler nelerdir?

    Programlamada yeni eğilimler arasında çevik yazılım geliştirme metotları, özellikle Scrum yöntemi ve Nesnelerin İnterneti (IoT) bulunmaktadır. Bu eğilimler, yazılım geliştirme süreçlerini hızlandırmayı, değişime adaptasyonu artırmayı ve fiziksel dünyanın dijitalleşmesini sağlamayı hedefler. Geleneksel yöntemlerin yetersiz kaldığı durumlarda ortaya çıkmışlardır.

  2. 2. Çevik yazılım geliştirme metotlarının ortaya çıkış nedeni nedir?

    Çevik yazılım geliştirme metotları, 1990'lı yıllarda iş dünyasındaki hızlı değişimlere geleneksel yazılım geliştirme yöntemlerinin uyum sağlamakta zorlanması nedeniyle ortaya çıkmıştır. Bu metotlar, değişikliklere daha hızlı adapte olmayı, paydaş memnuniyetini artırmayı ve yüksek doğrulukta ürünler sunmayı amaçlamaktadır. Böylece, daha esnek ve verimli bir geliştirme süreci hedeflenmiştir.

  3. 3. Nesnelerin İnterneti'nin temel amacı ve tanımı nedir?

    Nesnelerin İnterneti (IoT), fiziksel dünyanın dijitalleşmesini sağlayarak, cihazlar arası iletişimi ve veri akışını temel alan bir teknoloji trendidir. Temel amacı, günlük nesnelerin internete bağlanarak veri toplaması, paylaşması ve bu veriler üzerinden akıllı kararlar alınmasını sağlamaktır. Akıllı ev ve akıllı şehir gibi uygulamaların temelini oluşturur.

  4. 4. Çevik Yazılım Geliştirme Manifestosu'nun temel değerleri nelerdir?

    Çevik Yazılım Geliştirme Manifestosu'nun dört temel değeri şunlardır: Süreçler ve araçlardan ziyade bireyler ve etkileşimler; kapsamlı dokümantasyondan ziyade çalışan yazılım; sözleşme pazarlıklarından ziyade müşteri ile işbirliği; ve bir plana bağlı kalmaktan ziyade değişime karşılık verme. Bu değerler, yazılım geliştirme felsefesini insan odaklı ve esnek bir yapıya dönüştürmeyi amaçlar.

  5. 5. Çevik Manifestoyu destekleyen prensiplerden üçünü açıklayınız.

    Çevik Manifestoyu destekleyen prensiplerden üçü şunlardır: Müşteri memnuniyeti, çalışan yazılımın düzenli teslimi ve değişime açıklık. Müşteri memnuniyeti, değerli yazılımın erken ve sürekli teslimiyle sağlanır. Çalışan yazılımın düzenli teslimi, kısa zaman aralıklarında (haftalar yerine aylar) gerçekleştirilir. Değişime açıklık ise, geliştirme sürecinin herhangi bir aşamasında bile değişiklik taleplerinin memnuniyetle karşılanmasını ifade eder.

  6. 6. Test Güdümlü Programlama (TDD) prensibi nedir?

    Test Güdümlü Programlama (TDD), yazılım geliştirme sürecinde koddan beklenenleri test eden kod parçacıklarının, asıl kod yazılmadan önce yazılması prensibine dayanır. Bu yaklaşım, geliştiricinin önce neyi başarmak istediğini netleştirmesine yardımcı olur ve yazılımın doğru çalıştığından emin olmak için sürekli geri bildirim sağlar. Böylece, daha sağlam ve hatasız kodlar üretilir.

  7. 7. Kod Yeniden Yapılandırma (Code Refactoring) ne anlama gelir?

    Kod Yeniden Yapılandırma (Code Refactoring), mevcut kodun dış davranışını değiştirmeden, iç yapısını ve kalitesini iyileştirme faaliyetidir. Bu süreç, kodun okunabilirliğini, anlaşılabilirliğini ve sürdürülebilirliğini artırmayı hedefler. Yeniden yapılandırma sayesinde, yazılımın gelecekteki değişikliklere daha kolay adapte olması ve hata oranının düşürülmesi amaçlanır.

  8. 8. Sürekli Entegrasyon (Continuous Integration) uygulamasının amacı nedir?

    Sürekli Entegrasyon (Continuous Integration - CI) uygulamasının amacı, yazılım geliştiricilerin kod değişikliklerini sık sık (günde birkaç kez) ana kod tabanına entegre etmelerini sağlamaktır. Bu sayede, yazılım değişikliklerinin bozulmaya yol açıp açmadığı erken tespit edilir ve entegrasyon sorunları küçük parçalar halinde çözülür. Bu durum, geliştirme sürecindeki riskleri azaltır ve daha istikrarlı bir kod tabanı oluşturulmasına yardımcı olur.

  9. 9. Eşli Programlama (Pair Programming) nedir ve faydaları nelerdir?

    Eşli Programlama (Pair Programming), iki yazılımcının aynı bilgisayar başında, aynı iş üzerinde birlikte çalışması prensibidir. Bir kişi kod yazarken (driver), diğeri kodu gözden geçirir ve stratejik düşünür (navigator). Bu yöntem, hata oranını düşürmeye, bilgi aktarımını kolaylaştırmaya, kod kalitesini artırmaya ve ekip içinde daha iyi bir işbirliği ortamı yaratmaya yardımcı olur. Ayrıca, karmaşık sorunlara farklı bakış açıları getirilmesini sağlar.

  10. 10. Scrum'ın temel özellikleri nelerdir?

    Scrum, öğrenmesi kolay, esnek ve şeffaf bir çevik yazılım geliştirme çerçevesidir. Temel özellikleri arasında kısa ve sabit süreli tekrarlamalar (Sprintler), sürekli geri bildirim, kendi kendini organize eden ekipler ve sürekli iyileştirme yer alır. Scrum, karmaşık ürünlerin geliştirilmesinde belirsizliği yönetmek ve değeri sürekli olarak teslim etmek için tasarlanmıştır.

  11. 11. Scrum Ekibi kimlerden oluşur ve her birinin rolü nedir?

    Scrum Ekibi, Ürün Sahibi (Product Owner), Geliştirme Ekibi (Development Team) ve Scrum Uzmanı'ndan (Scrum Master) oluşur. Ürün Sahibi, ürünün değerini maksimize etmekten ve Ürün İş Listesi'ni yönetmekten sorumludur. Geliştirme Ekibi, her Sprint sonunda kullanılabilir bir ürün parçası teslim eden ve kendi kendini organize eden profesyonellerdir. Scrum Uzmanı ise Scrum'ın doğru anlaşılmasını ve uygulanmasını sağlar, ekibin önündeki engelleri kaldırır.

  12. 12. Ürün Sahibi'nin (Product Owner) ana sorumlulukları nelerdir?

    Ürün Sahibi'nin (Product Owner) ana sorumlulukları, ürünün değerini maksimize etmek ve Ürün İş Listesi'ni (Product Backlog) yönetmektir. Bu, iş listesindeki maddelerin açıkça ifade edilmesini, önceliklendirilmesini ve Geliştirme Ekibi tarafından anlaşılmasını sağlamayı içerir. Ürün Sahibi, paydaşların temsilcisi olarak hareket eder ve ürünün vizyonunu belirlemede kilit rol oynar.

  13. 13. Geliştirme Ekibi'nin (Development Team) temel özellikleri nelerdir?

    Geliştirme Ekibi'nin temel özellikleri şunlardır: Kendi kendini organize ederler, yani işlerini en iyi nasıl yapacaklarına kendileri karar verirler. Çapraz fonksiyoneldirler, yani bir ürün parçası oluşturmak için gerekli tüm becerilere sahiptirler. Ayrıca, her Sprint sonunda kullanılabilir ve potansiyel olarak yayınlanabilir bir ürün parçası (Increment) teslim etmekten sorumludurlar. Genellikle 3 ila 9 kişiden oluşurlar.

  14. 14. Scrum Uzmanı'nın (Scrum Master) rolü ve görevleri nelerdir?

    Scrum Uzmanı'nın (Scrum Master) rolü, Scrum'ın doğru anlaşılmasını ve uygulanmasını sağlamaktır. Ekibin önündeki engelleri kaldırır, Scrum etkinliklerinin verimli geçmesine yardımcı olur ve ekibin kendi kendini organize etmesine destek olur. Scrum Uzmanı, ekibe ve kuruluşa Scrum prensipleri konusunda koçluk yapar, ancak bir yönetici veya lider değildir; daha çok bir hizmetkar lider rolündedir.

  15. 15. Scrum etkinlikleri nelerdir?

    Scrum etkinlikleri, düzenlilik ve fayda artırımı için yapılır ve zaman kısıtlıdır. Bu etkinlikler şunlardır: Sprint, Sprint Planlama, Günlük Scrum, Sprint Değerlendirme ve Sprint Retrospektifi. Her bir etkinlik, Scrum çerçevesinin belirli bir amacına hizmet eder ve ekibin sürekli iyileşmesini ve değer teslimini destekler.

  16. 16. Sprint nedir ve süresi ne kadardır?

    Sprint, Scrum'ın kalbi olan, bir ila dört hafta süren sabit zaman aralığıdır. Bu süre zarfında, Geliştirme Ekibi, Ürün İş Listesi'nden seçilen maddeleri tamamlayarak kullanılabilir bir ürün parçası (Increment) oluşturur. Sprintler, tutarlılık ve öngörülebilirlik sağlar ve her Sprint sonunda yeni bir ürün parçası teslim edilir.

  17. 17. Günlük Scrum (Daily Scrum) toplantısının amacı ve süresi nedir?

    Günlük Scrum (Daily Scrum) toplantısı, Geliştirme Ekibinin günlük ilerlemesini ve engellerini paylaştığı 15 dakikalık, zaman kısıtlı bir toplantıdır. Amacı, ekibin bir önceki günden bu yana ne yaptığını, bugün ne yapacağını ve herhangi bir engelle karşılaşıp karşılaşmadığını paylaşarak Sprint hedefine ulaşma yolundaki ilerlemeyi senkronize etmektir. Bu, ekibin kendi kendini organize etmesine yardımcı olur.

  18. 18. Sprint Değerlendirme (Sprint Review) ve Sprint Retrospektifi (Sprint Retrospective) arasındaki fark nedir?

    Sprint Değerlendirme (Sprint Review), Sprint sonunda tamamlanan ürün parçasının paydaşlarla gözden geçirilmesidir; ürünün ne kadarının tamamlandığı ve bir sonraki Sprint için Ürün İş Listesi'nin nasıl güncelleneceği tartışılır. Sprint Retrospektifi (Sprint Retrospective) ise ekibin kendi süreçlerini değerlendirip, bir sonraki Sprint'te nasıl daha verimli olabileceklerini planladığı, iç odaklı bir toplantıdır. Değerlendirme ürüne, Retrospektif sürece odaklanır.

  19. 19. Scrum çıktıları nelerdir?

    Scrum çıktıları arasında Ürün İş Listesi (Product Backlog), Sprint İş Listesi (Sprint Backlog), Ürün Parçası (Increment), Takım Hızı (Team Velocity) ve Bitti Tanımı (Definition of Done) yer alır. Bu çıktılar, Scrum ekibinin ilerlemesini, planlarını ve tamamlanmış işlerini şeffaf bir şekilde takip etmesini sağlar ve sürekli iyileştirme için temel oluşturur.

  20. 20. Ürün İş Listesi (Product Backlog) ve Sprint İş Listesi (Sprint Backlog) arasındaki fark nedir?

    Ürün İş Listesi (Product Backlog), ürünün tüm bilinen özelliklerini, gereksinimlerini, iyileştirmelerini ve düzeltmelerini içeren, önceliklendirilmiş dinamik bir listedir. Ürünün gelecekteki tüm işlerini temsil eder. Sprint İş Listesi (Sprint Backlog) ise, bir Sprint içinde Geliştirme Ekibi tarafından seçilen Ürün İş Listesi maddelerini ve bu maddeleri tamamlamak için gerekli olan planı içerir. Sprint İş Listesi, sadece o Sprint'e özeldir ve Geliştirme Ekibi tarafından yönetilir.

  21. 21. Bitti Tanımı (Definition of Done) neyi ifade eder?

    Bitti Tanımı (Definition of Done), bir işin ne zaman 'tamamlanmış' sayılacağını belirleyen kriterler bütünüdür. Bu tanım, bir ürün iş listesi maddesinin veya bir ürün parçasının kalitesini ve tamamlanma durumunu güvence altına alır. Ekip ve paydaşlar arasında ortak bir anlayış oluşturarak şeffaflığı artırır ve teslim edilen ürünün kullanılabilirliğini garanti eder.

  22. 22. Nesnelerin İnterneti (IoT) kavramını ilk kim ortaya atmıştır ve temel fikri nedir?

    Nesnelerin İnterneti (IoT) kavramı ilk kez Kevin Ashton tarafından ortaya atılmıştır. Temel fikri, fiziksel dünyadaki nesneleri radyo frekansları aracılığıyla internete bağlama ve bu nesnelerden veri toplama yeteneği kazandırmaktır. Bu sayede, fiziksel nesnelerin dijital ortama entegre edilerek daha akıllı ve etkileşimli sistemler oluşturulması hedeflenmiştir.

  23. 23. IoT sistemlerinde veri toplama için kullanılan temel teknolojiler nelerdir?

    IoT sistemlerinde veri toplama için kullanılan temel teknolojiler sensörler ve RFID (Radyo Frekansı Tanımlama) teknolojileridir. Sensörler, fiziksel ortamdan ısı, hareket, nem gibi girdileri algılayıp elektronik sinyallere çevirirken, RFID teknolojisi nesnelere eklenen etiketleri elektromanyetik alanlar kullanarak otomatik olarak tanımlar ve izler. Bu teknolojiler, fiziksel dünyadan dijital verilere köprü kurar.

  24. 24. RFID teknolojisi nasıl çalışır ve hangi bilgileri içerir?

    RFID (Radyo Frekansı Tanımlama) teknolojisi, nesnelere eklenen etiketleri elektromanyetik alanlar kullanarak temassız bir şekilde otomatik olarak tanımlar ve izler. Etiketler, bir okuyucu tarafından gönderilen radyo sinyallerini alarak kendi içlerindeki bilgileri geri gönderir. Bu etiketler genellikle Elektronik Ürün Kodu (EPC) gibi bilgileri içerir ve pasif veya aktif olabilirler. Bu sayede envanter takibi, erişim kontrolü gibi alanlarda kullanılır.

  25. 25. Gömülü sistemlerin temel bileşenleri nelerdir ve işlevi nedir?

    Gömülü sistemler, sensörlerden gelen sinyalleri işleyerek veriye dönüştüren ve internete ileten mikrodenetleyici veya mikroişlemci tabanlı donanımlardır. Temel bileşenleri donanım, uygulama yazılımı ve gömülü sistem işletim sistemidir. İşlevleri, belirli bir görevi yerine getirmek üzere tasarlanmış, genellikle gerçek zamanlı kısıtlamalara sahip sistemlerdir. IoT cihazlarının beyni olarak görev yaparlar.

03

Bilgini Test Et

15 soru

Çoktan seçmeli sorularla öğrendiklerini ölç. Cevap + açıklama.

Soru 1 / 15Skor: 0

Çevik Yazılım Geliştirme Manifestosu'nun vurguladığı dört temel değerden biri aşağıdakilerden hangisidir?

04

Detaylı Özet

7 dk okuma

Tüm konuyu derinlemesine, başlık başlık.

Programlamada Yeni Eğilimler: Çevik Yazılım, Scrum ve Nesnelerin İnterneti

Kaynak Bilgisi: Bu çalışma materyali, bir dersin sesli transkripti ve kopyalanmış metin kaynaklarından derlenmiştir.


📚 Giriş

Günümüz programlama dünyası, 20. yüzyılın ikinci yarısından bu yana sürekli bir evrim içindedir. Özellikle 1990'lı yıllardan itibaren iş dünyasındaki hızlı değişimler, geleneksel yazılım geliştirme yöntemlerinin yetersiz kalmasına neden olmuş ve bu durum, Çevik Yazılım Geliştirme metotlarının ortaya çıkışını tetiklemiştir. Bu metotlar, değişime daha hızlı adapte olmayı, paydaş memnuniyetini artırmayı ve yüksek doğrulukta ürünler sunmayı hedefler. Bu bağlamda, çevik yaklaşımların en popüler uygulamalarından biri olan Scrum yöntemi öne çıkmaktadır.

Diğer yandan, fiziksel dünyanın dijitalleşmesini sağlayan ve cihazlar arası iletişimi temel alan bir teknoloji trendi olan Nesnelerin İnterneti (IoT), yaşamın her alanına nüfuz ederek yeni bir dönemi başlatmıştır. Bu çalışma materyali, programlamadaki bu iki önemli eğilimi, temel prensipleri, pratikleri ve bileşenleriyle detaylı bir şekilde ele almaktadır.


1️⃣ Çevik Yazılım Geliştirme ve Scrum Yöntemi

1.1. Çevik Yazılım Manifestosu ve Prensipleri

Çevik yazılım geliştirme, 2001 yılında yayınlanan "Çevik Yazılım Geliştirme Manifestosu" ile temellerini atmıştır. Bu manifesto, yazılım geliştirme süreçlerine yeni bir bakış açısı getirerek dört temel değer üzerinde durur:

  • Bireyler ve Etkileşimler ✅ süreçler ve araçlardan daha değerlidir.
  • Çalışan Yazılım ✅ kapsamlı dokümantasyondan daha değerlidir.
  • Müşteri ile İşbirliği ✅ sözleşme pazarlıklarından daha değerlidir.
  • Değişime Karşılık Vermek ✅ bir plana bağlı kalmaktan daha değerlidir.

Bu değerleri destekleyen 12 prensip arasında müşteri memnuniyeti, değişime açıklık, çalışan yazılımın düzenli teslimi, iş süreçleri sahipleri ve yazılımcılar arasında günlük işbirliği, motive olmuş bireyler ve yüz yüze iletişim gibi unsurlar vurgulanmaktadır.

1.2. Çevik Yazılım Geliştirme Pratikleri

Çevik yazılım projelerinin başarısında kritik rol oynayan bazı pratikler şunlardır:

  • Test Güdümlü Programlama (Test Driven Development - TDD): 💡 Yazılımcı, kodu yazmaya başlamadan önce koddan beklenenleri test edecek test kodlarını yazar. Testler geçene kadar kod yazmaya devam eder.
  • Kod Yeniden Yapılandırma (Code Refactoring): Mevcut kodun davranışını değiştirmeden yapısal kalitesini artırma faaliyetidir. Kodun okunabilirliğini ve sürdürülebilirliğini hedefler.
  • Sürekli Entegrasyon (Continuous Integration - CI): Yazılım üzerinde yapılan değişikliklerin herhangi bir bozulmaya yol açıp açmadığını erken tespit etmeyi amaçlar. Her değişiklik sonrası yazılım derlenir ve tüm testler çalıştırılır.
  • Eşli Programlama (Pair Programming): İki yazılımcının aynı iş üzerinde aynı iş istasyonunu kullanarak birlikte çalışmasıdır. Hata oranını düşürür ve bilgi aktarımını kolaylaştırır.

1.3. Scrum Tanımı ve Temel Bileşenleri

Scrum, öğrenmesi kolay, esnek ve şeffaf bir çevik yazılım geliştirme çerçevesidir. Karışık ve adaptasyona açık problemleri ele alarak en yüksek değere sahip ürünü üretken ve yaratıcı bir şekilde geliştirmeyi sağlar. Scrum'ın temel bileşenleri şunlardır:

  • Scrum Ekibi: Ürün Sahibi, Geliştirme Ekibi ve Scrum Uzmanı'ndan oluşur.
  • Etkinlikler: Sprint, Sprint Planlama, Günlük Scrum, Sprint Değerlendirme, Sprint Retrospektifi.
  • Çıktılar: Ürün İş Listesi, Sprint İş Listesi, Ürün Parçası.

Scrum, şeffaflık, gözlem ve adaptasyon ilkelerine dayanır.

1.4. Scrum Ekibi ve Rolleri

Scrum Ekibi, dışarıdan komutlarla yönetilmeyen, kendi kendini organize eden ve çapraz fonksiyonlu bir yapıdır.

  • Ürün Sahibi (Product Owner): 📚 Ürünün değerinden ve geliştirilmesinden sorumludur. Yapılacak iş listesini (Ürün İş Listesi) oluşturur ve önceliklendirir. İşlerin bittiğini kabul eden kişidir.
  • Geliştirme Ekibi (Development Team): Her tekrarlama (Sprint) sonunda kullanılabilir bir ürün parçası teslim etmekten sorumludur. Kendi kendini organize eder ve "Bitti" tanımına uygun işler yapar. İdeal olarak 3-9 kişiden oluşur.
  • Scrum Uzmanı (Scrum Master): 📚 Scrum'ın doğru anlaşılmasını ve uygulanmasını sağlar. Ekibin önündeki engelleri kaldırır ve etkinliklerin verimli geçmesine yardımcı olur. "Hizmetkâr-lider" olarak da adlandırılır.

1.5. Scrum Etkinlikleri

Scrum etkinlikleri, düzenlilik sağlamak ve faydayı artırmak için zaman kısıtlı olarak yapılır:

  • Sprint: 1️⃣ Scrum'ın temel yapı taşıdır. En fazla bir ay süren sabit bir zaman aralığıdır (genellikle 1-2 hafta). Her Sprint sonunda yayınlanabilir bir ürün parçası ortaya çıkar.
  • Sprint Planlama (Sprint Planning): 2️⃣ Sprint'in başında yapılır. Tüm Scrum Ekibi, mevcut Sprint içinde yapılacak işi ve nasıl yapılacağını planlar. Ürün İş Listesi temel girdidir.
  • Günlük Scrum (Daily Scrum): 3️⃣ Her gün 15 dakikalık, ayakta yapılan bir toplantıdır. Geliştirme Ekibi üyeleri dün ne yaptıklarını, bugün ne yapacaklarını ve karşılaştıkları engelleri paylaşır.
  • Sprint Değerlendirme (Sprint Review): 4️⃣ Sprint sonunda yapılır. Ekip, geliştirdiği ürün parçasını paydaşlara sunar ve geri bildirim alır. Resmi bir sunumdan ziyade işbirliğine dayalı bir görüşme toplantısıdır.
  • Sprint Retrospektifi (Sprint Retrospective): 5️⃣ Sprint'in en son etkinliğidir. Ekip, geride kalan Sprint'i değerlendirerek süreç, insan ilişkileri ve araçlar açısından nelerin daha iyi yapılabileceğini tartışır ve sürekli iyileştirme için aksiyon planları oluşturur.

1.6. Scrum Çıktıları

Scrum süreci boyunca oluşan ve değeri şeffaf bir biçimde gözlemlemeyi sağlayan eserler ve çıktılar:

  • Ürün İş Listesi (Product Backlog): 📚 Ürünün önceliğe göre sıralanmış özellik listesidir. Ürün Sahibi sorumludur.
  • Sprint İş Listesi (Sprint Backlog): 📚 Belirlenen Sprint hedefi doğrultusunda seçilmiş Ürün İş Listesi kalemleri ve bu hedefe ulaşmak için yapılacak işlerin planıdır.
  • Ürün Parçası (Increment): 📚 Bir Sprint sonunda tamamlanan Ürün İş Listesi kalemleri ile daha önce bitirilmiş Sprintlerdeki Ürün Parçalarının değerlerinin toplamıdır. Kullanılabilir ve "Bitti" tanımına uygun olmalıdır.
  • Takım Hızı (Team Velocity): Bir Sprint boyunca yapılan işlerin toplam puanıdır. Gelecek Sprint planlamaları için yol göstericidir.
  • Bitti Tanımı (Definition of Done - DoD): 📚 Bir işin ne zaman tamamlanmış sayılacağını belirleyen kriterler bütünüdür. Tüm ekip aynı şeyi anlamalıdır ve ürün kalitesi için önemlidir.
  • Aşağı-Tüketim Grafiği (Burn-down Chart): 📊 Sprint boyunca kalan iş miktarını gösteren bir grafiktir. Günlük Scrum toplantılarında güncellenir ve Sprint gidişatını şeffaf bir şekilde izlemeyi sağlar.

2️⃣ Nesnelerin İnterneti (IoT) Kavramı ve Teknolojileri

2.1. IoT'ye Giriş ve Tarihçe

Nesnelerin İnterneti (IoT) kavramı ilk kez Kevin Ashton tarafından ortaya atılmıştır. Fiziksel dünyayı radyo frekansları aracılığıyla internete bağlama fikrine dayanır. IoT, akıllı ev, akıllı şehir gibi uygulamaların temelini oluşturarak, cihazlar arası iletişimi ve veri akışını merkeze alır.

2.2. Veri Toplama Teknolojileri

IoT sistemlerinde veri toplama, çeşitli teknolojiler aracılığıyla gerçekleştirilir:

2.2.1. Sensörler

📚 Sensör: Fiziksel ortamdan (ısı, hareket, nem, basınç vb.) gelen girdileri algılayan ve elektronik sinyallere çeviren aygıttır. Sensör çeşitleri:

  • Akustik ve Ses Sensörleri: Mikrofon, hidrofon.
  • Çevresel Sensörler: Yağmur, kar, nem sensörleri.
  • Kimyasal Sensörler: pH, gaz sensörleri (CO2, SO2, CO).
  • Yaklaşma ve Varlık Bildirim Sensörleri: Park sensörleri, hareket sensörleri.
  • Elektrik ve Manyetik Sensörler: Galvanometre, metal detektörü.
  • Otomotiv Sensörleri: Hız ölçücü, ısı, benzin, lastik basınç sensörleri.
  • Termal ve Isı Sensörleri: Termokapıl, kalorimetre.
  • Optik Sensörler: Foto diyot, fototransistor.
  • Mekanik Sensörler: Yükseklik sensörleri.
  • Biyosensörler: Kalp atış sensörleri, kızıl ötesi sensörler.

Sensörler, enerji ihtiyaçlarına göre aktif (güç kaynağına ihtiyaç duyan) ve pasif (ortamdaki değişimlerden enerji alan) olarak sınıflandırılabilir.

2.2.2. RFID Teknolojisi

📚 RFID (Radyo Frekansı Tanımlama): Nesnelere eklenen etiketleri elektromanyetik alanlar kullanarak otomatik olarak tanımlayan ve izleyen bir teknolojidir.

  • Etiketler: Elektronik olarak saklanan bilgileri içerir. Pasif (güçsüz) ve aktif (pilli) etiketler bulunur.
  • Elektronik Ürün Kodu (EPC): RFID etiketlerinde saklanan, ürünün benzersiz tanımını sağlayan 96 bitlik bir veri dizisidir (Önbilgi, EPC İşletme Numarası, Ürün Tipi, Seri Numarası).
  • Okuyucular: Etiketlerden veri yakalar ve işlenmek üzere bir veri tabanı sistemine aktarır.

2.2.3. Gömülü Sistemler

📚 Gömülü Sistemler: Sensörlerden gelen sinyalleri işleyerek veriye dönüştüren ve internete ileten mikrodenetleyici veya mikroişlemci tabanlı donanımlardır.

  • Temel Bileşenler: Donanım (A/D çevirici, mikro işlemci/kontrolcü, bellek, arabirim kontrolörleri), Uygulama Yazılımı, Gömülü Sistem İşletim Sistemi.
  • Gerçek Zamanlı İşletim Sistemleri (RTOS): Hassas zamanlama ve yüksek güvenilirlik gerektiren kritik uygulamalar için tasarlanmıştır (örn. hava yastığı sistemleri).

2.3. IoT Veri İletim Teknolojileri

IoT'de verilerin sunuculara iletimi ve işlenmesi için çeşitli ağ altyapıları kullanılır:

  • Nesneden Nesneye İletişim (M2M): İki veya daha fazla nesnenin üçüncü bir uygulama servisine ihtiyaç duymadan doğrudan iletişim kurmasıdır (örn. Bluetooth, Z-Wave, ZigBee).
  • Nesne Bulut İletişimi: Her nesnenin doğrudan bir internet bulut hizmetine bağlanarak veri alışverişinde bulunmasıdır.
  • Nesne-Ağ Geçidi İletişim Modeli: Nesne ile bulut hizmeti arasına bir uygulama katmanı ağ geçidi (UKA) yerleştirerek esneklik ve güvenlik sağlar. Akıllı telefonlar genellikle ağ geçidi görevi görür.
  • Arka Uç Veri Paylaşım Modeli: Bulut hizmetleri arasında veri paylaşımını destekleyerek farklı kaynaklardan gelen verilerin birleştirilmesini ve analiz edilmesini mümkün kılar (örn. akıllı şehir yangın kontrol sistemleri).

2.4. IoT Temel Protokolleri

Farklı cihazların sorunsuz iletişim kurabilmesi için çeşitli protokoller kullanılır:

2.4.1. Ağ Katmanı Protokolleri

  • IPv6: IPv4'ün 32 bitlik adres sınırlamasını (yaklaşık 4.5 milyar cihaz) aşarak 128 bitlik adres alanı (2^128 = 3.4E38 cihaz) sunar. IoT cihazlarının artan sayısı için kritik öneme sahiptir. IPSec desteği ile güvenlik sağlar.

2.4.2. Uygulama Katmanı Protokolleri

  • MQTT (Message Queuing Telemetry Transport): 📚 IoT uygulamaları için tasarlanmış hafif bir uygulama katmanı protokolüdür. Yayınlama/abone mantığını kullanır ve TCP/IP üzerinde çalışır. Kaynak tüketiminde ekonomiktir.
  • CoAP (Constrained Application Protocol): 📚 REST modelini temel alan, düşük güç ve kaynak tüketimi için optimize edilmiş bir web transfer protokolüdür. UDP üzerinde çalışır, küçük başlık boyutu ve düğüm keşfetme yeteneği vardır.
  • XMPP (Extensible Messaging and Presence Protocol): 📚 Jabber tabanlı açık kaynak kodlu bir protokoldür. Anlık mesajlaşma, çoklu sohbet ve görüntülü görüşme için geliştirilmiştir. Güvenli iletişim altyapısı sunar.

2.4.3. Veri-Bağlantı Katmanı Protokolleri

  • ZigBee: Düşük maliyetli, düşük güçlü, kablosuz, cihazdan cihaza ağlar için açık bir küresel standarttır. IEEE 802.15.4 fiziksel radyo spesifikasyonunda çalışır. Koordinatör, yönlendirici ve uç cihazlardan oluşur.
  • Z-Wave: Ev otomasyon sistemlerinde yaygın olarak kullanılan, radyo sinyalleriyle haberleşen bir protokoldür. Genellikle 900 MHz bandında çalışır, bu da daha az parazit, daha az güç tüketimi ve daha iyi duvar penetrasyonu sağlar.
  • Bluetooth: Kısa mesafeli kablosuz cihazdan cihaza iletişimde en yaygın kullanılan teknolojidir. Pikonet (usta-yamak) yapısıyla çalışır. Bluetooth 5 ile menzil, hız ve yayın mesaj kapasitesi artırılmıştır.

💡 Sonuç

Çevik yazılım geliştirme ve Scrum yöntemi, yazılım projelerinde değişime hızlı adaptasyon, müşteri işbirliği ve sürekli değer teslimi sağlayarak başarıyı artırmaktadır. Nesnelerin İnterneti ise sensörler, RFID ve gömülü sistemler aracılığıyla fiziksel dünyadan veri toplayarak, çeşitli iletişim modelleri ve protokoller vasıtasıyla bu verileri işlenebilir hale getirmektedir. Bu iki alan, günümüz programlama eğilimlerinin temelini oluşturmakta ve gelecekteki teknolojik gelişmeler için sağlam bir zemin sunmaktadır. Büyük Veri ve bulut teknolojileriyle entegre olarak, Nesnelerin İnterneti'nin sağladığı verilerin anlamlı sonuçlara dönüştürülmesi, akıllı şehirlerden endüstriyel otomasyona kadar geniş bir yelpazede yenilikçi çözümlerin kapısını aralamaktadır.

Kendi çalışma materyalini oluştur

PDF, YouTube videosu veya herhangi bir konuyu dakikalar içinde podcast, özet, flash kart ve quiz'e dönüştür. 1.000.000+ kullanıcı tercih ediyor.

Sıradaki Konular

Tümünü keşfet
Çevik Yazılım, Scrum ve Nesnelerin İnterneti: Yeni Eğilimler

Çevik Yazılım, Scrum ve Nesnelerin İnterneti: Yeni Eğilimler

Bu özet, yazılım geliştirmede çevik yaklaşımları, Scrum yönteminin temel bileşenlerini ve Nesnelerin İnterneti'nin kavramsal çerçevesini, veri toplama ve iletişim teknolojilerini akademik bir bakış açısıyla sunmaktadır.

10 dk Özet 25 15
Nesnelerin İnterneti: Temel Kavramlar, Teknolojiler ve Protokoller

Nesnelerin İnterneti: Temel Kavramlar, Teknolojiler ve Protokoller

Bu özet, Nesnelerin İnterneti'nin temelini oluşturan veri toplama teknolojilerini, iletişim modellerini ve kritik protokollerini akademik bir yaklaşımla incelemektedir. Akıllı şehirler ve evler gibi uygulamalar üzerinden kavramsal çerçeve sunulur.

7 dk Özet 25 15
Temel Bilgi Teknolojileri II: İleri Kavramlar ve Uygulamalar

Temel Bilgi Teknolojileri II: İleri Kavramlar ve Uygulamalar

Bu özet, Temel Bilgi Teknolojileri II dersinin ana konularını, veritabanı yönetiminden siber güvenliğe, bulut bilişimden yazılım geliştirmeye ve veri analizine kadar ileri düzey kavramları akademik bir yaklaşımla sunmaktadır.

7 dk Özet 25 15
Lojistik Sektöründe Teknoloji Uygulamaları ve Akıllı Sistemler

Lojistik Sektöründe Teknoloji Uygulamaları ve Akıllı Sistemler

Bu içerik, lojistik sektöründeki akıllı depolar, otomatik stoklama/erişim sistemleri, otomatik yönlendirmeli araçlar ve çeşitli teknolojik uygulamaları detaylı bir şekilde incelemektedir.

16 dk 25 15
C++ Yazılım Geliştirme Ortamları ve Temel Programlama

C++ Yazılım Geliştirme Ortamları ve Temel Programlama

Bu özet, C++ programlama dilinin temel geliştirme ortamlarını, program derleme ve çalıştırma süreçlerini, hata denetimini ve temel girdi/çıktı işlemlerini akademik bir yaklaşımla ele almaktadır.

5 dk Özet 25 15
Programlama Temelleri ve Dilleri: Kapsamlı Bir Bakış

Programlama Temelleri ve Dilleri: Kapsamlı Bir Bakış

Bu özet, programlama dünyasının temel kavramlarını, komutlardan hata ayıklamaya kadar olan süreçleri ve popüler programlama dillerini detaylı bir şekilde incelemektedir. Ayrıca, programlama dillerinin hedefleri ve seviyeleri de ele alınmaktadır.

9 dk Özet 25 15
Bilgisayar Ağ Sistemleri Temel Kavramları

Bilgisayar Ağ Sistemleri Temel Kavramları

Bilgisayar ağlarının tanımı, türleri, temel bileşenleri, iletişim modları ve protokolleri gibi kritik konuları akademik bir yaklaşımla inceleyen kapsamlı bir özet.

6 dk Özet 25 15
Yeni İletişim Teknolojileri: Tanım ve Etkileri

Yeni İletişim Teknolojileri: Tanım ve Etkileri

Bu içerik, yeni iletişim teknolojilerinin tanımını, temel özelliklerini, gelişim alanlarını ve toplumsal, ekonomik etkilerini akademik bir perspektifle incelemektedir.

4 dk Özet 25 15