2 research outputs found

    Un modelo de procesamiento terminol贸gico para la obtenci贸n y validaci贸n de requisitos de software basado en el diagrama de objetivos de Kaos

    Get PDF
    Resumen: La educci贸n y validaci贸n de requisitos de software son actividades propias de la Ingenier铆a de Software, estas se realizan en las primeras fases del ciclo de vida del software, es decir, en la definici贸n y el an谩lisis respectivamente. En estas fases se intentan capturar los requisitos que debe cumplir el sistema (software) y transformarlos en modelos conceptuales que permitan explicar los elementos significativos del 谩rea del problema. Sin embargo, los productos obtenidos a trav茅s de estas fases presentan problemas en su concepci贸n debido a: (i) la brecha de comunicaci贸n presente entre el interesado (usuario) y el analista, es decir, debido a la comunicaci贸n limitada o insuficiente que se genera por las diferencias entre sus especialidades, y (ii) la ambig眉edad verbal presente en el universo del discurso. Estos problemas, impiden una correcta identificaci贸n y validaci贸n de los requisitos que debe cumplir un sistema (software). Asimismo, hacen que el producto final sea m谩s costoso debido a la correcci贸n de errores en las etapas de implementaci贸n y producci贸n del sistema (software). Con el prop贸sito de: (i) mejorar los resultados en la educci贸n y validaci贸n de requisitos de software, y (ii) reducir la brecha de comunicaci贸n entre el interesado y el analista, se utilizan diversos esquemas conceptuales, entre estos se emplea el diagrama de objetivos de KAOS (Knowledge Acquisition in Automated Specification), el cual le permite al usuario la identificaci贸n y la validaci贸n de los requisitos asociados al sistema (software). Adem谩s, a partir de este diagrama se pueden obtener diagramas UML propios de la tercera fase (dise帽o) del ciclo de vida del software, los cuales hacen parte del dominio del analista. Sin embargo, en los diferentes trabajos que especifican o utilizan el diagrama de diagrama de objetivos de KAOS, se logran identificar los siguientes problemas: (i) falta de consistencia entre el lenguaje natural y los elementos b谩sicos que conforman el diagrama de objetivos de KAOS, (ii) no utilizan herramientas terminol贸gicas que permitan minimizar la ambig眉edad sem谩ntica presente en el universo del discurso, (iii) falta de validaci贸n semiautom谩tica de requisitos de software por parte del interesado en la etapa inicial, y (iv) no obtienen de manera semiautom谩tica el diagrama de objetivos correspondiente. Con la intenci贸n de dar soluci贸n a los problemas identificados en el p谩rrafo anterior, se logr贸 realizar en esta tesis doctoral lo siguiente: (i) caracterizar los elementos que componen el diagrama de objetivos de KAOS, (ii) construir una Ontolog铆a para representar con mayor precisi贸n los elementos del diagrama de objetivos KAOS, (iii) definir un conjunto de formas morfosint谩cticas que permiten caracterizar a partir de lenguaje natural los elementos b谩sicos (objetivo, entidad, operaci贸n y agente) del diagrama de objetivos de KAOS, de tal forma, que se logr贸 dar una soluci贸n a la necesidad de identificar la consistencia que debe existir entre el lenguaje natural y los elementos b谩sicos que conforman diagrama de objetivos de KAOS, (iv) definir un conjunto de reglas sem谩nticas que permiten minimizar la ambig眉edad sem谩ntica presente en el universo del discurso, la cual afecta de forma negativa las actividades asociadas a la educci贸n y validaci贸n de requisitos de software, (v) crear un modelo de procesamiento terminol贸gico para la educci贸n y validaci贸n interactiva con el usuario de requisitos de software inicialmente descritos en lenguaje natural, (vi) desarrollar la aplicaci贸n NL2KAOS (elaborada en JAVA, JSP y PHP) que permite automatizar el modelo propuesto, adem谩s, incluye las formas morfosint谩cticas y las reglas sem谩nticas definidas en esta tesis, (vii) obtener de manera semiautom谩tica el diagrama de objetivos de KAOS, (viii) realizar la evaluaci贸n del modelo mediante la experimentaci贸n y el an谩lisis de los resultados obtenidos, los cuales fueron confrontados con varios casos de estudio registrados en la literatura cient铆fica, en los experimentos se analizaron las caracter铆sticas de la exhaustividad, la precisi贸n, la correctitud, la completitud y la consistencia de los elementos b谩sicos (objetivo, entidad, operaci贸n y agente).Abstract: The elicitation and validation of software requirements are specific activities belonging to software engineering which are performed in the early stages of the software life cycle, namely, definition and analysis. In these phases the goal is to capture the requirements to be met by the system (software) and transform them into conceptual models that explain the significant components of the problem area. However, there are problems in the conception of the products obtained in these phases because of: (i) the communication gap existing between the stakeholder (user) and the analyst due to limited or insufficient communication caused by the differences in their specialties, and (ii) the verbal ambiguity present in the universe of discourse. These problems make it impossible to correctly identify and validate the requirements that must be met by the system (software). Likewise, they increase the cost of the final product because errors must be corrected during the system's (software) implementation and production stages. In order to: (i) improve the results of the requirements elicitation and validation phases, and (ii) reduce the communication gap between the stakeholder and the analyst, a number of conceptual schemes are used. One of such is the KAOS (Knowledge Acquisition in Automated Specification) diagram, which allows users to identify and validate the requirements associated with the system (software). Furthermore, the UML diagrams, which belong to the third phase (design) of the software life cycle and are a part of the analyst's domain, can be obtained from this diagram. However, the following problems have been observed in the various studies which specify or use the KAOS goal diagram: (i) lack of consistency between natural language and the basic components of the KAOS goal diagram, (ii) lack of terminological tools that can be used to minimize the semantic ambiguity in the universe of discourse, (iii) lack of semi-automatic validation of software requirements performed by the stakeholder during the initial stage, and (iv) the corresponding goal diagram is not obtained semi-automatically. In order to solve the problems stated in the preceding paragraphs, the following objectives where achieved in this doctoral dissertation: (i) characterize the components of the KAOS goal diagram. (ii) Build an Ontology that represents the components of the KAOS goal diagram more accurately. (iii) Define a set of morphosyntactic forms which make it possible to extract the basic components of the KAOS goal diagram from natural language (goal, entity, operation and agent) to solve the problem of consistency between natural language and the basic components of the KAOS goal diagram. (iv) Define a set of semantic rules that make it possible to minimize the semantic ambiguity found in the universe of discourse that negatively affects the activities associated with software requirements elicitation and validation. (v) Create a terminology processing model for eliciting and validating the software requirements expressed in natural language, with the help of the user and in an interactive manner. (vi) Develop the NL2KAOS application (written in JAVA, JSP and PHP) which automates the proposed model and includes the morphosyntactic forms and semantic rules defined in this dissertation. (vii) Semi-automatically obtain the KAOS goal diagram. (viii) Evaluate the model by experimenting and analyzing the results obtained; such results were compared with a number of case studies appearing in the scientific literature. Additionally, the exhaustive, precision, correctness, completeness and consistency of the basic components (goal, entity, operation and agent).Doctorad

    Erratum to: On the interplay between consistency, completeness, and correctness in requirements evolution (vol 45, pg 993, 2003)

    No full text
    The initial expression of requirements for a computer-based system is often informal and possibly vague. Requirements engineers need to examine this often incomplete and inconsistent brief expression of needs. Based on the available knowledge and expertise, assumptions are made and conclusions are deduced to transform this "rough sketch" into more complete, consistent, and hence correct requirements. This paper addresses the question of how to characterize these properties in an evolutionary framework, and what relationships link these properties to a customer's view of correctness. Moreover, we describe in rigorous terms the dierent kinds of validation checks that must be performed on dierent parts of a requirements specication in order to ensure that errors (i.e., cases of inconsistency and incompleteness) are detected and marked as such, leading to better quality requirements
    corecore