10 research outputs found

    Simple Framework for Efficient Development of the Functional Requirement Verification-specific Language

    Get PDF
    Докторска теза анализира предлог за имплементацију верификације функционалних програмских захтева. Предмет истраживања је проналажење свих релевантних стандарда, препорука и најбољих пракси, а затим особина и функционалности прате дате стандарде и препоруке у области верификације. Истраживање потом проналази постојећа релевантна решења и њихову усклађеност са датим особинама и функционалностима. Резултат истраживања је развој доменски-специфичног језика за верификацију функсионалних програмских захтјева који имплементира све особине и функционалности чиме потврђује исправност концепта.Doktorska teza analizira predlog za implementaciju verifikacije funkcionalnih programskih zahteva. Predmet istraživanja je pronalaženje svih relevantnih standarda, preporuka i najboljih praksi, a zatim osobina i funkcionalnosti prate date standarde i preporuke u oblasti verifikacije. Istraživanje potom pronalazi postojeća relevantna rešenja i njihovu usklađenost sa datim osobinama i funkcionalnostima. Rezultat istraživanja je razvoj domenski-specifičnog jezika za verifikaciju funksionalnih programskih zahtjeva koji implementira sve osobine i funkcionalnosti čime potvrđuje ispravnost koncepta.The doctoral thesis analyzes the proposal for implementing the verification of functional software requirements. The subject of the research is to find all relevant standards, recommendations, and best practices, and then to examine the features and functionalities that follow the given standards and recommendations in the field of verification. The research then identifies existing relevant solutions and their compatibility with the given features and functionalities. The result of the research is the development of a domain-specific programming language for the verification of functional requitements that implements all the features and functionalities, thus confirming the correctness of the concept

    Model Based Testing - From requirements to tests

    Get PDF
    A automação de testes de software reduz significativamente o esforço, o tempo e o custo total do processo de testes ao longo do ciclo de desenvolvimento do produto. Model-Based Testing (MBT) é uma técnica de teste de software em que casos de teste são gerados a partir de um modelo, um formato intermediário de requisitos, que fornece vários detalhes técnicos de um determinado sistema de software. Desta forma, é possível obter casos de teste a partir de modelos de requisitos para conseguir uma automação e sistematização do processo de teste, de acordo com os critérios de cobertura definidos.RSL, termo para "Requirement Specification Language", é uma linguagem formal para apoiar e melhorar a produção de especificação de requisitos de sistema (SRS). Desenvolvido no Instituto Superior Técnico da Universidade de Lisboa, esta abordagem organiza diferentes aspectos da Engenharia de Requisitos (RE) em vários níveis através de um conjunto de expressões lógicas. Estas expressões são definidas através de padrões linguísticos, regras gramaticais que mapeiam a produção de frases textuais compreensíveis e coerentes. Desta forma, reduz-se a lacuna entre a representação de requisitos e da linguagem natural, a principal fonte de problemas de qualidade dos requisitos (incorreção, inconsistência, incompletude e ambiguidade).Este trabalho de dissertação apresenta o TSL - "Testing Specification Language", uma abordagem MBT para especificação formal e legível de casos de teste que se baseia na nomenclatura e gramática definida pelo RSL. Pela aplicação de técnicas de design de testes por caixa preta, o TSL permite a construção de três padrões de teste de requisitos, na perspectiva de testes de aceitação, que estão expressos na abordagem RSL. Nomeadamente, Análise de Domínio (criação de classes de equivalência e análise de valores limite para a definição de valores de dados estruturais); Testes de casos de uso (derivação de testes a partir dos vários fluxos de evento explícitos pelos casos de uso); e testes de máquinas de estado (extração de sequência de estados a partir de autómatos finitos).A metodologia desenvolvida foi aplicada num estudo de caso, um sistema fictício e simples de informação empresarial , denominado de "Billing System". Este exemplo permite ilustrar como o TSL suporta o ciclo de desenvolvimento de testes como um processo automizado e a verificação da consistência interna dos modelos de especificação RSL, levando a uma maior qualidade de requisitos.Automating software testing can significantly reduce the effort, time and cost of software testing throughout the entire development life cycle. Model-Based Testing (MBT) is a software testing technique upon which test cases are generated from a model, an intermediate format requirements document, which provides multiple technical concerns of a given software system. This way it is possible to obtain test cases from requirements models to achieve an automation and systematization of the test process, according to certain coverage criteria. RSL stands for "Requirements Specification Language", which is a formal language to support and improve the production of system requirements specification (SRS). Developed at Instituto Superior Técnico, Universidade de Lisboa, this approach arranges the different aspects of Requirement Engineering (RE) into several views containing a set of logical constructs. These constructs are defined as linguistic patterns, grammatical rules that guide the production of understandable and coherent textual sentences. Closing the gap of requirements representation and natural language, which is the root of many requirements quality problems (incorrection, inconsistency, incompleteness, and ambiguousness). This research presents the TSL, acronym for "Testing Specification Language", a model-based testing approach for formal and human-readable specification of test cases that is based on the nomenclature and grammar defined by RSL. By applying Black-Box testing design techniques, TSL allows the construction of three different requirement test patterns, from the perspective of acceptance tests, that are expressed in the RSL approach. Namely, Domain Analysis (equivalence partitioning and boundary value analysis for the definition of structural data class values); Use Case Testing (derivation of tests from the various process flows expressed by the use cases); and State Machine Testing (covering the sequence of states from event-based state transitions). The methodology developed was applied in a case study, a simple fictitious business information system, named "Billing system". This illustrates how TSL supports the testing development cycle as an end-to-end process and the verification of the internal consistency of RSL specification models, leading to an increasing quality of requirements

    Model Defects in Evolving Software Product Lines: A Review of Literature

    Get PDF
    Software products lines (SPLs) are long living systems that undergo several evolutions throughout their lifetime due to many reasons related to technology, strategy, business, etc. These evolutions can be the source of several defects that impact the different artefacts of SPLs, namely requirements, models, architecture and code. Many studies in the literature have dealt with the correction of defects in software product lines, but to our knowledge, no reviews have been carried out to provide an extensive overview of these studies. In this paper, we present a literature review of model defects in software product lines. The purpose of this review is to enumerate the different defects discussed in literature and to present the approaches proposed to detect and correct them. The findings of this review reveal new research leads to explore in this issue

    Model Based Testing - From requirements to tests

    Get PDF

    An evaluation of the challenges of Multilingualism in Data Warehouse development

    Get PDF
    In this paper we discuss Business Intelligence and define what is meant by support for Multilingualism in a Business Intelligence reporting context. We identify support for Multilingualism as a challenging issue which has implications for data warehouse design and reporting performance. Data warehouses are a core component of most Business Intelligence systems and the star schema is the approach most widely used to develop data warehouses and dimensional Data Marts. We discuss the way in which Multilingualism can be supported in the Star Schema and identify that current approaches have serious limitations which include data redundancy and data manipulation, performance and maintenance issues. We propose a new approach to enable the optimal application of multilingualism in Business Intelligence. The proposed approach was found to produce satisfactory results when used in a proof-of-concept environment. Future work will include testing the approach in an enterprise environmen

    Experimental Evaluation of Growing and Pruning Hyper Basis Function Neural Networks Trained with Extended Information Filter

    Get PDF
    In this paper we test Extended Information Filter (EIF) for sequential training of Hyper Basis Function Neural Networks with growing and pruning ability (HBF-GP). The HBF neuron allows different scaling of input dimensions to provide better generalization property when dealing with complex nonlinear problems in engineering practice. The main intuition behind HBF is in generalization of Gaussian type of neuron that applies Mahalanobis-like distance as a distance metrics between input training sample and prototype vector. We exploit concept of neuron’s significance and allow growing and pruning of HBF neurons during sequential learning process. From engineer’s perspective, EIF is attractive for training of neural networks because it allows a designer to have scarce initial knowledge of the system/problem. Extensive experimental study shows that HBF neural network trained with EIF achieves same prediction error and compactness of network topology when compared to EKF, but without the need to know initial state uncertainty, which is its main advantage over EKF

    Bioinspired metaheuristic algorithms for global optimization

    Get PDF
    This paper presents concise comparison study of newly developed bioinspired algorithms for global optimization problems. Three different metaheuristic techniques, namely Accelerated Particle Swarm Optimization (APSO), Firefly Algorithm (FA), and Grey Wolf Optimizer (GWO) are investigated and implemented in Matlab environment. These methods are compared on four unimodal and multimodal nonlinear functions in order to find global optimum values. Computational results indicate that GWO outperforms other intelligent techniques, and that all aforementioned algorithms can be successfully used for optimization of continuous functions

    Definition and use of software requirement patterns in requirements engineering

    Get PDF
    The final quality of software products and services depends on the requirements stated in the Software Requirements Specifications (SRSs). However, some problems like ambiguity, incompleteness and inconsistency have been reported in the writing of SRSs, especially when natural language is used. Requirements reuse has been proposed as a key asset for requirements engineers to efficiently elicit, validate and document software requirements and, as a consequence, obtain SRSs of better quality through more effective engineering processes. Among all the possible techniques to achieve reuse, patterns hold a prominent position. In their most classical form, patterns describe problems that occur over and over again, and then describe the core of the solution to these problems. Software engineering practitioners have adopted the notion of pattern in several contexts, remarkably related to software design (e.g., design patterns and software architectural patterns), but also in other software development phases, both earlier and later. Following this strategy, requirement patterns emerge as a natural way to reuse knowledge during the Requirements Engineering (RE) stage. Although there have been several techniques proposed to reuse requirements, it has been observed that no concrete proposal has achieved a wide acceptance, neither any covered all the necessary elements to encourage organizations to adopt requirements reuse. As a consequence, this thesis proposes the use of Software Requirement Patterns (SRPs) as a means to capture and reuse requirements knowledge in the context of information technology projects. Following the typical context-problem-solution structure of patterns, an SRP mainly consists of: a template (solution) that may generate one or more requirements when applied in a certain project, and some information (context-problem) to identify its applicability in that project. To facilitate their use, SRPs are encapsulated inside the PABRE (PAttern-Based Requirements Elicitation) framework. The framework covers all the elements that could be critical for the adoption of a requirements reuse technique. Specifically, the framework includes: - A metamodel that describes the structure and semantics of SRPs and their organization inside a catalogue. - An SRP catalogue composed by non-functional, non-technical and functional SRPs, the functional ones being specific for the content management system domain. - A method for guiding the use of an SRP catalogue during requirements elicitation and specification, as well as another one for constructing and updating it. - An economic model to perform cost-benefit analysis on the adoption of SRPs based on return-on-investment. - The PABRE system as technological support. In order to analyse the benefits and drawbacks of the SRPs proposed in this thesis, two empirical studies have been carried out to investigate the perception of participants about requirement patterns in general and SRPs in particular. The first one is an exploratory survey addressed to information technology people with industrial experience in RE, which analyses the current state of the practice of requirement patterns approaches. The second one corresponds to a set of semi-structured interviews, focussed on the SRP approach, conducted to requirements engineers of Swedish organizations. Moreover, as it has been discovered that there are few empirical studies showing the state of the practice of requirements reuse in industry, the first study also explores the current situation of requirements reuse practices in organizations.La qualitat final dels productes i serveis de software depèn del requisits definits en l’especificació de Requisits Software (ERS). Tot i així, alguns problemes com la ambigüitat, incompletesa i inconsistència han sigut detectats en la escriptura dels ERS, especialment quan el llenguatge natural és usat per escriure’ls. La reutilització de requisits ha sigut proposada com un recurs clau pels enginyers de requisits per tal d’obtenir, validar i documentar requisits software i, com a conseqüència, obtenir ERS de millor qualitat usant processos d’enginyeria més efectius. Entre totes les tècniques possibles per aconseguir la reutilització, els patrons tenen una posició destacada. En la seva forma més clàssica, els patrons descriuen problemes que ocorren sovint, i després descriuen la part central de la solució a aquests problemes. Els professionals de la enginyeria del software han adoptat la noció de patró en diferents àmbits, especialment en els relacionats amb el disseny del software (per exemple, els patrons de disseny i els patrons d’arquitectura del software), però també en altres etapes del desenvolupament del software, tant abans com després del seu disseny. Seguint aquesta estratègia, els patrons de requisits emergeixen com una manera natural de reutilitzar coneixement durant l’etapa d’enginyeria de requisits. Tot i que hi ha hagut varies tècniques proposades per reutilitzar requisits, s’ha observat que no hi ha cap proposta concreta que hagi aconseguit una àmplia acceptació, ni cap proposta completa que cobreixi tots els elements necessaris per animar a les organitzacions a adoptar la reutilització de requisits. Com a conseqüència, aquesta tesis proposa l’ús de Patrons de Requisits Software (en anglès Software Requirement Patterns o SRPs) com un medi per capturar i reutilitzar coneixement de requisits en l’àmbit de projectes de tecnologia de la informació. Seguint la estructura típica dels patrons de context-problema-solució, un SRP consisteix en: una plantilla (solució) que pot generar un o més requisits quan és aplicat en un projecte específic, i informació relacionada (context-problema) per identificar la seva aplicabilitat en un projecte. Per facilitar el seu ús, els SRP han sigut encapsulats dintre del framework PABRE (de l’anglès PAttern-Based Requirements Elicitation). El framework cobreix tots els elements que podrien ser crítics per adoptar una tècnica de reutilització de requisits. Més detalladament, el framework inclou: - Un meta model que descriu la estructura i semàntica dels SRPs i la seva organització dintre d’un catàleg.Postprint (published version
    corecore