Može li legura zamijeniti ol?

Hej tamo! Ja sam dobavljač legure i u posljednje vrijeme dobivam puno pitanja o tome mogu li legura zamijeniti OCL. Dakle, mislio sam da ću sjesti i napisati ovaj blog da podijelim svoje misli o tom pitanju.

Prvo, razgovarajmo malo o tome što su legura i OCL. Legura je mješavina dva ili više metala ili metala i ne-metala, koji često ima poboljšana svojstva u odnosu na pojedine komponente. Koristi se u širokom rasponu industrija, od automobilskog do zrakoplovstva, zbog njegove čvrstoće, izdržljivosti i drugih korisnih karakteristika. Možete provjeriti neke od naših velikih legura proizvoda poputŽeljezni silikon,Glodanje magnezijuma legura, iRazni ferromangan.

S druge strane, OCL ili Otvoreni jezik ograničenja, formalni je jezik koji se koristi za određivanje i analizu statičke strukture softverskih sistema. Uglavnom se koristi u softverskom inženjerskom polju za opis i provjeru svojstava modela.

Sada, mogu li legurati ocl? Pa, ovisi o kontekstu. U svijetu softverskog inženjeringa OCL je neko vrijeme bio okolo i ima dobro - uspostavljenu korisničku bazu. Dizajniran je posebno za rad sa modelima UML (jedinstveni modeliranje). Ako ste duboko u UML i trebate precizno definirati ograničenja na svojim softverskim modelima, OCL je Idi - to alat. Ima sintaksu koja je usko povezana s UML-om, što softverski inženjeri olakšava da ga integriraju u svoje postojeće radne tokove.

Ali evo gde ulazi legura. Legura je više općenito - namjenski jezik modeliranja. Izvrsno je za istraživanje i provjeru dizajna sustava u širokom rasponu domena, a ne samo softvera. Možete koristiti leguru za modeliranje svega iz mehaničkih sistema na društvene mreže. Prednost legure je njegova jednostavnost i fleksibilnost. Sintaksa je relativno jednostavna za učenje, a ima moćan analizator koji može pronaći brojač - primjere na tvrdnje vašeg modela.

Pogledajmo neke od ključnih razlika između njih dvoje.

Ekspresivnost

OCL je vrlo dobar u izražavanju složenih ograničenja na UML modelima. Ima bogat set operatora i konstrukcije koji vam omogućuju definiranje stvari poput ograničenja kardinalnosti, navigacijskih staza i nasljednih odnosa na vrlo precizan način. Na primjer, ako imate dijagram UML klase biblioteke, možete koristiti OCL da biste odredili da zajmoprimac može imati u većini tri knjige u isto vrijeme.

Legura, međutim, ima drugačiji pristup. Koristi prvo - relelaraju relacijsku logiku. To znači da možete modelirati odnose između objekata na apstraktniji način. Možete brzo stvoriti model sistema i istraživati različite scenarije. Ali kada je u pitanju izražavanje vrlo detaljnog UML-a - specifična ograničenja, legura možda ne bi mogla biti izravna kao OCL.

Jednostavnost upotrebe

Ako ste novi u formalnom modeliranju, legura je vjerovatno lakše pokupiti. Sintaksa je intuitivnija, a krivulja učenja je relativno nježna. Možete započeti kreiranje jednostavnih modela u kratkom vremenu. Na primjer, stvaranje osnovnog modela porodičnog stabla u leguru može se obaviti sa samo nekoliko redaka koda.

OCL, s druge strane, ima složeniju sintaksu, posebno za one koji nisu upoznati sa formalnom logikom. Zahtijeva dobro razumijevanje UML koncepata i kako mapirati te koncepte u OCL izraze. Dakle, za početnike može biti malo izazov.

Mogućnosti analize

Jedna od prednosti legure je izgrađena - u analizu. Može automatski pronaći brojač - primjere na tvrdnje vašeg modela. Ovo je nevjerovatno korisno za uklanjanje pogrešaka vaših modela. Ako imate hipotezu o tome kako bi se vaš sistem trebao ponašati, analizator legura može vam brzo reći postoji li slučajevi u kojima vaša hipoteza nije u redu.

OCL, s druge strane, obično se oslanja na vanjske alate za analizu. Iako postoje neki dobri alati za analizu dostupni za OCL, možda nisu toliko integrirani ili kao jednostavni za upotrebu kao legurni analizator.

U nekim slučajevima legura može biti sjajna alternativa OCL-u. Na primjer, ako radite na projektu gdje trebate brzo prototirati sistem i istražiti različite mogućnosti dizajna, legura vam može uštedjeti puno vremena. Možete kreirati jednostavan model, izmijeniti ga u muhu i koristiti analizator da provjerite da li su vaše promjene važeće.

Ali ako ste u velikom - Projekt razvoja softvera - razvojem softvera koji se u velikoj mjeri oslanja na UML i ima tim iskusnih korisnika OCL-a, možda neće biti praktično prebaciti se na legure. Troškovi prekvalifikacije tima i migracija postojećih modela mogu biti prilično visoki.

U industriji izvan softverskog inženjerstva, legura ima jasan ivicu. Budući da je OCL tako čvrsto spojen sa UML i softverskim modelima, on ima ograničenu primjenjivost u drugim poljima. Legura, sa općim - namenskim prirodom, može se koristiti za model i analiza svih vrsta sistema. Na primjer, u prerađivačkoj industriji možete koristiti legure za modeliranje proizvodnog procesa i pronaći potencijalne uska grla.

Dakle, u zaključku, legura ne može u potpunosti zamijeniti OCL, posebno u kontekstu softverskog inženjeringa, gdje OCL ima snažno uporište. Ali to može biti vrijedan dodatak vašem alat, posebno ako tražite fleksibilniji i jednostavniji - za - koristite modeliranje jezika.

55-Ferro-Silicon-for-alloy-04image001

Ako ste zainteresirani za istraživanje legure dalje, mi, kao dobavljač legura možemo vam ponuditi širok spektar resursa. Bez obzira da li ste softverski inženjer koji želi isprobati nešto novo ili inženjer u drugom polju koji želi koristiti leguru za modeliranje sistema, možemo vam pružiti podršku koja vam je potrebna. Ako razmišljate o kupovini legura - srodnih proizvoda ili želite razgovarati o tome kako se legura može uklopiti u vaše projekte, ne ustručavajte se da se obratite za raspravu o nabavci. Ovdje smo da vam pomognemo da napravite najviše alujnih sposobnosti.

Reference

  • Jackson, Daniel. "Legura: lagana notacija modeliranja objekata." ACM transakcije na softverskom inženjerstvu i metodologiji (TOSEM) 11, br. 2 (2002): 256 - 290.
  • Topliji, Jos i Anneke Kleppe. "Jezik ograničenja objekta: precizno modeliranje sa UML-om." Addison - Wesley, 1999.

Pošaljite upit