Proje Geliştirmede Sistem Yaklaşımı

Slides:



Advertisements
Benzer bir sunumlar
Yazılım Geliştirme Süreci
Advertisements

Proje Döngüsü ve Proje Yönetimi
Proje Geliştirmede Sistem Yaklaşımı
Stratejik yönetim işletmenin dış çevresini (rakipler, pazar-piyasa, ürünler, müşteriler, aracılar, tedarikçiler) analiz eder. İşletmenin geleceği ile.
Meslek Yüksekokulu, 25 kasım 2010
Sistem Analizi ve Planlama
Eğitsel Yazılımların Değerlendirilmesi
Bilişim Sistemleri Mühendisliği Bölümü
STRATEJİK YÖNLENDİRME
PROJE YÖNETİMİ VE RİSK ANALİZİ
Simülasyon Teknikleri
ELEKTRİK-ELEKTRONİK MÜHENDİSLİĞİNİN MÜHENDİSLİK DÜNYASINDAKİ YERİ
Sanayi Ar-Ge Proje Destek Başurusu Hazırlama Becerileri Geliştirme Çalıştayı ArGe_Projesi_Hazirlama_Calistayi (061110)
%50 Yurtdışı Google Adwords Reklamlarında %50 Tanıtım Desteği Yurtdışı Tanıtım Desteği.
T. C. EKONOMİ BAKANLIĞI İhracat Genel Müdürlüğü KOBİ ve Kümelenme Destekleri Daire Başkanlığı Meral ŞENGÜL İhracatı Geliştirme Uzman Yardımcısı Kasım.
Proje Geliştirme Adımları
BÖLÜM X FİYATLANDIRMA.
END3061 SİSTEM ANALİZİ VE MÜHENDİSLİĞİ
SÜREÇ YÖNETİMİ Dr. Selami ERARSLAN İstanbul 2011.
SÜREÇ YÖNETİMİ İLE HIZLI BÜYÜMEYİ YÖNETMEK
PROJENİN PLANLANMASI 1.
Sistem Geliştirme Sistemin tanımı. Sistemin Temel özellikleri
Yazılım Proje Yönetimi
Veri – Bilgi – Karar Kuramları ve Özellikleri
1 ÜNİVERSİTE – SANAYİ İŞBİRLİĞİNDE KOSGEB DESTEKLERİ (Serhan EKER – 2008 Aralık)
1 Bilişim ve İletişim Sektörü Neden Stratejiktir ? Bilişim ve İletişim iş yapış şekillerini ve sosyal hayatı doğrudan etkileyen ana-yapıtaşı konumundadır.
TÜRK HAVA KURUMU ÜNİVERVERSİTESİ SOSYAL BİLİMLER FAKÜLTESİ
Özel Öğretim Yöntemleri
T.C. EKONOMİ BAKANLIĞI.
İhracatta Devlet Yardımları -Uluslar arası Rekabetçiliğin Geliştirilmesinin Desteklenmesi (2010/8 sayılı Tebliğ) -Pazar Araştırması ve Pazara Giriş Desteği.
©Ian Sommerville 2000Software Engineering, 6th edition. Chapter 19Slide 1 Doğrulama ve Geçerlilik- Verification and Validation l Yazılım Sisteminin kullanıcı.
©Ian Sommerville 2000Software Engineering, 6th edition. Chapter 19Slide 1 Doğrulama ve Geçerlilik.
Bilgi Sistemi Organizasyonlar içerisindeki kontrol ve karar verme mekanizmalarında kullanılacak bilginin toplanması, işlenmesi, saklanması ve dağıtılmasını.
3. Üretim Sistemi Geliştirme Planı ve Üretim Planının Hazırlanması
Oguzhanhoca.com /oguzhanhocam /oguzhan_hoca.
END3061 SİSTEM ANALİZİ VE MÜHENDİSLİĞİ
Yazılım Sistemleri. Yazılıma genel bakış Yazılım, yazılım mühendisi tarafından tasarlanır ve geliştirilir ; Yazılım toplumdaki hemen-hemen her kişi tarafından.
Mobil Teknolojiler ve Akıllı Şebekeler
İHTİYAÇ BELİRLEME VE ANALİZİ
END3061 SİSTEM ANALİZİ VE MÜHENDİSLİĞİ
Kurumsal İçerik Yönetimi Kapsamında Bilgi Güvenliği
Bilişim Teknolojileri Alanı
Kalite Yönetim Prensipleri (Devam)
DENEME.
Eskişehir Şubesi Cevdet ÜRENCİK CMF.
Strateji Geliştirme Başkanlığı PERFORMANS PROGRAMI HAZIRLIKLARI VE İZLEME SÜRECİ 25 Kasım 2014 Antalya Coşkun KARAKOÇ İl Planlama Uzmanı.
PERFORMANS KAVRAMI PERFORMANSIN BOYUTLARI
Türkiye’de Meslekî Eğitim ve Öğretimdeki Yeni Yaklaşımlar
ISO ÇEVRE YÖNETİM SİSTEMİ TEMEL EĞİTİMİ
Bilimsel Araştırma ve Proje Yönetimi
Yenilik ve Yeni Ürün Altunışık-Özdemir-Torlak.
SİSTEM VE YAZILIM Bilgisayar sistemleri donanım, yazılım ve bunları işletmek üzere gerekli işlemlerden oluşur. Yazılım, bilgisayar sistemlerinin bir bileşeni.
Proje Oluşturma ve Yönetimi
Sistem Yaklaşımı.
 Projeler üç nedenle sona erdirilirler. 1. Proje amaçlarına ulaşılmış ve başarılı olarak tamamlanmıştır. 2. Projenin durdurulması gerekmektedir. 3. Proje.
YONT 409 PROJE YÖNETİMİ.
 Bir projeyi yönetmek üzere görevlendirilen ve projeyi, mümkün olan en yüksek üretkenlik, en düşük belirsizlik ve risk ile yürütmekten sorumlu kişidir.
İNSAN KAYNAKLARI YÖNETİMİ
Sistem Analizi ve Tasarımı
YÖNETİM FONKSİYONLARI
SİSTEM ANALİZİ VE TASARIMI
Kalite Yönetim Prensipleri (Devam)
SİSTEM ANALİZİ VE TASARIMI
Araştırma Problemlere güvenilir çözümler bulmak amacı ile planlı ve sistematik olarak, verilerin toplanması, çözümlenmesi, değerlendirilmesi ve raporlaştırılması.
Meslek Yüksekokulu, 25 kasım 2010
Bölüm 2 Sistem ve Örgüt Kavramlarına Giriş
Yazılım Mühendisliği Temel Süreçler - Sistem Analizi
Risk Yönetimi.
PERFORMANS KAVRAMI PERFORMANSIN BOYUTLARI
İLERİ VERİ TABANI UYGULAMALARI
Sunum transkripti:

Proje Geliştirmede Sistem Yaklaşımı

Ne öğrenilecek Sistemin tanımı. Sistemin Temel özellikleri Sistemin yapısı Sistem Geliştirme süreci Yazılım sistemleri Yazılım Geliştirme süreci

Sistemin tanımı Sistem,bir amaca yönelik olarak bir araya gelen ve aralarında düzenli ilişkiler bulunan öğelerin oluşturmuş oldukları bir bütündür Sistem yaklaşımı, sistem ve alt sistemlerin uyumlu, verimli bir biçimde çalışmalarını sağlar Sistem yaklaşımı, proje yönetiminde bir düşünce yolu olup projenin başarılı yönetimi için gereklidir Sistem yaklaşımı sorunu bir bütün olarak ele alan ,hedefleri ve amaçları düzenleyen ve sonucu değerlendiren bir yaklaşımdır

Sistemin temel özellikleri Her sistem alt sitemlerden oluşur. Sistem içinde yer alan daha küçük sistemler alt sistemler olarak adlandırılır. Bir alt sistem diğer alt sisteme doğrudan ve ya dolaylı bağlıdır. Alt sistemler kendi içinde bir bütünlük oluşturan ve kapsamı içinde oldukları sistemin amacı doğrultusunda çalışan sistemlerdir. Her altsistemin amacının gerçekleştirilmesi bütün olarak sistemin amacının gerçekleştirilmesidir

Sistemin temel özellikleri-devamı Her sistemin hedefleri ve amaçları vardır.Sistemin etkinliği ve verimliliğini değerlendirmek için sistemin amaçlarının iyi tanımlanmış ve ölçülebilir olması gerekmektedir. Her sistemin yapısı farklıdır. Yapılarına göre sistemler açık ve kapalı; canlı ve cansız; doğal ve yapay ola bilir.

Sistemin temel özellikleri-devamı Sistemin ve altsitemlerin girdisi,işlem süreci ve çıktısı vardır. Her hangi bir altsistemin girdisi diğer bir altsistemin çıktısını ve herhangi bir altsistemin çıktısı diğer bir alt sistemin girdilerini oluşturablir Sistemde varolan girdi, çıktı ve işlem unsurları o sistemin genel yapısını oluşturur. girdi çıktı İşlem Verimlilik Tasarruf karlılık Bilgi Çevre enerji Bilgi Geri besleme Sistemin genel yapısı

Sistemin genel yapısı Sistemin girdileri; 3 grup: Bilgi- bilgi sistemin temeli ve yüküdür; sistemin yükü örneğin, bir hastanedeki hastalar, bir okuldaki öğrencilerdir Sistemin işlevini etkileyen çevresi; çevre, denetim dışı etkilerden oluşur. Bunun değiştirilmesi mümkün değildir. Ama sistemin tasarımında bu etkiler göz önüne alınmalıdır; yerçekimi, yasalar, iktisadi durum… Enerji, para, yönetim, insan gücü,arsa, araç-gereç… İşlem bölümü; Bu bölümün amacı sistemin amacı ile eşdeğerlidir. Çeşitli girdileri önceden tanımlanmış bir çıktıya dönüştürme işlemi yapar. Sistemin başarısı sistemin güvenilir olmasına bağlıdır. Sistemin güvenilir olması ise çıktıyı üretebilmesidir. Sistemin çıktıları: örn., bir otomobil fabrikasında belirli bir zamanda üretilen otomobil sayısı ve kalitesidir

Sistem geliştirme süreci Sistem geliştirme aşağıdaki 5 aşamada gerçekleştirilir. Ön çözümleme Sistem çözümlemesi Sistem Planlaması Sistemi gerçekleştirme Sistemin başlatılması İzleme ve değerlendirme- tüm aşamalar boyunca yapılaması gereken sürekli bir görevdir

Ön çözümleme Projenin temel belgeleri hazırlanır; belgelerde proje programında belirtilen hususların ön çözümlemesi yapılır Sorunun çözümü için , ön çözümleme sonuçları şematik bir biçimde ortaya konulur. Eğer çözümleme sonuçları tasarısında yeni bir sisteme gerek olduğu ortaya çıkarsa, taslak yeniden ele alınır , görev ve sorunlar tanımlanarak sonuçlandırılır. Ön çözümleme sonuçları: Hedeflenen sistemin amacı, görevleri, maliyet, ve diğer gerekler Sorunların tanımı ve çözüm yolları Sistemin bölümleri ve görevlerinin tahlili Geçici bir proje yapısının hazırlanması Projenin tümüne ilişkin zaman ve maliyet tahmini yapılması Bunun sonunda hazırlanan ön çözümleme raporunda sistem çözümlemesine gerek olup olmadığı belirtilir

Sistem çözümlemesi Görevler, ön çözümlemede belirlenmiş bulunan hedeflenen sistemden türetilir ve düzenlenir. Görev türü ve niteliği çözümlenir; sorunlar, stratejiler, hedefler belirlenir; Ön çözümlemedeki çözüm yollarına dayanılarak öngörülen bir tasarı geliştirilir Sistem ve bölümlerinin işlevleri ve sistemin çevresi çözümlenir Bilginin toplanması,tahlili, yorumlanması, düzenlenmesi ve çerçevesinin belirlenmesi yapılır Sistem değişikliklerinin olası etkileri incelenir; Proje taraflarına sistemin verimliliği ve ekonomikliği konusunda bilgi vermek için taslak hazırlanır; Taslak, sistemin planlanması aşamasında “çalışma planı” olarak kullanılabilecek biçimde hazırlanmalıdır Tüm görevler sıralanmalı ve zayıf noktalar belirlenmelidir Bilgisayar donanımı ve yazılımı konusundaki görüşler de taslakta yer almalıdır

Sistem planlanması Proje şemalarının tanımlanması ve ve sistemin niteliklerinin belirlenmesinde aşağıdakilerden yararlanılır: Sistemin gerekçesi Sistemin teknik özellikleri Sistemin bölümleri ve basamakları Deneme Sistemin başlatılmasına ilişkin program

Sistem geliştirme Önceki aşamada belirlenen ve çıkarılan sonuçlar tüm ayrıntılarıyla işlenip gerçekleştirilir Yeterlik denemeleri yapılır İlk prototip kullanım koşulları altında denenir. Eğer gerçekleşme olumlu ise uygulama belgeleri hazırlanır

Sistemin uygulanması Sistem uygulamaya konulur “sistem planlama “ aşamasında gerçekleştirme ile ilgili plan esasında sistemin bölümlerinin kurulma sırası, çalışanlar ve araçlar konusundaki bilgiler ,uygulama ile ilişkin hususlar belirlenir Bu aşama için projenin gerçekleştirilmesi sırasında kullanılacak el kitapları, belgeler, işletme kılavuzları, eğitim programları hazırlanmalıdır Tüm koşullar yerine getirildikten sonra sistemin denenmesi yapılır

Yazılım Sistemleri

Yazılıma genel bakış Yazılım=program + programın kullandığı ve ürettiği veriler + program belgeleri (yardım ve açıklamalar) Yazılım, yazılım mühendisi tarafından tasarlanır ve geliştirilir; Yazılım toplumdaki hemen-hemen  her kişi tarafından kullanılmaktadır; Yazılım geliştiriciler diğer insanlara zarar vermeyecek güvenilirli yazılım geliştirmek için ahlaki yükümlülük taşımaktadırlar; Yazılım kullanıcılarını,  yalnız yazılım ürünlerinin beklentileri hangi seviyede karşıladıkları değil, aynı zamanda onların çalışmalarını ne kadar kolaylaştıracağı da düşündürmektedir.  

Dünya ve Türkiye Bilişim Sektörü* Dünya bilişim sektörü 2.3 trilyon Euro hacme sahip, yazılım sektörü ise bunun yaklaşık yüzde 25’ini oluşturuyor “2015'te en az 2 milyar dolarlık yazılım ihracatının gerçekleştirilmesi, yerli yazılım şirketlerinin küresel markalar olmaları, 2023'te ise Türkiye'nin ihracatçı güçleri arasında ilk 5'e girmesi amaçlanıyor İGEME (ihracatı geliştirme ve etüt Merkezi) “yazılım sektörü” raporuna göre: 2006 yılında Türk yazılım sektörünün ihracatı yüzde 20 oranında artarak 650 milyon dolara çıkacak. *Bu sunudaki veriler YASAD (Türkiye Yazılım Sanayicileri Derneği) raporlarından alınmıştır

Türkiye Bilişim Pazarı Bilişim Pazarında Hızlı Büyüme – Bileşik Yıllık Büyüme Oranı (CAGR) 2002 ile 2010 arasında %14 ve 2011 yılında 30,5 milyarı* geçti Yazılım sektörüne artan ilgi – girişimcilik ve araştırma destekleri üzerine yeni kanunlar hazırlanıyor Genç ve dinamik Türkiye nüfusu – Yeni ürünlere sürekli artan talep Bir çok Avrupa ülkesinin üzerinde bilişim kullanıcısı – Mobil alanında yüksek kullanıcı sayısı; İnternet kullanımı 50 milyon aboneyi buldu Hızlı Büyüyen Bilişim Firmaları – 2010 Deloitte Teknoloji Fast500 EMEA değerlendirmesinde ilk 500 firma arasında 28’i Türk firması Diğer – 1,5 Milyon’dan fazla KOBİ’nin bilişim kullanma kapasitesinin varlığı

Yazılım Harcamaları ,ithal ve ihracatı Dünyadaki yazılım harcaması 2007 yılında 740 milyar doları aşacak. Dünyada yazılım sektörünün önde gelen ülkeleri : ABD, Almanya, İngiltere, Hindistan, İsrail, İrlanda ve İsveç. Türkiye, henüz bu ülkelerle yarışabilecek kapasitede değil, ancak hızla yükselen ve gelişen bir sektöre sahip. Türkiye’de yazılım sektörünün hacmi 2005 yılında 540 milyon dolara ulaştı. Yazılım ihracatı yapılan ülkeler: ABD 2.2 milyon dolar, Almanya 2 milyon dolar. Yazılım ithalatına bakıldığında, ithalatta ABD ve AB ülkeleri başı çekiyor. Türkiye, 2005 yılında İngiltere’den 14.5 milyon dolar, Almanya’dan 13 milyon dolar ve ABD’den 11.8 milyon dolarlık ithalat yaptı.

Yazılım projeleri ile bağlı diğer istatistikler Kullanıcıların fikirlerini değiştirmesi nedeniyle tamamlanamayan yazılım projeleri tüm yazılım projelerinin yarısını oluşturuyor; Yazılım projelerinin neredeyse ¼’i gereksinimlerin değişmesi, zaman ve kaynak yetersizliği veya başka nedenlerle teslim edilemiyor Yazılım projelerinin yaklaşık 1/4 ‘i başarıyla teslim ediliyor; Bakım: Sistemin yaşam devri süresince Yazılım projesine harcanan çabanın % 70 ve daha fazlası yazılımın bakımına ve iyileştirilmesine ayrılıyor Teslim: Büyük yazılım projesinin kavramsal tasarımdan son kullanıcıya teslimine dek (veya gerçek kullanıma dek) geliştirilme maliyeti toplam maliyetin % 20-30’u arasındadır.Diğer faaliyetler (belgeleme, eğitim, destek, ağ tasarımı ve s) %70-%80 civarındadır. Ticari yazılım geliştiriciler, yılda 12.000 kod satırı yazıyorlar (kaynak: Wikipedia)

Yazılımın nitelikleri Yazılım geliştirilir veya tasarlanır; ama klasik anlamda imal edilemez Yazılım aşınmaz Pek çok yazılım özel oluşturulur; genelde varolan bileşenlerden yığılamaz

Donanımın Yetersizlik Eğrisi Çocuk ölümü eskime YETERSİZLİK SEVİYESİ zaman

Yazılımın ideal “yetersizlik eğrisi” YETERSİZLİK SEVİYESİ Eskiyene dek devam ediyor zaman

Yazılımın gerçek “yetersizlik eğrisi” YETERSİZLİK SEVİYESİ Gerçek eğri değişme İdeal eğri zaman

Yazılım Türleri Sistem Yazılımları Gerçek zaman Yazılımları İş Yazılımları Mühendislik ve Bilimsel Yazılımlar Gömülmüş Yazılımlar Kişisel Bilgisayarların Yazılımları Ağ yazılımları Yapay Zeka Yazılımları

YAZILIM SÜRECİ VE SÜREÇ MODELLERİ

4/3/2017 Yazılım süreci Yazılım Sistemlerinin belirtilmesi, tasarlanması, çalıştırılması ve denetimi için gereken faaliyetlerin uyumlu kümesi Faaliyetler: - Yazılım sisteminin tanımlanması ve çözümleme -yazılımın işlevselliği ve işlemlere koyulmuş sınırlamalar tanımlanmalıdır Tasarım (Geliştirme) –gereksinimleri sağlayan yazılım üretilmelidir Deneme –müşteri isteklerinin karşılandığına emin olmak için yazılım doğrulanmalıdır Çalıştırma ve bakım Yazılımın evrimi –müşterinin değişen isteklerinin sağlana bilmesi için yazılım gelişe bilmelidir 29

Yazılım Geliştirme Modelleri 4/3/2017 Yazılım Geliştirme Modelleri Yazılım süreci modeli sürecin basitleştirilmiş soyut tasviridir.O, her hangi özgü açıdan süreci ifade eder. Yazılımın geliştirilmesi için kullanılan genel modeller: Şelale modeli Faaliyetlere bağımsız süreçler gibi bakılıyor Evrimsel geliştirme Kullanıcı ve sistem gereksinimleri evrimsel olarak karşılanmaktadır 30

Şelale Modeli

Şelale Modelinin safhaları Gereksinimlerin çözümlenmesi ve tanımlanması Sistem ve yazılım tasarımı Birim ve bütünleşme denemesi Sistem ve teslimat denemesi Çalıştırma ve bakım Şelale modelinin yetersiz yönü, süreç tamamlandıktan sonra değişikliklerin yapılmasının zorluğudur

Şelale Modelinin sorunları Projenin farklı aşamalara esnek biçimde bölünmemesi; Bu, değişen müşteri gereksinimlerini yerine getirmekte zorluklar yaratır Bu nedenle, şelale modeli, gereksinimlerin yalnız çok iyi tanımlandığı takdirde uygun modeldir

Yazılım geliştirmenin gerçek süreci Yazılım geliştirme süreci safhaları

4/3/2017 Evrimsel Geliştirme Temel düşünce: ilkin bir çalışma yapmak,bunu müşteri görüşüne sunmak, bu görüşleri de dikkate alarak sistemin son gereken halini alana dek sürümlerini geliştirmek Açınsama (Exploratory)Geliştirmesi Müşteri ile birlikte çalışarak gereksinimlerin açınsaması; başlangıç ana hatlarıyla verilmiş belirteçten son sisteme doğru evrimsel geliştirme yapılması. Sistemin anlaşıla bilir kısmı ile başlanılmalıdır. Müşterinin önerdiği yeni özellikleri ilave etmekle evrimleşmelidir. Prototip geliştirme Hedef- müşteri gereksinimlerinin anlaşılması; sistem için en iyi gereksinim tanımlanmasının geliştirilmesi; müşteri gereksinimlerinin zayıf anlaşılır kısımları üzeride denemelere odaklanıyor. 35

Evrimsel geliştirme yaklaşımları arasındaki farklar Açınsama yaklaşımında hedef çalışır sistemi son kullanıcıya teslim etmektir. Daha iyi anlaşılır ve yüksek öncelikli gereksinimlerle başlanılır. Zayıf öncelikli ve kesin anlaşılmayan kısımlar yalnız kullanıcı isteği ile çalıştırılır. Prototip yaklaşımında ise hedef sistem gereksinimlerinin geçerliliğini yoklamaktır. Zayıf anlaşılabilir gereksinimlerle başlamanın nedeni onları daha iyi anlamaktır. Çok iyi anlaşılan gereksinimler için prototipe gerek yoktur

Evrimsel geliştirme yaklaşımları arasındaki farklar Açınsama yaklaşımında hedef çalışır sistemi son kullanıcıya teslim etmektir. Daha iyi anlaşılır ve yüksek öncelikli gereksinimlerle başlanılır. Zayıf öncelikli ve kesin anlaşılmayan kısımlar yalnız kullanıcı isteği ile çalıştırılır. Prototip yaklaşımında ise hedef sistem gereksinimlerinin geçerliliğini yoklamaktır. Zayıf anlaşılabilir gereksinimlerle başlamanın nedeni onları daha iyi anlamaktır. Çok iyi anlaşılan gereksinimler için prototipe gerek yoktur

Evrimsel Geliştirme çözümleme tasarım deneme Paralel işlemler İlk sürüm çözümleme Sistemin ana hatlarının tanımlanması tasarım Aralık sürümler deneme Nihai sürüm

Evrimsel geliştirme-Prototip Geliştirme başlama bitiş Gereksinimlerin edinmesi ve arındırma hızlı tasarım Mühendis ürünü Yeni prototipin tanımlanması Prototip oluşturma Son kullanıcı değerlendirmesi

Evrimsel Geliştirme (devamı) Sorunlar Geliştirme sürecini bütünlükle görmek mümkün olmaya bilir Sistemler çoğu zaman zayıf yapılanmış oluyorlar Özel marifetler (örneğin, hızlı prototipler oluştura bilen diller) gereke bilir Uygulana bilirlik Küçük ve orta boyutlu etkileşimli sistemler için Büyük sistemlerin kısımları için (örneğin, kullanıcı arayüzü) Kısa yaşam süreli sistemler için daha uygundur