7 research outputs found
NL-based automated software requirements elicitation and specification
This paper presents a novel approach to automate the process of software requirements elicitation and specification. The software requirements elicitation is perhaps the most important phase of software development as a small error at this stage can result in absurd software designs and implementations. The automation of the initial phase (such as requirement elicitation) phase can also contribute to a long standing challenge of automated software development. The presented approach is based on Semantic of Business Vocabulary and Rules (SBVR), an OMG’s recent standard. We have also developed a prototype tool SR-Elicitor (an Eclipse plugin), which can be used by software engineers to record and automatically transform the natural language software requirements to SBVR software requirements specification. The major contribution of the presented research is to demonstrate the potential of SBVR based approach, implemented in a prototype tool, proposed to improve the process of requirements elicitation and specification
Selecting Communication Artifacts for Requirements Engineering
In this paper, we identify and explicate the factors that lead organizations to select particular communication artifacts in the requirements engineering (RE) process and to determine the communication artifacts that they prefer in particular RE phases and with which RE methods. We do so to improve RE communication. Information systems (IS) projects often fail due to poorly specified or misunderstood requirements. We articulate a process framework for RE, which serves as a basis for our discussing and analyzing RE communication artifacts. In doing so, we extend the RE process by adding two transitional phases (pre-validation and pre-approval) to ensure that organizations identify all of the essential requirements. We employ qualitative methods to identify the criteria for selecting communication artifacts. We discover that organizational culture plays a key role in this process. Our findings suggest that the traditional phases occur more in organizations that use waterfall development processes than in organizations that agile development methods
Formalización algebraica del método de arriba hacia abajo de diseño tecnológico
La literatura sobre ingeniería del software contiene numerosas propuestas para sistematizar las operaciones de diseño y ayudar en la toma de decisiones relacionadas con las soluciones a los problemas. Este artículo propone un marco conceptual para justificar la técnica de arriba hacia abajo que se sigue en el diseño tecnológico. El punto de partida es el enunciado de un problema en su versión de conjetura inicial, esto es, una hipótesis, y consta de una fase inicial que es esencialmente del ámbito del problema, y una segunda fase que es esencialmente del dominio de la solución. La fase del dominio del problema aborda una técnica para expresar el enunciado del problema con formato de una definición correcta y exacta, contextualizada en un dominio de referencia que es un modelo del problema y basada en una estructura sintáctica preestablecida. Esta fase produce una especificación formal del problema con formato de una expresión lógica o matemática que refiere el problema a un modelo y que denota, desde un enfoque externo al problema, los objetivos que se persigue que la solución satisfaga. La fase del dominio de la solución obtiene una especificación estructural de una solución al problema, que consiste en un árbol descriptor de la jerarquía de los módulos que componen la estructura y un grafo de las relaciones entre módulos, es decir, de la organización de los módulos. El fundamento del proceso de tomar decisiones de arriba hacia abajo consiste en clasificar las acciones que conforman el método de diseño y en establecer una ordenación entre las clases de acciones encontradas. Se propone un caso de estudio sencillo para poner de relieve el alcance de esta propuesta
User Review Analysis for Requirement Elicitation: Thesis and the framework prototype's source code
Online reviews are an important channel for requirement elicitation. However, requirement engineers face challenges when analysing online user reviews, such as data volumes, technical supports, existing techniques, and legal barriers. Juan Wang proposes a framework solving user review analysis problems for the purpose of requirement elicitation that sets up a channel from downloading user reviews to structured analysis data. The main contributions of her work are: (1) the thesis proposed a framework to solve the user review analysis problem for requirement elicitation; (2) the prototype of this framework proves its feasibility; (3) the experiments prove the effectiveness and efficiency of this framework.
This resource here is the latest version of Juan Wang's PhD thesis "User Review Analysis for Requirement Elicitation" and all the source code of the prototype for the framework as the results of her thesis
Recommended from our members
Leveraging the Power of Crowds: Automated Test Report Processing for The Maintenance of Mobile Applications
Crowdsourcing is an emerging distributed problem-solving model combining human and machine computation. It collects intelligence and knowledge from a large and diverse workforce to complete complex tasks. In the software engineering domain, crowdsourced techniques have been adopted to facilitate various tasks, such as design, testing, debugging, development, and so on. Specifically, in crowdsourced testing, crowdsourced workers are given testing tasks to perform and submit their feedback in the form of test reports. One of the key advantages of crowdsourced testing is that it is capable of providing engineers software engineers with domain knowledge and feedback from a large number of real users. Based on diverse software and hardware settings of these users, engineers can bugs that are not caught by traditional quality assurance techniques. Such benefits are particularly ideal for mobile application testing, which needs rapid development-and-deployment iterations and support diverse execution environments. However, crowdsourced testing naturally generates an overwhelming number of crowdsourced test reports, and inspecting such a large number of reports becomes a time-consuming yet inevitable task. This dissertation presents a series of techniques, tools and experiments to assist in crowdsourced report processing. These techniques are designed for improving this task in multiple aspects: 1. prioritizing crowdsourced report to assist engineers in finding as many unique bugs as possible, and as quickly as possible; 2. grouping crowdsourced report to assist engineers in identifying the representative ones in a short time; 3. summarizing the duplicate reports to provide engineers with a concise and accurate understanding of a group of reports; In the first step, I present a text-analysis-based technique to prioritize test reports for manual inspection. This technique leverages two key strategies: (1) a diversity strategy to help developers inspect a wide variety of test reports and to avoid duplicates and wasted effort on falsely classified faulty behavior, and (2) a risk-assessment strategy to help developers identify test reports that may be more likely to be fault-revealing based on past observations.Together, these two strategies form our technique to prioritize test reports in crowdsourced testing. Moreover, in the mobile testing domain, test reports often consist of more screenshots and shorter descriptive text, and thus text-analysis-based techniques may be ineffective or inapplicable. The shortage and ambiguity of natural-language text information and the well-defined screenshots of activity views within mobile applications motivate me to propose a novel technique based on using image understanding for multi-objective test-report prioritization. This technique employs the Spatial Pyramid Matching (SPM) technique to measure the similarity of the screenshots, and apply the natural-language processing technique to measure the distance between the text of test reports. Next, I design and implement CTRAS: a novel approach to leveraging duplicates to enrich the content of bug descriptions and improve the efficiency of inspecting these reports. CTRAS is capable of automatically aggregating duplicates based on both textual information and screenshots, and further summarizes the duplicate test reports into a comprehensive and comprehensible report.I validate all of these techniques on industrial data by collaborating with several companies. The results show my techniques can improve both the efficiency and effectiveness of crowdsourced test report processing. Also, I suggest settings for different usage scenarios and discuss future research directions
A semi-automatic alignment method for math educational standards using the MP (materialization pattern) model
Educational standards alignment, which matches similar or equivalent concepts of educational standards, is a necessary task for educational resource discovery and retrieval. Automated or semi-automated alignment systems for educational standards have been recently available. However, existing systems frequently result in inconsistency in interpreting a correct alignment or give only a “yes” or no” Boolean decision for alignment. In this research, we present a novel semi-automatic alignment method for math educational standards that goes beyond simple Boolean decision making. Our approach gives seven different degrees of alignments: Strongly Fully-aligned (SFA), Weakly Fully-aligned (WFA), Partially-aligned*** (PA***), Partially-aligned** (PA**), Partially-aligned* (PA*), Poorly-aligned (PR), and Not-aligned (NA). We aim to clarify and extend the notion of alignment for math educational standards, and to broaden categories of resource discovery and retrieval. First, we propose the MP (Materialization Pattern) model for representing the semantics of math educational standards for the purpose of aligning these standards. The MP model captures the semantics of English sentences used in math educational standards based on the Reed-Kellogg sentence diagram. We develop a semi-automatic tool, MPViz, for creating the MP model using the UML notation. The MPViz also converts an MP diagram to two graphs—a verb-phrase graph and a noun-phrase graph—which facilitate the process of automatic alignments. We align math educational standard statements using graph matching with the Bloomtaxonomy, the WordNet, and taxonomies of math concepts. We also develop a semiautomatic tool, MPComp, for aligning math educational standards. This dissertation describes a novel semi-automatic alignment method that utilizes the MP modeling and graph matching. Our experiments show that our alignment method provides the result that is comparable to human judgment. The contributions of our alignment method are as follows: 1) We propose the MP model that can explicitly model the semantics of English sentence structures used in math educational standards; 2) Using the MP model we develop a semi-automatic alignment method that produces seven different degrees of alignments, instead of simple Boolean decisions in existing alignment systems; 3) The multiple degrees of alignments empower education professionals by broadening categories of search or retrieval for educational resources.Ph.D., Information Science and Technology -- Drexel University, 201
Simulation product fidelity: a qualitative & quantitative system engineering approach
La modélisation informatique et la simulation sont des activités de plus en plus répandues lors de la conception de systèmes complexes et critiques tels que ceux embarqués dans les avions. Une proposition pour la conception et réalisation d'abstractions compatibles avec les objectifs de simulation est présentée basés sur la théorie de l'informatique, le contrôle et le système des concepts d'ingénierie. Il adresse deux problèmes fondamentaux de fidélité dans la simulation, c'est-à-dire, pour une spécification du système et quelques propriétés d'intérêt, comment extraire des abstractions pour définir une architecture de produit de simulation et jusqu'où quel point le comportement du modèle de simulation représente la spécification du système. Une notion générale de cette fidélité de la simulation, tant architecturale et comportementale, est expliquée dans les notions du cadre expérimental et discuté dans le contexte des abstractions de modélisation et des relations d'inclusion. Une approche semi-formelle basée sur l'ontologie pour construire et définir l'architecture de produit de simulation est proposée et démontrée sur une étude d'échelle industrielle. Une approche formelle basée sur le jeu théorique et méthode formelle est proposée pour différentes classes de modèles des systèmes et des simulations avec un développement d'outils de prototype et cas des études. Les problèmes dans la recherche et implémentation de ce cadre de fidélité sont discutées particulièrement dans un contexte industriel.In using Modeling and Simulation for the system Verification & Validation activities, often the difficulty is finding and
implementing consistent abstractions to model the system being simulated with respect to the simulation requirements. A proposition for the unified design and implementation of modeling abstractions consistent with the simulation objectives based on the computer science, control and system engineering concepts is presented. It addresses two fundamental problems of fidelity in simulation, namely, for a given system specification and some properties of interest, how to extract modeling abstractions to define a simulation product architecture and how far does the behaviour of the simulation model represents the system specification. A general notion of this simulation fidelity, both architectural and behavioural, in system verification and validation is explained in the established notions of the experimental frame and discussed in the context of modeling abstractions and inclusion relations. A semi-formal ontology based domain model approach to build and define the
simulation product architecture is proposed with a real industrial scale study. A formal approach based on game theoretic quantitative system refinement notions is proposed for different class of system and simulation models with a prototype tool development and case studies. Challenges in research and implementation of this formal and semi-formal fidelity framework especially in an industrial context are discussed