24 Ekim 2013








1984 yılında İstanbul’da doğdu.
2003 , Adex
2004, Portakal Bilişim
2006, Microsoft
2007, Vision DMR
2007, Estore
2009, OttoGroup – limango – arabulvar -Ogli

İletişim Bilgileri
Email: bmukad@gmail.com
Mobile : +90536 2402424

Big Scale Systems, Logistic Operations, E-commerce Payment, Cache Systems, Mysql Databases ,Php Development , Linux Administration , FrontEnd
Development, Network Structures






















Tanışma
Yazılım Nedir ?
Popüler Yazılım Dilleri
E-ticaret İçin Hangi Yazılım Dili ve Platformu
Teknoloji Seçimi - Checklist
Yazılım Yaşam Döngüsü
Proje Yönetimi

Agile / Scrum
IT Ekibi Yapılanması
E-Ticaret için IT çözümleri
IT Ekibi- Proje Planı
E-Ticaret – Genel Altyapı
Yük Dağılımı (Load Balancing)
Database Replikasyonu
Web Server Seçimi
Memcache
Startup’lar için Adım adım Altyapı
Soru / Cevap / Yorum Free Format
Teşekkürler
Yazılım[1] (İng. software), değişik ve çeşitli görevler yapma amaçlı
tasarlanmış elektronik araçların birbirleriyle haberleşebilmesini ve uyumunu
sağlayarak görevlerini ya da kullanılabilirliklerini geliştirmeye
yarayan makina komutlarıdır.

Yazılım, yaşayan bir organizmadır... İhmale gelmez.


Ana hatları ile 2 kategori’de



low level (assembler)



high level (C++, C# .. )



6000’den fazla
http://spectrum.ieee.org/at-work/tech-careers/the-top-10-programming-languages
Php

Java

ASP, .NET

http://langpop.com/

Python
Ruby
Sistemsel Altyapı

Yazılımsal Altyapı

Uygulama Sunucuları

Yazılım Dili / Platformu

Web Sunucuları

Frameworkler, Entegrasyonlar

Veritabanı Sunucuları

Önyüz, Orta Katman ve Veri Katmanı

Load Balancer

Yazılım Yaşam Döngüsü

Cluster/Session Replication

Performans

Firewall, Router, DNS, Disk, ...

Loglama, Monitoring, Fraud
Önleme, Güvenlik, ...
Programming
Language & IDE

Frameworks

Servers

RDBMS

SCM

CI

Issue Tracking

Testing

Dependency
Management

UI Design

Modelling Tools
...

Wiki
Geliştirdiğiniz bir yazılım projesinin planlanmasından
başlayarak teslimatına kadar geçirmiş olduğu bütün
aşamalara ve bu aşamalardan oluşan
döngüye, Yazılım Geliştirme Yaşam Döngüsü denir.
Bir yazılım projesinin geliştirilmesi, sadece
kodlamadan oluşmamaktadır.
Basitçe bir proje geliştirilirken projenin
planlama, analiz, tasarım, üretim ve test aşamaları
yer almaktadır ve almalıdır. Bu aşamalar bir kere
gerçekleştirildikten sonra proje tamamlanmayabilir.
Bu aşamaların bir döngü halinde düşünülmesi
gerekmektedir. Proje tamamlandıktan sonra gelecek
istekler, hata düzeltmeleri, projeye eklenecek yeni
modüller vs konular için bu süreç devam etmektedir.
Bu döngüye yazılım geliştirme yaşam döngüsü adı
verilmektedir.


Classic Waterfall



Iterative Waterfall



Spiral



Lean



Agile / Scrum



...


Teknik Analiz



Yazılım Geliştirme: Görsel, Html, Yazılım



Testler & QA



Unit Testler



FonksiyonelTestler



UI Testleri



A / B Testleri



Kullanıcı Kabul Testleri



SEO Testleri




Test ortamları: Dev, FT, UAT, Staging, PROD

Güvenlik Testleri

Bug Takibi ve Çözümü


ROI’ı maksimize etmek için
 Hedeflenen sürede
 Hedeflenen bütçede
 Hedeflenen kalitede

 Hedeflenen kapsamda ve işlevsellikte
 Aksaklıklar yaşamadan
 Ekip oyunundan keyif alarak başarmak
•

E-Ticaret;
 Çok dinamik
 Son teknolojiyi yakından takip eden
 Teknolojiyi drive eden
 Online, anında, hızlı

 Basit ve Kompleks
 Web siteniz sizin ürününüz
 Ekip/takım oyunu, birimler arası koordinasyon şart


The Standish Group Chaos Raporları -Yazılım projelerinin;
▪ %32'si zamanında, bütçesinde ve gereksinimleri karşılayacak şekilde
sonuçlanıyor
▪ %44’ünde ihtiyaçlar değişiyor, belirsiz bir sürece giriliyor
▪ %24’ü başarısızlıkla sonuçlanıyor

2009

2004

Belirsiz
53%

Başarılı
29%

Belirsiz
44%

Başarılı
32%
Başarısız
24%

Başarısı
z
18%
• Ortalama 6 ay/1 yıl süren bir projede zamanla
ihtiyaçların, dinamiklerin, sektörün değişmesi, yeni
gereksinimlerin ortaya çıkması – Waterfall’ın dezavantajı
• Bu nedenle DONE kavramının olmayışı – Proje ne zaman
bitecek?
İş
Gerçekleşen
Planlanan

Zaman
• İş sahibi/müşteri ile proje ekipleri, hatta proje ekipleri içindeki
birimler arasındaki koordinasyon, iletişim, işbirliği
eksikliği, motivasyon kaybı – Waterfall’ın dezavantajı

• Nitelikli olmayan ekip – Mutfaktaki bıçakların keskin olmayışı
• Optimizasyon yapılmaması, en iyi en mükemmel değil, o günün
şartlarına uygun en iyi çözüm
– ‘Mükemmel iyinin düşmanıdır’, Voltaire
– ‘Engineering is nothing but optimization’
• Yanlış seçimler (teknoloji, mimari, donanım, vs)
• Scrum - Rugby hücum taktiği:
– Top, tüm oyuncularla birlikte karşı sahaya taşınarak atak
yapılmaktadır.
• Agile Manifesto:
– Kent Beck, Martin Fowler, Ken Schwaber, Jeff
Sutherland... gibi toplam 17 kişi tarafından 2001 yılında
yayınlandı
Önemli

Az Önemli

Kişiler ve takım çalışması

Süreç ve araçlardan

Çalışan yazılım

Detaylı dokümantasyondan

Müşteri ile beraber çalışmak

Sözleşme ve anlaşmalardan

Değişime açık olup, uygulamak

Plana bağlı kalmaktan
• Amaç en baştan nihai ürünü, en mükemmeli tasarlamak
değildir. Belirli periyotlarla çalışan prototipler sunmak ve
markette ilk yer almaktır.
• Agile olmak "Kervan yolda düzülür" demek değildir. Aksine sık
sık planlayıp, değişen sektör dinamiklerine yeniden ayak
uydurmak, değişime açık olmak demektir. Beklentiyi
yönetmek için iyi bir yoldur.
• Agile olmak müşteriyle içiçe olmak demektir. Belirli
periyotlarla çalışan bir prototip sunmak, feedback almak, bu
feedbacklerle kendini iyileştirmek, geliştirmek ve bir sonraki
süreci planlamak demektir.
1.
2.
3.
4.

Müşteri ile bir araya gelinir
İhtiyaçlar belirlenir ve taskler çıkarılır (Product Backlog)
Bu taskler önceliklendirilir ve puanlanır (poker game, Sprint Planning)
Takımın 2 veya 4 haftalık hızına (Team Velocity) göre önceliği yüksek işler
listeye alınır (Sprint Backlog)
5.

6.

Takım her sabah 15 dakikalık durum değerlendirme toplantısı yapar (Daily
Scrum). İletişimi, koordinasyonu ve motivasyonu arttırır.
•
Dün ne yaptım
•
Bugün ne yapacağım
•
Karşılaştığım problemler
2 veya 4 hafta sonunda çalışan prototip ile müşteriye demo yapılır, feedback
alınır, gerekliyse değişiklik yapılacaktır. (Sprint Review)
7.
8.

Takım, 2 veya 4 hafta sonunda neleri iyi yaptığını, neleri kötü yaptığını, neleri
iyileştirmesi gerektiğini tartışır (Sprint Retrospective) – Continuous improvement
Takım, bir sonraki Sprint için tekrar müşteriyle bir araya gelir ve yeni bir Sprint
Planning toplantısı başlar...
Felsefe:
• Self organization:
• Commitment
• Trust
• Cross-functional teams
• Transparency
• DONE kavramı
• Timebox
• Inspect & adapt
• Kaizen (continuous improvement)
• Retrospective
• K.I.S.S. & basit olanı yapmak zordur
Özetle E-ticarete Faydaları:
• Sık sık planlama yapıldığı için, müşteriyle sık sık biraraya
gelindiği için;
– 6 ay/1 yıl gibi bir süre sonunda hüsranla karşılaşılmaz,
– ROI maksimize edilir,
– Proje başarısı yükselir,
– Üretkenlik artar,
– Maliyetler düşer

• Değişime, yeni gereksinimlere açık olduğu için
dinamik, güncel ve kullanılacak fonksiyonalitede bir ürün
tasarlamanızı sağlar - Pareto Kuralı
Özetle E-ticarete Faydaları:
• 6 ay/1 yıl gibi bir süre sonunda değil de 2-4 hafta gibi
periyotlarla çalışan prototipler sunduğu için markette ilk yer
almanızı sağlar, rekabet gücünüz artar.
• İletişim ve koordinasyon yüksek olduğu için azimli ve
motivasyonu yüksek, yaptığı işten keyif alan bir ekip ortaya
çıkar (S.W.A.T. team).
• Kurum kültürünüze timebox, DONE, transparency gibi
kavramları yerleştirir.
http://www.youtube.com/watch?v=XU0llRltyFM


Developer



Software Architect



Sys. Administrator



Business Analyst



Software and Hardware Help Desk



Test Engineer



BI Reporting Specialist



Database Administrator


E-Ticaret’te yazılımcı kimdir ?
E-Ticaret için yazılımcı nereden bulunur ?



Startup Kahramanları



We Made

IT Possible


CMS
 Joomla, Wordpress, Xcart,osCart, phpCart,magento,drupa

l,oscommerce etc.


Outsource Yazılım
 Outsource
 Freelance



Inhouse


CMS




Hosted Cms




Magento, PrestaShop, Drupal e-commerce, Zen-Cart,CubeCart, osCommerce, VirtueMart, FatFreeCart

Shopify, wosbee,incir, sopsy

Custom Scripts


Outsource Yazılım


Done Kavramı



Proje Detayları



Dökümantasyon



Projenin Tanımı ve görevlerin atanması



Proje için gerekli olan süre



Proje ve zaman planı ile ilgili commitment
 IT ekibinizde kimlere ihtiyacınız var ?
 En az kaç kişi olmalı
 Proje Yönetimi
• Platforma karar verin
• İhtiyacınız olan IT yeteneklerine karar verin

• Elinizde ne bulunduğunu kontrol edin
• Basit düşünün
• Riskleri gözden geçirin










İş Gereksinimi (Business Requirement)
İş Analizi
Planlama
Wireframe, Prototype, Mockup
Commitment
UI / Ux design
Yazılım
Canlı Geçişi
Babysitting
1 – İş Gereksinimi (Beklentiyi Anlama)


Yeni Proje



Bug Fix



Yeni Geliştirme



Bakım
2- Analiz
 Gereklilikler
 Problem çıkarabilecek noktalar
 Performans sorunları
 Gerekli olan beceriler
3- Planlama
 Zaman Planı
 Altyapı
 Güvenlik
 Ekip
3- Wireframe, Prototype, Mockup


Brainstorming



Templates



CheckList
4 - Commitment


IT ekibi commitment



Business Owner Commitment
4 – UI / Ux design





Templates
Fonts
Concept
UX tests
http://www.youtube.com/watch?v=95RoKSFyQ_k
5 -Yazılım


Web programlarının hazırlanması
 Plana göre altyapının
oluşturulması
 Fonksiyon testlerinin yapılması
 Güvenlik testlerinin yapılması
6 – Canlı Geçişi


Tests: UX test , function tests, browser test
etc.
 Canlı geçişi için, olası senaryoların
hazırlanması A,B,C ve hatta D planın hazır
halde bulunması
 Canlı geçişi için checklist hazırlanması
6 – BabySitting







Proactive Monitoring
Datachecks
Bug fixes
Maintenance
Next Phase Planing
Feedbacks
• E-ticaret’te Kullanılan Genel Altyapı Terimleri
• Redundancy
• Shortterm Backups
• Long Term Backups
• Proactive Monitoring
• Reactive Monitoring
•
•
•
•

Load Balancing
Database Replications
WebServer Seçimi (apache - nginx etc. )
Memcache
Redundancy
Realtime failover
systems

Wmware Fault-tolerant systems
Short Term Backups

Long Term Backups (2 year)

•
•
•
•
•

•
•
•
•

Every 30 Minute Rotater
Every 1 hour in 24 hour Rotater
EveryDay
Every Monday
1st of month

Everyday
Every Monday
First of Month
Milestones

NetApp for Microsoft Environments
Proactive Monitoring
Service is

ONLINE

•
•
•
•
•

Limited Disk quato
Service concurrent limit
Que limit
High cpu usage
High ram usage

Reactive Monitoring

Service is
OFFLINE / limited Service

•
•
•
•

Service up or down
Server up or down
Connectivity check
System fault
AWS Case Study: Chaordic Systems
Load balancing methods
-

Round Robin
Ratio (member)
Dynamic Ratio
Fastest (node)
Least Connections
Least Sessions
Master To Slave Replication
Master To Master Replication

(Multi-Master Replication)
http://www.whisperdale.net/11-nginx-vs-cherokee-vs-apache-vs-lighttpd.html
http://blog.celingest.com/en/2013/02/25/nginx-vs-apache-in-aws/
http://www.cyberciti.biz/tips/howto-performance-benchmarks-a-web-server.html
In Memory Cache Layers
Memcache Kullanımı
İlk İstek
İlk istek, database tarafından karşılanır ve kullanıcıya dönen yanıt ile aynı anda Memcache
üzerinede yazılır.

http://www.9lessons.info/2012/02/memcached-with-php.html
Memcache Kullanımı
2. Gelen istek
Gelen istek doğrudan Memcache tarafından cevaplanır .

http://www.9lessons.info/2012/02/memcached-with-php.html
İletişim Bilgileri
Email: bmukad@gmail.com
Mobile : +90536 2402424

E-ticarette Yazılım ve Altyapı

  • 1.
  • 2.
           1984 yılında İstanbul’dadoğdu. 2003 , Adex 2004, Portakal Bilişim 2006, Microsoft 2007, Vision DMR 2007, Estore 2009, OttoGroup – limango – arabulvar -Ogli İletişim Bilgileri Email: bmukad@gmail.com Mobile : +90536 2402424 Big Scale Systems, Logistic Operations, E-commerce Payment, Cache Systems, Mysql Databases ,Php Development , Linux Administration , FrontEnd Development, Network Structures
  • 3.
                       Tanışma Yazılım Nedir ? PopülerYazılım Dilleri E-ticaret İçin Hangi Yazılım Dili ve Platformu Teknoloji Seçimi - Checklist Yazılım Yaşam Döngüsü Proje Yönetimi Agile / Scrum IT Ekibi Yapılanması E-Ticaret için IT çözümleri IT Ekibi- Proje Planı E-Ticaret – Genel Altyapı Yük Dağılımı (Load Balancing) Database Replikasyonu Web Server Seçimi Memcache Startup’lar için Adım adım Altyapı Soru / Cevap / Yorum Free Format Teşekkürler
  • 4.
    Yazılım[1] (İng. software),değişik ve çeşitli görevler yapma amaçlı tasarlanmış elektronik araçların birbirleriyle haberleşebilmesini ve uyumunu sağlayarak görevlerini ya da kullanılabilirliklerini geliştirmeye yarayan makina komutlarıdır. Yazılım, yaşayan bir organizmadır... İhmale gelmez.
  • 5.
     Ana hatları ile2 kategori’de  low level (assembler)  high level (C++, C# .. )  6000’den fazla
  • 7.
  • 9.
  • 11.
    Sistemsel Altyapı Yazılımsal Altyapı UygulamaSunucuları Yazılım Dili / Platformu Web Sunucuları Frameworkler, Entegrasyonlar Veritabanı Sunucuları Önyüz, Orta Katman ve Veri Katmanı Load Balancer Yazılım Yaşam Döngüsü Cluster/Session Replication Performans Firewall, Router, DNS, Disk, ... Loglama, Monitoring, Fraud Önleme, Güvenlik, ...
  • 12.
    Programming Language & IDE Frameworks Servers RDBMS SCM CI IssueTracking Testing Dependency Management UI Design Modelling Tools ... Wiki
  • 13.
    Geliştirdiğiniz bir yazılımprojesinin planlanmasından başlayarak teslimatına kadar geçirmiş olduğu bütün aşamalara ve bu aşamalardan oluşan döngüye, Yazılım Geliştirme Yaşam Döngüsü denir. Bir yazılım projesinin geliştirilmesi, sadece kodlamadan oluşmamaktadır. Basitçe bir proje geliştirilirken projenin planlama, analiz, tasarım, üretim ve test aşamaları yer almaktadır ve almalıdır. Bu aşamalar bir kere gerçekleştirildikten sonra proje tamamlanmayabilir. Bu aşamaların bir döngü halinde düşünülmesi gerekmektedir. Proje tamamlandıktan sonra gelecek istekler, hata düzeltmeleri, projeye eklenecek yeni modüller vs konular için bu süreç devam etmektedir. Bu döngüye yazılım geliştirme yaşam döngüsü adı verilmektedir.
  • 14.
  • 15.
     Teknik Analiz  Yazılım Geliştirme:Görsel, Html, Yazılım  Testler & QA   Unit Testler  FonksiyonelTestler  UI Testleri  A / B Testleri  Kullanıcı Kabul Testleri  SEO Testleri   Test ortamları: Dev, FT, UAT, Staging, PROD Güvenlik Testleri Bug Takibi ve Çözümü
  • 17.
     ROI’ı maksimize etmekiçin  Hedeflenen sürede  Hedeflenen bütçede  Hedeflenen kalitede  Hedeflenen kapsamda ve işlevsellikte  Aksaklıklar yaşamadan  Ekip oyunundan keyif alarak başarmak
  • 18.
    • E-Ticaret;  Çok dinamik Son teknolojiyi yakından takip eden  Teknolojiyi drive eden  Online, anında, hızlı  Basit ve Kompleks  Web siteniz sizin ürününüz  Ekip/takım oyunu, birimler arası koordinasyon şart
  • 19.
     The Standish GroupChaos Raporları -Yazılım projelerinin; ▪ %32'si zamanında, bütçesinde ve gereksinimleri karşılayacak şekilde sonuçlanıyor ▪ %44’ünde ihtiyaçlar değişiyor, belirsiz bir sürece giriliyor ▪ %24’ü başarısızlıkla sonuçlanıyor 2009 2004 Belirsiz 53% Başarılı 29% Belirsiz 44% Başarılı 32% Başarısız 24% Başarısı z 18%
  • 20.
    • Ortalama 6ay/1 yıl süren bir projede zamanla ihtiyaçların, dinamiklerin, sektörün değişmesi, yeni gereksinimlerin ortaya çıkması – Waterfall’ın dezavantajı • Bu nedenle DONE kavramının olmayışı – Proje ne zaman bitecek? İş Gerçekleşen Planlanan Zaman
  • 22.
    • İş sahibi/müşteriile proje ekipleri, hatta proje ekipleri içindeki birimler arasındaki koordinasyon, iletişim, işbirliği eksikliği, motivasyon kaybı – Waterfall’ın dezavantajı • Nitelikli olmayan ekip – Mutfaktaki bıçakların keskin olmayışı • Optimizasyon yapılmaması, en iyi en mükemmel değil, o günün şartlarına uygun en iyi çözüm – ‘Mükemmel iyinin düşmanıdır’, Voltaire – ‘Engineering is nothing but optimization’ • Yanlış seçimler (teknoloji, mimari, donanım, vs)
  • 23.
    • Scrum -Rugby hücum taktiği: – Top, tüm oyuncularla birlikte karşı sahaya taşınarak atak yapılmaktadır.
  • 24.
    • Agile Manifesto: –Kent Beck, Martin Fowler, Ken Schwaber, Jeff Sutherland... gibi toplam 17 kişi tarafından 2001 yılında yayınlandı Önemli Az Önemli Kişiler ve takım çalışması Süreç ve araçlardan Çalışan yazılım Detaylı dokümantasyondan Müşteri ile beraber çalışmak Sözleşme ve anlaşmalardan Değişime açık olup, uygulamak Plana bağlı kalmaktan
  • 25.
    • Amaç enbaştan nihai ürünü, en mükemmeli tasarlamak değildir. Belirli periyotlarla çalışan prototipler sunmak ve markette ilk yer almaktır. • Agile olmak "Kervan yolda düzülür" demek değildir. Aksine sık sık planlayıp, değişen sektör dinamiklerine yeniden ayak uydurmak, değişime açık olmak demektir. Beklentiyi yönetmek için iyi bir yoldur. • Agile olmak müşteriyle içiçe olmak demektir. Belirli periyotlarla çalışan bir prototip sunmak, feedback almak, bu feedbacklerle kendini iyileştirmek, geliştirmek ve bir sonraki süreci planlamak demektir.
  • 26.
    1. 2. 3. 4. Müşteri ile biraraya gelinir İhtiyaçlar belirlenir ve taskler çıkarılır (Product Backlog) Bu taskler önceliklendirilir ve puanlanır (poker game, Sprint Planning) Takımın 2 veya 4 haftalık hızına (Team Velocity) göre önceliği yüksek işler listeye alınır (Sprint Backlog)
  • 27.
    5. 6. Takım her sabah15 dakikalık durum değerlendirme toplantısı yapar (Daily Scrum). İletişimi, koordinasyonu ve motivasyonu arttırır. • Dün ne yaptım • Bugün ne yapacağım • Karşılaştığım problemler 2 veya 4 hafta sonunda çalışan prototip ile müşteriye demo yapılır, feedback alınır, gerekliyse değişiklik yapılacaktır. (Sprint Review)
  • 28.
    7. 8. Takım, 2 veya4 hafta sonunda neleri iyi yaptığını, neleri kötü yaptığını, neleri iyileştirmesi gerektiğini tartışır (Sprint Retrospective) – Continuous improvement Takım, bir sonraki Sprint için tekrar müşteriyle bir araya gelir ve yeni bir Sprint Planning toplantısı başlar...
  • 30.
    Felsefe: • Self organization: •Commitment • Trust • Cross-functional teams • Transparency • DONE kavramı • Timebox • Inspect & adapt • Kaizen (continuous improvement) • Retrospective • K.I.S.S. & basit olanı yapmak zordur
  • 31.
    Özetle E-ticarete Faydaları: •Sık sık planlama yapıldığı için, müşteriyle sık sık biraraya gelindiği için; – 6 ay/1 yıl gibi bir süre sonunda hüsranla karşılaşılmaz, – ROI maksimize edilir, – Proje başarısı yükselir, – Üretkenlik artar, – Maliyetler düşer • Değişime, yeni gereksinimlere açık olduğu için dinamik, güncel ve kullanılacak fonksiyonalitede bir ürün tasarlamanızı sağlar - Pareto Kuralı
  • 32.
    Özetle E-ticarete Faydaları: •6 ay/1 yıl gibi bir süre sonunda değil de 2-4 hafta gibi periyotlarla çalışan prototipler sunduğu için markette ilk yer almanızı sağlar, rekabet gücünüz artar. • İletişim ve koordinasyon yüksek olduğu için azimli ve motivasyonu yüksek, yaptığı işten keyif alan bir ekip ortaya çıkar (S.W.A.T. team). • Kurum kültürünüze timebox, DONE, transparency gibi kavramları yerleştirir.
  • 33.
  • 34.
     Developer  Software Architect  Sys. Administrator  BusinessAnalyst  Software and Hardware Help Desk  Test Engineer  BI Reporting Specialist  Database Administrator
  • 35.
     E-Ticaret’te yazılımcı kimdir? E-Ticaret için yazılımcı nereden bulunur ?  Startup Kahramanları  We Made IT Possible
  • 36.
     CMS  Joomla, Wordpress,Xcart,osCart, phpCart,magento,drupa l,oscommerce etc.  Outsource Yazılım  Outsource  Freelance  Inhouse
  • 37.
     CMS   Hosted Cms   Magento, PrestaShop,Drupal e-commerce, Zen-Cart,CubeCart, osCommerce, VirtueMart, FatFreeCart Shopify, wosbee,incir, sopsy Custom Scripts
  • 38.
     Outsource Yazılım  Done Kavramı  ProjeDetayları  Dökümantasyon  Projenin Tanımı ve görevlerin atanması  Proje için gerekli olan süre  Proje ve zaman planı ile ilgili commitment
  • 39.
     IT ekibinizdekimlere ihtiyacınız var ?  En az kaç kişi olmalı  Proje Yönetimi
  • 40.
    • Platforma kararverin • İhtiyacınız olan IT yeteneklerine karar verin • Elinizde ne bulunduğunu kontrol edin • Basit düşünün • Riskleri gözden geçirin
  • 41.
             İş Gereksinimi (BusinessRequirement) İş Analizi Planlama Wireframe, Prototype, Mockup Commitment UI / Ux design Yazılım Canlı Geçişi Babysitting
  • 42.
    1 – İşGereksinimi (Beklentiyi Anlama)  Yeni Proje  Bug Fix  Yeni Geliştirme  Bakım
  • 43.
    2- Analiz  Gereklilikler Problem çıkarabilecek noktalar  Performans sorunları  Gerekli olan beceriler
  • 44.
    3- Planlama  ZamanPlanı  Altyapı  Güvenlik  Ekip
  • 45.
    3- Wireframe, Prototype,Mockup  Brainstorming  Templates  CheckList
  • 46.
    4 - Commitment  ITekibi commitment  Business Owner Commitment
  • 47.
    4 – UI/ Ux design     Templates Fonts Concept UX tests
  • 48.
  • 49.
    5 -Yazılım  Web programlarınınhazırlanması  Plana göre altyapının oluşturulması  Fonksiyon testlerinin yapılması  Güvenlik testlerinin yapılması
  • 50.
    6 – CanlıGeçişi  Tests: UX test , function tests, browser test etc.  Canlı geçişi için, olası senaryoların hazırlanması A,B,C ve hatta D planın hazır halde bulunması  Canlı geçişi için checklist hazırlanması
  • 51.
    6 – BabySitting       ProactiveMonitoring Datachecks Bug fixes Maintenance Next Phase Planing Feedbacks
  • 52.
    • E-ticaret’te KullanılanGenel Altyapı Terimleri • Redundancy • Shortterm Backups • Long Term Backups • Proactive Monitoring • Reactive Monitoring • • • • Load Balancing Database Replications WebServer Seçimi (apache - nginx etc. ) Memcache
  • 53.
  • 54.
    Short Term Backups LongTerm Backups (2 year) • • • • • • • • • Every 30 Minute Rotater Every 1 hour in 24 hour Rotater EveryDay Every Monday 1st of month Everyday Every Monday First of Month Milestones NetApp for Microsoft Environments
  • 55.
    Proactive Monitoring Service is ONLINE • • • • • LimitedDisk quato Service concurrent limit Que limit High cpu usage High ram usage Reactive Monitoring Service is OFFLINE / limited Service • • • • Service up or down Server up or down Connectivity check System fault
  • 57.
    AWS Case Study:Chaordic Systems
  • 58.
    Load balancing methods - RoundRobin Ratio (member) Dynamic Ratio Fastest (node) Least Connections Least Sessions
  • 59.
    Master To SlaveReplication
  • 60.
    Master To MasterReplication (Multi-Master Replication)
  • 61.
  • 62.
  • 63.
    Memcache Kullanımı İlk İstek İlkistek, database tarafından karşılanır ve kullanıcıya dönen yanıt ile aynı anda Memcache üzerinede yazılır. http://www.9lessons.info/2012/02/memcached-with-php.html
  • 64.
    Memcache Kullanımı 2. Gelenistek Gelen istek doğrudan Memcache tarafından cevaplanır . http://www.9lessons.info/2012/02/memcached-with-php.html
  • 67.

Editor's Notes

  • #13 Common interface
  • #14 Geliştirdiğiniz bir yazılım projesinin planlamasından başlayarak teslimatına kadar geçirmiş olduğu bütün aşamalara ve bu aşamalardan oluşan döngüye, Yazılım Geliştirme Yaşam Döngüsü denir.Bir yazılım projesinin geliştirilmesi, sadece kodlamadan oluşmamaktadır. Basitçe bir proje geliştirilirken projeninplanlama, analiz, tasarım, üretim ve test aşamaları yer almaktadır ve almalıdır. Bu aşamalar bir kere gerçekleştirildikten sonra proje tamamlanmayabilir. Bu aşamaların bir döngü halinde düşünülmesi gerekmektedir. Proje tamamlandıktan sonra gelecek istekler, hata düzeltmeleri, projeye eklenecek yeni modüller vs konular için bu süreç devam etmektedir. Bu döngüye yazılım geliştirme yaşam döngüsü adı verilmektedir.
  • #17 Peki, şimdi günümüze ve eticarette proje yönetimine odaklanacak olursak, proje yönetimi nedir, neden proje yönetimine ihtiyaç duyarız?Bana ait olmayan bir örnek, ama Proje yönetimini, en iyi anlatan örnek diyebilirim:Bayanların/eşlerin tatile çıkmadan önce hazırladıkları bavulu düşünün.Hangi gün hangi kıyafeti giyecekleri bellidir, hatta eşinin her bir gün için kendi kıyafetine uygun kıyafetlerini de seçmişlerdir. Mayo, yedek kuru mayo, terlik, güneş kremi, güneş gözlükleri, havlular vs hepsi özenle ve sıralı bir biçimde hazırlanmıştır. Gece kıyafeti, makyaj malzemeleri, sizin tıraş setiniz hepsi düşünülmüştür. Hatta evden çıkmadan önce yapılacakların listesi bellidir, doğal gaz kapatılacak, elektrikler kontrol edilecek, su vanası kapatılacaktır.Aslında bayanların yaptığı tatil öncesinde başlayan ve tatil dönüşüne kadar geçen sürenin tamamına proje yönetimi denir.
  • #18 İş hayatında proje yönetimine ihtiyaç duymamızın nedeni, yaptığımız veya yapacağımız yatırımın, en kısa sürede, bütçesini aşmadan, aksaklıklak yaşamadan ve elimizdeki kaynakları en verimli şekilde kullanarak maliyetini çıkarıp kar etmek (ROI maximization).Bunu yaparken de ekip içi ve birimler arası motivasyonu yüksek tutup, iş yapmaktan, başarmaktan keyif almaktır
  • #19 Eticaret bu noktada; Finans, Kamu, TelCo, Hizmet vb diğer sektörlerden, dinamiği gereğibiraz ayrışıyor. Eticaret sektöründe teknolojiyi yakından takip edip uygulamak zorundasınız, hatta ArGe yapıp yeni teknolojilere yatırım yaparak fark yaratmalısınız. Ayrıca hızla değişen piyasa koşullarına adapte olmak zorundasınız.Eticaret online ve hızlı olduğu kadar hem basit hem de komplekstir. Bu nedenle ekip içi ve birimler arası koordinasyon şarttır.
  • #22 İş sahibinin/müşterinin ürünü 6 ay/1 yıl sonunda User Acceptance Test (UAT) sürecinde görmesi – Müşterinin istediği gerçekten bizim yaptığımız mı? – Waterfall’ın dezavantajı
  • #38 ideasoft
  • #59 Round robin each server one by oneDynamic Ratio  Connection amount
  • #60 Round robin each server one by oneDynamic Ratio  Connection amount
  • #62 Round robin each server one by oneDynamic Ratio  Connection amount
  • #63 Round robin each server one by oneDynamic Ratio  Connection amount