Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Rapid Application Development

Sponsored · Ship Features Fearlessly Turn features on and off without deploys. Used by thousands of Ruby developers.

Rapid Application Development

Avatar for Daron Yondem

Daron Yondem

May 24, 2009
Tweet

More Decks by Daron Yondem

Other Decks in Programming

Transcript

  1. 1991de ortaya atıldı. Bolca CASE den faydalanılır. • computer-aided software

    engineering Müşteri taleplerini olabildiğince hızlı şekilde sonuca çevirmeyi amaçlar.
  2. Ucuz yazılım! Kim istemez? Değişen dünya, hızlı iş hayatına uyum

    sağlayan yazılım üretme süreci. 3-4 yıl süren projelerin sonunda projede kullanılan teknolojilerin çokten demode olması sorunsalı?
  3. Yazılım geliştirme süreçleri olabildiğince kısa tutulmalı. Component based development, OOP

    avantajları kullanılarak yazılım olabildiğince Parralel Programlanır! Deadline tarihleri yakın tutularak sarkmalar engellenmeli. Geliştirme ekibi üzerinde kesinlikle ağır bir stres oluşturulmalı.
  4. İşlevsel mükemmeliğime önem vermeden hızlıca ilk faz müşteri ile paylaşılmalı.

    Interaktif bir demo ile projenin kısmi çalışır hali hemen müşteriye iletilmeli. Böylece feedback alımı yazılım geliştirme sürecinin çok daha başlarına çekilmeli.
  5. Proje özellikleri farklı döngülere bölünmeli. Her döngü kendi deadlineına sahip

    olmalı. Her döngüde yazılıma yeni özellikler eklenerek arada prototipin müşteriye sunulması ile her döngü sonunda feedback alınmalı.
  6. Bürokrasiyi yok edin! Kağıt işlerini ortadan kaldırın! Dokümantasyonu geleceğe bırakın!

    Test kodlarını geleceğe bırakın! Müşteri kendi testini yapsın ;)
  7. Müşteri ihtiyaçlarını analistler değerlendirir. Yazılım ekibi bir prototip hazırlar CASE

    araçları ile. Prototip müşteri onayından geçer (Spec Dokümanları değil!) Kodlama başlar. I-CASE araçları kullanılır. Müşteri her adımda onay verir. Müşteriden «ok» geldiği gibi proje teslim edilir.
  8. Projelerde çoğu zaman geliştirme sürecinde gelen yeni özellik talepleri başta

    belirlenenlerden kat kat fazla olur! Yazılımınızı muhteşemleştirmeye çalışmayın! Teslim etmeye çalışın!
  9. Object Relation Mapping Veritabanı erişim kodunuzu bırakın bilgisayarınız yazsın! Yazılım

    katmanları arası iletişimi olabildiğinc üzerinizden atın. Yazılımcıların iş kurallarına ve işlevselliğe odaklanması gerekir.
  10. Drag&Drop Cenneti SQLDataSource? • Artıları  Çok Hızlı geliştirme süreci

     Deneyim gerektirmeyen geliştirme olanakları • Eksileri  Reusability SIFIR  Her şey bir yere kadar! Fizibilite önceden test edilmeli yoksa sonrada özelleştirmek çin işkencesine dönüşür.
  11. Yazacağınız kodu yazan araçlar yazabilir misiniz? CodeSmith sadece bir tanesi.

    Farklı Code Generation araçlarını inceleyebilirsiniz. Faydaları • Kodunuzun hızlı üretilmesinin yanı sıra standartlaşmasını ve kurallara uyulmasını sağlar. • Hızlıdır!
  12. Başka firmaların sağladığı yazılım paketlerini kullanabilirsiniz. Özelleştirme konusunda fizibilite testleri

    kesinlikle yapılmalı. Referanslar çok önemli! Sizi yarı yolda bırakabilirler!