Metodologi untuk membina model objek. Prinsip asas membina model objek

Asas konsep pendekatan berorientasikan objek ialah model objek. Prinsip utama pembinaannya ialah:

· abstraksi;

· enkapsulasi;

· modulariti;

· hierarki.

Abstraksi ialah pemilihan ciri yang paling penting dan penting bagi sesetengah objek, yang membezakannya daripada semua jenis objek lain dan, dengan itu, mentakrifkan dengan jelas sempadan konsepnya dari sudut pandangan pertimbangan dan analisis selanjutnya, dan mengabaikan yang kurang penting atau tidak penting. butiran.

Abstraksi membolehkan anda mengurus kerumitan sistem dengan memfokuskan pada sifat penting objek. Abstraksi memfokuskan perhatian pada ciri luaran sesuatu objek dan membolehkan anda memisahkan ciri paling penting bagi tingkah lakunya daripada butiran pelaksanaannya. Memilih set abstraksi yang betul untuk domain masalah tertentu ialah cabaran utama reka bentuk berorientasikan objek. Abstraksi bergantung pada domain dan sudut pandangan - apa yang penting dalam satu konteks mungkin tidak penting dalam konteks yang lain. Objek dan kelas adalah abstraksi asas domain.

Enkapsulasi ialah penyetempatan fizikal sifat dan tingkah laku dalam satu abstraksi (dianggap sebagai "kotak hitam"), menyembunyikan pelaksanaannya di sebalik antara muka awam.

Enkapsulasi ialah proses memisahkan antara satu sama lain unsur-unsur individu sesuatu objek yang menentukan struktur dan tingkah lakunya. Enkapsulasi berfungsi untuk mengasingkan antara muka objek, yang mencerminkan tingkah laku luarannya, daripada pelaksanaan dalaman objek. Pendekatan objek mengandaikan bahawa sumbernya sendiri, yang hanya boleh dimanipulasi oleh operasi objek itu sendiri, tersembunyi daripada persekitaran luaran. Abstraksi dan enkapsulasi adalah pelengkap: abstraksi memfokuskan perhatian pada ciri luaran objek, manakala enkapsulasi (atau sebaliknya menyekat akses) menghalang objek pengguna daripada membezakan struktur dalaman objek.

Enkapsulasi adalah serupa dengan konsep penyembunyian maklumat. Ini adalah keupayaan untuk menyembunyikan banyak butiran objek dari dunia luar. Dunia luaran objek ialah segala-galanya di luarnya, termasuk seluruh sistem. Penyembunyian maklumat memberikan manfaat yang sama seperti enkapsulasi: fleksibiliti.

Modulariti ialah sifat sistem yang dikaitkan dengan kemungkinan penguraiannya menjadi beberapa subsistem (modul) yang berganding kuat secara dalaman tetapi saling berkaitan lemah.

Modulariti mengurangkan kerumitan sistem dengan membenarkan pembangunan bebas modul individu. Enkapsulasi dan modulariti mewujudkan halangan antara abstraksi.

Hierarki ialah sistem abstraksi berperingkat atau tersusun, susunannya mengikut tahap.

Jenis utama struktur hierarki berhubung dengan sistem kompleks ialah struktur kelas (hierarki mengikut tatanama) dan struktur objek (hierarki mengikut komposisi). Contoh hierarki kelas ialah warisan mudah dan berbilang (satu kelas menggunakan bahagian struktur atau fungsi, masing-masing, satu atau lebih kelas lain), dan hierarki objek ialah pengagregatan.

Kelas boleh diatur dalam struktur hierarki, yang dalam penampilan menyerupai skema klasifikasi dalam logik konseptual. Hierarki konsep dibina seperti berikut. Konsep atau kategori yang paling umum dianggap sebagai konsep yang mempunyai jumlah terbesar dan, dengan itu, kandungan terkecil. Ini adalah tahap abstraksi tertinggi untuk hierarki tertentu. Kemudian konsep umum ini ditentukan, iaitu isipadunya berkurangan dan kandungannya bertambah. Konsep yang kurang umum muncul, yang dalam rajah hierarki akan terletak satu tahap di bawah yang asal. Proses mengkokritkan konsep ini boleh diteruskan sehingga, pada tahap yang paling rendah, sesuatu konsep diperolehi, pemkonkretan selanjutnya dalam konteks tertentu adalah sama ada mustahil atau tidak praktikal.

Membina model objek masalah menggunakan bahasa pemodelan UML.

KERJA SELESAI DI StarUML

Masa utama:

2 – 3 pelajaran

Untuk mempertahankan kerja anda, anda mesti menyediakan projek yang dibuat dalam pakej Rational Rose, termasuk tiga jenis rajah: kes penggunaan, kelas (antara muka, data) dan jujukan untuk setiap fungsi.

CONTOH TUGASAN:

Adalah perlu untuk memastikan bahawa maklumat berikut disimpan dalam pangkalan data:

- maklumat pelajar

o NAMA PENUH.,

o alamat,

o butiran pasport,

o nombor rekod,

o Tarikh lahir,

o kumpulan);

- maklumat tentang kepakaran

o nama kepakaran,

o sifir;

- maklumat tentang kumpulan

o kepakaran,

o tahun kemasukan,

o nombor kumpulan.

Pastikan pengeluaran dokumen "Senarai Kumpulan" yang mengandungi medan berikut:

· nombor siri,

· NAMA PENUH.,

· nombor rekod.


Arahan kerja

Pembinaan model objek dijalankan dalam pakej Rational Rose. Untuk melakukan ini, mari buat projek kosong. Anda harus memulakan kerja anda dengan gambar rajah kes guna. Ia dibina di kawasan Utama bahagian Use Case View, seperti yang ditunjukkan dalam Rajah 9.

Sebelum mula membina gambar rajah, adalah perlu untuk menentukan peranan pengguna sistem (aktor) dan fungsi mereka (kes penggunaan). Dalam kes kami, dua pelakon bekerja dengan sistem: "Pekerja jabatan pendidikan" dan "Pekerja pejabat dekan." Fungsi pekerja jabatan pendidikan termasuk mengekalkan senarai kepakaran (di bawah mengekalkan senarai kami akan memahami menambah rekod, melaraskannya dan memadamkannya). Fungsi kakitangan pejabat dekan termasuk menyelenggara senarai pelajar dan menyelenggara senarai kumpulan.

Rajah yang dibina ditunjukkan dalam Rajah. 10.


Seterusnya, dalam bahagian Logical View, anda harus membuat dua gambar rajah kelas. Untuk melakukan ini, anda boleh membuat dua pakej. Gambar rajah pertama harus mengandungi kelas antara muka aplikasi yang direka bentuk (lihat Rajah 11). Dalam angka ini, dalam kelas "Senarai Kumpulan" dan "Senarai Pelajar", operasi menambah, menukar dan memadam ditinggalkan untuk mengelak angka itu berselerak. Senarai kumpulan (kelas bawah) ialah dokumen output (ia didahului oleh kelas "Pemilihan Kumpulan", kerana perlu mendapatkan senarai pelajar dalam kumpulan tertentu). Rajah kedua ialah entiti pangkalan data (lihat Rajah 12).



Gambar rajah kelas yang dibina memaparkan semua bentuk aplikasi masa hadapan dan hubungannya.

Anda harus memasukkan medan utama dan mewujudkan sambungan (dari menu konteks anak panah - Multiplicity).

Peringkat seterusnya membina model objek ialah mencipta gambar rajah jujukan. Rajah jujukan dicipta untuk setiap kes penggunaan dalam rajah kes guna. Untuk menambah rajah jujukan pada kes penggunaan, anda perlu memilihnya dalam pepohon dan memanggil menu konteks padanya (Rajah Jujukan Baru) seperti yang ditunjukkan dalam Rajah. 13.

Contoh rajah jujukan untuk preseden "Mengekalkan senarai kepakaran" ditunjukkan dalam Rajah. 14.

Perlu diingatkan bahawa apabila membina gambar rajah jenis ini untuk dokumen output "Senarai Kumpulan", dalam kes kami, anda harus terlebih dahulu memilih kumpulan pada borang "Pemilihan Kumpulan" (ini, seterusnya, harus menerima data dari "Kumpulan". ” entiti), dan kemudian paparkan dokumen borang output, yang mana data datang daripada entiti “Pelajar”.

Sistem aplikasi mewakili satu set objek yang saling bergantung. Setiap objek dicirikan oleh satu set sifat, nilai yang menentukan keadaan objek, dan satu set operasi yang boleh digunakan pada objek ini.

Apabila membangunkan sistem aplikasi, adalah mudah untuk menganggap bahawa semua sifat objek adalah peribadi (iaitu, ia tidak boleh diakses di luar objek). Operasi objek boleh sama ada awam atau peribadi.

Oleh itu, setiap objek mempunyai antara muka yang ditetapkan dengan ketat, i.e. satu set operasi awam yang boleh digunakan pada objek ini. Semua objek kelas yang sama mempunyai antara muka yang sama.

Model objek mewakili struktur statistik sistem yang direka (subsistem). Walau bagaimanapun, pengetahuan tentang struktur statik tidak mencukupi untuk memahami dan menilai subsistem robotik. Ia adalah perlu untuk mempunyai cara untuk menerangkan perubahan yang berlaku dengan objek dan sambungannya semasa operasi subsistem.

Salah satu cara ini ialah model dinamik subsistem. Ia dibina selepas model objek subsistem telah dibina dan dipersetujui dan dinyahpepijat sebelum ini. Model dinamik subsistem terdiri daripada gambar rajah keadaan objek subsistemnya.

Keadaan semasa sesuatu objek dicirikan oleh satu set nilai semasa atribut dan hubungannya. Semasa operasi sistem, objek konstituennya berinteraksi antara satu sama lain, akibatnya keadaan mereka berubah. Unit pengaruh ialah peristiwa: setiap peristiwa membawa kepada perubahan dalam keadaan satu atau lebih objek dalam sistem, atau kepada berlakunya peristiwa baharu. Operasi sistem dicirikan oleh urutan peristiwa yang berlaku di dalamnya.

Sesuatu peristiwa berlaku pada satu ketika. Contoh acara: pelancaran roket, permulaan perlumbaan 100 m, permulaan pendawaian, pengeluaran wang, dsb. Acara tidak mempunyai tempoh (lebih tepat, ia mengambil masa yang boleh diabaikan).

Jika peristiwa tidak mempunyai hubungan sebab akibat (iaitu ia bebas secara logik), ia dipanggil bebas(serentak). Peristiwa sebegini tidak menjejaskan satu sama lain. Tidak ada gunanya memesan acara bebas, kerana ia boleh berlaku dalam sebarang susunan. Model sistem teragih semestinya mengandungi acara dan aktiviti bebas.

Urutan peristiwa dipanggil skrip. Selepas senario dibangunkan dan dianalisis, objek yang menjana dan menerima setiap peristiwa senario ditentukan.

Apabila peristiwa berlaku, bukan sahaja objek beralih kepada keadaan baharu, tetapi juga tindakan yang dikaitkan dengan acara ini dilakukan. Tindakan ialah operasi segera yang dikaitkan dengan peristiwa.

Proses membina model objek termasuk langkah-langkah berikut:

Definisi objek dan kelas;

Menyediakan kamus data:

Menentukan kebergantungan antara objek;

Menentukan sifat objek dan sambungan;

Mengadakan dan memudahkan kelas apabila menggunakan warisan;

Kajian lanjut dan penambahbaikan model.

TOPIK 4: Metodologi pemodelan proses perniagaan

1. Intipati pemodelan dan klasifikasi model dalam kejuruteraan semula

Keperluan asas untuk membina model proses perniagaan dalam syarikat

Metodologi untuk membina model terdahulu

Metodologi untuk membina model objek

soalan 1

Pemodelan adalah alat utama untuk menganalisis dan mereka bentuk sistem yang kompleks. Terdapat sejumlah besar jenis model yang berbeza. Model boleh dikelaskan dalam pelbagai cara. Mengikut kaedah penjelmaan, model boleh dibahagikan kepada bahan (sebenar, bahan) dan abstrak (ideal). Oleh kerana model material mempunyai skop aplikasi yang agak terhad, mari kita teruskan untuk mempertimbangkan model abstrak.

Model abstrak ialah pantulan objek sebenar dalam bentuk struktur ideal yang dibuat dengan cara berfikir. Mari kita bezakan dua kelas utama model abstrak: rasmi (matematik) dan semantik (bermakna).

Dalam model formal corak matematik yang wujud antara parameter kuantitatif dicerminkan. Kelas model ini termasuk, khususnya, sistem persamaan, model statistik, model penyelidikan operasi, dsb. Model matematik adalah universal dalam erti kata bahawa model yang sama boleh menerangkan proses atau fenomena fizikal yang sangat berbeza. Kelebihan utama model matematik ialah ia memungkinkan untuk mencari penyelesaian di bawah syarat yang diberikan. Kesukaran utama ialah tidak semua sistem boleh diterangkan dengan secukupnya oleh satu model matematik.

Sistem kompleks dipanggil kompleks kerana ia sukar untuk diformalkan. Adalah dinasihatkan untuk mereka gunakan model semantik. Tidak seperti model formal, model semantik mengekalkan semantik objek (cabang linguistik yang mengkaji makna semantik unit bahasa). Contoh model semantik termasuk pokok matlamat organisasi, model struktur organisasi, model komunikasi maklumat syarikat, dsb.

Sebagai peraturan, model semantik menerangkan objek tertentu (entiti, sistem, subsistem, elemen), sifat objek (parameter, ciri), keadaan dan tingkah laku mereka, serta hubungan antara objek. Model semantik boleh seperti statik , mencerminkan keadaan objek dan perhubungan yang malar dan stabil, dan dinamik , mencerminkan aliran peristiwa, i.e. perubahan dalam masa keadaan objek, serta urutan interaksi objek. Graf, rajah, jadual, carta alir, dan bahasa semula jadi (bahasa komunikasi antara manusia) digunakan sebagai cara linguistik untuk menerangkan model semantik.

Asas kebanyakan model semantik ialah model analisis sistem asas (model kotak hitam, model gubahan dan model struktur) dan model rangkaian semantik. Baru-baru ini, pendekatan berorientasikan objek telah digunakan secara aktif untuk membina model jenis ini.

Model semantik tidak boleh diganti pada peringkat awal mereka bentuk sistem yang kompleks, apabila konsep sistem sedang dibentuk. Model semantik bersepadu sistem membolehkan anda membentangkan gambaran keseluruhan, mencipta penerangan umum di mana entiti utama ditekankan dan butirannya disembunyikan. Perkara utama dalam model sedemikian adalah ringkas dan jelas. Model sedemikian boleh berfungsi sebagai asas untuk membina model yang lebih terperinci yang menerangkan aspek dan subsistem individu. Oleh itu, model semantik boleh berfungsi sebagai rangka kerja untuk membina model lain, termasuk model matematik. Ia berfungsi untuk menstruktur maklumat tentang sesuatu objek.

Soalan 2

Mana-mana syarikat adalah sistem yang kompleks yang mana mustahil untuk membina model formal tunggal yang merangkumi semua butiran secara mutlak. Oleh itu, bukan satu, tetapi beberapa model yang diselaraskan diperlukan, yang merupakan asas untuk membina model yang lebih terperinci.

Model perniagaan harus mencerminkan:

1.Fungsi syarikat di dunia luar: apa yang dia buat, untuk siapa, untuk tujuan apa. Ia adalah perlu untuk menerangkan persekitaran syarikat, termasuk pelanggan, rakan kongsi, subkontraktor, dsb., serta interaksi syarikat dengan persekitaran ini.

2. Seni bina syarikat, iaitu struktur statik terpenting syarikat. Unsur-unsur struktur hendaklah:

Proses luaran dan dalaman syarikat;

Fungsi (langkah proses individu);

Produk (keluaran proses dan fungsi);

Sumber, manusia dan teknikal.

Elemen boleh dicirikan oleh parameter yang membolehkan keadaan mereka diterangkan. Untuk menerangkan struktur, ia juga perlu untuk mencerminkan hubungan antara elemen, termasuk:

Hubungan antara proses, fungsi individu (langkah) proses;

Hubungan antara peserta dalam proses - pelbagai jenis sumber, cara dan produk;

Hubungan antara orang (hubungan subordinasi, komunikasi, dll.).

3. "Dinamik" perniagaan, iaitu pelaksanaan proses perniagaan dalam masa. Dinamik dicerminkan dalam bentuk aliran peristiwa, i.e. urutan operasi dan pemindahan insentif untuk melaksanakannya.

Metodologi untuk membina model syarikat harus membenarkan pembinaan model yang boleh difahami dan boleh diperhatikan. Model harus mengecualikan butiran yang tidak perlu, memfokuskan pada aspek yang paling penting. Bahasa penerangan model perlu cukup ekspresif.

Metodologi mesti diformalkan secukupnya, i.e. hendaklah memasukkan beberapa prosedur atau teknik yang agak jelas untuk menjana komponen model. Adalah wajar bahawa teknik ini disokong oleh sistem komputer instrumental. Penggunaan sistem sokongan instrumental sangat memudahkan proses pembangunan projek besar, terutamanya semasa pembangunan kolektif, di mana pelbagai kumpulan pemaju mengambil bahagian.

Soalan 3

Yang paling meluas ialah 2 kumpulan metodologi pemodelan proses perniagaan:

1. Metodologi untuk membina model P-O (model precedent-object) Teknik ini melibatkan pembinaan berurutan dua jenis model perniagaan: luaran (precedent atau P-model) dan dalaman (objek atau O-model).

Model luaran atau preseden (model P) menerangkan perniagaan kerana ia boleh dilihat dari luar, i.e. bagaimana ia dilihat oleh pelanggan dan orang lain dalam persekitaran. Model P mencerminkan idea bahawa Apa berniaga, bukan Bagaimana tidak.

Apa dah jadi" duluan". Kes penggunaan ialah proses perniagaan berorientasikan pelanggan "luaran". Kes penggunaan berakhir dengan penerimaan produk - nilai pengguna yang boleh diukur untuk sesetengah pengguna individu sistem perniagaan.

Preseden boleh mempunyai banyak kemungkinan kejadian. Setiap duluan tertentu (pilihan) dipanggil salinan . Contoh melaksanakan aliran peristiwa tertentu di bawah keadaan khusus untuk pelanggan tertentu. Pilihan yang serupa untuk perjalanan acara dikumpulkan ke dalam kelas preseden.

Anda boleh menganggap kelas sebagai preseden umum. Sebagai contoh, kelas kes penggunaan Jualan menerangkan aliran umum peristiwa yang berlaku apabila menjual sebarang produk kepada mana-mana pelanggan. Contoh tertentu kes penggunaan Jualan mungkin berbeza secara terperinci, contohnya bergantung pada sama ada pelanggan baru atau tidak, berpengetahuan atau tidak tahu, dsb.

Pembinaan model P bermula dengan mengenal pasti duluan dan elemen persekitaran - pelanggan, rakan kongsi, pembekal. Persekitaran dimodelkan menggunakan pelakon yang dipanggil mata pelajaran . Entiti mewakili segala-galanya dalam persekitaran yang berinteraksi dengan perniagaan. Subjek boleh menjadi: seseorang (contohnya, pelanggan, pembeli); syarikat lain (contohnya, organisasi pembekal, subkontraktor); sistem teknikal (contohnya, sistem komputer syarikat lain).

Sama seperti untuk preseden, untuk subjek konsep kelas dan contoh dibezakan. Kelas subjek menerangkan ciri umum beberapa jenis subjek, dan contoh menerangkan ciri subjek tertentu.

Selepas mengenal pasti subjek dan preseden sistem perniagaan, adalah perlu untuk menerangkan interaksi antara mereka. Dalam Rajah. Rajah 3.1 membentangkan model grafik interaksi preseden dan subjek.


Hubungan yang diwakili dalam model ini dipanggil hubungan komunikasi . Mereka mencerminkan hubungan sebenar preseden dengan alam sekitar, yang terdiri daripada pertukaran bahan (bahan mentah, alat, produk siap), tenaga dan maklumat. Itu. bahan model hubungan komunikasi, aliran tenaga dan maklumat.

Langkah seterusnya dalam membina model P adalah untuk menerangkan preseden dalam urutan langkah-langkah kecil. Penerangan ini dipanggil aliran peristiwa. Dari sudut pandangan pendekatan sistem, proses-preseden diuraikan menjadi sub-proses-peristiwa.

Mari kita pertimbangkan, sebagai contoh, perihalan dahuluan "Jualan Produk". Aliran utama acara:

1. Penjual menerima permintaan pelanggan

2. Jika aplikasi menyatakan produk siap, penjual menyemak ketersediaan produk yang diperlukan di gudang. Kes penggunaan kemudian diteruskan dari langkah 5.

3. Jika pesanan menyatakan produk tersuai, penjual menyatakan butiran pesanan dan menyerahkannya kepada pereka produk

4. Pereka bentuk mengubah suai produk mengikut keperluan pelanggan

5. Penjual menerima bayaran daripada pelanggan

6. Penjual memaklumkan kepada penghantar kuantiti produk dan alamat pelanggan dan pesanan pengangkutan

7. Pengirim menghantar produk kepada pelanggan.

Setiap langkah (peristiwa) preseden mewakili beberapa tindakan yang memindahkan preseden kepada keadaan baharu. Sebaliknya, keadaan baru preseden adalah insentif untuk melaksanakan langkah seterusnya (peristiwa). Oleh itu, preseden dianggap sebagai mesin acara negara .

Soalan 4

Penerangan model O adalah berdasarkan konsep "objek". Objek hadir peserta proses dan pelbagai jenis intipati (produk, item, tugas, dll.). Membezakan kelas objek yang menerangkan ciri umum beberapa jenis objek, dan salinan, menerangkan ciri-ciri objek tertentu. Model O yang dibentangkan dari segi kelas objek dipanggil model ideal. Model sedemikian tidak mengambil kira beberapa butiran pelaksanaan model dalam amalan. Model O yang diterangkan dari segi contoh objek dipanggil nyata. Ia mengambil kira ciri-ciri pelaksanaan tertentu.

Yang berikut menonjol: tipikal kelas objek:

1. Antara muka - objek yang berinteraksi dengan persekitaran, i.e. dengan mata pelajaran. Contoh objek antara muka ialah Penjual, Pendaftar, Setiausaha. Bukan sahaja seseorang boleh bertindak sebagai objek antara muka. Ini boleh menjadi, sebagai contoh, sebahagian daripada sistem maklumat - antara muka pengguna grafik.

2. Pengurus - objek aktif yang mengawal proses, tetapi tidak mempunyai hubungan dengan persekitaran. Contoh biasa objek pengurusan dalam syarikat ialah Pembangun Produk, Pengurus Projek.

3. Objek entiti - objek pasif yang diproses oleh perniagaan. Biasanya, objek entiti bukan sumber manusia atau teknikal. Contoh biasa entiti dalam syarikat ialah Produk, Pesanan, Notis.

Objek yang sama boleh mengambil bahagian bukan sahaja dalam satu kes penggunaan, ia boleh mengambil bahagian dalam banyak acara dalam perniagaan. Di samping itu, seperti dalam kes subjek, satu orang sebenar atau sistem teknikal boleh memenuhi peranan beberapa objek. Sebagai contoh, jurujual produk, sebagai tambahan kepada peranan objek antara muka yang membuat hubungan dengan pelanggan, boleh memainkan peranan sebagai pengurus.

Objek (kelas dan kejadian) dikaitkan perhubungan . Hubungan binari menghubungkan dua objek. Ia boleh sama ada satu arah atau dua arah.

Dalam model grafik interaksi objek terdahulu, objek digambarkan oleh segi tiga (antara muka dengan huruf "i" di dalam, mengawal dengan huruf "y" di dalam), dan hubungan antara objek diwakili oleh lengkok (anak panah). ). Dalam Rajah. Rajah 3.4 membentangkan model perhubungan objek untuk preseden "Penjualan produk tersuai" yang diterangkan dalam klausa 3.2.1.



Hubungan yang diwakili dalam model ini terdiri daripada dua jenis: hubungan komunikasi (digambarkan oleh anak panah pepejal) dan hubungan penggunaan (digambarkan oleh anak panah bertitik). Perhubungan komunikasi mencerminkan aliran bahan, tenaga dan maklumat antara pelbagai objek, serta antara objek dan subjek. Sikap guna bermakna bahawa satu objek menggunakan yang lain dalam beberapa cara. Sebagai contoh, objek Penjual menjana objek Alamat Pelanggan, objek Pengirim Produk menggunakan Alamat Pelanggan untuk mendapatkan maklumat tentang tempat untuk menghantar produk.

Untuk mempunyai idea tentang semua peranan dan tanggungjawab sesuatu objek, anda perlu merangka penerangan objek . Perihalan objek terdiri daripada dua bahagian: perihalan keadaan dan perihalan tingkah laku. Untuk menyusun huraian negeri sesuatu objek, pertama sekali, adalah perlu untuk menyerlahkan semua ciri, sifat, yang dipanggil atribut. Atribut mesti mempunyai nama, julat nilai yang mungkin, dan untuk contoh objek, nilai semasa atribut tertentu. Contohnya, objek "Pesanan" mungkin mempunyai atribut yang menunjukkan nama produk yang dipesan, ciri, kuantiti, nama pelanggan yang memesan produk, dsb. Sebagai peraturan, komposisi atribut adalah sama untuk keseluruhan kelas objek. Contoh objek yang berbeza hanya berbeza dalam set nilai atribut tertentu.

Terdapat atribut malar, nilai yang tidak berubah semasa pelaksanaan kes penggunaan, dan pembolehubah, yang mentakrifkan pelbagai keadaan objek. Sebagai contoh, objek Pesanan mungkin mempunyai atribut pembolehubah yang menunjukkan sama ada pesanan itu dalam proses pembuatan, dihantar atau telah pun selesai.

Penerangan tentang tingkah laku objek adalah untuk mengenal pasti semua kewajipan , iaitu semua interaksi objek dengan objek dan subjek lain semasa pelaksanaan kes penggunaan.

©2015-2019 tapak
Semua hak milik pengarangnya. Laman web ini tidak menuntut pengarang, tetapi menyediakan penggunaan percuma.
Tarikh penciptaan halaman: 2017-10-11


PENGENALAN

Ciri yang paling penting bagi mana-mana sistem ialah struktur dan proses berfungsi. Struktur sistem difahami sebagai set perhubungan yang stabil masa antara elemen atau komponennya. Ia adalah struktur yang mengikat semua elemen bersama-sama dan menghalang sistem daripada hancur menjadi komponen yang berasingan. Struktur sesebuah sistem boleh mencerminkan pelbagai perhubungan, termasuk penyusunan unsur-unsur satu sistem kepada sistem yang lain. Dalam kes ini, adalah kebiasaan untuk memanggil sistem yang lebih kecil atau bersarang sebagai subsistem. Proses berfungsi sistem berkait rapat dengan perubahan sifat atau tingkah lakunya dari semasa ke semasa. Dalam kes ini, ciri penting sistem ialah keadaannya, yang difahami sebagai satu set sifat atau ciri yang pada setiap saat masa mencerminkan ciri yang paling penting bagi tingkah laku sistem. Ciri umum semua model ialah persamaannya dengan sistem asal. Kepentingan membina model terletak pada kemungkinan menggunakannya untuk mendapatkan maklumat tentang sifat atau tingkah laku sistem asal. Dalam kes ini, proses membina dan aplikasi model seterusnya untuk mendapatkan maklumat tentang sistem asal dipanggil pemodelan. Model sistem umum mengandungi beberapa maklumat penting tentang ciri kefungsian sistem tertentu, yang memberikan pandangan tentang kelakuan masa depannya.

Kajian proses pemodelan merupakan objek kajian dalam kerja kursus ini. Pembinaan model objek tertentu dan kajian tingkah lakunya akan dianggap sebagai subjek kajian. Untuk mencapai matlamat ini, kaedah berikut digunakan: kajian literatur yang diperlukan, perbandingan, contoh dari pengalaman hidup Memandangkan pembinaan model objek akan dijalankan menggunakan contoh perkhidmatan kereta, adalah perlu untuk mengkaji operasi prinsip organisasi ini. Untuk melakukan ini, sudah cukup untuk melawati laman web rasmi pelbagai perkhidmatan kereta. Tetapi untuk mengkaji prinsip membina model objek, saya mempelajari kesusasteraan saintifik dalam dan luar negara. Ia ternyata satu aktiviti yang sangat menarik.

Hasilnya, matlamat kerja kursus saya adalah untuk membina model objek sistem maklumat Autoservice, mengkaji prinsip membina model objek, menerangkan proses pembinaan, membuktikan kepentingan memiliki pengetahuan ini dan kebolehan untuk mengaplikasikannya dalam berlatih.

Struktur kerja kursus adalah seperti berikut: pertama, teori pembinaan model objektif dikaji, kemudian pelaksanaan teori diuji menggunakan contoh praktikal.

  1. Konsep asas pendekatan berorientasikan objek

Pendekatan berorientasikan objek adalah berdasarkan penggunaan model yang sistematik. Perumusan matlamat melibatkan objek dan konsep dunia sebenar yang relevan dengan sistem perisian yang dibangunkan. Dengan pendekatan berorientasikan objek, objek dan konsep ini digantikan dengan modelnya, i.e. struktur formal tertentu yang mewakilinya dalam sistem perisian.

Model ini tidak mengandungi semua ciri dan sifat objek atau konsep yang diwakilinya, tetapi hanya ciri yang penting untuk sistem perisian yang dibangunkan. Oleh itu, model adalah lebih mudah daripada objek (konsep) yang diwakilinya. Ini memudahkan kedua-dua pembangunan dan kajian (analisis) model dan pelaksanaannya pada komputer. Khususnya, sifat formal model membolehkan kami mendapatkan model formal sistem perisian yang dibangunkan sebagai komposisi model formal komponennya.

Oleh itu, pendekatan berorientasikan objek membantu mengatasi masalah yang kompleks seperti mengurangkan kerumitan perisian; meningkatkan kebolehpercayaan perisian; memastikan keupayaan untuk mengubah suai komponen perisian individu tanpa mengubah komponen yang tinggal; memastikan kemungkinan menggunakan semula komponen perisian individu.

Aplikasi sistematik pendekatan berorientasikan objek membolehkan pembangunan sistem perisian yang tersusun dengan baik, boleh dipercayai, dan agak mudah diubah suai. Ini menjelaskan minat pengaturcara dalam pendekatan berorientasikan objek. Pendekatan berorientasikan objek adalah salah satu bidang pengaturcaraan teori dan gunaan yang paling pesat membangun.

Pembangunan perisian berorientasikan objek melibatkan penggunaan model berorientasikan objek dalam pembangunan sistem perisian dan komponennya.

Pembangunan berorientasikan objek boleh bermula pada peringkat pertama kitaran hayat; ia tidak berkaitan dengan bahasa pengaturcaraan di mana sistem perisian yang sedang dibangunkan sepatutnya dilaksanakan: bahasa ini mungkin tidak berorientasikan objek. Pada peringkat pembangunan, objek adalah beberapa struktur formal (contohnya, segi empat tepat dengan sudut bulat, dengan bantuannya ia digambarkan pada rajah), yang belum disambungkan dalam apa-apa cara dengan pelaksanaan masa depan mereka dalam salah satu bahasa pengaturcaraan.

Pembangunan perisian berorientasikan objek melibatkan penggunaan metodologi berorientasikan objek (teknologi). Biasanya, metodologi berorientasikan objek ini disokong oleh alat perisian, tetapi walaupun tanpa alat sedemikian ia berguna, kerana ia membolehkan pemahaman yang baik tentang pelbagai aspek dan sifat sistem perisian yang dibangunkan, yang kemudiannya memudahkan pelaksanaan, pengujian, penyelenggaraan, pembangunan versi baharu dan pengubahsuaian yang lebih ketara.

Reka bentuk sistem perisian aplikasi bermula dengan analisis keperluan yang perlu dipenuhi. Analisis sedemikian dijalankan untuk memahami tujuan dan keadaan operasi sistem yang cukup untuk dapat merangka reka bentuk awalnya.

Dengan pendekatan berorientasikan objek, analisis keperluan sistem datang kepada pembangunan model sistem ini. Model sistem (atau mana-mana objek atau fenomena lain) ialah penerangan rasmi sistem, yang mengenal pasti objek utama yang membentuk sistem dan hubungan antara objek ini. Membina model ialah cara yang meluas untuk mengkaji objek dan fenomena yang kompleks. Model ini meninggalkan banyak butiran yang menjadikannya sukar untuk difahami. Pemodelan meluas dalam kedua-dua sains dan teknologi.

Model membantu menyemak prestasi sistem yang sedang dibangunkan pada peringkat awal pembangunannya, berkomunikasi dengan pelanggan sistem, menjelaskan keperluannya untuk sistem, dan membuat (jika perlu) perubahan pada reka bentuk sistem (kedua-duanya pada permulaan reka bentuknya dan pada fasa lain kitaran hayatnya).

Model yang dibangunkan dan dinyahpepijat dalam fasa pertama kitaran hayat sistem terus digunakan dalam semua fasa berikutnya, memudahkan pengaturcaraan sistem, nyahpepijat dan ujian, penyelenggaraan dan pengubahsuaian selanjutnya.

Model objek menerangkan struktur objek yang membentuk sistem, atribut, operasi dan hubungannya dengan objek lain. Model objek harus mencerminkan konsep dan objek dunia sebenar yang penting untuk sistem yang dibangunkan. Model objek mencerminkan, pertama sekali, pragmatik sistem yang dibangunkan, yang dinyatakan dalam penggunaan terminologi domain aplikasi yang berkaitan dengan penggunaan sistem yang dibangunkan.

Mari kita pertimbangkan konsep asas yang digunakan dalam membina model objek.

Objek ialah abstraksi atau apa-apa perkara dengan sempadan yang jelas yang masuk akal dalam konteks masalah yang digunakan. Pengenalan objek mempunyai dua matlamat: memahami tugas yang digunakan (masalah) dan memperkenalkan asas untuk pelaksanaan pada komputer.

Tujuan membangunkan model objek adalah untuk menerangkan objek yang secara kolektif membentuk sistem yang direka, serta untuk mengenal pasti dan menunjukkan pelbagai kebergantungan antara objek.

Kelas ialah deskriptor untuk set objek yang mempunyai sifat yang sama. Kelas menerangkan sifat beberapa objek. Setiap objek adalah contoh hanya satu kelas.

Semua objek kelas yang sama dicirikan oleh set atribut yang sama. Walau bagaimanapun, pengelompokan objek ke dalam kelas tidak ditentukan oleh set atribut, tetapi oleh semantik. Jadi, sebagai contoh, objek stabil dan kuda boleh mempunyai sifat yang sama: harga dan umur. Lebih-lebih lagi, mereka boleh tergolong dalam kelas yang sama, jika mereka dianggap dalam masalah semata-mata sebagai produk, atau kelas yang berbeza, yang lebih semula jadi.

Menggabungkan objek ke dalam kelas membolehkan anda memperkenalkan abstraksi ke dalam masalah dan menganggapnya dalam rumusan yang lebih umum. Kelas mempunyai nama (seperti kuda) yang digunakan untuk semua objek kelas itu. Selain itu, kelas mengandungi nama atribut yang ditakrifkan untuk objek. Dalam pengertian ini, perihalan kelas adalah serupa dengan perihalan jenis struktur (rekod); Selain itu, setiap objek mempunyai makna yang sama seperti contoh struktur (pembolehubah atau pemalar jenis yang sepadan).

Atribut objek ialah nilai yang mencirikan objek dalam kelasnya. Contoh atribut: buatan, tahun pembuatan, warna (atribut objek kelas kereta), dsb.

Operasi ialah fungsi (atau transformasi) yang boleh digunakan pada objek kelas tertentu. Contoh operasi: semak, keluarkan, pasang (untuk objek kelas alat ganti).

Semua objek kelas tertentu menggunakan contoh yang sama bagi setiap operasi (iaitu, meningkatkan bilangan objek kelas tertentu tidak membawa kepada peningkatan jumlah kod program yang dimuatkan). Objek dari mana operasi dipanggil dihantar kepadanya sebagai hujah tersiratnya (parameter).

Operasi yang sama boleh digunakan pada objek kelas yang berbeza: operasi sedemikian dipanggil polimorfik kerana ia boleh mempunyai bentuk yang berbeza untuk kelas yang berbeza.

Ketergantungan antara kelas adalah dua hala: semua kelas dalam kebergantungan mempunyai hak yang sama. Ini benar walaupun dalam kes di mana nama kebergantungan nampaknya memperkenalkan arah ke kebergantungan. Kebergantungan antara kelas sepadan dengan kebergantungan antara objek kelas ini. Ketergantungan, seperti kelas, boleh mempunyai atribut.

Diskriminator ialah atribut jenis "penghitungan" yang menunjukkan sifat objek yang dibuat dari generalisasi tertentu.

Peranan menentukan satu sisi pergantungan. Dalam pergantungan binari, dua peranan ditakrifkan. Nama peranan secara unik mengenal pasti satu sisi pergantungan. Peranan memungkinkan untuk melihat kebergantungan binari sebagai hubungan antara objek dan set objek bergantung: setiap peranan ialah penetapan objek atau set objek yang disambungkan oleh kebergantungan kepada objek di hujung kebergantungan yang lain. Nama peranan boleh dianggap sebagai atribut terbitan yang set nilainya ialah set objek yang dikaitkan dengan peranan tersebut. Dalam pergantungan binari, sepasang nama peranan boleh digunakan untuk mengenal pasti pergantungan itu.

Nama peranan mesti dinyatakan dalam kes di mana kebergantungan diwujudkan antara objek kelas yang sama. Nama peranan mestilah unik kerana ia digunakan untuk membezakan objek yang terlibat dalam kebergantungan.

Kelayakan ialah atribut yang membolehkan anda mengurangkan kepelbagaian berkesan pergantungan. Kelayakan digunakan dalam kebergantungan satu-ke-banyak atau banyak-ke-banyak.

Pengagregatan ialah pergantungan antara kelas objek komposit dan kelas yang mewakili komponen objek ini (hubungan "keseluruhan" - "bahagian").

Generalisasi dan pewarisan memungkinkan untuk mengenal pasti analogi antara kelas objek yang berbeza dan menentukan klasifikasi objek berbilang peringkat. Oleh itu, dalam sistem grafik mungkin terdapat kelas yang menentukan gambaran pelbagai bentuk geometri: titik, garisan (garis lurus, lengkok bulat dan lengkung yang ditakrifkan oleh spline), poligon, bulatan, dll.

Diskriminator ialah atribut jenis "penghitungan" yang menunjukkan sifat objek yang dibuat dari generalisasi tertentu.

Perlu diingatkan bahawa klasifikasi berbilang peringkat yang meluas harus dielakkan kerana kelakuan subkelas peringkat bawah klasifikasi berbilang peringkat mungkin sukar difahami: kebanyakan (dan selalunya semua) atribut dan operasi kelas tersebut ditakrifkan dalam kelas super mereka dari pelbagai peringkat. Jika bilangan tahap pengelasan telah menjadi terlalu besar, anda perlu mengubah sedikit penstrukturan sistem.

Generalisasi dan pewarisan digunakan secara meluas bukan sahaja dalam analisis keperluan untuk sistem perisian dan reka bentuk awalnya, tetapi juga dalam pelaksanaannya.

Kadangkala subkelas perlu mengatasi operasi yang ditakrifkan dalam salah satu kelas supernya. Untuk mencapai matlamat ini, operasi yang boleh diperoleh daripada superclass hasil daripada warisan juga ditakrifkan dalam subkelas; takrifan semula ini "mengaburkan" takrifannya dalam superclass, supaya operasi yang ditindih dalam subkelas, bukan yang diwarisi, digunakan. Ingat bahawa setiap operasi ditakrifkan oleh tandatangannya; oleh itu, tandatangan penggantian operasi mesti sepadan dengan tandatangan operasi dalam kelas super yang ditindih oleh operasi.

Pembatalan boleh memenuhi salah satu tujuan berikut:

sambungan: operasi baharu memanjangkan operasi yang diwarisi, dengan mengambil kira pengaruh atribut subkelas;

had: operasi baharu dihadkan untuk melaksanakan hanya sebahagian daripada tindakan operasi yang diwarisi, menggunakan spesifik objek subkelas;

pengoptimuman: menggunakan spesifik objek subkelas membolehkan anda memudahkan dan mempercepatkan kaedah yang sepadan;

kemudahan.

Adalah dinasihatkan untuk mematuhi peraturan semantik pewarisan berikut:

semua operasi pertanyaan (operasi yang menggunakan nilai atribut tetapi tidak mengubahnya) mesti diwarisi oleh semua subkelas;

semua operasi yang mengubah nilai atribut mesti diwarisi dalam semua sambungannya;

semua operasi yang mengubah nilai atribut terhad atau atribut yang menentukan kebergantungan mesti menyekat dalam semua sambungannya;

operasi tidak seharusnya ditakrifkan semula secara asas; semua kaedah yang melaksanakan operasi yang sama mesti melakukan penukaran atribut yang serupa;

Operasi yang diwarisi boleh diperhalusi dengan menambahkan tindakan tambahan.

Dengan mengikuti peraturan ini, yang, malangnya, jarang disokong oleh bahasa pengaturcaraan berorientasikan objek, anda boleh menjadikan program yang anda bangunkan lebih mudah difahami, lebih mudah untuk diubah suai dan kurang terdedah kepada pelbagai ralat dan kesilapan.

Kelas abstrak tidak boleh mempunyai objek kerana ia tidak mentakrifkan operasi pada objek; objek mesti tergolong dalam subkelas konkrit kelas abstrak. Kelas abstrak digunakan untuk menentukan antara muka untuk operasi (kaedah yang melaksanakan operasi ini kemudiannya ditakrifkan dalam subkelas kelas abstrak). Kelas abstrak adalah mudah semasa fasa menganalisis keperluan sistem, kerana ia membolehkan kami mengenal pasti analogi dalam operasi yang kelihatan berbeza yang ditakrifkan dalam sistem yang dianalisis.

Pewarisan berbilang membolehkan kelas mempunyai lebih daripada satu superclass, mewarisi sifat (atribut dan operasi) semua superclassnya. Kelas yang mempunyai berbilang superclass dipanggil kelas kesatuan. Sifat kelas moyang yang muncul lebih daripada sekali dalam graf warisan diwarisi dalam satu salinan sahaja. Konflik antara definisi selari mewujudkan kekaburan yang mesti diselesaikan semasa pelaksanaan. Dalam praktiknya, kekaburan atau pemahaman yang lemah harus dielakkan walaupun bahasa pengaturcaraan tertentu yang dipilih untuk melaksanakan sistem menyediakan keupayaan untuk menyelesaikannya menggunakan keutamaan atau beberapa cara lain.

Dalam reka bentuk berorientasikan objek, kami berurusan dengan set objek yang saling berkaitan. Setiap objek boleh dianggap sebagai pembolehubah atau pemalar jenis struktur (dengan cara ini, kaedah yang diterangkan dalam objek dianggap sebagai alamat fungsi yang dibenarkan untuk digunakan pada objek ini). Oleh itu, satu set objek ialah satu set data yang saling berkaitan, i.e. sesuatu yang hampir sama dengan pangkalan data. Oleh itu, aplikasi konsep pangkalan data selalunya berguna dalam analisis berorientasikan objek dan reka bentuk berorientasikan objek sistem perisian aplikasi.

Metadata ialah data yang menerangkan data lain. Sebagai contoh, takrif kelas ialah metadata, kerana kelas itu menerangkan data lain - objek kelas ini. Model ialah metadata kerana ia menerangkan objek yang dimodelkan. Satu lagi contoh metadata ialah kelas abstrak.

Pelakon ialah peranan yang dimainkan oleh entiti yang berinteraksi secara langsung dengan sistem.

Pelakon mentakrifkan peranan yang dimainkan oleh sesetengah entiti luaran apabila berinteraksi secara langsung dengan sistem tertentu. Ia mungkin mewakili peranan pengguna atau peranan yang dilakukan oleh sistem atau perkakasan lain yang menyentuh sempadan sistem.

Saya sangat menyukai huraian konsep "pelakon" dalam karya "UML 2 dan Proses Bersepadu" oleh Jim Arlow dan Isle Neustadt: "Untuk memahami pelakon, adalah penting untuk memahami konsep peranan. Peranan boleh dianggap sebagai topi yang dipakai dalam situasi tertentu." (halaman 92).

Apabila konsep asas diketahui, kita boleh mempertimbangkan untuk membina model itu sendiri

  1. Membina model objek
    1. Menentukan kelas

Analisis keperluan luaran untuk sistem aplikasi yang direka bentuk membolehkan kami menentukan objek dan kelas objek yang berkaitan dengan masalah aplikasi yang mesti diselesaikan oleh sistem ini. Anda perlu bermula dengan mengenal pasti kelas yang mungkin daripada pernyataan bertulis masalah yang digunakan (spesifikasi teknikal dan dokumentasi lain yang disediakan oleh pelanggan). Ini adalah peringkat pembangunan yang sangat sukar dan bertanggungjawab, kerana nasib masa depan projek itu sebahagian besarnya bergantung padanya.

Apabila mengenal pasti kelas yang mungkin, anda harus cuba mengenal pasti seberapa banyak kelas yang mungkin, menulis nama setiap kelas yang terlintas di fikiran. Khususnya, setiap kata nama yang terdapat dalam pernyataan awal masalah boleh mempunyai kelas yang sepadan. Oleh itu, apabila mengenal pasti kelas yang mungkin, setiap kata nama tersebut biasanya dikaitkan dengan kelas yang mungkin.

kelas berlebihan: jika dua atau lebih kelas menyatakan maklumat yang sama, hanya satu daripadanya harus dikekalkan;

kelas yang tidak relevan (tidak berkaitan langsung dengan masalah): untuk setiap nama kelas yang mungkin, ia dinilai betapa perlunya dalam sistem masa depan (seringkali sangat sukar untuk menilai ini); kelas yang tidak berkaitan dikecualikan;

kelas yang ditakrifkan secara samar-samar (dari sudut masalah yang sedang dipertimbangkan);

atribut: beberapa kata nama lebih sesuai dengan atribut daripada kelas; kata nama sedemikian, sebagai peraturan, menerangkan sifat objek (contohnya, nama, umur, berat, alamat, dll.);

operasi: sesetengah kata nama lebih cenderung menjadi nama operasi daripada kelas (contohnya, panggilan_telefon tidak mungkin bermaksud mana-mana kelas);

peranan: beberapa kata nama mentakrifkan nama peranan dalam model objek (contohnya, pemilik, pemandu, bos, pekerja; semua nama ini dikaitkan dengan peranan dalam pelbagai kebergantungan objek kelas orang);

pembinaan pelaksanaan: nama yang lebih dikaitkan dengan pengaturcaraan dan perkakasan komputer tidak boleh dibandingkan dengan kelas pada peringkat ini, kerana ia tidak mencerminkan ciri sistem aplikasi yang direka bentuk; contoh nama sedemikian: subrutin, proses, algoritma, gangguan, dsb.

Selepas menghapuskan nama semua kelas yang mungkin tidak perlu (berlebihan), senarai awal kelas yang membentuk sistem yang direka bentuk akan diperolehi.

    1. Menyediakan Kamus Data

Perkataan individu mempunyai terlalu banyak tafsiran. Oleh itu, adalah perlu pada awal reka bentuk untuk menyediakan kamus data yang mengandungi takrifan yang jelas dan jelas bagi semua objek (kelas), atribut, operasi, peranan dan entiti lain yang dipertimbangkan dalam projek. Tanpa kamus sedemikian, membincangkan projek dengan rakan pembangun dan pelanggan sistem adalah tidak bermakna, kerana semua orang boleh mentafsir istilah yang dibincangkan dengan cara mereka sendiri.

2.3. Menentukan kebergantungan

Pada peringkat seterusnya membina model objek, kebergantungan antara kelas ditentukan. Pertama sekali, atribut yang merupakan pautan eksplisit ke kelas lain dikecualikan daripada kelas; atribut tersebut digantikan dengan kebergantungan. Maksud penggantian ini ialah kebergantungan mewakili abstraksi pada tahap yang sama dengan kelas, dan oleh itu tidak mempunyai kesan langsung ke atas pelaksanaan masa hadapan (rujukan kepada kelas hanyalah satu cara untuk melaksanakan kebergantungan).

Sama seperti nama kelas yang mungkin diperoleh daripada kata nama yang terdapat dalam pernyataan awal masalah aplikasi, nama kemungkinan kebergantungan boleh diperoleh daripada kata kerja atau frasa kata kerja yang terdapat dalam dokumen yang ditentukan. Beginilah cara mereka biasanya menerangkan: kedudukan fizikal (mengikut_di belakang, adalah_bahagian, terdapat_terdiri), tindakan terarah (membawa_kepada_pergerakan), komunikasi (bercakap_kepada), kepunyaan (mempunyai, adalah_bahagian), dsb.

Anda kemudiannya harus mengalih keluar kebergantungan yang tidak perlu atau salah menggunakan kriteria berikut:

kebergantungan antara kelas yang dikecualikan mesti dihapuskan, atau dirumuskan semula dari segi kelas yang tinggal;

Kebergantungan yang tidak relevan dan berkaitan pelaksanaan harus dihapuskan;

tindakan: pergantungan harus menerangkan sifat struktur domain aplikasi, dan bukan peristiwa tidak penting;

kebergantungan trenari: kebanyakan kebergantungan antara tiga atau lebih kelas boleh diuraikan kepada beberapa kebergantungan binari, menggunakan kelayakan jika perlu; dalam beberapa kes (sangat jarang) penguraian sedemikian tidak boleh dilakukan; sebagai contoh, pergantungan trenari "Profesor sedang mengajar kursus di bilik 628" tidak boleh diuraikan menjadi binari tanpa kehilangan maklumat;

kebergantungan terbitan: adalah perlu untuk mengecualikan kebergantungan yang boleh dinyatakan melalui kebergantungan lain, kerana kebergantungan itu berlebihan; apabila mengecualikan kebergantungan berlebihan (berasal), anda perlu berhati-hati, kerana tidak semua kebergantungan pendua antara kelas adalah berlebihan; dalam sesetengah kes, kebergantungan lain membenarkan kami untuk mewujudkan hanya kewujudan pergantungan terbitan lain, tetapi tidak membenarkan kami mewujudkan kepelbagaian pergantungan ini.

Setelah mengalih keluar kebergantungan berlebihan, anda perlu menjelaskan semantik kebergantungan yang tinggal seperti berikut:

kebergantungan yang dinamakan secara salah: ia harus dinamakan semula supaya maknanya menjadi jelas;

nama peranan: anda perlu menambah nama peranan jika perlu; nama peranan menerangkan peranan yang dimainkan oleh kelas yang sepadan dalam kebergantungan tertentu dari sudut pandangan kelas lain yang mengambil bahagian dalam kebergantungan itu; jika nama peranan jelas daripada nama kelas, ia boleh ditinggalkan;

kelayakan: dengan menambah kelayakan jika perlu, kami memperkenalkan elemen konteks, yang membolehkan kami mencapai pengenalan objek yang jelas; kelayakan juga memungkinkan untuk memudahkan beberapa kebergantungan dengan mengurangkan kepelbagaiannya;

multiplicity: adalah perlu untuk menambah sebutan untuk multiplicity of dependencies; Perlu diingat bahawa kepelbagaian kebergantungan mungkin berubah dalam proses analisis lanjut keperluan sistem;

kebergantungan yang tidak dikira mesti dikenal pasti dan ditambah pada model.

2.4. Penapisan atribut

Pada peringkat seterusnya, sistem atribut dijelaskan: atribut kelas diselaraskan, atribut baharu diperkenalkan, jika perlu. Atribut menyatakan sifat objek kelas berkenaan, atau tentukan keadaan semasanya.

Atribut biasanya sepadan dengan kata nama; contohnya, car_color (objek property), cursor_position (objek state). Atribut, sebagai peraturan, mempunyai sedikit kesan ke atas struktur model objek.

Bersama-sama dengan atribut objek, ia juga perlu memasukkan atribut kebergantungan antara kelas (hubungan antara objek).

Apabila menentukan atribut, ia dipandu oleh kriteria berikut:

Menggantikan atribut dengan objek. Jika kehadiran sesetengah entiti lebih penting daripada nilainya, maka ia adalah objek; jika nilai itu lebih penting, maka ia adalah atribut: contohnya, bos ialah objek (tidak kira siapa bosnya , perkara utama ialah seseorang itu), gaji adalah sifat ( kepentingannya sangat penting); bandar sentiasa menjadi objek, walaupun dalam beberapa kes ia mungkin kelihatan sebagai atribut (contohnya, bandar sebagai sebahagian daripada alamat syarikat); dalam kes di mana anda mahu bandar menjadi atribut, anda harus menentukan kebergantungan (katakan, terletak) antara firma kelas dan bandar.

Kelayakan. Jika makna atribut bergantung pada konteks tertentu, ia harus dijadikan sebagai kelayakan.

Nama. Nama biasanya lebih baik dipadankan oleh kelayakan daripada oleh atribut objek; dalam semua kes di mana nama membenarkan seseorang memilih daripada objek set tertentu, ia harus dijadikan kelayakan.

Pengecam. Pengecam objek dikaitkan dengan pelaksanaannya. Pada peringkat awal reka bentuk mereka tidak boleh dianggap sebagai atribut.

Atribut sambungan. Jika sesetengah harta tidak mencirikan objek itu sendiri, tetapi hubungannya dengan objek lain (objek), maka ini adalah atribut sambungan, dan bukan atribut objek.

Nilai dalaman. Atribut yang mentakrifkan hanya keadaan dalaman objek, tidak kelihatan di luar objek, harus dikecualikan daripada pertimbangan.

Butiran yang tidak penting. Adalah disyorkan untuk meninggalkan atribut yang tidak menjejaskan pelaksanaan kebanyakan operasi.

2.5. Pengasingan subsistem

Sistem aplikasi ialah satu set objek yang saling bergantung. Setiap objek dicirikan oleh satu set atribut, nilai yang menentukan keadaan objek, dan satu set operasi yang boleh digunakan pada objek ini. Apabila membangunkan sistem aplikasi, adalah mudah untuk menganggap bahawa semua atribut objek adalah peribadi (iaitu, ia tidak boleh diakses di luar objek, dan untuk mengetahui nilai atribut objek lain dalam objek, atau mengubahnya, anda mesti menggunakan salah satu daripada operasi awam objek ini , jika, sudah tentu, operasi sedemikian ditakrifkan). Operasi objek boleh sama ada awam atau peribadi.

Oleh itu, setiap objek mempunyai antara muka yang ditetapkan dengan ketat, i.e. satu set operasi awam yang boleh digunakan pada objek ini. Semua objek kelas yang sama mempunyai antara muka yang sama. Antara muka kelas (dan, akibatnya, setiap objek kelas ini) ditentukan oleh senarai tandatangan operasi terbuka (awam)nya (dan kaedah yang melaksanakannya); tandatangan operasi tertutup tidak termasuk dalam antara muka objek kelas yang sepadan.


dan lain-lain.................