Desain dina tingkat sistem. Bagian 1. Ti gagasan pikeun sistem

Halo sadayana. Kuring sering nerapkeun prinsip rékayasa sistem dina padamelan kuring sareng hoyong ngabagi pendekatan ieu ka masarakat.

Rékayasa sistem - tanpa standar, tapi ngan saukur nempatkeun, éta mangrupikeun prosés ngembangkeun sistem salaku komponén anu cukup abstrak, tanpa ngarujuk kana conto alat khusus. Salila prosés ieu, sipat komponén sistem sareng sambungan antara aranjeunna ditetepkeun. Salaku tambahan, perlu pikeun ngajantenkeun sistem konsisten sareng optimal sareng yén sistem nyumponan sarat. Dina tutorial ieu kuring bakal nunjukkeun téknik rékayasa sistem nganggo conto ngarancang sistem kontrol aksés (ACS) anu cukup saderhana.

Ngabentuk arsitéktur awal

Nalika sistem, euweuh urusan naon, ngan mimiti dimekarkeun, rectangles kalawan panah muncul dina huluna urang atawa dina kertas. Sagi opat sapertos kitu Komponén sistem. Jeung panah téh sambungan antara komponén. Sarta sering pisan urang teu boga waktu pikeun diuk na pikir ngeunaan kumaha sakabeh komponen nu urang tangtu bakal gawé bareng silih, sarta dina tungtungna urang mimitian nyieun kebat crutches, datang nepi ka desain kaleuleuwihan.

Penting pikeun émut yén tina sudut pandang sistem sareng arsitékturna, komponén mangrupikeun hal anu rada abstrak. Salaku conto, upami sistem kami ngagaduhan mikrokontroler, maka dina tingkat arsitéktur éta ngan ukur penting pikeun urang yén éta mikrokontroler, sanés yén éta STM32, Arduino atanapi Milander. Sumawona, sering pisan henteu jelas pikeun urang naon anu bakal aya dina sistem, sareng urang giliran rékayasa sistem pikeun ngembangkeun syarat pikeun alat, parangkat lunak, jsb.

Pikeun conto urang sareng ACS, urang bakal nyobian ngarumuskeun tujuanana. Ieu bakal ngabantosan urang pikeun ngaidentipikasi komponénna. Janten, tugas sistem kontrol aksés nyaéta ngijinkeun bunderan terbatas jalma ka rohangan. Hartina, éta mangrupakeun konci pinter. Akibatna, urang gaduh komponén kahiji - sababaraha jinis alat anu ngonci sareng muka konci panto! Hayu urang nelepon anjeunna Konci Panto

Kumaha urang nyaho yén hiji jalma bisa asup ka jero? Kami henteu hoyong nempatkeun penjaga sareng pariksa paspor, naha? Hayu urang masihan jalma kartu khusus sareng tag RFID, dimana urang bakal ngarékam ID unik atanapi data sanés anu ngamungkinkeun urang pikeun ngaidentipikasi jalma sacara akurat. Teras, urang peryogi sababaraha alat anu tiasa maca tag ieu. Hebat, urang gaduh hiji komponén deui, RFIDReader

Hayu urang tingali deui naon urang meunang. RFIDReader maca sababaraha data, sistem kontrol aksés ngalakukeun hal kalawan eta, sarta dina dasar hal ieu dikawasa Konci Panto. Hayu urang naroskeun patarosan di handap ieu - dimana nyimpen daptar jalma anu gaduh hak aksés? Pangalusna dina database. Ku alatan éta, sistem urang kudu bisa ngirim requests jeung prosés respon ti database. Janten urang gaduh hiji deui komponén - DBHandler. Janten, kami nampi pedaran sistem anu abstrak pisan, tapi cekap pikeun ngamimitian. Kami ngartos naon anu kedah dilakukeun sareng kumaha jalanna.

Gantina sapotong kertas, abdi bakal make System komposer, alat husus pikeun modeling arsitéktur sistem di lingkungan Simulink, sarta nyieun 3 komponén. Di luhur kuring ngajelaskeun sambungan antara komponén-komponén ieu, ku kituna hayu urang langsung nyambungkeunana:

Desain dina tingkat sistem. Bagian 1. Ti gagasan pikeun sistem

Ngalegaan arsitéktur

Hayu urang nempo diagram urang. Sigana mah sagalana geus rupa, tapi kanyataanana teu. Tingali sistem ieu tina sudut pandang pangguna - pangguna mawa kartu ka pamaca sareng ...? Kumaha pangguna terang upami aranjeunna diidinan atanapi ditolak aksés? Perlu kumaha waé pikeun ngabéjaan anjeunna ngeunaan ieu! Ku alatan éta, hayu urang tambahkeun hiji komponén deui - bewara pamaké, UserNotify:

Desain dina tingkat sistem. Bagian 1. Ti gagasan pikeun sistem

Ayeuna hayu urang turun ka tingkat abstraksi handap. Hayu urang coba ngajelaskeun sababaraha komponén dina leuwih jéntré saeutik. Hayu urang mimitian ku komponén RFIDReader. Dina sistem kami, komponén ieu tanggung jawab maca tag RFID. Kaluaranna kedah ngandung sababaraha data (UID, data pangguna ...). Tapi antosan, RFID, sapertos NFC, utamina hardware, sanés parangkat lunak! Kituna, urang bisa nganggap yen urang misah boga chip RFID sorangan, nu transmits data "atah" kana sababaraha jenis preprocessor. Janten, urang gaduh sapotong hardware abstrak anu tiasa maca tag RFID, sareng parangkat lunak abstrak anu tiasa ngarobih data kana format anu urang peryogikeun. Hayu urang nelepon aranjeunna RFIDSensor и RFIDParser masing-masing. Kumaha cara nampilkeun ieu dina System Composer? Anjeun tiasa nyabut komponén RFIDReader sarta nempatkeun dua komponén gantina, tapi leuwih hade teu ngalakukeun ieu, disebutkeun urang bakal leungit readability arsitektur. Sabalikna, hayu urang lebet ka RFIDReader sareng tambahkeun 2 komponén énggal:

Desain dina tingkat sistem. Bagian 1. Ti gagasan pikeun sistem

Hébat, ayeuna hayu urang teraskeun ngabéjaan pangguna. Kumaha sistem bakal ngabéjaan pangguna yén anjeunna ditolak atanapi diidinan aksés ka enggon? Hiji jalma perceives sora jeung hal blinking pangalusna. Ku alatan éta, anjeun tiasa ngaluarkeun sinyal sora tangtu ku kituna pamaké nengetan, sarta kedip-kedip LED. Hayu urang tambahkeun komponén luyu UserNotify:

Desain dina tingkat sistem. Bagian 1. Ti gagasan pikeun sistem

Kami parantos nyiptakeun arsitéktur sistem kami, tapi aya anu lepat sareng éta. Naon? Hayu urang nempo ngaran sambungan. InBus и OutBus - ngaran teu cukup normal nu bakal nulungan pamekar. Aranjeunna kedah diganti nami:

Desain dina tingkat sistem. Bagian 1. Ti gagasan pikeun sistem

Janten, urang ningali kumaha metode rékayasa sistem diterapkeun dina perkiraan anu paling kasar. Patarosan timbul: naha nganggo aranjeunna sadayana? Sistemna primitif, sareng sigana yén padamelan anu dilakukeun henteu diperyogikeun. Anjeun tiasa langsung nyerat kode, mendesain pangkalan data, nyerat patarosan atanapi solder. Masalahna nyaeta lamun teu mikir ngaliwatan sistem jeung ngarti kumaha komponén na disambungkeun ka silih, integrasi komponén sistem bakal nyandak lila tur rada nyeri.

The takeaway utama tina bagian ieu nyaéta:

Pamakéan metode rékayasa sistem sareng modél arsitéktur dina pamekaran sistem ngamungkinkeun hiji ngirangan biaya ngahijikeun komponén sareng ningkatkeun kualitas sistem anu dikembangkeun.

sumber: www.habr.com

Tambahkeun komentar