Explorați Cărți electronice
Categorii
Explorați Cărți audio
Categorii
Explorați Reviste
Categorii
Explorați Documente
Categorii
LUCRARE DE LICENŢĂ
Coordonator Absolvent
Prof. Dr. Ing. Anca Daniela Ioniță Andra Ștefana Solomon
București,2016
Cuprins
1. INTRODUCERE ..................................................................................................................... 4
2
5.2 DEFINIREA UNEI ONTOLOGII A DOMENIULUI INGINERIEI SISTEMELOR DE PROGRAME CARE SA RESPECTE
CLASIFICĂRILE SWEBOK.................................................................................................................... 39
BIBLIOGRAFIE: ....................................................................................................................... 59
ANEXE ................................................................................................................................... 61
3
1. Introducere
Prin dezvoltarea ideii că utilizatorul uman trebuie să își controleze propriile date și
realizându-se că inteligența colectivă poate fi valorificată, mediile wiki au devenit un
instrument util de colaborare la scară largă.
4
conceptului de wiki semantic, asigurând baza pentru înțelegerea aplicației prezentate în
această lucrare.
În cel de-al treilea capitol este prezentată o scurtă descriere a domeniului și a temei,
urmând ca în capitolul patru să fie descrise tehnologiile folosite la implementare.
5
2.Aspecte teoretice
World Wide Web-ul (WWW), numit mai scurt și web, reprezintă un set de
concepte și relațiile dintre ele deținute de un spațiu informatic, în cadrul căruia site-urile și
documentele sunt identificate prin URL-uri (Uniform Resource Locator) și sunt
interconectate prin intermediul hiperlink-urilor, putând fi accesate prin intermediul
Internetului.
Web-ul a fost inventat în anul 1989 de către Tim Berners-Lee la CERN (Centrul
European de Cercetări Nucleare), venind ca o rezolvare la problemele de comunicare
întâmpinate de către echipele de cercetători. Sistemul implementat avea nevoie de un
program cu funcționalitatea unei porți de acces, care să mapeze structura de informații
existentă într-un model de tip hipertext, la care să ofere acces limitat; acesta este de fapt un
server hipertext care oferă o vizualizare a bazei de date existente.
Fig. 2.1 Poarta de acces permite ca datele existente să fie văzute într-o formă hipertext
6
Web-ul are tendința de a evolua, devenind un mediu colaborativ. Datorită cantității
imense de date, a devenit din ce în ce mai greu să găsim informații cu adevărat utile; cu cât
acest volum de informații crește, cu atât găsirea, organizarea sau accesarea datelor în timp
util devine mai dificilă. Aceste impedimente au dus la apariția unei extensii a web-ului -
web-ul semantic.
7
Conform [4], web-ul semantic oferă o arhitectură simplă, care permite ca datele să
fie partajate și reutilizate în cadrul aplicațiilor și întreprinderilor dincolo de restricțiile
impuse în cadrul comunității.
În figura 2.2 este prezentată arhitectura Semantic Web cu funcțiile asociate; aceste
funcții pot fi rezumate după cum urmează:
Standardele URI (Uniform Resource Identifier) și IRI (Internationalized Resource
Identifier) utilizate pentru identificarea resursei prin intermediul unui șir de
caractere.
Standardul XML (Extensible Markup Language) este folosit pentru descrierea și
transferul informațiilor pe web, deși nu asociază semantică înțelesului cuvintelor.
Limbajul RDF (Resource Description Framework), care a apărut din necesitatea de
a asocia un anumit nivel de semantică schemelor XML, este utilizat la descrierea
resurselor, utilizând triplete de forma subiect-predicat-obiect; RDF este standardul
fundamental al web-ului semantic.
RDFS (RDF Schema) este o extensie a RDF și este utilizat pentru descrierea sau
organizarea proprietăților și a claselor într-o ierarhie
Limbajul OWL (Web Ontology Language) este o extensie a RDF(S) care permite
în plus definirea de constrângeri asupra proprietăților, cum ar fi: relații între clase,
cardinalitate, simetrie.
SPARQL (Simple Protocol and RDF Query Language) este un protocol și un
limbaj utilizat pentru interogarea resurselor semantice, asemănător cu SQL-ul.
RIF (Rule Interchange Format) este un limbaj pentru reprezentarea
regulilor/instrucțiunilor web care pot fi realizate de către echipamentul de calcul.
8
2.1.2 Legături semantice
2.1.3 Ontologii
9
împreună cu un set de instanțe ale claselor, constituie o bază de cunoștințe; în realitate este
o linie fină între sfârșitul ontologiei și baza de cunoștințe.
10
Există o multitudine de limbaje si editoare asociate pentru creare de ontologii; cel
mai cunoscut este editorul Protégé, care este gratuit, conține o multitudine de exemple, este
dezvoltat de Universitatea Stanford în Java și suportă format OWL (Web Ontology
Language).
2.2 Wiki
Ward Cunningham este cel care a dezvoltat primul software pentru crearea de wiki-
uri (WikiWikiWeb) în 1995; acesta a descris, inițial, în [7] wiki-ul ca fiind cea mai simplă
bază de date editabilă online. Termenul „wiki” provine din limba hawaiiană și înseamnă
„repede”.
Așa cum este prezentat în [8], termenul de wiki mai poate fi definit ca o suită de
pagini web interconectate, care poate fi expandată sau un sistem de tip hipertext folosit
pentru stocarea și modificarea informațiilor.
Operațiile care pot fi efectuate asupra unui sistem de tip wiki sunt clasificate în [9]
după cum urmează :
Procedee de proiectare : se referă la schimbul de informații, în care utilizatorul
contribuie la adăugarea de noi cunoștințe.
11
Procedee de denumire : se referă la contribuția utilizatorilor privind adăugarea de
etichete asupra conținutului și a paginilor.
Procedee de implementare : descrie cum utilizatorii lucrează împreună la
dezvoltarea colecțiilor de informații.
Procedee de identificare : se referă la descoperirea, de către utilizatori, a unor
obiecte, tendințe și resurse ale altor dezvoltatori.
Într-un wiki, utilizatorul are posibilitatea de a interacționa cu informațiile
asumându-și rolul de a aplica toate aceste procedee, consolidând astfel funcția de creare
colectivă.
Cele mai cunoscute software-uri folosite pentru crearea unui wiki sunt MediaWiki
și Tiki Wiki.
12
modelarea textului prin intermediul hiperlink-urilor, pe când cele semantice oferă
posibilitatea de identificare a informațiilor și a relațiilor din/dintre pagini, în moduri care
pot fi exportate și interogate semantic într-o bază de date, conform [10].
13
Fig. 2.8 Exemplu de diagramă UML
Wiki-urile semantice pot varia prin gradul lor de formalizare. Semantica poate fi
inclusă în software-ul wiki, sau poate fi introdusă prin intermediul limbajului de marcare.
Reprezentarea semanticii poate fi realizată prin intermediul limbajului wiki, standarde
precum RDF sau OWL, sau anumite baze de date care preiau semantica din datele brute.
14
Organizații/Întreprinderi : companiile pot utiliza wiki-uri pentru dezvoltarea de
baze de date informaționale, în care fiecare angajat poate adăuga informații
interesante sau anunțuri.
Ședințe : wiki-urile pot fi folosite pentru gestionarea întâlnirilor. Aceste întâlniri au
o agendă, care poate fi modificată de cel care o conduce. Pe wiki poate fi scrisă
minuta întâlnirii, pentru a putea fi corectată imediat și pentru a putea fi consultată
ulterior.
Sarcini și cursuri școlare : cursurile, cerințele și temele pot fi postate pe wiki pentru
un acces ușor și rapid, lucru care facilitează atât efortul cadrelor didactice, cât și al
studenților.
Enciclopedii : wiki-urile pot fi utilizate pentru ca utilizatorii din toată lumea să
poată contribui cu diverse informații pentru a crea o enciclopedie pe baza unui
domeniu bine stabilit.
2.2.2.1 Wikipedia
Cel mai cunoscut wiki semantic este fără îndoială Wikipedia, un proiect
enciclopedic inițiat de către Jimmy Wales și Larry Sanger în 2001, conform [11], care are
un conținut de informații mai mare decât orice altă enciclopedie tipărită sau electronică. În
prezent, aceasta este disponibilă în aproximativ toate limbile lumii, și are peste patruzeci
de milioane de articole din diferite domenii.. Principiul de bază este acela că oricine poate
contribui cu informații, astfel încât editorii beneficiază la rândul lor de articole sau
informații introduse de alți utilizatori, cunoașterea oferită de un grup fiind mult mai vastă
decât cea a unui individ. Deși oricine poate modifica și adăuga conținut, administratorii
sistemului pot bloca utilizatorii care aduc informații greșite sau necorespunzătoare.
15
Fig. 2.9 Distribuția principalelor domenii de conținut [12]
Wikipedia în limba română are în prezent peste 370000 de articole, așa cum este
prezentat în [13], proiectul fiind inițiat în anul 2003 în urma succesului obținut de
Wikipedia în engleză, care a atins pragul de două milioane de articole.
2.2.2.2 WikiHow
WikiHow este de asemenea un sistem wiki semantic, fondat în 2005 de către Jack
Herrick și reprezintă o comunitate cu o bază de date expandabilă. Scopul acestui wiki este
de a crea cel mai important ghid din lume care să conțină tutoriale și instrucțiuni ajutătoare
pentru ca fiecare persoană din lume să învețe să facă orice își dorește [14].
16
Fig.2.10 WikiHow [15] Fig. 2.11 Scrierea unui articol în WikiHow
2.2.2.3 RecipesWikia
RecipesWikia este un wiki găzduit de Wikia; Wikia este de fapt un serviciu gratuit
de găzduire wiki care își sustrage veniturile din publicitate. Acesta găzduiește pe servere
Linux câteva sute de mii de wiki-uri care folosesc software-ul MediaWiki. Wikia a fost
fondată în anul 2004 de către Jimmy Wales și Angela Beesley Starling.
Wiki-urile găzduite de Wikia pot avea orice conținut, însă sunt populate în
principal de comunități pentru filme, cărți, jocuri și rețete datorită regulilor stricte care fac
imposibilă afișarea anumitor informații pe Wikipedia. Limbajul laic este de asemenea un
impediment în folosirea anumitor informații pe Wikipedia, iar multe dintre articole sunt
axate pe părerile personale ale membrilor, și nu pe fapte verificate.
17
Fig. 2.12 Recipes wikia [16]
18
3. Prezentarea domeniului de aplicabilitate și a
temei abordate
În ultimii ani, s-a manifestat un interes tot mai mare asupra introducerii în educație
a mediilor de învățare colaborative online, însă este destul de greu de estimat câte din
instituțiile de învățământ au îmbrățișat această abordare a studiului.
19
3.1.1 Utilizarea de ontologii în e-learning
În prezent, una dintre cele mai utilizate platforme online pentru cursuri este Moodle
(Modular Object-Oriented Dynamic Learning Environment), un sistem open-source de
management al învățării (LMS-Learning Management System), disponibil în mai multe
limbi. Moodle este o platformă de învățare (e-learning), dezvoltată de Martin Dougiamas
în anul 2002, cu scopul de a facilita crearea cursurilor online de către profesori, care să fie
bazate pe colaborare și interacțiune.
20
Platforma Moodle este scrisă în PHP (Hypertext Preprocessor) și poate fi rulată pe
platforme multiple, instalarea acesteia putând fi realizată pe un server web, sau utilizând o
bibliotecă de pachete software. Informațiile sunt stocate într-o singură bază de date. Unele
din caracteristicile platformei sunt : posibilitatea de înregistrare/autentificare, posibilitatea
de notare prin crearea unui catalog online, încărcarea temelor de curs și vizualizarea
ulterioară a acestora și crearea/susținerea testelor, în funcție de rolul pe care îl îndeplinește
utilizatorul.
Așa cum s-a menționat, sistemele de tip wiki se bazează pe schimbul de informații
și pe colaborarea dintre utilizatori. Prin utilizarea sistemelor de tip wiki în educație, elevii
au posibilitatea de a lucra în grupuri eterogene care sprijină în același timp învățarea
individuală. Cooperarea în procesul de învățare conduce la o interdependență pozitivă între
membrii grupului, dar încurajează și responsabilitatea individuală și interacțiunile directe
între colegi, potrivit [19]. Conform [20], echipele care se bazează pe un mediu colaborativ
ating niveluri mai ridicate de gândire și pot reține informațiile mai mult timp decât cei care
lucrează individual, așadar caracteristicile mediilor wiki le fac să fie favorabile pentru
mediile de învățare prin cooperare.
21
Fig. 3.2 Posibilitatea utilizării unui wiki în educație
În prezentarea unui curs, wiki-urile semantice aduc noi elemente care să ușureze
munca studenților și a profesorilor. Pe lângă avantajele introduse de wiki-urile statice,
acestea oferă posibilitatea de navigare mult mai facilă în cadrul cursurilor- legăturile
semantice fac posibilă corelarea imediată a informației din contextul actual cu
documente/pagini similare, învățate sau utilizate și în alte module de curs. De asemenea,
organizarea datelor sub formă de ontologii transformă înțelegerea acestora într-un proces
facil, datorită structurării sub formă de ierarhie. Astfel, în cazul în care în text este referit,
spre exemplu, un termen care face parte dintr-o anumită structură definită în altă pagină de
22
conținut, utilizatorul poate vedea tipul de legătură care există între cele două pagini și
poate decide dacă dorește să aprofundeze mai întâi structura/termenul întâlnit.
Prezenta lucrare descrie o aplicație web de tip wiki semantic pentru cursul de
Ingineria Sistemelor de Programe, în care a fost introdus ghidul pentru cadrul de cunoștințe
a ingineriei sistemelor de programe , denumit pe scurt SWEBOK (Software Engineering
Body of Knowledge).
23
literatura de specialitate care vine în ajutorul acestei discipline. Acest ghid a fost creat prin
cooperarea mai multor profesioniști în domeniu și a membrilor industriei, și a fost publicat
de IEEE (Institute of Electrical and Electronics Engineers).
Acest ghid prezintă 15 secțiuni de cunoaștere, așa cum este prezentat în [24] :
Cerințele Software : se axează pe descoperirea, analiza, specificarea și validarea
cerințelor impuse de către stakeholderi pe întregul ciclu de viață al produsului
software.
Proiectarea Software-ului : este definită atât ca procesul de definire al arhitecturii,
componentelor interfețelor și caracteristicilor sistemului în conformitate cu
cerințele impuse, dar și ca rezultatul acestui proces.
Implementarea Software-ului : se referă la crearea detaliată a software-ului, prin
combinarea codării, verificării, testării și depanării.
Testarea Software-ului : constă în verificarea dinamică a produsului software din
care să rezulte că acesta asigură comportamentele dorite și prevăzute pe un număr
finit de cazuri de test, alese în mod corespunzător din domeniul țintă.
Mentenanța Software-ului : este o parte integrată în ciclul de viață al produsului și
se definește ca fiind totalitatea de activități necesare pentru a întreține software-ul,
efectuate atât înainte, cât și după livrare.
Managementul Configurației Software : este un proces care face parte din ciclul de
viață al produsului, aducând beneficii management-ului de proiect, activităților de
dezvoltare și implementare, activităților de întreținere, precum și
clienților/utilizatorilor produsului final, având rolul de a urmări și controla
modificările survenite software-ului.
Managementul Ingineriei Software : se poate defini ca fiind o aplicație a
activităților manageriale – planificare, coordonare, măsurare, monitorizare,
controlare și raport- care are rolul de a se asigura că produsul și/sau serviciul de
inginerie software sunt livrate în mod eficient, și în beneficiul părților implicate.
Procesul de Inginerie Software : constă în împărțirea dezvoltării în etape și
activități care transformă intrările (de obicei cerințele) în ieșiri, prin consumarea
resurselor puse la dispoziție.
Modele și Metode în Ingineria Software : constă în prezentarea modelelor și
metodelor prin intermediul cărora produsul capătă o abordare matematică,
24
sistemică, deci o mai bună structură care să ajute la crearea arhitecturii, a
specificațiilor și care să fie axată pe rezolvarea problemelor.
Calitatea Software-ului : se referă la capabilitatea produsului de a îndeplini
necesitățile inițiale, prin prisma unor condiții impuse.
Profesionalismul în Ingineria Software : se preocupă de cunoștințele, abilitățile,
calificările și atitudinea pe care inginerii software trebuie să le aibă, pentru a
practica ingineria într-o manieră profesională și etică.
Economia în Ingineria Software : se referă la luarea deciziilor în contextul
afacerilor.
Fundamentele Tehnicilor de Calcul : cuprinde informații despre dezvoltarea și
mediul operațional în care software-ul evoluează și este executat; pentru că un
software nu poate rula fără un echipament de calcul, sunt necesare aceste noțiuni
despre calculatoare.
Fundamente Matematice : prezintă noțiuni logice care le sunt necesare inginerilor
software pentru a înțelege algoritmii.
Fundamentele Ingineriei : se axează pe prezentarea noțiunilor, abilităților și
tehnicilor pe care trebuie să le cunoască un inginer.
25
4.Tehnologii folosite
4.1 XAMPP
XAMPP este o distribuție simplă care facilitează dezvoltarea de servere web locale
utilizate pentru testare și implementare. Acesta conține toate uneltele necesare pentru
configurarea unui server web – aplicație server (Apache), bază de date (MariaDB) și limbaj
de scripting (PHP) și permite instalarea pe sisteme de operare diferite. Deoarece
26
majoritatea servere-lor web actuale folosesc aceleași componente, tranziția de la un server
de test local la un server real este extrem de facilă.
Apache HTTP Server este cel mai utilizat server web în prezent, depășind pragul de
o sută de miliarde de site-uri. Acesta este gratuit, open-source a fost dezvoltat în limbajul
de programare C de către Robert McCool și a fost lansat official în anul 1995. De-a lungul
27
timpului, la dezvoltarea codului și a documentației au contribuit sute de utilizatori. Acesta
suportă diverse module care îi extind funcționalitatea.
4.1.2 MariaDB
4.1.3 PHP
28
de comandă (CLI-Command-Line Interface) și poate fi folosit pentru a dezvolta aplicații
grafice de sine stătătoare.
Tiki Wiki, pe scurt Tiki, este un CMS gratuit, open-source, disponibil în mai multe
limbi, utilizat pentru crearea de aplicații Wiki. Acesta este scris în PHP, și a fost lansat în
anul 2002 de către Luis Argerich, Eduardo Polidor și Garland Foster. În prezent, este în
curs de dezvoltare activă de către o comunitate de peste trei sute de dezvoltatori și
translatori, fiind una dintre cele mai mari echipe open-source din lume. Tiki este un
acronim pentru Tightly Integrated Knowledge Infrastructure.
Tiki include toate caracteristicile de bază comune celor mai multe CMS-uri, cum ar
fi capabilitatea de înregistrare și menținere de conturi individuale pentru utilizatori într-un
sistem cu privilegii și permisiuni flexibile, personalizarea paginilor, crearea de meniuri și
administrarea sistemului de către unul sau mai mulți utilizatori autorizați. Toate sarcinile
de administrare a sistemului sunt realizate printr-o interfață cu utilizatorul bazată pe
browser-ul web.
29
Pornind de la cele enunțate în [26], cele mai importante patru categorii de
componente ale Tiki sunt :
Instrumente de creare și management a conținutului;
Instrumente de organizare a conținutului și unelte de navigare;
Instrumente de comunicare;
Instrumente de administrare.
Prin intermediul acestor unelte se permite crearea, gestionarea și partajarea conținutului
de către utilizatori și administratori.
La deschiderea unei pagini wiki, autorii pot utiliza pentru editare sintaxa wiki, un
set de coduri de formatare, proiectate pentru a maximiza ușurința utilizării, iar în cazul în
care au permisiunile necesare, se pot folosi și de sintaxa HTML (HyperText Markup
Language). De asemenea, utilizatorii autorizați pot introduce în pagină fișiere de orice tip.
Se mai pot include legături interne (care duc către o pagină a wiki-ului) sau legături
externe (care duc către o pagină web externă). Paginile create sunt structurate și ușor
accesibile, existând chiar un istoric complet de editare al paginilor, care poate să compare
două versiuni succesive ale aceleiași pagini. Dacă nu se dorește ca modificările aduse de
utilizatorii cu drepturi de editare să fie aplicate instantaneu, administratorii pot verifica
noul conținut înainte de a-și da acceptul asupra editării. Administratorii pot activa opțiunea
de a primi un e-mail ori de câte ori se realizează o modificare de conținut.
La afișarea unei pagini salvate, cei care au permisiunile necesare pot salva pagina
pe sistemele lor locale, pot exporta pagina în format PDF (Portable Document Format), sau
o pot salva în format txt.
30
utilizatorul. Prin intermediul acestuia, în timpul editării, conținutul paginii curente apare
într-o formă similară cu aspectul final.
Cele mai populare caracteristici ale unui Tiki, pe lângă configurarea efectivă a
sistemului de tip wiki, sunt :
Blog-ul – se referă la o colecție de postări înrudite din punct de vedere al tematicii.
Într-un tiki, există posibilitatea creării unui număr nelimitat de blog-uri, inclusiv pe
prima pagină a tiki-ului. Blog-urile pot fi accesate fie prin adăugarea într-un meniu,
fie prin crearea de legături către ele. Printre opțiunile de configurare a acestora
amintim posibilitatea de selectare a numărului de postări afișate și ordinea apariției
lor (în mod implicit în ordine inversă cronologic), posibilitatea de a permite sau nu
altor utilizatori postarea pe blog, posibilitatea de a permite căutările avansate și
comentariile.
Forum-ul – se referă la o colecție de teme de discuție despre un anumit subiect,
fiecare temă conținând o serie de mesaje și răspunsuri. Un forum poate fi
monitorizat în aceeași manieră cu paginile wiki-ului: prin sincronizare cu e-mail-ul.
Calendar și Evenimente – se pot urmări atât evenimente, cât și actualizări ale site-
ului tiki. Tiki oferă posibilitatea de personalizare a calendarului în funcție de an,
semestru, lună, săptămână și zi, și permite apariția unor ferestre pop-up pentru
notificări cu privire la evenimentele următoare.
Management-ul grupurilor de utilizatori – există posibilitatea de creare a unor
grupuri cu diferite permisiuni (tiki oferă peste două sute de tipuri de permisiuni).
Un grup poate moșteni permisiunile altui/altor grupuri, în funcție de nivelul de
securitate dorit. În funcție de grupul de care aparțin, utilizatorii pot avea diferite
teme pentru wiki, sau pot primi e-mail-uri de grup.
Sondajele și chestionarele – cu ajutorul Tiki se pot construi de la sondaje simple
pentru vot, până la chestionare complexe cu opțiuni diferite de răspuns. Cu ajutorul
acestora se pot crea teste educaționale, administratorii putând urmări rezultatele
fiecărui utilizator. Testele pot avea o scală de notare și se poate introduce un timp
limită pentru rezolvarea lor.
31
Caracteristicile utilizate în cadrul acestei lucrări sunt :
- Unelte de conținut:
Galeria de fișiere – întrebuințată la stocarea de imagini, documente sau orice alt tip
de fișiere. Sistemul recunoaște automat tipurile populare de fișiere. Fișierele pot fi
descărcate de către utilizatorii care au acest drept, iar descărcările pot fi
monitorizate de către administratori. Înainte de adăugarea unui fișier într-o pagină,
acesta trebuie adăugat în galeria de fișiere.
Pagini ale utilizatorilor – fiecare utilizator al wiki-ului poate avea o pagină în care
poate adăuga informații personale, informații de contact, imagini.
Pagina de contact – oricine are acces la wiki poate contacta administratorul wiki-
ului, transmițându-i un mesaj pe care acesta îl va primi prin e-mail
- Unelte de navigabilitate:
Categorie – orice pagină poate aparține unei categorii; apartenența unei pagini la o
categorie poate fi definită la crearea sau la editarea paginii.
Meniu – pot exista diferite module listate într-un meniu; meniurile sunt vizibile
doar pentru utilizatorii autorizați.
Modul – termenul de „modul” este deseori confundat cu cel de caracteristică;
modulul este un container pentru conținut care poate fi poziționat oriunde în pagini,
iar caracteristicile reprezintă conținutul în sine.
Structură – creează o ierarhie structurată de pagini wiki, permițând parcurgerea
acestora în ordine.
Semantic – permite crearea de legături semantice în cadrul wiki-ului.
32
BackLinks – listează toate paginile care indică, prin intermediul unor legături, spre
pagina curentă.
Equation – permite introducerea sub formă de imagini a unor ecuații scrise în
LaTeX.
FancyList – permite introducerea de liste numerotate; poate fi utilizat doar dacă a
fost activat și plugin-ul List.
FancyTable – permite introducerea de tabele care pot fi sortate după rânduri sau
coloane, și ale căror intrări pot avea dimensiuni diferite.
Group – permite afișarea de conținut în funcție de permisiunile grupului de
utilizatori.
Img – permite introducerea de imagini în rând cu textul, imagini ce pot fi
redimensionate sau afișate parțial pe pagină, urmând ca la selectare să se deschidă
într-o fereastră de tip pop-up. Imaginile aparțin galeriei de imagini/fișiere și sunt
identificate după ID.
Mouseover – permite afișarea de conținut ascuns la trecerea cu mouse-ul deasupra
textului.
Relations – permite afișarea relațiilor unei pagini cu alte pagini.
TableOfContents – permite afișarea, într-o pagină aparținând unei structuri, a
cuprinsului paginii (doar sub-categoriile paginii curente).
toc, maketoc – permit generarea unui cuprins, fie de la începutul paginii (maketoc),
fie de la secțiunea curentă (toc).
- Unelte de administrare :
Permisiuni – administratorii pot atribui diferite drepturi utilizatorilor sau grupurilor
de utilizatori.
Controlul Temelor – utilizarea de teme și stiluri multiple în cadrul aceluiași wiki.
Administrarea utilizatorilor – administratorii pot adăuga, șterge sau bloca anumiți
utilizatori sau grupuri de utilizatori.
Grupuri – grupurile pot fi incluse la rândul lor în alte grupuri pentru moștenirea
permisiunilor.
33
4.3 MediaWiki
Spre deosebire de Tiki, acest software este împărțit în nucleu și extensii, deci un
utilizator ne-experimentat ar putea întâmpina dificultăți în instalarea extensiilor. La
actualizarea software-ului principal, cele mai multe extensii rămân neactualizare, creându-
se astfel o neconcordanță în funcționalitatea acestora ca un întreg. La ultima versiune de
Media Wiki, majoritatea extensiilor au devenit instabile, sau chiar nefuncționale.
34
Modalitatea de configurare și administrare este asemănătoare cu cea a tiki; în urma
editării unei pagini, se păstrează în baza de date versiunea precedentă a paginii, și există
același principiu pentru crearea de permisiuni ale utilizatorilor.
Relațiile semantice pot fi introduse direct în zona de editare a textului, sau pot fi
importate ontologii în format OWL/RDF. Acest lucru impune instalarea unei extensii a
Semantic MediaWiki RDFIO, a cărei instalare și utilizare este greoaie și pune probleme la
ultima sa versiune, majoritatea paginilor create nefiind în concordanță cu datele definite în
interiorul ontologiei.
4.4 Protégé
Conceptul de bază care stă la baza acestui software (și a ontologiilor în general) îl
reprezintă axiomele – fapte, reguli, „piece of knowledge”.
35
Interfața cu utilizatorul dispune de o filă pentru declararea claselor (toate obiectele
vor aparține superclasei owl:Thing) numită Entities, o filă pentru crearea de proprietăți ale
datelor (aici se pot adăuga proprietăți prin care se disting indivizii) numită Data Properties
şi o filă pentru crearea de proprietăți ale obiectelor (unde se introduc efectiv tipurile de
legături dintre două clase) numită Object Properties.
Proprietățile sunt asociate claselor din fila de entități sau din fila de proprietăți.
Proprietățile de date sunt unice pentru fiecare entitate, ele asociază valori obiectelor, iar la
crearea acestora trebuie să se specifice căror clase vor putea fi atribuite, sau căror clase le
este restricționat accesul la acest tip de proprietate. Proprietățile de obiecte sunt cele care
leagă două sau mai multe obiecte între ele și pot fi de mai multe tipuri :
Funcționale : un obiect poate avea o singură proprietate de acest tip; de exemplu,
dacă avem clasa „Persoană”, putem avea o singură proprietate de tip „vârsta”,
pentru că o persoană are o singură vârstă la un anumit moment de timp.
Invers-funcționale : o proprietate este invers funcțională atunci când reciproca sa
este funcțională; spre exemplu, un URL este o proprietate invers-funcțională pentru
o pagină web pentru că este o singură pagină asociată cu el (chiar dacă pagina
răspunde la mai multe URL-uri).
Tranzitive : o proprietate este tranzitivă dacă definește o relație tranzitivă; dacă
obiectul A este asociat obiectului B prin intermediul acestei proprietăți și obiectul B
este asociat obiectului C, putem spune că obiectul C este asociat obiectului A. De
exemplu, considerând A = pisică, B = felină, C = animal, putem spune că dacă
pisica este felină și felina este animal, atunci și animalele pot fi pisici.
Simetrice : o proprietate este simetrică dacă definește o relație de simetrie; dacă
obiectul A este asociat obiectului B prin intermediul acestei proprietăți, atunci și
obiectul B este asociat obiectului A. De exemplu dacă A = Andrei și B = Matei,
putem spune că dacă Andrei este fratele lui Matei, atunci Matei este fratele lui
Andrei.
36
Asimetrice : o proprietate este asimetrică dacă definește o relație de asimetrie; dacă
prin intermediul acestei proprietăți asociem obiectul A obiectului B, nu implică B
asociat lui A. De exemplu, dacă A = Andrei și B = Ioana și Andrei este fratele
Ioanei, nu implică Ioana- fratele lui Andrei.
Reflexive : o proprietate este reflexivă dacă se poate referi la obiectul sursă. De
exemplu, dacă avem A = 7 și proprietatea p= „este egal cu”, atunci succesiunea
ApA este aplicabilă.
Ireflexive : o proprietatea este ireflexiva dacă nu se poate aplica asupra obiectului
sursă. De exemplu dacă avem A = 7 și proprietatea p= „diferit de”, succesiunea
ApA nu este aplicabilă.
Adnotările precum „label” sunt utile atunci când se dorește prezentarea ontologiei
sub formă de graf, făcând astfel graful obținut mult mai ușor de înțeles.
Din interfața cu utilizatorul, cel mai ușor mod de a naviga este din fila de Entități;
de aici se poate accesa ierarhia de clase cu proprietățile și relațiile asociate.
37
5. Descrierea aplicației: Wiki Semantic pentru
Ingineria Sistemelor de Programe
Având stabilite atât noțiunile de bază ale web-ului semantic, cât și a tehnologiilor
folosite, putem continua cu descrierea efectivă a aplicației. Rolul acestei aplicații web este
de a crea un mediu facil și eficient pentru prezentarea cursului de Ingineria Sistemelor de
Programe, prin prezentarea ghidului SWEBOK. Scopul acestei lucrări îl reprezintă crearea
unui sistem de tip wiki semantic.
38
5.2 Definirea unei ontologii a domeniului Ingineriei
Sistemelor de Programe care sa respecte clasificările
SWEBOK
Având definite entitățile (pe baza conținutului), a fost creat un fișier conținând
titlurile secțiunilor (entitățile). Prin prelucrare XML titlurile au fost așezate sub forma unei
structuri de date, în care fiecare intrare reprezintă numele unei pagini din cadrul wiki-ului.
Acest fișier XML a fost importat în cadrul wiki-ului la secțiunea de structuri (Structures).
Structura obținută conține paginile generate, așezate într-o ierarhie, după modul de
definire în cadrul fișierului. Modul de navigare în cadrul structurii este după ID-ul paginii.
După crearea paginilor din ierarhie, acestea pot fi organizate, astfel încât și utilizatorul
final (cel care nu deține drepturi de creare/modificare/vizualizare a structurii) să poată
naviga prin paginile acesteia.
39
Fig. 5.1 Structura Contents în XML
După crearea structurii Contents, care este de fapt cuprinsul ghidului SWEBOK, pe
lângă paginile aparținând structurii, este generată și pagina Contents, care conține
cuprinsul structurii, realizat prin intermediul extensiei ”maketoc”.
40
Posibilitatea de afișare a cuprinsului și în alte pagini se realizează prin referirea
structurii Contents într-un obiect de tip „toc”, cu specificarea ID-ului paginii și a adâncimii
cuprinsului.
Pe lângă cele 505 pagini generate prin intermediul structurii, au mai fost create
pagina de start, o pagină de acronime și o pagină de definire a termenilor. Paginile de
definiții (denumită în cadrul wiki-ului Definitions) și acronime (definită în cadrul wiki-ului
Acronyms) nu apar în cuprinsul realizat pe prima pagină, singura posibilitate de accesare a
acestora fiind prin selectarea, dintr-o pagina care conține o legătură semantică de tip
definiție sau acronim, a acelui element care are ca destinație una dintre aceste două pagini.
În cadrul unei pagini, imaginile pot fi adăugate doar în cazul în care au fost
încărcate în prealabil în galeria de fișiere, unde, de fapt, pot fi adăugate orice tip de date.
Acestora li se asociază un ID, se memorează numele autorului, numele celui care a efectuat
ultima modificare, și opțional o scurtă descriere a fișierului.
41
Fig. 5.3 Galeria de fișiere
Paginile pot fi listate din Menu-Wiki-List Pages, unde se poate vizualiza data
ultimei modificări, cine a produs această modificare, versiunea paginii și numărul de back-
link-uri asociate paginii. În această vizualizare, administratorii au și dreptul de a șterge
paginile. Pe lângă List Pages, mai există și posibilitatea vizualizării rapide a ultimelor
modificări aduse wiki-ului, din pagina LastChanges.
42
Pagina de start, denumită SWEBOK este prima pagina care le apare atât
utilizatorilor înregistrați, cât și celor neînregistrați, la accesarea wiki-ului și conține o
scurtă descriere a ghidului și cuprinsul acestuia. La selectarea oricăreia dintre opțiunile
cuprinsului, utilizatorul va fi redirecționat către pagina atașată – acestea sunt legături
simple. Pagina de start va apărea diferit pentru categorii diferite de utilizatori. În figura 5.5
este prezentat modul de afișare al paginii de start pentru utilizatori neînregistrați, care nu
au acces la meniul de navigare.
43
are cunoștințele necesare și nici dreptul de a accesa datele, inserarea legăturilor semantice
se va face direct din editorul WYSIWYG.
Legăturile semantice sunt definite între două pagini- acestea sunt asociate unor
cuvinte cheie din pagina curentă; la selectarea cuvintelor/înșiruirii de cuvinte care conține
legătura, utilizatorul este redirecționat către pagina destinație. În cadrul paginii destinație,
legătura poate fi asociată unei ancore, deci cursorul este poziționat în secțiunea care
prezintă interes din punctul de vedere al relației dintre cele două entități.
44
Fig. 5.7 Tabelul cu tipurile de legături și utilizarea legăturii „definitie”
45
referință : conduce către o pagină cu conținut asemănător sau cu ajutorul căreia se
poate înțelege mai bine conținutul.
46
Fig. 5.9b Module atribuite marginii stângi a tiki-ului
Modulul Logo, așezat în partea stângă a paginilor, afișează logo-ul wiki-ului, care
este și logo-ul SWEBOK. În momentul în care un utilizator apasă pe logo, acesta va fi
redirecționat către pagina de start.
Prin intermediul modului pentru meniuri este creat meniul din partea stângă a
paginii, care va fi diferit în funcție de grupul de utilizatori și drepturile asociate acestora.
Modulul de autentificare se află în partea dreaptă a paginii, iar meniul de administrare
rapidă apare la trecerea cu mouse-ul deasupra unei săgeți din partea superioară a paginii.
47
Fig. 5.10 Panoul de control al administratorului
48
Fig. 5.11 Opțiuni de notificare
49
Utilizatorii înregistrați pot efectua căutări asupra conținutului. La introducerea unui
cuvânt sau a unui șir de cuvinte, vor fi returnate toate paginile care conțin cuvântul
respectiv și contextul în care apare.
În cadrul aplicației, au fost create trei grupuri de utilizatori (grupul Admins este
creat implicit):
Anonymous – au drept de vizualizare a conținutului.
Registered – moștenesc drepturile grupului anterior și în plus au dreptul de a naviga
în cadrul structurii, de a vizualiza meniul de navigabilitate, de a efectua căutări
asupra conținutului, de a vizualiza modulele semantice și de a descărca fișierele din
Files Gallery.
Editors – moștenesc drepturile grupului Registered și în plus au dreptul de a
modifica conținutul paginilor, de a adăuga și a șterge fișiere din galerie.
Admins – au drepturi de administrare în cadrul tiki-ului.
50
Fig. 5.14 Grupurile de utilizatori
Administratorul este cel care poate adăuga utilizatori și poate atribui diverse
drepturi/permisiuni utilizatorilor/grupurilor de utilizatori. Înregistrarea individuală nu este
posibilă, pentru că doar studenții pot avea acces la grupul Registered din wiki. Astfel,
pentru a deveni utilizator înregistrat, un student trebuie să își contacteze profesorul, și doar
în urma acceptării studentului la cursul respectiv acesta va face parte din grupul Registerd.
Totuși, un utilizator neînregistrat poate vizualiza conținutul, fără a beneficia însă de
drepturile pe care i le conferă apartenența la un grup.
Profesorul poate oferi unui grup permisiuni din orice categorie a tik-ului, chiar și
drepturi de administrare. Este de asemenea posibilă acordarea unor permisiuni doar unui
anumit utilizator. În figura 5.16 este ilustrată tabela de administrare a drepturilor asupra
galeriei de fișiere.
51
Fig. 5.16 Permsiuni alocate grupurilor de utilizatori
Baza de date asociată tiki-ului conține 250 tabele. Un utilizator experimentat poate
efectua căutări avansate prin intermediul interogărilor SQL. Tabelele care reprezintă
interes în acest caz sunt cele ce conțin relațiile și notațiile semantice.
52
Fig. 5.17 Secvență din tabelul de relații
Asupra legăturilor semantice se pot face interogări în baza de date, prin intermediul
sintaxei SQL. Un exemplu de interogare a tabelei de relații este dat în figura 5.12.
53
Pe lângă tabelele de relații, mai există tabele specifice setărilor, utilizatorilor și
permisiunilor, și conținutului. Interogările asupra bazei de date se efectuează utilizând
sintaxa SQL, iar accesul este identic cu accesul la o bază de date obișnuită, de uz general.
54
definește ghidul. Au fost create proprietăți ale obiectelor identice cu legăturile semantice
„definitie” și „acronim” aprofundate anterior și au fost asociate entităților. În figura 5.19
este ilustrată ierarhia de clase, iar în figura 5.20 sunt prezentate proprietățile adăugate.
Pentru o viziune mai clară asupra ontologiei, aceasta a fost așezată sub formă de
graf, după cum se poate vedea în figura 5.21:
55
RDFIO, o extensie bazată pe PHP și MySQL, prin intermediul căreia ar trebui să fie
posibilă introducerea tripletelor semantice oferite de formatul OWL/RDF sub formă de
pagini wiki. Pentru instalarea extensiei RDFIO a fost necesară și importarea bibliotecii
ARC2, bibliotecă scrisă în PHP pentru parsarea textului. Datorită eforturilor continue de
dezvoltare a platformei MediaWiki și a actualizărilor frecvente, la ultimele versiuni de
MediaWiki nu mai este funcțională biblioteca ARC2, așa cum se poate observa în figura
5.22 :
Fig. 5.22
56
6. Concluzii și dezvoltări ulterioare
57
Aceste funții sunt inutilizabile, datorită neactualizării extensiilor odată cu
actualizarea programului-nucleu.
58
Bibliografie:
1. Robinson, M. (2006). Wikis in education: Social Construction as learning. The
Community College Enterprise, pag. 107-112.
2. Bold, M. (2006). Use of wikis in graduate course work. Journal of Interactive Learning
Research, pag. 5-14.
3. Introduction to the Semantic Web. How is ”Semantic Web” different ? Articol internet:
http://www.cambridgesemantics.com/semantic-university/introduction-semantic-web
Accesat: 2016.
4. World Wide Web Consortium. W3C Semantic Web Activity (2011)
5. Miron, A. (2012). Semantic Web – scurtă introducere. Today Software Magazine, nr. 4,
2012.
6. Maedche, A. (2002). Ontology learning for the Semantic Web. Fundamentals, pag. 11-
23.
7. Cunningham, W. (2002). What is a Wiki
8. Cunningham, W., Leuf, B. (2001). The Wiki Way. Quick Collaboration on the Web.
9. Howe, J. (2006-2007). Your Web, your way. Time Magazine, 168(26), pag. 60-63.
10. Magend, K. (2009). Semantic Wikis: A comprehensible Introduction with Examples
from the Health Sciences. Journal of Emerging Technologies in Web Intelligence, vol. 1,
nr. 1.
11. Wikimedia Media-Wiki. History of Wikipedia. Documentație internet:
https://meta.wikimedia.org/wiki/Wikipedia_timeline Accesat : 2016
12. Imagine internet: https://en.wikipedia.org/wiki/Wikipedia Accesat: 2016
13. Documentație Wikipedia internet: https://ro.wikipedia.org/wiki/Wikipedia#cite_note-2
Accesat 2016
14. de Leon, P. (2015). The Weird (And Sometimes Wonderful) World Of WikiHow:
Crowdsourcing Online Info On Everything. Articol internet:
https://www.entrepreneur.com/me/the-weird-and-sometimes-wonderful-world-of-
wikihow-crowdsourcing-online-info-on-everything/ Accesat: 2016
15. Imagine internet: http://www.wikihow.com/Main-Page Accesat: 2016
16. Imagine internet: http://recipes.wikia.com/wiki/Recipes_Wiki Accesat: 2016
59
17. Al Yahya, M., George, R., Alfaries, A. (2015). Ontologies in E-learning : Review of
the Literature. Articol internet: http://www.sersc.org/journals/IJSEIA/vol9_no2_2015/7.pdf
Accesat : 2016
18. Imagine internet: http://acs.curs.pub.ro/2015/ Accesat: 2016
19. Schaffert, S., Bischof, D., Buerger, T., Gruber, A., Hilzensauer, W. (2006). Learning
with semantic wikis. From Wikis To Semantics , pag 2-4. Articol internet:
http://ceur-ws.org/Vol-206/paper9.pdf Accesat: 2016
20. Schaffert, S., Gruber, A., Westenthaler, R. (2006). A semantic wiki for collaborative
knowledge formation. Articol internet:
http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.94.6443&rep=rep1&type=pdf
Accesat: 2016
21. Chen, H. L., Cannon, D.,Gabrio, J., Leifer,L., Toye, G., Bailey, T. (2005). Using wikis
and weblog to support reflective learning in an introductory engineering design course pag.
8-9. Articol internet:
http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.127.5481&rep=rep1&type=pdf
Accesat 2016
22. Lange, C. (2011). Enabling Collaboration on Semiformal Mathematical Knowledge by
Semantic Web Integration. The Semantic Wiki SwiM – An Integrated Collaboration
Environment pag 365-390
23. Documentație standard ISO/IEC TR 19759:2015:
http://www.iso.org/iso/home/store/catalogue_ics/catalogue_detail_ics.htm?csnumber=6760
4 Accesat: 2016
24. SWEBOK. Guide to the Software Engineering Body of Knowledge. Documentație
internet: http://www4.ncsu.edu/~tjmenzie/cs510/pdf/SWEBOKv3.pdf Accesat: 2016
25. Lengstorf, J. (2009) PHP for Absolute Beginners.
26. Documentație Tiki Wiki internet: http://tiki.org Accesat : 2016
60
Anexe
<structure>
<page><name>Contents</name></page>
<structure>
<page>Chapter 1: Software Requirements</page>
<structure>
<page>1. Software Requirements Fundamentals</page>
<structure>
<page>1.1. Definition of a Software
Requirement</page>
<page>1.2. Product and Process
Requirements</page>
<page>1.3. Functional and Nonfunctional
Requirements</page>
<page>1.4. Emergent Properties</page>
<page>1.5. Quantifiable Requirements</page>
<page>1.6. System Requirements and Software
Requirements</page>
</structure>
<page>2. Requirements Process</page>
<structure>
<page>2.1. Process Models</page>
<page>2.2. Process Actors</page>
<page>2.3. Process Support and Management</page>
<page>2.4. Process Quality and Improvement</page>
</structure>
<page>3. Requirements Elicitation</page>
<structure>
<page>3.1. Requirements Sources</page>
<page>3.2. Elicitation Techniques</page>
</structure>
<page>4. Requirements Analysis</page>
<structure>
<page>4.1. Requirements Classification</page>
61
<page>4.2. Conceptual Modeling</page>
<page>4.3. Architectural Design and Requirements
Allocation</page>
<page>4.4. Requirements Negotiation</page>
<page>4.5. Formal Analysis</page>
</structure>
<page>5. Requirements Specification</page>
<structure>
<page>5.1. System Definition Document</page>
<page>5.2. System Requirements
Specification</page>
<page>5.3. Software Requirements
Specification</page>
</structure>
<page>6. Requirements Validation</page>
<structure>
<page>6.1. Requirements Reviews</page>
<page>6.2. Prototyping</page>
<page>6.3. Model Validation</page>
<page>6.4. Acceptance Tests</page>
</structure>
<page>7. Practical Considerations</page>
<structure>
<page>7.1. Iterative Nature of the Requirements
Process</page>
<page>7.2. Change Management</page>
<page>7.3. Requirements Attributes</page>
<page>7.4. Requirements Tracing</page>
<page>7.5. Measuring Requirements</page>
</structure>
<page>8. Software Requirements Tools</page>
</structure>
62
<catalog
prefer="public"xmlns="urn:oasis:names:tc:entity:xmlns:xml:catalog">
<group id="Folder Repository, directory=, recursive=true, Auto-
Update=true, version=2" prefer="public" xml:base="">
<uri id="Automatically generated entry, Timestamp=1466775897414"
name="http://www.semanticweb.org/user/ontologies/2016/5/untitled-
ontology-6" uri="inrdfxml.owl"/>
</group>
</catalog>
b) inrdfxml.owl – secvență
<?xml version="1.0"?>
<rdf:RDF
xmlns="http://www.semanticweb.org/user/ontologies/2016/5/untitled-
ontology-6#"
xml:base="http://www.semanticweb.org/user/ontologies/2016/5/untitled-
ontology-6"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:owl="http://www.w3.org/2002/07/owl#"
xmlns:xml="http://www.w3.org/XML/1998/namespace"
xmlns:xsd="http://www.w3.org/2001/XMLSchema#"
xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#">
<owl:Ontology
rdf:about="http://www.semanticweb.org/user/ontologies/2016/5/untitled-
ontology-6">
<rdfs:label>SWEBOK</rdfs:label>
<rdfs:isDefinedBy>ISO/IEC TR 19759:2015</rdfs:isDefinedBy>
</owl:Ontology>
<owl:ObjectProperty
rdf:about="http://www.semanticweb.org/user/ontologies/2016/5/untitled-
ontology-6#acronim">
<rdfs:domain
rdf:resource="http://www.semanticweb.org/user/ontologies/2016/5/untitled-
ontology-6#Context_of_Software_Design"/>
<rdfs:domain
rdf:resource="http://www.semanticweb.org/user/ontologies/2016/5/untitled-
ontology-6#Families_of_Programs_and_Frameworks"/>
63
<rdfs:domain
rdf:resource="http://www.semanticweb.org/user/ontologies/2016/5/untitled-
ontology-6#Interaction_and_Presentation"/>
<rdfs:domain
rdf:resource="http://www.semanticweb.org/user/ontologies/2016/5/untitled-
ontology-6#Object-Oriented_Design"/>
<rdfs:domain
rdf:resource="http://www.semanticweb.org/user/ontologies/2016/5/untitled-
ontology-6#Practical_Considerations"/>
<rdfs:domain
rdf:resource="http://www.semanticweb.org/user/ontologies/2016/5/untitled-
ontology-6#Process_Quality_and_Improvement"/>
<rdfs:domain
rdf:resource="http://www.semanticweb.org/user/ontologies/2016/5/untitled-
ontology-6#Behavioral_Description_(Dynamic_View)"/>
<rdfs:domain
rdf:resource="http://www.semanticweb.org/user/ontologies/2016/5/untitled-
ontology-6#Structural_Description_(Static_View)"/>
<rdfs:range
rdf:resource="http://www.semanticweb.org/user/ontologies/2016/5/untitled-
ontology-6#Acronyms"/>
</owl:ObjectProperty>
<owl:ObjectProperty
rdf:about="http://www.semanticweb.org/user/ontologies/2016/5/untitled-
ontology-6#definitie">
<rdfs:domain
rdf:resource="http://www.semanticweb.org/user/ontologies/2016/5/untitled-
ontology-6#Architectural_Structures_and_Viewpoints"/>
<rdfs:domain
rdf:resource="http://www.semanticweb.org/user/ontologies/2016/5/untitled-
ontology-6#Architectural_Styles"/>
<rdfs:domain
rdf:resource="http://www.semanticweb.org/user/ontologies/2016/5/untitled-
ontology-6#Control_and_Handling_of_Events"/>
<rdfs:domain
rdf:resource="http://www.semanticweb.org/user/ontologies/2016/5/untitled-
ontology-6#Data_Structure-Centered_Design"/>
<rdfs:domain
rdf:resource="http://www.semanticweb.org/user/ontologies/2016/5/untitled-
ontology-6#Emergent_Properties"/>
64
<rdfs:domain
rdf:resource="http://www.semanticweb.org/user/ontologies/2016/5/untitled-
ontology-6#System_Requirements_and_Software_Requirements"/>
<rdfs:domain
rdf:resource="http://www.semanticweb.org/user/ontologies/2016/5/untitled-
ontology-6#The_Design_of_User_Interaction_Modalities"/>
<rdfs:domain
rdf:resource="http://www.semanticweb.org/user/ontologies/2016/5/untitled-
ontology-6#User_Interface_Design"/>
<rdfs:domain
rdf:resource="http://www.semanticweb.org/user/ontologies/2016/5/untitled-
ontology-6#User_Interface_Design_Issues"/>
<rdfs:range
rdf:resource="http://www.semanticweb.org/user/ontologies/2016/5/untitled-
ontology-6#Definitions"/>
</owl:ObjectProperty>
<owl:Class
rdf:about="http://www.semanticweb.org/user/ontologies/2016/5/untitled-
ontology-6#Acceptance_Tests">
<rdfs:subClassOf
rdf:resource="http://www.semanticweb.org/user/ontologies/2016/5/untitled-
ontology-6#Requirements_Validation"/>
<rdfs:isDefinedBy>ISO/IEC TR 19759:2015</rdfs:isDefinedBy>
<rdfs:label>Acceptance Tests</rdfs:label>
</owl:Class>
<owl:Class
rdf:about="http://www.semanticweb.org/user/ontologies/2016/5/untitled-
ontology-6#Acronyms">
<rdfs:comment>Contine explicatia acronimelor
folosite</rdfs:comment>
<rdfs:label>Acronyms</rdfs:label>
</owl:Class>
<owl:Class
rdf:about="http://www.semanticweb.org/user/ontologies/2016/5/untitled-
ontology-6#Architectural_Design_and_Requirements_Allocation">
<rdfs:subClassOf
rdf:resource="http://www.semanticweb.org/user/ontologies/2016/5/untitled-
ontology-6#Requirements_Analysis"/>
65
<rdfs:isDefinedBy>ISO/IEC TR 19759:2015</rdfs:isDefinedBy>
<rdfs:label>Architectural Design and Requirements
Allocation</rdfs:label>
</owl:Class>
<owl:Class
rdf:about="http://www.semanticweb.org/user/ontologies/2016/5/untitled-
ontology-6#Architectural_Structures_and_Viewpoints">
<rdfs:subClassOf
rdf:resource="http://www.semanticweb.org/user/ontologies/2016/5/untitled-
ontology-6#Software_Structure_and_Architecture"/>
<rdfs:isDefinedBy>ISO/IEC TR 19759:2015</rdfs:isDefinedBy>
<rdfs:label>Architectural Structures and Viewpoints</rdfs:label>
</owl:Class>
<owl:Class
rdf:about="http://www.semanticweb.org/user/ontologies/2016/5/untitled-
ontology-6#Architectural_Styles">
<rdfs:subClassOf
rdf:resource="http://www.semanticweb.org/user/ontologies/2016/5/untitled-
ontology-6#Software_Structure_and_Architecture"/>
<rdfs:isDefinedBy>ISO/IEC TR 19759:2015</rdfs:isDefinedBy>
<rdfs:label>Architectural Styles</rdfs:label>
</owl:Class>
<owl:Class
rdf:about="http://www.semanticweb.org/user/ontologies/2016/5/untitled-
ontology-6#Architecture_Design_Decisions">
<rdfs:subClassOf
rdf:resource="http://www.semanticweb.org/user/ontologies/2016/5/untitled-
ontology-6#Software_Structure_and_Architecture"/>
<rdfs:isDefinedBy>ISO/IEC TR 19759:2015</rdfs:isDefinedBy>
<rdfs:label>Architecture Design Decisions</rdfs:label>
</owl:Class>
<owl:Class
rdf:about="http://www.semanticweb.org/user/ontologies/2016/5/untitled-
ontology-6#Change_Management">
66
<rdfs:subClassOf
rdf:resource="http://www.semanticweb.org/user/ontologies/2016/5/untitled-
ontology-6#Practical_Considerations"/>
<rdfs:isDefinedBy>ISO/IEC TR 19759:2015</rdfs:isDefinedBy>
<rdfs:label>Change Management</rdfs:label>
</owl:Class>
<owl:Class
rdf:about="http://www.semanticweb.org/user/ontologies/2016/5/untitled-
ontology-6#Conceptual_Modeling">
<rdfs:subClassOf
rdf:resource="http://www.semanticweb.org/user/ontologies/2016/5/untitled-
ontology-6#Requirements_Analysis"/>
<rdfs:isDefinedBy>ISO/IEC TR 19759:2015</rdfs:isDefinedBy>
<rdfs:label>Conceptual Modeling</rdfs:label>
</owl:Class>
67