13 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

    Ontological characterization of basics of kaos chart from natural language

    Get PDF
    En la ingeniería de software se utilizan diferentes tipos de diagramas para lograr la calidad que debe cumplir el sistema para desarrollar. El diagrama de objetivos de KAOS (Knowledge Acquisition in aut Omated Specification) es utilizado en las primeras fases del ciclo de vida de software (definición y análisis) para expresar a los interesados la importancia del sistema futuro. Sin embargo, en los trabajos que utilizan este diagrama no se logra identificar una automatización entre el lenguaje natural y los elementos básicos (objetivos, entidades, operaciones y agentes) que conforman dicho diagrama. En este artículo se propone la construcción de una ontología y la definición de un conjunto de reglas morfosintácticas y semánticas para: (i) caracterizar los elementos básicos a partir del uso del lenguaje natural en idioma español, (ii) minimizar la ambigüedad semántica presente en el universo del discurso, (iii) obtener automáticamente los elementos básicos, y (iv) elaborar automáticamente dicho diagrama.In software engineering a variety of diagrams are used for achieving the quality that the system-to-be should accomplish. The KAOS (Knowledge Acquisition in autOmated  Specification)  is  used in  the  initial  phases of  the  software  life-cycle,  for  expressing  to  the  stake-holders  the  importance  of  the  future  system.  However, in  the  works  that  use  this  diagram,  it  is  not identified an automation between natural language and the basic elements  (goals,  entities, operations  and  agents)  that compose such diagram. In this article, the building of an ontology and the definition of a set of morphosyntactic and  semantic  rules  are  proposed  for:  (i) characterizing the  basic  elements  based  on  their  use  in  the  Spanish natural language, (ii) minimizing the semantic ambiguity that exists in the domain of discourse, (iii) obtaining automatically the basic elements, and (iv) building automatically KAOS goal diagram

    Aplicación y problemas no resueltos del uso de objetivos en la ingeniería de software

    Get PDF
    En las diferentes áreas del conocimiento los primeros elementos que se deben identificar para solucionar un problema o una necesidad son los objetivos, los cuales permiten determinar los resultados que se deberán alcanzar. A partir de estos se determinan las metas, los procesos, las tareas y los responsables. Además, con base en los objetivos planteados se puede dar seguimiento a las actividades definidas para su respectivo logro y, finalmente, evaluar los resultados obtenidos. En este artículo se mostrará la manera como se definen y usan los objetivos desde las diversas disciplinas, especialmente en el área de la ingeniería de software; además, se caracterizarán las falencias encontradas.One of the first items which should be identified in resolving a problem or need is an objective in the various fields of knowledge as it enables determining which results must be achieved. Objectives are the starting point in identifying goals, processes, tasks and the people in charge; moreover, activities defined to fulfil their follow-up are based on a set of proposed objectives and enable evaluating results. This article shows how objectives can be defined and used in various fields, especially in software engineering, and depicts the flaws found

    CHARACTERIZATION OF THE ELEMENTS THE GOAL DIAGRAM KAOS FROM NATURAL LANGUAGE

    Get PDF
    La educción de requisitos de software es una actividad propia de la primera fase del ciclo de vida del software, en ésta, se utilizan diferentes diagramas que ayudan al analista a efectuar el proceso de identificación y validación de requisitos de software, entre éstos, se utiliza el diagrama de objetivos de KAOS que permite: (i) establecer las responsabilidades de los actores; y (ii) expresar a los interesados (usuarios) la importancia del software futuro. En los trabajos que utilizan el diagrama de objetivos subsisten problemas tales como: (i) el analista es quien elabora el diagrama de objetivos de manera subjetiva; y (ii) no se identifica la trazabilidad del diagrama de objetivos obtenido con relación al universo del discurso presentado por el interesado en lenguaje natural. En este artículo, se realiza la identificación de los elementos básicos (objetivo, requisito, actor) del diagrama de objetivos de KAOS a partir de: (i) El uso del lenguaje natural; y (ii) la definición de reglas gramaticales. Este proceso sirve como punto de partida para: (i) la identificación de los demás elementos que componen el diagrama de objetivos de KAOS; y (ii) la elaboración automática de dicho diagrama. Palabras clave: Objetivo, requisito, actor, educción, desarrollo.The software requirements elicitation is an activity for the first phase of the software life cycle, in this, they use different diagrams that help the analyst to make the process of identifying and validating software requirements, among these, is used diagram KAOS goal enabling: (i) establish the responsibilities of the actors, and (ii) to express stakeholders (users) the importance of future software. In studies using the diagram of objectives still problems such as: (i) the analyst who prepared the diagram of objectives subjectively, and (ii) not identified traceability objectives diagram obtained in relation to the universe of discourse presented by the applicant in natural language. In this paper, we make the identification of basic elements (objective requirement actor) diagram KAOS goal from: (i) The use of natural language, and (ii) the definition of grammar rules. Thisprocess serves as the basis for: (i) identification of the other elements of the diagram KAOS goal, and (ii) the automatic production of this diagram

    Definición de un método para realizar la educción de requisitos de software a partir de la articulación del diagrama causa efecto con el diagrama de objetivos de kaos

    Get PDF
    El diagrama causa efecto y el diagrama de objetivos de KAOS son utilizados en la fase de definición y análisis de requisitos de software para reducir la brecha de comunicación entre analista y usuario. En la actualidad persisten algunos problemas durante el desarrollo del software como son: (i) la comunicación limitada, y (ii) la falta de validación de requisitos. Además, no existe una caracterización desde el lenguaje natural de los elementos básicos que componen el diagrama causa-efecto y el diagrama de objetivos de KAOS. Estos problemas no permiten una correcta identificación y validación de los requisitos para el desarrollo del software haciendo que se presenten correcciones en las etapas de implementación y producción del software. Este artículo propone (i) caracterizar desde el lenguaje natural los elementos básicos del diagrama causa efecto; (ii) los elementos básicos del diagrama de objetivos de KAOS; y (iii) articular el diagrama de objetivos de KAOS con el diagrama causa efecto. Palabras clave: Diagrama de Objetivos de KAOS, diagrama causa efecto, Ingeniería del software, educción de requisitos. ABSTRACTThe KAOS goal diagram and cause-effect diagram are used in the definition phase and analysis of software requirements to reduce the communication gap between analyst and stakeholder. At present, there are still some problems during software development, such as: (i) limited communication between stakeholder and the analyst, and (ii) the lack of validation of requirements between the analyst and the stakeholder. There is no natural language characterization of the basic elements making up the KAOS goal diagram and causeeffect diagram. These issues avoid the proper identification and validation of requirements for the software development, producing multiple corrections in the software implementation and production stages. Thispaper proposes (i) to characterize natural language from the basics of KAOS goal diagram; (ii) the basic elements of the cause and effect diagram; and (iii) articulate the cause and effect diagram with the KAOS goal diagram.Keywords: KAOS Goal Diagram, Cause and Effect Diagram, Software Engineering, Requirements Elicitation

    Caracterización De Los Verbos Usados En El Diagrama De Objetivos

    No full text
    Goal diagram has been used for a variety of purposes. First, it links stakeholder requirements and expectations to the organizational goals. Second, it establishes actor responsibilities. Third, it permits to explain the importance of the future software to the stakeholders. There are several works in goal diagram specification or use, and they exhibit some problems: goal diagram is commonly made by analysts in a subjective manner (objectives are identified from stakeholder information), objectives are often confused with operations, some works use a small sets of verbs, and sometimes objectives are obtained from scenarios (as a contrast, scenarios are obtained in a more advanced phase of software life cycle than objectives). We made, in this paper, the characterization of goal verbs from the so-called Lexical Conceptual Structures, the thematic roles, and a special linguistic classification of verbs. This process serves as a starting point for automatic obtaining of goal diagram. Furthermore, we implement an algorithm for extracting goal verbs from a computational lexicon.El diagrama de objetivos tiene varios usos: liga los requisitos y expectativas del interesado con los objetivos de la organización, establece las responsabilidades de los actores y permite explicar a los interesados la importancia del software futuro. En los diferentes trabajos en que se especifica o se usa el diagrama de objetivos subsisten algunos problemas como: el analista es, por lo general, quien elabora el diagrama de manera subjetiva (identificando los objetivos a partir de la información suministrada por el interesado), se presentan confusiones entre objetivos y operaciones, se usan conjuntos reducidos de verbos de objetivos y se obtienen los objetivos a partir de los escenarios—los cuales por lo general se elaboran en una fase más avanzada del ciclo de vida del software. En este artículo se realiza la caracterización de los verbos de objetivos a partir de las Estructuras Léxicas Conceptuales de los verbos, los Roles Temáticos y una clasificación lingüística de los verbos. Este proceso sirve como punto de partida para la elaboración automática del diagrama de objetivos. Además, se implementa un algoritmo que permite extraer de un lexicón computacional los verbos que cumplen con esta caracterizació

    Caracterización de los verbos usados en el diagrama de objetivos

    Get PDF
    El diagrama de objetivos tiene varios usos: liga los requisitos y expectativas del interesado con los objetivos de la organización, establece las responsabilidades de los actores y permite explicar a los interesados la importancia del software futuro. En los diferentes trabajos en que se especifica o se usa el diagrama de objetivos subsisten algunos problemas como: el analista es, por lo general, quien elabora el diagrama de manera subjetiva (identificando los objetivos a partir de la información suministrada por el interesado), se presentan confusiones entre objetivos y operaciones, se usan conjuntos reducidos de verbos de objetivos y se obtienen los objetivos a partir de los escenarios—los cuales por lo general se elaboran en una fase más avanzada del ciclo de vida del software. En este artículo se realiza la caracterización de los verbos de objetivos a partir de las Estructuras Léxicas Conceptuales de los verbos, los Roles Temáticos y una clasificación lingüística de los verbos. Este proceso sirve como punto de partida para la elaboración automática del diagrama de objetivos. Además, se implementa un algoritmo que permite extraer de un lexicón computacional los verbos que cumplen con esta caracterización

    Caracterización ontológica de elementos básicos del diagrama de kaos a partir de lenguaje natural

    No full text
    En la ingeniería de software se utilizan diferentes tipos de diagramas para lograr la calidad que debe cumplir el sistema para desarrollar. El diagrama de objetivos de KAOS (Knowledge Acquisition in aut Omated Specification) es utilizado en las primeras fases del ciclo de vida de software (definición y análisis) para expresar a los interesados la importancia del sistema futuro. Sin embargo, en los trabajos que utilizan este diagrama no se logra identificar una automatización entre el lenguaje natural y los elementos básicos (objetivos, entidades, operaciones y agentes) que conforman dicho diagrama. En este artículo se propone la construcción de una ontología y la definición de un conjunto de reglas morfosintácticas y semánticas para: (i) caracterizar los elementos básicos a partir del uso del lenguaje natural en idioma español, (ii) minimizar la ambigüedad semántica presente en el universo del discurso, (iii) obtener automáticamente los elementos básicos, y (iv) elaborar automáticamente dicho diagrama

    The application of and unresolved problems regarding the use of objectives in software engineering

    No full text
    One of the first items which should be identified in resolving a problem or need is an objective in the various fields of knowledge as it enables determining which results must be achieved. Objectives are the starting point in identifying goals, processes, tasks and the people in charge; moreover, activities defined to fulfil their follow-up are based on a set of proposed objectives and enable evaluating results. This article shows how objectives can be defined and used in various fields, especially in software engineering, and depicts the flaws found.En las diferentes áreas del conocimiento los primeros elementos que se deben identificar para solucionar un problema o una necesidad son los objetivos, los cuales permiten determinar los resultados que se deberán alcanzar. A partir de estos se determinan las metas, los procesos, las tareas y los responsables. Además, con base en los objetivos planteados se puede dar seguimiento a las actividades definidas para su respectivo logro y, finalmente, evaluar los resultados obtenidos. En este artículo se mostrará la manera como se definen y usan los objetivos desde las diversas disciplinas, especialmente en el área de la ingeniería de software; además, se caracterizarán las falencias encontradas

    The application of and unresolved problems regarding the use of objectives in software engineering

    No full text
    One of the first items which should be identified in resolving a problem or need is an objective in the various fields of knowledge as it enables determining which results must be achieved. Objectives are the starting point in identifying goals, processes, tasks and the people in charge; moreover, activities defined to fulfil their follow-up are based on a set of proposed objectives and enable evaluating results. This article shows how objectives can be defined and used in various fields, especially in software engineering, and depicts the flaws found
    corecore