Sistem mimarisi

Vikipedi, özgür ansiklopedi
Şuraya atla: kullan, ara

Bir sistem mimarisi veya çoklu sistemlerin mimarisi; sistemin yapısını, davranışını ve biçimselliğini tanımlayan kavramsal modeldir.[1] Bir mimari tanımı; sistemin yapıları ve davranışları hakkında mantıksallığı destekleyecek şekilde organize edilen ilişkiselliğin standart bir açıklaması veya temsilidir.

Bir sistem mimarisi, sistemin uygulanması için birlikte çalışan sistem bileşenlerini, geliştirilmiş ve genelleştirilmiş sistemleri içerebilir. Sistem mimarisini tanımlamada kullanılmak üzere diller yaratılmıştır, bunlara toplu olarak, mimari tanımlama dili(ADL) denilmektedir.[2]

Genel bakış[değiştir | kaynağı değiştir]

Çeşitli kuruluşlar sistem mimarisini farklı şekillerde tanımlamışlardır:

  • Somut bileşenlere sahip bir sistemin temel organizasyonu, birbirleriyle ve çevreyle olan ilişkileri ve bütün bunların tasarımı ve gelişimini düzenleyen ilkelerden meydana gelmektedir.[3]
    Android işletim sisteminde kullanılan sistem mimarisine genel bakış. Sistem mimarisi çeşitlerinden yazılım mimarisine aittir.
  • Donanım ve yazılım bileşenleri üzerinde işlevsellik kazandırmak için bileşenlerin birbirleriyle eşleştirilmesi, yazılım mimarisinin donanım mimarisi üzerinde haritalanması ve bu bileşenlerle insan etkileşimi de dahil olmak üzere bir sistemin gösterimi veya şeması.[4]
  • Fonksiyonel mimarinin gerekliliklerini ve temel gereksinimlerini karşılamayı amaçlayan bir tüketici ürünü veya yaşam döngüsü süreci için tasarım geliştirilmesini sağlayan fiziksel unsurlara tahsis edilmiş bir dizi kapsamlı çalışma.[5]
  • Bir mimari, genel yapı, yapıyla ilişkili karakteristiklerin tanımlanması ve davranış hakkında önemli, yaygın, üst düzeyde, stratejik buluş niteliğinde çalışmalar ve bunlara ilişkin rasyonelleştirmeleri içerir.[6]
  • Bir bilgisayar sisteminin tasarımı ve içeriğinin açıklaması belgelenirse; mevcut donanımın, yazılımın ve yeteneklerinin ayrıntılı bir envanteri gibi bilgileri içermelidir.Uzun menzilli planların ve gelecek satın alımların öncelikleriyle ilgili bir açıklaması, tarihli ekipman ve yazılımın güncellenmesi ve / veya değiştirilmesi için bir plan oluşturulması önemlidir.[7]
  • Bir sistemin standart bir tarifi veya sistemin uygulanmasını yönlendirmek için bileşen seviyesinde ayrıntılı bir plan belirtilmesine ihtiyaç duyulur.[8]
  • Tasarım mimarilerinin ürünler için bileşimi ve yaşam döngüsü süreçlerinin tanımlanması gereklidir.[9]
  • Bileşenlerin yapısı, birbirleriyle olan ilişkileri ve zaman içindeki tasarım ve evrimini yöneten ilke ve esaslar belirtilmelidir.[10]

Sistem mimarisi, mevcut (veya gelecekteki) bir sistemin temsilcileri olarak düşünebilir. Bu tasvirler başlangıçta genel, üst düzey bir işlevsel organizasyonu tanımlamaktadır ve kademeli olarak daha detaylı ve somut açıklamalarla rafine edilmiştir.

Sistem mimarisi, bir sistemi içeren öğelerin bilgi içeriğini, bu öğeler arasındaki ilişkileri ve bu ilişkileri düzenleyen kuralları belirtir. Bir mimari tanımı; donanımlar, yazılımlar, dokümantasyonlar, kaynaklar, manuel prosedürler, kuruluşlar ya da kişiler tarafından meydana gelen ilişkilerden oluşabileceği gibi, mimari bileşenleri ve bu bileşenler arasındaki ilişkiler dizisi anlamına da gelmektedir.

Bir sistem mimarisi öncelikle sistemin bileşenleri veya alt sistemleri arasındaki iç arabirimlerle, sistem ile dış ortamın ilişkisiyle ve özellikle kullanıcı arabirimi üzerinde yoğunlaşır. (Bilgisayar sistemlerinin özel olması durumunda, bu yeni özel arabirim; bilgisayar-insan arabirimi, insan-bilgisayar arabirimi(AKA) veya insan-makine arayüzü(CHI) olarak adlandırılabilir.

Sistem mimarisi mühendisliği(SAE) ise sistemin mimarisini etkili bir şekilde uygulamak için kullanılan yöntem ve disiplin ile ilgili sistem mimarilerini analiz,tasarım ve geliştirilmesi üzerine çalışmaktadır.[11]

SAE bir yöntemdir.Çünkü bir dizi kısıtlama içinde sistemin mimarisini üretmek veya değiştirmek için çözümler geliştirilmeli ve çalışılan ortamın mevcut işlevselliğini bozmamalıdır.

SAE bir disiplindir.Çünkü mimarideki bilgi birimleri, sistemin bir dizi kısıtlama içinde geliştirilmesinin en etkili yolu olarak nitelikli bilgiyi esas alır.

Tarih[değiştir | kaynağı değiştir]

Sistemlerin mimarisi, binlerce yıldır bilgisayar biliminin dışındaki alanlarda, özellikle de sivil mimaride geliştirilen uygulama ve teknikler üzerine yoğunlaşmaktadır.

Dijital bilgisayarların gelişinden önce, elektronik ve diğer mühendislik disiplinleri, bugün hala yaygın olarak kullanılan "sistem" terimini kullandı. Bununla birlikte, sayısal bilgisayarların gelişimiyle ve yazılım mühendisliğinin ayrı bir disiplin olarak gelişmesiyle birlikte, çoğu zaman mühendislik ürünü eserler, yazılım eserleri ve bütünleşik eserler arasında ayrım yapmak gerekliydi. Bilgisayar programından yoksun programlanabilir bir donanım eseri veya bilgi işlem makinesi yaratmak imkansızdır.Buna karşın bir yazılım eseri veya programı da, uygun bir (donanım) makinenin ardışık durumlarını değiştirmek için kullanılmadıkça, aynı derecede imkansızdır. Bununla birlikte, bir donanım makinesi ve onun programlaması neredeyse bütünü kapsayacak şekilde belirlenemeyen soyut ve fiziksel görev sayısını gerçekleştirecek şekilde tasarlanabilir.Bilgisayar mühendisliği ve yazılım mühendisliği disiplinleri (ve genellikle iletişim gibi diğer mühendislik disiplinleri) içinde, sistem terimi, gerekli olan tüm öğeleri ve fonksiyonlarını (genelde hem donanım hem de yazılımı) içermektedir.

Dolayısıyla, mühendislik disiplinleri içindeki bu alan, bir sistemin genelde programlanabilir donanım makinesini ve onun içerdiği programı ifade eder. Ve bir sistem mühendisi, hem donanım, hem yazılım ve daha özel olarak donanım ve yazılım arasındaki ve özellikle cihazın tamamı ile kullanıcısı arasındaki etkileşim ile ilgilenmelidir. Donanım mühendisi, donanım aygıtıyla (daha fazla veya daha az) ilgilenir; Yazılım mühendisi (daha fazla veya daha az) sadece bilgisayar programı ile ilgilenir.Ve sistem mühendisi, programın donanım aygıtı içinde düzgün çalışabildiğini görmekten, harici çevreden, özellikle kullanıcı ile makinenin düzgün bir şekilde etkileşime girmesinden ve amaçlanan işlevini yerine getirme yeteneğinden sorumludur.

Bir sistem mimarisi hem yazılımın hem de donanımın öğelerini kullanır ve böyle bir bileşik sistemin tasarımını etkinleştirmek için kullanılır. İyi bir mimari, sistemin mevcut ve öngörülebilir gereksinimlerini, açıkta hiçbir şey kalmamış, temiz şekilde sınırlanmış alt sistemlere bölen bir 'bölümleme şeması' veya algoritma tanımlamalıdır.Yani, özel, kapsayıcı ve ayrıntılı bir bölümleme şeması içermelidir.Bölümlemenin temel amacı, elemanları alt sistemlere yerleştirmektir, böylece aralarında gereken minimum bağımlılık sağlanır. Hem yazılım hem de donanımda, iyi bir alt sistem, anlamlı bir "nesne" olarak görülme eğilimi gösterir. Dahası, iyi bir mimari, kullanıcının gereksinimlerine kolay bir haritalama ve kullanıcının gereksinim doğrulama testlerini sağlar. İdeal bir mimaride, her öğenin bütün gereksinim ve sınaması için en az bir eşleme ya da tanımlama bulunmalıdır.

Çeşitleri[değiştir | kaynağı değiştir]

Sistem mimarilerinin çeşitli türleri aşağıdaki gibi tanımlanmıştır:[12]

Donanım mimarisi

Yazılım mimarisi

Kurumsal mimari

İşbirlikçi sistemler mimarileri (İnternet, akıllı ulaşım sistemleri ve merkezi hava savunma sistemleri gibi)

Üretim sistemleri mimarileri

Stratejik sistemler mimarisi [13]

Kaynakça[değiştir | kaynağı değiştir]

  1. ^ Hannu Jaakkola and Bernhard Thalheim. (2011) "Architecture-driven modelling methodologies." In: Proceedings of the 2011 conference on Information Modelling and Knowledge Bases XXII. Anneli Heimbürger et al. (eds). IOS Press. p. 98
  2. ^ Nenad Medvidovic and Richard N. Taylor (2000). "A classification and comparison framework for software architecture description languages." Software Engineering, IEEE Transactions on 26.1 (2000): 70-93.
  3. ^ From ANSI/IEEE 1471-2000.
  4. ^ From the Carnegie Mellon University's Software Engineering Institute.
  5. ^ From The Human Engineering Home Page's Glossary.
  6. ^ From OPEN Process Framework (OPF) Repository.
  7. ^ From The National Center for Education Statistics glossary.
  8. ^ TOGAF
  9. ^ From IEEE 1220-1998 as found at their glossary.
  10. ^ TOGAF.
  11. ^ The Method Framework for Engineering System Architectures, Donald Firesmith et al., 2008
  12. ^ The Art of Systems Architecture, Mark Maier and Eberhardt Rechtin, 2nd ed 2002
  13. ^ Choosing A Strategic Systems Architecture, by Brad Day