25.10.2014 Views

Thesis full text (PDF) - Politecnico di Milano

Thesis full text (PDF) - Politecnico di Milano

Thesis full text (PDF) - Politecnico di Milano

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

composition. We depict the rest of UML compositions modeling the relations of the main<br />

element with other UML elements.<br />

Whenever an Add component is used, it is properly configured: the mandatory UML<br />

composition is always present, only the optional compositions necessary for the use of the<br />

component in the specific con<strong>text</strong> are being added. We call these configured compositions<br />

necessary parts for the specific component.<br />

Whenever a configured Add component is invoked, a new object of the Add Name Component<br />

UML class is created. The invocation of the component functionalities for the created object is<br />

made with the execute(s: String[][]) method defined in the main class. Upon the method’s<br />

invocation, the object communicates with the defined parts in order to update the knowledge<br />

base. In particular, the object of the Add Name Component UML class is responsible for the<br />

objects of the necessary parts: (i) their creation, (ii) the initialization of their con<strong>di</strong>tion values,<br />

(iii) the creation of their axioms in the knowledge base, and (iv) their destruction, by invoking<br />

respectively the create, set, execute, and destroy methods defined in the UML classes defining<br />

the parts.<br />

In the rest of this section, we graphically depict the add components only with the UML<br />

compositions modeling insertion con<strong>di</strong>tions. For having more readable figures, the operations are<br />

not shown since they are the ones shown in figure 3.9.<br />

3.1.9 Add Class Component<br />

The Add Class Component creates new axioms in the knowledge base regar<strong>di</strong>ng UML classes. If<br />

the insertion is about a new class, only its name is in<strong>di</strong>cated as value to the component.<br />

Otherwise, insertion con<strong>di</strong>tions are also applied to the component to identify the elements in the<br />

knowledge base upon which new axioms will be created.<br />

The Add Class Component is depicted in figure 3.10 containing: the Add Class Component<br />

UML class, a mandatory composing class modeling the name of the class for the component<br />

(ClassOfName), and further optional composing classes modeling the insertion con<strong>di</strong>tions. In<br />

36

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!