Slayt 1 - zeynepaltan.info

advertisement
Yazılım Mühendisliğine
Giriş
Ders Notu I
2016 GÜZ
1
Hesaplamanın Önemi
Günlük hayatta her yerde bilgisayarları görmekteyiz
Araba motorları
Telefonlar
Beyaz eşya/üretim sektörü
Oyunlar
Sosyal yaşamda
Kamuda ve endüstride pek çok bilgisayarın
birbirine bağlandığı güçlü bilgisayarlar (mainframe
computers)
Bilim ve teknolojinin öncüleri olan yoğun paralel
işlemcilere sahip süper bilgisayarlar
2
………………………
Hesaplama Alanında Geleceğimizi
Planlamanın Zamanı
 Günümüz ekonomisinde bilgisayar endüstrisi
hala en hızlı büyüme gösteren sektördür.
 Rekabet edilebilirliği sürdürebilmek için,
endüstri ve ticaret alanında bilimsel ve
mühendislik konularında yaratıcı gelişmelere
gereksinim vardır
 Aynı zamanda yüksek nitelikli ürünlerin üretilmesi de
önemlidir.
 Artan talepler nitelikli işgücü ile karşılanabilir.
3
Yazılım Mühendisliği Disiplini
Yazılım da günlük hayatımızın önemli bir
parçasıdır.
Kamu ve özel sektörde her türlü işlemlerde
 Bankacılık ve finans piyasasında
Eğitimde
Taşımacılıkta
Eğlence sektöründe
Sağlıkta
Tarımda
Hukuk dünyasında
…………………..
4
Yazılım Mühendisliği Disiplini
 Bilgisayar programlarının sayısı, büyüklüğü ve
uygulama alanları gerçek dünya problemlerini
çözebilmek için çok hızlı olarak artmaktadır.
 Sonuç olarak:
 Milyarlarca kişi zamanını yazılım geliştirmekle
geçirmektedir.
 Pek çok insanın geçimi geliştirilen bu yazılım
ürünlerinin etkinliği ile değerlendirilmektedir..
 Yazılım Ürünleri geliştiricilerin daha üretken ve
etkin olmalarını teşvik etmelidir.
5
Yazılım Mühendisliği Disiplini
Yazılım Ürünleri
 Daha etkin problem çözücü olmayı mümkün kılar
 Daha güvenli, daha esnek ve daha az
sınırlandırılmış çalışma ortamları sağlar
Yazılım ürünlerinin başarılı geliştirme
kriterlerine ek olarak gibi pek çok sorunları da
olabilir
 maliyet,
 süre ,
 nitelik
6
Yazılım Mühendisliği’nin Ortaya Çıkışı
 “Yazılım Mühendisliği ” terim olarak ilk
defa 1968 yılında NATO konferansında
Brian Randell tarafından önerilmiş ve F.L.
Bauer tarafından popülerleştirilmiştir.
7
Yazılım Mühendisliğinin Kapsamı
Yazılım Mühendisliği aşağıdaki süreçleri
gerçekleştirmek üzere bir takım bilgi, geliştirme
araçları ve metotlardan oluşmaktadır.
Yazılım Gereksinimleri,
 Yazılım Tasarımı
Yazılımın İnşaası (Yapılandırılması)
Yazılım Testi
 Yazılımın Sürekliliğinin Sağlanması
8
Yazılım Mühendisliğinin Diğer
Disiplinlerle İlişkisi
Bilgisayar Bilimi
Bilgisayar Mühendisliği
Yönetim Management
Matematik
Proje Yönetimi
Nitelik Yönetimi
Yazılım Ergonomisi
Sistem Mühendisliği
9
Bilgisayar Bilimi (Computer
Science)
Bilgisayar donanımı ve yazılımının tasarımı ve
işlenmesi ile ilgilidir.
Bilgisayar teknolojisinin bilim, iş dünyası ve
sanata uygulanmasıdır.
Bilişsel bilim (cognitive science), ekonomi,
matematik, fizik (kuantum hesaplama) ve dilbilim
uygulamaları ile ilgilenir.
10
Bilgisayar Bilimi Alanları
Teorik bilgisayar bilimi
Hesaplama Teorisi (Theory of computation)
Algoritmalar ve veri yapıları
Programlama metotları ve programlama dilleri
Bilgisayar parçaları ve mimarisi
Sayısal ve sembolik hesaplama
Uygulamalar
11
Teorik Bilgisayar Bilimi
Matematik Lojik
Otomatlar Teorisi
 Sayılar Teorisi
Graf Teorisi
Tip Teorisi
Kategori Teorisi
Hesaplamalı Geometri
Kuantum Hesaplama
12
Bilgisayar Bilimi (wikipedia tanımı)
Bilgisayar Bilimi (computer/computing science)
bilginin (information) ve hesaplamanın
(computation) teorik temellerinin
incelenmesidir.
İlgili pratik tekniklerin kullanılması ile
bilgisayar sistemlerinin implementasyon ve
uygulamalarını gerçekleştirir.
Genellikle algoritmik proseslerin sistematik
incelemeleri kullanılır.
Bilginin oluşturulması, betimlenmesi, işlenmesi ve
13
transformasyonudur.
Bilgisayar Biliminin Geçmişi
Genç bir disiplin olarak 1940’lı yıllarda görülmeye
başlamıştır.
Teorik çalışmalar, deneysel yöntemler ve
mühendislik tasarımları tek bir disiplinde
toplanmıştır.
Pek çok fiziksel bilim dalından ayrılır.
Bilimi anlamak (bilmek) bilimin uygulamalarından
ayrılmıştır
14
Bilgisayar Mühendisliği Nedir?
 Bilgisayar mühendisliği hesaplamanın pek çok
yönü ile ilgilenir
 İlgi alanları mikroişlemcilerden, kişisel
bilgisayarlar ve süper bilgisayarlara ve devre
tasarımına yayılmıştır.
 Sadece bilgisayar sistemlerinin nasıl çalıştığına
değil, aynı zamanda daha büyük bir sisteme
nasıl genişletildiğine de odaklanılır.
15
Bilgisayar Mühendislerinin ilgi alanları
Bilgisayar donanımının imalatı ile ilgili tasarım,
planlama, geliştirme ve test süreçlerini
gerçekleştirir.
Donanımın çiplerinden devre kontrollerine
kadar her şey bu alana aittir.
16
Bilgisayar Mühendislerinin Çalışma
Alanları
İşletim sistemleri ve yazılım
Veri iletişimi ve multimedya ile ilgili olarak
bilgisayar ağlarının kullanımı
Lojik tasarım
Mikroişlemci sistemlerinin tasarımı
Bilgisayar mimarisi
Bilgisayar arayüzü tasarımı
Sistem gereksinimleri ve tasarımı
17
Sistem Mühendisliği Nedir?
Mühendisliğin disiplinler arası bir alanıdır
Karmaşık mühendislik problemlerinin
tasarlanması ve yönetimi ile ilgilenir.
 Mekanizmaların ( makineler ve parçalarının)
otomatik kontrolü, farklı takımların
koordinasyonu ve lojistik büyük ve karmaşık
problemlerin incelenmesinde gittikçe
güçleşmektedir.
18
Sistem Mühendisliği Nedir?
Karmaşık projelerin yürütümü için iş-süreçleri
geliştirir ve geliştirme araçları kullanır
Kontrol mühendisliği ve proje yönetimi gibi hem
teknik hem de insan-odaklı disiplinlerle
örtüşmektedir.
Modelleme ve simulasyon, gereksinimler analizi,
ve karmaşıklığı yönetmek için planlamalar yapan
bir dizi yazılım geliştirme araçları kullanır
19
Proje Örnekleri
Robotik, uzay aracı tasarımı
bilgisayar çipi tasarımı, yazılımın entegrasyonu , köprü yapımı
20
Bilgisayar Bilimi ve Yazılım
Mühendisliği İlişkisi
David Parnas tanımları
Bilgisayar Biliminin temel ilkesi genel olarak
hesaplamanın (computation) özelliklerinin
incelenmesidir.
 Yazılım Mühendisliğinin temel ilkesi
hedeflenenleri başarabilmek için özel
hesaplamaların (specific computations)
gerçekleştirilmesidir.
21
Information Technology (IT)
Bilgisayar ve İnternet uygulamalarıdır.
Verinin (Data veya Information)
depolanmasını, alınmasını ve iletilmesi
sağlanır.
Çoğunlukla ticari uygulamalar ya da çeşitli
girişim çalışmalarıdır
Bilgi ve iletişim (telekomünikasyon)
teknolojisinin alt alanıdır.
22
23
24
Download