Lapisan arsitektur (dalam pengembangan perusahaan). Konsep, definisi, presentasi

Saat ini, sulit untuk menemukan definisi konsep yang singkat dan jelas seperti "lapisan aplikasi" dan "lapisan abstraksi". Ini memerlukan perbedaan pemahaman yang sama atau kesalahpahaman konsep ini di kalangan pengembang. Dan kesalahpahaman menyebabkan ketidaksepakatan.



Tujuan artikel ini adalah bekerja sama untuk menciptakan kepastian, menciptakan visi bersama untuk semua orang, dan menghasilkan definisi yang singkat, jelas dan praktis untuk Lapisan Arsitektur di bidang aplikasi perusahaan. Anda dapat mendiskusikan dan melengkapi semua yang diberikan di artikel di komentar, dan saya memperbarui materi di artikel sesuai dengan komentar.



Membagi arsitektur aplikasi perusahaan menjadi beberapa lapisan memungkinkan
  • - , ,
  • ,
  • , ,


, .





Apa kebingungan saat ini saat berhadapan dengan arsitektur berlapis:
  • , 3: , -, โ€”
  • , , , , ,
  • (layer), (tier), . , ,


ยซ ยป ยซ ยป ยซ ยป.





Lapisan arsitektural (aplikasi perusahaan) adalah sekumpulan sumber daya tertentu (dibatasi oleh tujuan, tertutup) (alat untuk bekerja dengan sumber daya, bagian, komponen), dengan bantuan di mana satu set (dibatasi oleh kriteria) karakteristik tugas yang diterapkan dari lapisan ini diimplementasikan. Lapisan yang lebih tinggi mengimplementasikan komponennya (sumber daya), berdasarkan sumber daya dari lapisan bawah. Sumber daya dari lapisan tertentu kompatibel satu sama lain dan hanya digunakan di dalam lapisan itu (idealnya). Lapisan induk dapat membuat sumber dayanya sendiri menggunakan sumber daya dari beberapa lapisan. Ini dapat berhubungan dengan sistem abstrak dan ideal yang ada dalam bentuk skema, atau lebih terkait dengan implementasi - ini menentukan komponen lapisan.



Komponen lapisan:



  • jika lapisan tersebut terkait dengan implementasi: kelas, objek, konteks, layanan, pengontrol, proxy, rakitan ...
  • jika lapisannya tentang abstraksi: model data (ideal), tindakan ...


Apa ciri lapisan arsitektural:



  • tujuan terapan, spesifik, logis, mendefinisikan berbagai tugas yang dapat dikaitkan ke lapisan tertentu
  • serangkaian tugas tertentu yang diimplementasikan pada lapisan tertentu
  • sumber daya dan alat yang dengannya tugas diimplementasikan: data, objek dan tindakan yang dapat dilakukan pada data dan objek
  • data dan logika dalam lapisan tertentu konsisten di dalamnya
  • konsistensi menentukan prediktabilitas dan predeterminasi dalam interaksi sumber daya lapisan tertentu, dengan kata lain, detail lapisan yang terbentuk kompatibel satu sama lain.
  • lapisan terpisah dapat dianggap sebagai satu kesatuan yang mandiri
  • ketergantungan antar lapisan dapat diminimalkan
  • lapisan yang dibuat dapat menjadi dasar untuk beberapa lapisan induk yang berbeda
  • saat berpindah dari satu lapisan ke lapisan lainnya, entitas yang dimodelkan biasanya menjalani transformasi dari satu tampilan ke tampilan lainnya


Secara singkat tentang urutan mendesain lapisan arsitektur:



  1. Semua persyaratan bisnis disorot dan disusun ke dalam kategori.
  2. Persyaratan dipecah menjadi tugas yang harus diselesaikan oleh aplikasi.
  3. Tugas dikategorikan dan dikelompokkan berdasarkan kesamaan tujuan mata pelajarannya.
  4. Atas dasar kategori ini, tujuan umum dari lapisan arsitektural disorot, di mana tugas akan diselesaikan.
  5. Pemecahan masalah dapat dianggap sebagai algoritma, atau proses, yang menghasilkan hasil yang diinginkan. Dari semua tugas, komponen umum (detail) dibedakan, dari mana mereka diimplementasikan. (model dan tindakan pada mereka). Akan ada artikel tambahan tentang bagaimana ini dilakukan.
  6. Berdasarkan komponen yang dipilih, kelas dari lapisan yang sesuai diimplementasikan dan, sebagai aturan, digabungkan menjadi satu rakitan terpisah.




Contoh dari
1.



ISO/OSI



2.



,



  • : , ,
  • (, , )


image



3.







1 โ€” , , , ,

2 โ€” , โ€” , โ€ฆ

3 โ€” , , โ€” : , ,



() , (, , ) (, ).



, . 3 (, , ), . , , , .




All Articles