421,935 research outputs found

    Exploring Essential Content of Defect Prediction and Effort Estimation through Data Reduction

    Get PDF
    Mining Software Repositories provides the opportunity to exploit/explore some of the behaviors, distinct patterns and features of software development processes, using which the stakeholders can generate models to perform estimations, predictions and make decisions on these projects.;When using data mining on project data in software engineering, it is important to generate models that are easy for business users to understand. The business users should be able to gain insight on how to improve the project using these models. Software engineering data are often too large to discern. To understand the intricacies of software analytics, one approach is to reduce software engineering data to its essential content, then reasoning about that reduced set.;This thesis explores methods (a) removing spurious and redundant columns then (b) clustering the data set and replacing each cluster by one exemplar per cluster then (c) making conclusions by extrapolating between the exemplars (via k=2 nearest neighbor between cluster centroids).;Numerous defect data sets were reduced to around 25 exemplars containing around 6 attributes. These tables of 25*6 values were then used for (a) effective and simple defect prediction as well as (b) simple presentation of that data. Also, in an investigation of numerous common clustering methods, we find that the details of the clustering method are less important than ensuring that those methods produce enough clusters (which, for defect data sets, seems to be around 25 clusters). For effort estimation data sets, conclusive results for ideal number of clusters could not be determined due to smaller size of the data sets

    Design Thinking in Middle School Classroom

    Get PDF
    Engineering design is an iterative process that supports the solution of problems by applying scientific knowledge to make informed decisions. Assessing different levels of expertise in experimentation is a difficult task since these are not usually visible as part of a student’s final design solution. The purpose of this research is to investigate and characterize students’ experimentation strategies while working on a design challenge. This research explores the various aspects of engineering design behaviors in middle school students. Questionnaires, observations, CAD software logs and focus group methodology are employed for qualitative and quantitative data collection. R scripts models are used to visualize and characterize patterns within educational data and validate them using statistical techniques. This study reveals interesting aspects of design thinking processes in students, provides recommendations and opens the discussion to engineering educators and researchers who are interested in understanding and assessing students’ experimentation strategies in engineering design

    Integration of model-based systems engineering and virtual engineering tools for detailed design

    Get PDF
    Design and development of a system can be viewed as a process of transferring and transforming data using a set of tools that form the system\u27s development environment. Conversion of the systems engineering data into useful information is one of the prime objectives of the tools used in the process. With complex systems, the objective is further augmented with a need to represent the information in an accessible and comprehensible manner. The importance of representation is easily understood in light of the fact that the stakeholder\u27s ability to make prompt and appropriate decisions is directly related to his understanding of the available information. Systems Modeling Language (SysML), a graphical modeling language developed by Object Management Group is one such tool used to capture and convey information about a system under development. This work proposes a methodology for integrating the models developed using SysML with virtual engineering software to create an executable, interactive, and user-centered platform for engineering systems. The framework provides an opportunity to combine the benefits offered by both model-based systems engineering and virtual engineering for detail design. This research demonstrates how this framework can be implemented using a biotech fermentor to illustrate the coupling of information between SysML and virtual engineering --Abstract, page iii

    Change decision support:extraction and analysis of late architecture changes using change characterization and software metrics

    Get PDF
    Software maintenance is one of the most crucial aspects of software development. Software engineering researchers must develop practical solutions to handle the challenges presented in maintaining mature software systems. Research that addresses practical means of mitigating the risks involved when changing software, reducing the complexity of mature software systems, and eliminating the introduction of preventable bugs is paramount to today’s software engineering discipline. Giving software developers the information that they need to make quality decisions about changes that will negatively affect their software systems is a key aspect to mitigating those risks. This dissertation presents work performed to assist developers to collect and process data that plays a role in change decision-making during the maintenance phase. To address these problems, developers need a way to better understand the effects of a change prior to making the change. This research addresses the problems associated with increasing architectural complexity caused by software change using a twoold approach. The first approach is to characterize software changes to assess their architectural impact prior to their implementation. The second approach is to identify a set of architecture metrics that correlate to system quality and maintainability and to use these metrics to determine the level of difficulty involved in making a change. The two approaches have been combined and the results presented provide developers with a beneficial analysis framework that offers insight into the change process

    Exploring Strategies for Capturing Requirements for Developing ICT4D Applications

    Get PDF
    Some software engineers make decisions using applications designed from poorly captured user requirements. The quality of user requirements is crucial in the requirements engineering process, costing 50 times more to remedy the defects of using poorly captured user requirements. Grounded in the socialization, externalization, combination and internalization model of Nonaka theoretical framework, the purpose of this qualitative multiple case study was to explore strategies software engineers in Southern African software houses and IT departments use for capturing information and communication technology for development (ICT4D) requirements. The participants consisted of software 12 engineers who were working in Southern Africa, capturing ICT4D requirements. The data were collected using semistructured interviews. Thematic analysis was used, and four themes emerged: (a) interacting with stakeholders—socialization, (b) transforming interactive knowledge into user requirements—externalization, (c) sharing documented knowledge about user requirements—combination, and (d) applying assimilated knowledge from documented knowledge—internalization. A recommendation is for software engineers to capture their users’ needs and experiences to develop reliable ICT4D software that can assist in delivering interventions to marginalized societies. The implications for positive social change include improving the socioeconomic status of marginalized citizens with ICT4D software applications due to potentially improved requirements engineering practices

    AplicaciĂłn de un proceso de mejora continua en una asignatura de Desarrollo de Software Dirigido por Modelos

    Get PDF
    El desarrollo de software dirigido por modelos (DSDM) es una de las áreas de la Ingeniería del Software más prometedoras en la actualidad. DSDM ofrece una oportunidad de alejar al desarrollador de las tecnologías concretas de implementación y centrarlo en los aspectos esenciales del dominio para el cual se desarrolla el software. Recientemente, esta novedosa materia está siendo recogida en distintas recomendaciones curriculares internacionales. En este artículo, por una parte, se aboga por incorporar esta materia al cuerpo de conocimiento de Ingeniería Informática en general y en la Ingeniería del Software en particular y se presenta la estructura de una asignatura para incorporar la materia de DSDM. Por otra parte, se describe la experiencia docente de esta asignatura tras su primer año de impartición. En este sentido, se ha definido un proceso de mejora continua que nos permite analizar los resultados del proceso de enseñanza-aprendizaje obtenidos, reflexionar sobre el proceso y elaborar un plan de mejora de la misma. El análisis del proceso de mejora se lleva a cabo utilizando la encuesta SEEQ para recoger datos y tomar decisiones.SUMMARY -- Currently, Model Driven Software Development (MDSD) is an emergent area in Software Engineering. DSDM allows developers to think on essential domain aspects more than on specific software implementation technology. Recently, this novel subject has been included in Computer Science and Software Engineering curricula. In this work, our experience teaching MDSD is described. A continuous improvement process has been used which allows us to analyze the teachinglearning process results, to think about this process and to build a improvement plan for the next years. The analysis of this continuous improvement process has been carried out using the SEEQ survey to collect data and make decisions

    Scholarly event characteristics in four fields of science : a metrics-based analysis

    Get PDF
    One of the key channels of scholarly knowledge exchange are scholarly events such as conferences, workshops, symposiums, etc.; such events are especially important and popular in Computer Science, Engineering, and Natural Sciences.However, scholars encounter problems in finding relevant information about upcoming events and statistics on their historic evolution.In order to obtain a better understanding of scholarly event characteristics in four fields of science, we analyzed the metadata of scholarly events of four major fields of science, namely Computer Science, Physics, Engineering, and Mathematics using Scholarly Events Quality Assessment suite, a suite of ten metrics.In particular, we analyzed renowned scholarly events belonging to five sub-fields within Computer Science, namely World Wide Web, Computer Vision, Software Engineering, Data Management, as well as Security and Privacy.This analysis is based on a systematic approach using descriptive statistics as well as exploratory data analysis. The findings are on the one hand interesting to observe the general evolution and success factors of scholarly events; on the other hand, they allow (prospective) event organizers, publishers, and committee members to assess the progress of their event over time and compare it to other events in the same field; and finally, they help researchers to make more informed decisions when selecting suitable venues for presenting their work.Based on these findings, a set of recommendations has been concluded to different stakeholders, involving event organizers, potential authors, proceedings publishers, and sponsors. Our comprehensive dataset of scholarly events of the aforementioned fields is openly available in a semantic format and maintained collaboratively at OpenResearch.org. © 2020, The Author(s)

    A Unified Enterprise-Wide Cost Modeling Framework for Engineering Applications Based on Systems Engineering Principles

    Get PDF
    In the present research the problem of enterprise-wide cost modeling is approached from a systems engineering standpoint. What this does is to use each stage of product life cycle to obtain useful information that helps in estimating the cost of the system. Once a generic framework is developed for estimating the core cost, layers of other factors that affect the cost are applied to the core cost, such as risk and uncertainty, maintainability, supply-chain and socioeconomic conditions. The cost model is expanded to accommodate a product domain ranging from a simple object to a system in the following hierarchy: System, Product, Assembly, Object. The cost model caters to the needs of cost estimation at every stage of the life cycle and for every kind of product, big or small, simple or complex. New process selection tools have been added to the field of cost estimation, which suggests the user with applicable processes given the material and production quantity. Attributes such as materials, fabrication processes etc… are ontology based. This enables a generic category to branch into increasingly specialized categories with each step. This is very useful, since in the preliminary stages of cost estimation, not much information is available as to what exact material or process is used. In such a case data pertaining to a more generalized material or process can be used. Earlier work in the field of cost estimation has focused on specific areas of cost estimation either in terms of concept or application. In the work so far, no single-framework has been proposed that deals with cost estimation that fits the requirements at all stages of product development. Most importantly the concept of systems engineering has not been fully exploited in the area of cost estimation. The framework that we have proposed is based on systems engineering and hence can be used at any stage of the product development. Some of the previous work on cost estimation has applications in specific industries. The framework guides the user in process selection at the lower levels based on material and quantity using a tool called PRIMA. If data is not available for a particular process, then a more generic form of the process can be chosen to collect cost data and estimate on the basis of that data. A more generic process is obtained by using the DCLASS tool. The cost can be revised to reflect more accurate process when the data and information is available. This is possible within the proposed framework. The economic, environmental and social impact of the product has also been taken into account through EIOLCA models to make the framework enterprise-wide in nature. The framework has the potential to be developed into umbrella-software that has capability of estimating cost of small parts as well as large systems. The software will also have the capability to determine the economic, environmental and social impact of the products. The decisions regarding the product, the materials used, the manufacturing processes and even the mechanics of the system, are all determined and weighed against the economic, environmental and social impact. Based on this analysis, the policy makers can make micro as well as macro decisions during the initial planning phase of the system. Since the framework relies on principles of systems engineering, it can be applied to systems irrespective of industry and application. As part of future work, suggestions have been made to turn the framework into a software suite along with other capabilities such as risk analysis and uncertainty

    Using configuration management and product line software paradigms to support the experimentation process in software engineering.

    Get PDF
    There is no empirical evidence whatsoever to support most of the beliefs on which software construction is based. We do not yet know the adequacy, limits, qualities, costs and risks of the technologies used to develop software. Experimentation helps to check and convert beliefs and opinions into facts. This research is concerned with the replication area. Replication is a key component for gathering empirical evidence on software development that can be used in industry to build better software more efficiently. Replication has not been an easy thing to do in software engineering (SE) because the experimental paradigm applied to software development is still immature. Nowadays, a replication is executed mostly using a traditional replication package. But traditional replication packages do not appear, for some reason, to have been as effective as expected for transferring information among researchers in SE experimentation. The trouble spot appears to be the replication setup, caused by version management problems with materials, instruments, documents, etc. This has proved to be an obstacle to obtaining enough details about the experiment to be able to reproduce it as exactly as possible. We address the problem of information exchange among experimenters by developing a schema to characterize replications. We will adapt configuration management and product line ideas to support the experimentation process. This will enable researchers to make systematic decisions based on explicit knowledge rather than assumptions about replications. This research will output a replication support web environment. This environment will not only archive but also manage experimental materials flexibly enough to allow both similar and differentiated replications with massive experimental data storage. The platform should be accessible to several research groups working together on the same families of experiments

    Heuristic container placement algorithms

    Get PDF
    Thesis (Master)--Izmir Institute of Technology, Computer Engineering, Izmir, 2003Includes bibliographical references (leaves: 56-58)Text in English; Abstract: Turkish and Englishviii, 72 leavesWith the growth of transportation over sea; defining transportation processes in a better way and finding ways to make transportation processes more effective have become one of the most important research areas of today. Especially in the last quartet of the previous decade, the computers had become much powerful tools with their impressive amount of data processing cababilites. It was imminent that computers had begun taking serious roles in the system development studies. As a result; constructing models for the processes in container terminals and processing the data with the computers create opportunities for the automation of various processes in container terminals. The final step of these studies is the full automation of terminal activities with software packages that combine various functions focused on various processes in a single system.This study is about a project that had been made for a container terminal owned by a special company. During this study; there had been discussions with experts about the subject, and container handling processes in the terminal had been analyzed in order to define the main structure of the yard management software to be created.This study focuses on the container handling activities over the yard space so as to create a basis for a computer system that will take part in the decisions during the container operations. Object oriented analysis and design methods are used for the definition of the system that will help the decisions in the yard operations. The optimization methodology that will be the core of the container placement decisions is based on using different placement patterns and placement algorithms for different conditions. These placement patterns and algorithms are constructed due to the container handling machinery that was being used in the terminal that this study has been made for
    • …
    corecore