<?xml version="1.0" encoding="iso-8859-1"?>
<!DOCTYPE article PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
              "http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
<article lang="es" id="art-dantonio-req-servidor">
  <articleinfo>
    <title>Donantonio Servers</title>
    <subtitle>Specifications of requisites for Donantonio</subtitle>
    <author>
      <firstname>Juan José</firstname>
      <surname>Amor</surname>
    </author>
    <author>
      <firstname>David</firstname>
      <surname>Escorial</surname>
    </author>
    <author>
      <firstname>Ismael</firstname>
      <surname>Olea</surname>
    </author>
    <pubdate>$Id: doc-ers_ieee830-donantonio-servidor.en.xml,v 1.2 2002/11/18 21:21:34 manuelcanales Exp $</pubdate>
  </articleinfo>
  <sect1>
    <title>Introduction</title>
    <para>
This document is a Specification of Software Requeriments (SSR) for the bibliographic system for
automatic distribuited publication Donantonio. All this contents has been elaborated considering
the needs observed by the experience of the authors of Internet's publication. This specification
has been structured inspired in the directrixes gived by the standard IEEE 
<emphasis remap="it">Recommended Practice for Software Requirements
Specification ANSI/IEEE 830 1998</emphasis>.
</para>
    <sect2>
      <title>Purpose </title>
      <para/>
      <para>
The object of the specification is to define in a clear and exact way all the functionalities
and restrictions of the system it wants to build. The document goes directed so much to the 
development equipment, like the members of the projects of free documentation and the community
of possible end users. This document will be the communication channel between the implied parts, 
taking part in its preparation, members from each part. This specification is subject to 
revisions by the implied parts, specially by the potentials usuaries, that will be picked up by 
successive versions of the document, until reach its approval. Once approved it will
serve as base to the equipment of development for the construction of the new system. 
</para>
    </sect2>
    <sect2>
      <title>Scope of the system.</title>
      <para>
This system is required as a result of the increasing complication of 
the publication workings of documentation of free software. 
</para>
      <para>
It's evident the needed of a informatic system 
that it automates the publication workings of documents in Internet, 
in such form that are guaranteed the easy location of them and a fast 
availability to the users. 
</para>
      <para>
Using bibliographical norms it can become general the use and application 
of the system to any type of information susceptible to be classified. 
</para>
      <para>
The scope of the developed system reaches until the production of clients 
and servers for Donantonio, communication protocols between them and user interfaces; 
preferring the design of a system that can be embedded in other compatible 
applications so these can as well be compatible applications 
(clients, servers or interfaces) with Donantonio. 
</para>
    </sect2>
    <sect2>
      <title>Definitions, acronyms and abbreviations</title>
      <sect3>
        <title>Definitions</title>
        <para>
          <variablelist>
            <varlistentry>
              <term>Resource</term>
              <listitem>
                <para>
Element accessible through a URL susceptible 
to be classified bibliographically.
</para>
              </listitem>
            </varlistentry>
            <varlistentry>
              <term>Scheme</term>
              <listitem>
                <para>
It describes the syntax of a description.
</para>
              </listitem>
            </varlistentry>
            <varlistentry>
              <term>Description</term>
              <listitem>
                <para>
Instance of a scheme that it identifies by metadata, 
in a unequivocal way to a resource.
</para>
              </listitem>
            </varlistentry>
            <varlistentry>
              <term>Library</term>
              <listitem>
                <para>
Collection of descriptions.
</para>
              </listitem>
            </varlistentry>
            <varlistentry>
              <term>Server</term>
              <listitem>
                <para>
Node that takes care of donantonio's queries.
</para>
              </listitem>
            </varlistentry>
            <varlistentry>
              <term>Cliente</term>
              <listitem>
                <para>
Node that produce donantonio's queries.
</para>
              </listitem>
            </varlistentry>
            <varlistentry>
              <term>Query</term>
              <listitem>
                <para>
Request of a subgroup of descriptions 
expressed in a standardized language. 
</para>
              </listitem>
            </varlistentry>
          </variablelist>
        </para>
      </sect3>
      <sect3>
        <title>Acronyms</title>
        <para>
          <variablelist>
            <varlistentry>
              <term>SSR</term>
              <listitem>
                <para>
Specification of Software Requirements 
</para>
              </listitem>
            </varlistentry>
            <varlistentry>
              <term>GFDL</term>
              <listitem>
                <para>
GNU Free Documentation License
</para>
              </listitem>
            </varlistentry>
            <varlistentry>
              <term>GPL</term>
              <listitem>
                <para>
GNU Public License
</para>
              </listitem>
            </varlistentry>
            <varlistentry>
              <term>RDF</term>
              <listitem>
                <para>
Resource Description Framework, standard of the 
World Wide Web Consortium (W3C) for the codification 
and handling of metadata using the markup language XML. 
</para>
              </listitem>
            </varlistentry>
            <varlistentry>
              <term>URL</term>
              <listitem>
                <para>
Uniform Resource Locator, scheme used for
the localization of a internet resource.
</para>
              </listitem>
            </varlistentry>
            <varlistentry>
              <term>XML</term>
              <listitem>
                <para>
eXtended Markup Language, standard of the W3C.
</para>
              </listitem>
            </varlistentry>
          </variablelist>
        </para>
      </sect3>
      <sect3>
        <title>Abbreviations</title>
        <para>
They have not been defined.
</para>
      </sect3>
    </sect2>
    <sect2>
      <title>References</title>
      <para>
        <itemizedlist>
          <listitem>
            <para>
IEEE Recommended Practice for Software Requirements
Specification. ANSI/IEEE std. 830, 1998.

</para>
          </listitem>
          <listitem>
            <para>
Donantonio: bibliographic system for automatic distribuited publication 
Specifications of requisites for Donantonio. 
J.J. Amor, D. Escorial and I. Olea, 2000.

</para>
          </listitem>
          <listitem>
            <para>
Donantonio's clients. Specifications of requisites for Donantonio.
J.J. Amor, D. Escorial and I. Olea, 2000.
</para>
          </listitem>
        </itemizedlist>
      </para>
    </sect2>
    <sect2>
      <title>Document's General Vision</title>
      <para>
This document is formed by three sections. 
This section is the Introduction and provides a general vision of the SSR. 
In the Section 2 we give a general description of the system, 
with the purpose of knowing the main functions what must make the system, 
the data associate and the factors, restrictions, supposed and dependencies 
that affect the development, without enter in excessive details. 
In section 3 the requirements are defined in detail what must satisfy the system. 
</para>
    </sect2>
  </sect1>
  <sect1>
    <title>General Description</title>
    <sect2>
      <title>Perspective of the Product</title>
      <para>
The donantonio server will interact with clients, by a protocol
that will have to be defined.
</para>
    </sect2>
    <sect2>
      <title>Functions of the system</title>
      <sect3>
        <title>Publication of resources  </title>
        <para>
The system will allow to publish resources located in any place of Internet. 
</para>
        <para>
Each resource will be located by its description, that will be in the Donantonio servers, 
and therefore, it will not have why to coincide with the publication place of the resource.         
</para>
      </sect3>
      <sect3>
        <title>Registry of descriptions </title>
        <para>
Each description will have a publication point, from which a donantonio server 
incorporates it to his library through the registry process.         
</para>
      </sect3>
      <sect3>
        <title>Queries and replication of descriptions</title>
        <para>
The donantonio server will include mechanisms or protocols to admit the total or partial 
replication of the descriptions solicited by the clients. 
</para>
        <para>
For this aim, the servers will have to be able to attend  queries of descriptions, 
for which will be defined the corresponding mechanisms or protocols.
</para>
        <para>
The implanted mechanisms and languages of search in the servers will have to be compatible 
with those of the clients. 
</para>
      </sect3>
    </sect2>
    <sect2>
      <title>Restrictions</title>
      <para>
The system will be free software (in agreement with the GNU-GPL license or similar) 
and will have to be free those components that it reuses. 
</para>
      <para>
The system will be designed according to a client/server model. 
</para>
      <para>
The system will based its communications on standard Internet protocols.
</para>
      <para>
The different subsystems must have a simple design and implementation, 
independent of the platform or the programming language. 
</para>
      <para>
The servers must be able to attend the queries in a concurrently way. 
</para>
    </sect2>
    <sect2>
      <title>Suppositions and dependencies</title>
      <sect3>
        <title>Suppositions </title>
        <para>
 
It is assumed that the requirements described in this document are stable once 
is approved by the design team taking care of suggestions of the community. 
Any request of changes in the specification must be approved by the design team
and be managed by the same one. 
</para>
      </sect3>
      <sect3>
        <title>Dependencies</title>
        <para>
Although the server functionality is independent, because only it communicates with other 
clients when these do a request to him, can depend of other servers if, using the client functionality, 
it replicate from other server information for the maintenance of his own library.         
</para>
        <para>
          <emphasis remap="it">Note: Review this. In fact there is communication </emphasis>
        </para>
      </sect3>
      <sect3>
        <title>Specific requirements</title>
        <para>
In this section the it shows the functional requirements that will have 
to be satisfied by the system. All the requirements exposed here are 
ESSENTIAL, that is, a system would not be acceptable that does not satisfy 
some of the requirements presented here. 
These requirements have been specified considering, among others, 
the criterion of testing: given a requirement, 
it would have easily to be demonstrable if it is satisfied or not by the system. 
</para>
        <para>
          <emphasis remap="it">Note: It is convenient to make the "requirements matrix", that confronts the 
requirements with the verification method. </emphasis>
        </para>
      </sect3>
    </sect2>
    <sect2>
      <title>Functional requirements</title>
      <sect3>
        <title>REQ01: Registering descriptions </title>
        <para>
The server must register descriptions of resources (metadata and the corresponding URL).
        </para>
      </sect3>
      <sect3>
        <title>REQ02: Visibility of the descriptions </title>
        <para>
All donantonio server will implement query's mechanisms that allow to select from a 
client a set of the descriptions that this one has. 
</para>
      </sect3>
      <sect3>
        <title>REQ03: Transportability of the descriptions</title>
        <para>
All donantonio server will allow export a selected set of descriptions.         
</para>
      </sect3>
      <sect3>
        <title>REQ04: Selection of descriptions </title>
        <para>
All server will implement mechanisms or languages that allow the clients to 
specify a consultation of their stored resources.         
</para>
      </sect3>
      <sect3>
        <title>REQ05: Independence between servers</title>
        <para>
The servers will be independent to be able to give service 
independently to the clients.         
</para>
      </sect3>
      <sect3>
        <title>REQ06: Unicity of the descriptions</title>
        <para>
The descriptions will have to be unique in each library maintained in each server. 
</para>
      </sect3>
    </sect2>
    <sect2>
      <title>External requirements of interfaces </title>
      <sect3>
        <title>User Interfaces</title>
        <sect4>
          <title>REQ07: Configurebility</title>
          <para>
The donantonio server will count with user interfaces what allow to administer all 
his functions.           
</para>
        </sect4>
      </sect3>
      <sect3>
        <title>Interfaces hardware</title>
        <para>
Interfaces hardware 
</para>
      </sect3>
      <sect3>
        <title>Software interfaces </title>
        <sect4>
          <title>REQ08: Communication with other modules </title>
          <para>
The communication of the donantonio servers with the clients will be made 
by protocols based on standards that allow to fulfill the other requirements of the system.           
</para>
        </sect4>
      </sect3>
      <sect3>
        <title>Communication's interfaces</title>
        <sect4>
          <title>REQ09: Internet Standard protocols</title>
          <para>
The servers will communicate with other modules of the system by standard protocols 
in Internet, whenever it is possible. 
</para>
        </sect4>
      </sect3>
    </sect2>
    <sect2>
      <title>Performance Requeriments</title>
      <sect3>
        <title>REQ10: Response time </title>
        <para>
The response times to the interactive queries will have to be reduced, 
considering a efficient communication network. 
</para>
      </sect3>
      <sect3>
        <title>REQ11: Concurrency</title>
        <para>
The system will have to support concurrent attention to the queries.
</para>
      </sect3>
    </sect2>
    <sect2>
      <title>Development requisites</title>
      <sect3>
        <title>REQ12:  Life's Cicle.</title>
        <para>
The chosen life's cycle to develop the system will be the evolutionary 
prototype, so changes and new functions can be incorporated easily. 
</para>
      </sect3>
    </sect2>
    <sect2>
      <title>Technological requirements</title>
      <sect3>
        <title>REQ13: Bibliographical norms</title>
        <para>
The bibliographical schemes to use in the system will be expressed in RDF. 
</para>
      </sect3>
    </sect2>
    <sect2>
      <title>Attributes</title>
      <sect3>
        <title>REQ14: Free Software </title>
        <para>
The system will be free software and, therefore, any software component 
that it will be reused will have to be free. 
</para>
      </sect3>
      <sect3>
        <title>REQ15: Portability</title>
        <para>
The system will be designed portable. It will have to be possible to 
implement applications donantonio in diverse languages and platforms. 
</para>
      </sect3>
      <sect3>
        <title>REQ16: Maintenance</title>
        <para>
The system is susceptible to be extended. Therefore it will have 
to be designed easily supported, applying for his development 
the methodologies what it be precise for that. 
</para>
      </sect3>
    </sect2>
    <sect2>
      <title>Other requisites</title>
      <para/>
    </sect2>
  </sect1>
  <sect1>
    <title>Appendices</title>
    <sect2>
      <title>Licence</title>
      <para>
Donantonio: Specification of Software Requirements
</para>
      <para>
Copyright (C) 2000 Juan J. Amor, David Escorial and Ismael Olea.
</para>
      <para>
Permission is granted to reproduce total or partially this document, 
as long as the source is mentioned. Any modification of this document 
will have to be approved by the authors. 
</para>
    </sect2>
  </sect1>
</article>
