Jumat, 05 Agustus 2016

Design Engineering

Software Architecture
adalah representasi yang memungkinkan seorang software engineer untuk melakukan:

  • menganalisis efektivitas desain dalam memenuhi persyaratan yang dinyatakannya
  • mempertimbangkan alternatif arsitektur pada tahap pembuatan design yang masih relatif mudah untuk diubah
  • mengurangi risiko yang terkait dengan pembangunan perangkat lunak

Tipe - tipe dalam melakukan architecture
  • Data centered: biasa digunakan untuk perbankan, dimana semua data dikelola dalam satu server saja

  • Data Flow Architecture: berbentuk seperti data flow diagram yang menggambarkan jalannya proses data
  • Call and Return Architecture: berbentuk seperti hirarki tree yang posisi teratas adalah root atau akar dari semua proses atau data yang bersangkutan
  • Layered Architecture: penggambaran design architecture dengan menggunakan layer - layer

Architectural Design

  • Software harus ditempatkan dalam konteks: desain harus menentukan entitas eksternal (sistem lain, perangkat, orang) bahwa software berinteraksi dengan semua entitas eksternal
  • Satu set dari archetypes architecture harus diidentifikasi: Archetype merupakan abstraksi (mirip dengan kelas) yang merupakan salah satu unsur perilaku sistem
  • desainer menentukan struktur sistem dengan mendefinisikan dan menghilangkan software komponen yang melaksanakan setiap pola dasar yang tidak perlu

  • Contoh Architectural Context

    Contoh Archetypes


    Component Level Design 
    • OMG Unified Modeling Language Specification [OMG01] mendefinisikan komponen sebagai bagian modular, deployable, dan diganti dari sistem yang melakukan enkapsulasi implementasi dan menampilkan sebuah user interface.
    • OO view: komponen yang berisi gabungan class - class.
    • Conventional view: komponen yang mengandung logika pengolahan, struktur data internal yang diperlukan untuk menerapkan logika pengolahan, dan interface yang memungkinkan komponen yang akan dipanggil dan data yang akan dipanggil melakukan fungsinya.
    Interface Design
    • User model: mengetahui kebiasaan semua end user dalam menggunakan program
    • Design model: merealisasikan design dari user model
    • Mental Design: memperhatikan apakah design akan mempengaruhi mental user
    • Implementation mode: interface yang "dilihat dan dirasakan" ditambah dengan informasi pendukung yang menggambarkan sintaks dan semantik interface


    Design Pattern
    Setiap pola menggambarkan masalah yang terjadi berulang-ulang kali di lingkungan kita dan kemudian menjelaskan inti dari solusi untuk masalah yang sedemikian rupa yang dapat Anda gunakan solusi ini berkali kali tanpa pernah melakukannya dengan cara salah yang sama dua kali.

    Tidak ada komentar:

    Posting Komentar