872 resultados para requirements specification


Relevância:

60.00% 60.00%

Publicador:

Resumo:

In the context of Software Engineering, web accessibility is gaining more room, establishing itself as an important quality attribute. This fact is due to initiatives of institutions such as the W3C (World Wide Web Consortium) and the introduction of norms and laws such as Section 508 that underlie the importance of developing accessible Web sites and applications. Despite these improvements, the lack of web accessibility is still a persistent problem, and could be related to the moment or phase in which this requirement is solved within the development process. From the moment when Web accessibility is generally regarded as a programming problem or treated when the application is already developed entirely. Thus, consider accessibility already during activities of analysis and requirements specification shows itself a strategy to facilitate project progress, avoiding rework in advanced phases of software development because of possible errors, or omissions in the elicitation. The objective of this research is to develop a method and a tool to support requirements elicitation of web accessibility. The strategy for the requirements elicitation of this method is grounded by the Goal-Oriented approach NFR Framework and the use of catalogs NFRs, created based on the guidelines contained in WCAG 2.0 (Web Content Accessibility Guideline) proposed by W3C

Relevância:

60.00% 60.00%

Publicador:

Resumo:

En la actualidad existe una gran expectación ante la introducción de nuevas herramientas y métodos para el desarrollo de productos software, que permitirán en un futuro próximo un planteamiento de ingeniería del proceso de producción software. Las nuevas metodologías que empiezan a esbozarse suponen un enfoque integral del problema abarcando todas las fases del esquema productivo. Sin embargo el grado de automatización conseguido en el proceso de construcción de sistemas es muy bajo y éste está centrado en las últimas fases del ciclo de vida del software, consiguiéndose así una reducción poco significativa de sus costes y, lo que es aún más importante, sin garantizar la calidad de los productos software obtenidos. Esta tesis define una metodología de desarrollo software estructurada que se puede automatizar, es decir una metodología CASE. La metodología que se presenta se ajusta al modelo de ciclo de desarrollo CASE, que consta de las fases de análisis, diseño y pruebas; siendo su ámbito de aplicación los sistemas de información. Se establecen inicialmente los principios básicos sobre los que la metodología CASE se asienta. Posteriormente, y puesto que la metodología se inicia con la fijación de los objetivos de la empresa que demanda un sistema informático, se emplean técnicas que sirvan de recogida y validación de la información, que proporcionan a la vez un lenguaje de comunicación fácil entre usuarios finales e informáticos. Además, estas mismas técnicas detallarán de una manera completa, consistente y sin ambigüedad todos los requisitos del sistema. Asimismo, se presentan un conjunto de técnicas y algoritmos para conseguir que desde la especificación de requisitos del sistema se logre una automatización tanto del diseño lógico del Modelo de Procesos como del Modelo de Datos, validados ambos conforme a la especificación de requisitos previa. Por último se definen unos procedimientos formales que indican el conjunto de actividades a realizar en el proceso de construcción y cómo llevarlas a cabo, consiguiendo de esta manera una integridad en las distintas etapas del proceso de desarrollo.---ABSTRACT---Nowdays there is a great expectation with regard to the introduction of new tools and methods for the software products development that, in the very near future will allow, an engineering approach in the software development process. New methodologies, just emerging, imply an integral approach to the problem, including all the productive scheme stages. However, the automatization degree obtained in the systems construction process is very low and focused on the last phases of the software lifecycle, which means that the costs reduction obtained is irrelevant and, which is more important, the quality of the software products is not guaranteed. This thesis defines an structured software development methodology that can be automated, that is a CASE methodology. Such a methodology is adapted to the CASE development cycle-model, which consists in analysis, design and testing phases, being the information systems its field of application. Firstly, we present the basic principies on which CASE methodology is based. Secondly, since the methodology starts from fixing the objectives of the company demanding the automatization system, we use some techniques that are useful for gathering and validating the information, being at the same time an easy communication language between end-users and developers. Indeed, these same techniques will detail completely, consistently and non ambiguously all the system requirements. Likewise, a set of techniques and algorithms are shown in order to obtain, from the system requirements specification, an automatization of the Process Model logical design, and of the Data Model logical design. Those two models are validated according to the previous requirement specification. Finally, we define several formal procedures that suggest which set of activities to be accomplished in the construction process, and how to carry them out, getting in this way integrity and completness for the different stages of the development process.

Relevância:

60.00% 60.00%

Publicador:

Resumo:

La Ingeniería de Pruebas está especializada en la verificación y validación del Software,y formalmente se define como: “Proceso de desarrollo que emplea métodos rigurosos para evaluar la corrección y calidad del producto a lo largo de todo su ciclo de vida” [3]. Este proceso comprende un conjunto de métodos, procedimientos y técnicas formalmente definidas las cuales, usadas de forma sistemática, facilitan la identificación de la mayor cantidad de errores y fallos posibles de un software. Un software que pase un proceso riguroso de pruebas es un producto de calidad que seguramente facilitará la labor del Ingeniero de Software en la corrección de futuras incidencias, algunas de ellas generadas tras la implantación en el entorno real. Este proceso constituye un área de la Ingeniería del Software y una especialidad por tanto, de la misma. De forma simple, la consecución de una correcta Verificación y Validación del Software requiere de algunas actividades imprescindibles como: - Realizar un plan de pruebas del proyecto. - Actualizar dicho plan y corregirlo en caso necesario. - Revisar los documentos de análisis de requisitos. - Ejecutar las pruebas en las diferentes fases del desarrollo del proyecto. - Documentar el diseño y la ejecución de las pruebas. - Generar documentos con los resultados y anomalías de las pruebas ya ejecutadas. Actualmente, la Ingeniería de Pruebas no es muy reconocida como área de trabajo independiente sino más bien, un área inmersa dentro de la Ingeniería de Software. En el entorno laboral existe el perfil de Ingeniero de Pruebas, sin embargo pocos ingenieros de software tienen claro querer ser Ingenieros de Pruebas (probadores o testers) debido a que nunca han tenido la oportunidad de enfrentarse a actividades prácticas reales dentro de los centros de estudios universitarios donde cursan la carrera. Al ser un área de inherente ejercicio profesional, la parte correspondiente de la Ingeniería de Pruebas suele enfocarse desde un punto de vista teórico más que práctico. Hay muchas herramientas para la creación de pruebas y de ayuda para los ingenieros de pruebas, pero la mayoría son de pago o hechas a medida para grandes empresas que necesitan dicho software. Normalmente la gente conoce lo que es la Ingeniería de Pruebas únicamente cuando se empieza a adquirir experiencia en dicha área en el ejercicio profesional dentro de una empresa. Con lo cual, el acercamiento durante la carrera no necesariamente le ha ofrecido al profesional en Ingeniería, la oportunidad de trabajar en esta rama de la Ingeniería del Software y en algunos casos, NOVATests: Metodología y herramienta software de apoyo para los Ingenieros de Prueba Junior 4 los recién egresados comienzan su vida profesional con algún desconocimiento en este sentido. Es por el conjunto de estas razones, que mi intención en este proyecto es proponer una metodología y una herramienta software de apoyo a dicha metodología, para que los estudiantes de carreras de Ingeniería Software y afines, e ingenieros recién egresados con poca experiencia o ninguna en esta área (Ingenieros de Pruebas Junior), puedan poner en práctica las actividades de la Ingeniería de Pruebas dentro de un entorno lo más cercano posible al ejercicio de la labor profesional. De esta forma, podrían desarrollar las tareas propias de dicha área de una manera fácil e intuitiva, favoreciendo un mayor conocimiento y experiencia de la misma. ABSTRACT The software engineering is specialized in the verification and validation of Software and it is formally defined as: “Development process which by strict methods evaluates and corrects the quality of the product along its lifecycle”. This process contains a number of methods, procedures and techniques formally defined which used systematically make easier the identification of the highest quantity of error and failures within a Software. A software going through this rigorous process of tests will become a quality product that will help the software engineer`s work while correcting incidences. Some of them probably generated after the deployment in a real environment. This process belongs to the Software engineering and therefore it is a specialization itself. Simplifying, the correct verification and validation of a software requires some essential activities such as: -Create a Test Plan of the project - Update this Test Plan and correct if necessary - Check Requirement’s specification documents -Execute the different tests among all the phases of the project - Create the pertinent documentation about design and execution of these tests. - Generate the result documents and all the possible incidences the tests could contain. Currently, the Test engineering is not recognized as a work area but an area immerse within the Software engineering. The professional environment includes the role of Test engineer, but only a few software engineers have clear to become Test engineers (testers) because they have never had the chance to face this activities within the university study centers where they take study of this degree. Since there are little professional environments, this area is focused from a theoretical way instead of a more practical vision. There are plenty of tools helping the Test engineer, but most of them are paid tools or bespoke tools for big companies in need of this software. Usually people know what test engineering is by starting working on it and not before, when people start acquiring experience in this field within a company. Therefore, the degree studied have not approach this field of the Software engineering before and in some cases the graduated students start working without any knowledge in this area. Because of this reasons explained, it is my intention to propose this Project: a methodology and a software tool supporting this methodology so the students of software engineering and similar ones but also graduated students with little experience in this area (Junior Test Engineers), can afford practice in this field and get used to the activities related with the test engineering. Because of this they will be able to carry out the proper tasks of this area easier, enforcing higher and better knowledge and experience of it.

Relevância:

60.00% 60.00%

Publicador:

Resumo:

Dada la amplia información que rodea el dominio de programas de estudios superiores, específicamente los estudios de grado, este trabajo fin de grado propone la construcción de un modelo para representar dicha información mediante la construcción de una red de ontologías, proporcionando una definición común de conceptos importantes, y que posteriormente puede ser reutilizada para la construcción de aplicaciones que ayuden a las partes interesadas, como, estudiantes, personal académico y administrativo, a la búsqueda y acceso de información oportuna. Para la construcción de esta red de ontologías, se siguen las recomendaciones y pautas propuestas por la metodología NeOn [1a] [1b], que sigue un paradigma basado en la reutilización de recursos de conocimiento. Por otra parte, se realiza una populación de dicha red de ontologías mediante datos específicos del grado en Ingeniería Informática de la Universidad Politécnica de Madrid. La construcción de una red de ontologías siguiendo las directrices de la metodología NeOn requiere la realización de distintas actividades y tareas, como el estudio del dominio, estudio de la viabilidad, especificación de requisitos, conceptualización, formalización, implementación y mantenimiento. Se realizan también muchas otras actividades y tareas dependiendo del contexto en el que se construye la ontología. En este proyecto se hace un especial énfasis en las actividades de especificación de requisitos, conceptualización e implementación, además de la actividad de búsqueda de recursos ontológicos para su posterior reutilización. Se ha construido una red de ontologías llamada: European Bachelor Degree Ontology (EBDO) que incluye términos y conceptos importantes que se han detectado en la etapa de especificación de requisitos y que las ontologías a reutilizar no contemplan. Las decisiones de diseño para la construcción de esta nueva red de ontologías y su alineamiento con las ontologías a reutilizar se han basado en la especificación de requisitos ontológicos. Una vez definidos los conceptos relevantes de la red de ontologías, se ha implementado la red de ontologías en un lenguaje computable. Una vez que la red de ontologías se ha implementado se han realizado tareas de evaluación para corregir posible errores. Finalmente, cuando se ha obtenido una versión estable de la ontología, se ha realizado la instanciación de individuos del plan de estudios del grado en Ingeniería Informática de la Universidad Politécnica de Madrid.---ABSTRACT---Given the extensive information surrounding the domain of higher education programs, specifically bachelor degree studies, this bachelor degree project proposes the construction of a model to represent this information by building an ontology network, providing a common definition of important concepts. This network can be reused to build semantic applications that help stakeholders, such as, students, academic and organisational staff, to search and access to timely information. For the construction of this network of ontologies, guidelines and recommendations proposed by the NeOn Methodology [1a] [1b] have been followed. This methodology follows a paradigm based on the reuse of knowledge resources. Moreover, a population of this ontology network is performed with specific data of the Computer Science Degree from Universidad Politécnica de Madrid Building a network of ontologies following the guidelines of the NeOn Methodology requires the completion of various activities and tasks such as, the study of the domain, study of the feasibility, requirements specification, conceptualization, formalization, implementation and maintenance. Many other activities and tasks are also performed depending on the context in which the ontology is built. In this project a special emphasis is made on the activities of requirements specification, conceptualization and search of ontological resources for reuse and implementation. A new network of ontologies, named European Bachelor Degree Ontology (EBDO), has been built. This network includes terms and concepts that have been detected at the stage of requirements specification and that the reused ontologies have not contemplated. Design principles for the construction of this new network of ontologies and for the reused ontologies alignment have been based on the ontological specification requirements. Once the relevant concepts of the ontology network are defined, the network has been implemented in a computable ontology language. Once the network ontology is implemented, the evaluation activity has been conducted to correct the errors that the network presented. Finally, when a stable version of the ontology has been obtained, the instantiation of individuals of the study program of the Bachelor Degree in Computer Science from Universidad Politécnica de Madrid has been performed.

Relevância:

60.00% 60.00%

Publicador:

Resumo:

Formal specifications can precisely and unambiguously define the required behavior of a software system or component. However, formal specifications are complex artifacts that need to be verified to ensure that they are consistent, complete, and validated against the requirements. Specification testing or animation tools exist to assist with this by allowing the specifier to interpret or execute the specification. However, currently little is known about how to do this effectively. This article presents a framework and tool support for the systematic testing of formal, model-based specifications. Several important generic properties that should be satisfied by model-based specifications are first identified. Following the idea of mutation analysis, we then use variants or mutants of the specification to check that these properties are satisfied. The framework also allows the specifier to test application-specific properties. All properties are tested for a range of states that are defined by the tester in the form of a testgraph, which is a directed graph that partially models the states and transitions of the specification being tested. Tool support is provided for the generation of the mutants, for automatically traversing the testgraph and executing the test cases, and for reporting any errors. The framework is demonstrated on a small specification and its application to three larger specifications is discussed. Experience indicates that the framework can be used effectively to test small to medium-sized specifications and that it can reveal a significant number of problems in these specifications.

Relevância:

60.00% 60.00%

Publicador:

Resumo:

A major challenge in teaching software engineering to undergraduates is that most students have limited industry experience, so the problems addressed are unknown and hence unappreciated. Issues of scope prevent a realistic software engineering experience, and students often graduate with a simplistic view of software engineering’s challenges. Problems and Programmers (PnP) is a competitive, physical card game that simulates the software engineering process from requirements specification to product delivery. Deliverables are abstracted, allowing a focus on process issues and for lessons to be learned in a relatively short time. The rules are easy to understand and the game’s physical nature allows for face-to-face interaction between players. The game’s developers have described PnP in previous publications, but this paper reports the game’s use within a larger educational scheme. Students learn and play PnP, and then are required to create a software requirements specification based on the game. Finally, students reflect on the game’s strengths and weaknesses and their experiences in an individual essay. The paper discusses this approach, students’ experiences and overall outcomes, and offers an independent, critical look at the game, its use, and potential improvements.

Relevância:

60.00% 60.00%

Publicador:

Resumo:

In the article it is considered preconditions and main principles of creation of virtual laboratories for computer-aided design, as tools for interdisciplinary researches. Virtual laboratory, what are offered, is worth to be used on the stage of the requirements specification or EFT-stage, because it gives the possibility of fast estimating of the project realization, certain characteristics and, as a result, expected benefit of its applications. Using of these technologies already increase automation level of design stages of new devices for different purposes. Proposed computer technology gives possibility to specialists from such scientific fields, as chemistry, biology, biochemistry, physics etc, to check possibility of device creating on the basis of developed sensors. It lets to reduce terms and costs of designing of computer devices and systems on the early stages of designing, for example on the stage of requirements specification or EFT-stage. An important feature of this project is using the advanced multi-dimensional access method for organizing the information base of the Virtual laboratory.

Relevância:

60.00% 60.00%

Publicador:

Resumo:

In an attempt to answer the need of wider accessibility and popularization of the treasury of Bulgarian folklore, a team from the Institute of Mathematics and Informatics at the Bulgarian Academy of Sciences has planned to develop the Bulgarian folklore artery within the national project ―Knowledge Technologies for Creation of Digital Presentation and Significant Repositories of Folklore Heritage‖. This paper presents the process of business modeling of the application architecture of the Bulgarian folklore artery, which aids requirements analysis, application design and its software implementation. The folklore domain process model is made in the context of the target social applications—e-learning, virtual expositions of folklore artifacts, research, news, cultural/ethno-tourism, etc. The basic processes are analyzed and modeled and some inferences are made for the use cases and requirements specification of the Bulgarian folklore artery application. As a conclusion the application architecture of the Bulgarian folklore artery is presented.

Relevância:

60.00% 60.00%

Publicador:

Resumo:

Software deployment, eller mjukvarudistribution översatt till svenska kan ses som processen där alla aktiviteter ingår för att göra en mjukvara tillgänglig för användare utan en manuell installation på användarens dator eller annan maskin. Det finns ett flertal software deployment-verktyg, som hanterar automatiska installationer, tillgängliga för företag på marknaden idag.  Avdelningen HVDC på ABB i Ludvika har behov att börja använda ett verktyg för automatiserade installationer av mjukvaror då installationer idag utförs manuellt och är tidsödande. Som Microsoftpartners vill ABB se hur Microsofts verktyg för mjukvarudistribution skulle kunna hjälpa för detta behov.  Vår studie syftade till att undersöka hur arbetet med installationer av mjukvara ser ut idag, samt hitta förbättringsmöjligheter för installationer som inte kan automatiseras i nuläget. I studien ingick även att ta fram ett generellt ramverk för hur verksamheter kan gå tillväga när de vill börja använda sig utav software deployment-verktyg. I ramverket ingår en utformad kravspecifikation som ska utvärderas mot Microsofts verktyg.  För att skapa en uppfattning om hur arbetet i verksamheten ser ut idag har vi utfört enkätundersökning och intervjuer med personal på HVDC. För att utveckla ett ramverk har vi använt oss av insamlade data från de intervjuer, enkätundersökning och gruppintervju som utförts, detta för att identifiera krav och önskemål från personalen hos ett software deployment-verktyg. Litteraturstudier utfördes för att skapa en teoretisk referensram att utgå ifrån vid utvecklande av ramverket och kravspecifikationen.  Studien har resulterat i en beskrivning av software deployment, förbättringsmöjligheter i arbetet med installationer av mjukvara samt ett generellt ramverk som beskriver hur verksamheter kan gå tillväga när de ska börja använda ett software deployment-verktyg. Ramverket innehåller också en kravspecifikation som använts för att utvärdera Microsofts verktyg för mjukvarudistribution. I vår studie har vi inte sett att någon tidigare har tagit fram ett generellt ramverk och kravspecifikation som verksamheter kan använda sig av som underlag när de ska börja använda ett software deployment-verktyg. Vårt resultat av studien kan täcka upp detta kunskapsgap.    

Relevância:

60.00% 60.00%

Publicador:

Resumo:

Dagens dataloggare har många funktioner vilket avspeglas i programvaran som används för att kommunicera med dem. De har fler funktioner än vad enskilda företag och privatpersoner behöver vilket gör programvaran onödigt komplicerad. Genom att minska antalet inställningsmöjligheter kan programvaran göras mindre, snabbare och lättare att lära sig. Arbetet utfördes hos Inventech Europe AB som tillhandahöll dataloggare för temperatur- och fuktighetsmätning. De ville undersöka möjligheterna att utveckla ett program som personer med begränsad datorvana snabbt kunde lära sig att använda. Därför var syftet med detta arbete att utreda hur ett sådant program kunde se ut. Arbetets fokus låg på designprocessen. Genom olika UML-diagram visualiserades de olika momenten i processen. Då projektet var relativt litet valdes en utvecklingsprocess som följer vattenfallsmodellen där de olika stegen (specifikation, design, implementation, test) utförs i följd. Det förutsätter att ett steg är färdigt innan nästa steg påbörjas. Modellen fungerar bäst när projektet är mindre och väldefinierat. Tyvärr ändrades företagets krav på hur programmet skulle fungera flera gånger under arbetets gång. Därmed borde en mer flexibel utvecklingsprocess ha valts för att ge utrymme för förändringar som kunde uppkomma under projektets gång. Slutresultatet blev en funktionsprototyp som var lätt att använda och inte hade fler inställningsmöjligheter än nödvändigt. Funktionsprototyp kan användas som bas för att lägga till egen skräddarsydd funktionalitet. För att visa detta inkluderades ytterligare två funktioner. En av funktionerna var möjligheten att kunna spara insamlad data till en extern databas som sedan kunde användas som källa till andra program vilka exempelvis skulle kunna visualisera data med hjälp av olika grafer. För att lätt kunna identifiera olika inkopplade dataloggare inkluderades även möjligheten att namnge de olika enheterna.

Relevância:

60.00% 60.00%

Publicador:

Resumo:

Requirements specification has long been recognized as critical activity in software development processes because of its impact on project risks when poorly performed. A large amount of studies addresses theoretical aspects, propositions of techniques, and recommended practices for Requirements Engineering (RE). To be successful, RE have to ensure that the specified requirements are complete and correct what means that all intents of the stakeholders in a given business context are covered by the requirements and that no unnecessary requirement was introduced. However, the accurate capture the business intents of the stakeholders remains a challenge and it is a major factor of software project failures. This master’s dissertation presents a novel method referred to as “Problem-Based SRS” aiming at improving the quality of the Software Requirements Specification (SRS) in the sense that the stated requirements provide suitable answers to real customer ́s businesses issues. In this approach, the knowledge about the software requirements is constructed from the knowledge about the customer ́s problems. Problem-Based SRS consists in an organization of activities and outcome objects through a process that contains five main steps. It aims at supporting the software requirements engineering team to systematically analyze the business context and specify the software requirements, taking also into account a first glance and vision of the software. The quality aspects of the specifications are evaluated using traceability techniques and axiomatic design principles. The cases studies conducted and presented in this document point out that the proposed method can contribute significantly to improve the software requirements specification.

Relevância:

60.00% 60.00%

Publicador:

Resumo:

This paper presents a web based expert system application that carries out an initial assessment of the feasibility of a web project. The system allows detection of inconsistency problems before design starts, and suggests correcting actions to solve them. The developed system presents important advantages not only for determining the feasibility of a web project but also by acting as a means of communication between the client company and the web development team, making the requirements specification clearer.

Relevância:

30.00% 30.00%

Publicador:

Resumo:

Over the past years, component-based software engineering has become an established paradigm in the area of complex software intensive systems. However, many techniques for analyzing these systems for critical properties currently do not make use of the component orientation. In particular, safety analysis of component-based systems is an open field of research. In this chapter we investigate the problems arising and define a set of requirements that apply when adapting the analysis of safety properties to a component-based software engineering process. Based on these requirements some important component-oriented safety evaluation approaches are examined and compared.