18.04.2013 Views

Dissertaç ˜ao de Mestrado Mestrado em Engenharia Informática Jo ...

Dissertaç ˜ao de Mestrado Mestrado em Engenharia Informática Jo ...

Dissertaç ˜ao de Mestrado Mestrado em Engenharia Informática Jo ...

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.

3. AN APPLICATION RECONFIGURATION FRAMEWORK 3.1. Architectural Requir<strong>em</strong>ents<br />

3.1 Architectural Requir<strong>em</strong>ents<br />

Before approaching the proposal of a framework for the automatic application configuration,<br />

the tool requir<strong>em</strong>ents must be i<strong>de</strong>ntified. This section presents the functionalities which the<br />

tool is expected to provi<strong>de</strong>, in the form of use cases. A use case <strong>de</strong>fines a goal-oriented set<br />

of interactions between external actors and the tool. Following is a list of functional and non-<br />

functional requir<strong>em</strong>ents:<br />

1. The user must be able to convert a configuration file syntax from its original syntax to<br />

a generic one, in<strong>de</strong>pen<strong>de</strong>ntly of the application.<br />

Description: The user must be able to try parsing the configuration file with the available<br />

parsers.<br />

Non-functional requir<strong>em</strong>ents:<br />

Performance: The generated file with the generic syntax must be as simple as possible.<br />

2. The user must be able to <strong>de</strong>fine grammars for configuration file languages.<br />

Description: If there are no suitable parsers for a given configuration file, the user must<br />

be able to <strong>de</strong>fine a grammar that recognizes the new configuration file language.<br />

Non-functional requir<strong>em</strong>ents:<br />

Usability: The grammar <strong>de</strong>finition syntax should be a broadly adopted one.<br />

Usability: To ease the parser generation process, the user must be able to iterate through<br />

the previously built grammars so as to rollback any change ma<strong>de</strong> on a grammar.<br />

3. The user must be able to produce a parser from a grammar.<br />

Description: When the user builds a grammar for a new configuration file language, there<br />

must be a means to compile that grammar in or<strong>de</strong>r to generate a parser.<br />

Non-functional requir<strong>em</strong>ents:<br />

Usability: The user must be able to add parsers built outsi<strong>de</strong> the tool.<br />

4. The user must have access to the parser compilation trace.<br />

Description: When a grammar is compiled, the user should be able to check on the parser<br />

compilation trace to see if it was successfully compiled or whether any error persists in<br />

the grammar <strong>de</strong>claration.<br />

22

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

Saved successfully!

Ooh no, something went wrong!