4,480 research outputs found

    Software development tools: A bibliography, appendix C.

    Get PDF
    A bibliography containing approximately 200 citations on tools which help software developers perform some development task (such as text manipulation, testing, etc.), and which would not necessarily be found as part of a computing facility is given. The bibliography comes from a relatively random sampling of the literature and is not complete. But it is indicative of the nature and range of tools currently being prepared or currently available

    Systematic evaluation of design choices for software development tools

    Get PDF
    [Abstract]: Most design and evaluation of software tools is based on the intuition and experience of the designers. Software tool designers consider themselves typical users of the tools that they build and tend to subjectively evaluate their products rather than objectively evaluate them using established usability methods. This subjective approach is inadequate if the quality of software tools is to improve and the use of more systematic methods is advocated. This paper summarises a sequence of studies that show how user interface design choices for software development tools can be evaluated using established usability engineering techniques. The techniques used included guideline review, predictive modelling and experimental studies with users

    Integrating Refinement into Software Development Tools

    Get PDF
    AbstractIt is a challenge for automatic tool support to formal design by refinement transformations. In this paper, we bring this matter to the attention of the research community and discuss a component-based model transformational approach for integrating refinement into software development tools. Models, their consistency and correctness, in an object-oriented and component-based development process are defined in rCOS, that is a refinement calculus recently developed at UNU-IIST. Correctness preserving transformations between models are formalized and proved as refinement rules in rCOS. In this paper, we will discuss on how these transformations can be implemented in the relations language of Query/View/Transformation (QVT) standardized by OMG

    The Integration of Software Development Tools

    Get PDF
    The effectiveness of software development tools can be dr creased by their integration (i.e. their cooperation). This paper discusses the problems to be overcome in integration of tools, and a categorization of the degree of tool integration. The continuum from loose to tight integration is parameterized. An informal method is described to apply these parameters to tools in order to determine some nxeasure of their ability to be integrated

    Distributed Software Development Tools for Distributed Scientific Applications

    Get PDF
    This chapter provides a new methodology and two tools for user‐driven Wikinomics‐oriented scientific applications’ development. Service‐oriented architecture for such applications is used, where the entire research supporting computing or simulating process is broken down into a set of loosely coupled stages in the form of interoperating replaceable Web services that can be distributed over different clouds. Any piece of the code and any application component deployed on a system can be reused and transformed into a service. The combination of service‐oriented and cloud computing will indeed begin to challenge the way of research supporting computing development, the facilities of which are considered in this chapter

    Intelligent software development tools

    Get PDF
    Artificial intelligence can be used to automate various tasks, also within software development. The purpose of this thesis was to research what kind of artificially intelligent software development tools and methods are available, and how they could suit a software development team at WĂ€rtsilĂ€. To illustrate this, a recommendation based on available literature was made on how the WĂ€rtsilĂ€ team could possibly take intelligent software development tools into use. Based on the findings, a proof of concept regarding software test automation was developed. First, different types of artificial intelligence were presented, which after a research plan for how to conduct the literature review and the proof of concept was made. To find the most suitable topic for the proof of concept the literature review was first conducted. Focus was set on three areas – artificial intelligence assisted programming, bug handling tools and software testing. Software test automation seemed the most interesting from a WĂ€rtsilĂ€ perspective, thus it was selected as the topic for the proof of concept. A prototype of a neural network that analyses C-functions and recommends a unit test based on the similarity to other functions was developed. Conclusions drawn are that artificial intelligence-based methods in software development has potential, but no tool was found that would directly suit WĂ€rtsilĂ€ at this point. Either the tools need to be developed further to suit the field of embedded software development, or WĂ€rtsilĂ€ could adapt their way of working for some tool to be taken into usage or develop their own solutions. The proof of concept illustrates how an own solution could be an alternative, if developed further in accordance to the improvement suggestions on how to make it more efficient.TekoĂ€lyn avulla voidaan automatisoida monia tehtĂ€viĂ€ myös ohjelmistokehityksessĂ€. TĂ€mĂ€n diplomityön tarkoitus oli tutkia minkĂ€laisia tekoĂ€lypohjaisia työkaluja ja menetelmiĂ€ on olemassa ja miten WĂ€rtsilĂ€n ohjelmistokehitystiimi voisi nĂ€itĂ€ hyödyntÀÀ. Suositus siitĂ€, miten WĂ€rtsilĂ€n tiimi voisi mahdollisesti ottaa tekoĂ€lypohjaisia työkaluja kĂ€yttöön tehtiin kirjallisuuskatsauksen perusteella. Sen perusteella kehitettiin prototyyppi mikĂ€ liittyy ohjelmistotestaukseen automatisointiin. Ensin esiteltiin erilaisia haaroja tekoĂ€lystĂ€, jonka jĂ€lkeen luotiin tutkimussuunnitelma ja toteutettiin kirjallisuuskatsaus ja prototyypin kehittĂ€minen. Kirjallisuuskatsauksessa keskityttiin kolmeen osa-alueseen – tekoĂ€lyllĂ€ avustettu koodaus, ohjelmointivirheiden hallinta ja ohjelmistotestaus. NĂ€istĂ€ ohjelmistotestaus valittiin prototyypin aiheeksi, koska WĂ€rtsilĂ€n tiimin tavoitteiden perusteella se koettiin parhaaksi. PrototyyppinĂ€ kehitettiin neuroverkko joka analysoi C-kielessĂ€ kirjoitetut funktiot ja suosittelee toisen, samankaltaisen funktion perusteella yksikkötestin testausta varten. JohtopÀÀtöksenĂ€ todetaan ettĂ€ tekoĂ€lypohjaisilla työkaluilla on potentiaalia, mutta tĂ€llĂ€ hetkellĂ€ ei löydy työkaluja joita voisi suoraan ottaa WĂ€rtsilĂ€n kĂ€yttöön. Joko työkalut pitĂ€isi kehittÀÀ niin, ettĂ€ ne sopisivat myös sulautettujen jĂ€rjestelmien tuotantoon, tai työtavat pitĂ€isi sopeuttaa työkalujen mukaan, tai kehittÀÀ omia ratkaisuja. TyössĂ€ esitetÀÀn yksi ratkaisu, ja mainitaan parannusehdotuksia, joiden avulla saavutetaan vielĂ€ parempi tehokkuus.Artificiell intelligens kan anvĂ€ndas för att automatisera olika uppgifter, ocksĂ„ inom programmering. MĂ„let med detta examensarbete var att undersöka hurudana intelligenta verktyg och metoder som finns, och hur dessa kunde anvĂ€ndas av ett mjukvaruutvecklingsteam pĂ„ WĂ€rtsilĂ€. Baserat pĂ„ litteratur gjordes en rekommendation för hur teamet pĂ„ WĂ€rtsilĂ€ eventuellt kunde ta sĂ„dana verktyg i bruk. Efter litteraturgranskningen utvecklades en prototyp för automatisk generation av mjukvarutester. Först presenterades olika typer av artificiell intelligens, varefter en forskningsplan gjordes upp för hur litteraturgranskningen skulle genomföras och för hur prototypen skulle utvecklas. För att hitta det mest lĂ€mpade anvĂ€ndningsomrĂ„det för prototypen, krĂ€vdes att litteraturgranskningen gjordes först. I den fokuserades det pĂ„ tre skilda Ă€mnen – programmering, bugghantering och mjukvarutestning assisterade av artificiell intelligens. Intelligent mjukvarutestning verkade mest intressant och lĂ€mpligt att utforska mera för WĂ€rtsilĂ€s team. Prototypen som utvecklades var ett neuralt nĂ€tverk som analyserar Cfunktioner och rekommenderar ett enhetstest baserat pĂ„ likheterna till andra funktioner. Slutsatsen av arbetet var att anvĂ€ndadet av metoder baserade pĂ„ artificiell intelligens inom programmering förvisso har potential, men att i detta skede hittades inget verktyg som skulle passa WĂ€rtsilĂ€ direkt. Antingen krĂ€vs att verktygen utvecklas för att passa industrin, att WĂ€rtsilĂ€ anpassar sitt sĂ€tt att arbeta eller utvecklar egna intelligenta lösningar. Prototypen som utvecklades illustrerade hur en egenutvecklad lösning kunde vara en möjlighet, om den skulle utvecklas enligt förbĂ€ttringsförslagen som beskrivs sĂ„ att den skulle bli mera exakt och effektiv

    Software Process Evaluation from User Perceptions and Log Data

    Get PDF
    Companies often claim to follow specific software development methodologies (SDM) when performing their software development process. These methodologies are often supported by dedicated tools that keep track of work activities carried out by developers. The purpose of this paper is to provide a novel approach that integrates analytical insights from both the perceptions of SDM stakeholders and software development tools logs to provide SDM improvement recommendations. This paper develops a new process improvement approach that combines two significantly different sources of data on the same phenomenon. First, it uses a questionnaire to gather software development stakeholder SDM perceptions (managers and developers). Second, it leverages process mining to analyze software development tools logs to obtain additional information on software development activities. Finally, it develops recommendations based on concurrent analysis of both sources. Our novel process improvement approach is evaluated in three directions: Does the presented approach (RQ1) enable managers to gain additional insights into employees' performance, (RQ2) deliver additional insights into project performance, and (RQ3) enable development of additional SDM improvement recommendations? We find that integrated analysis of software development perception data and software development tools logs opens new possibilities to more precisely identify and improve specific SDM elements. The evaluation of our novel process improvement approach follows a single case study design. Our approach can only be used in enterprises in which software development tools logs are available. The study should be repeated in different cultural settings. We practically show how concurrently analyzing data about developer SDM perceptions and event log data from software development tools enables management to gain additional insights in the software development process regarding the performance of individual developers. The main theoretical contribution of our paper is a novel process improvement approach that effectively integrates data from management and developer perspectives and software development tools logs.Einstein Foundation Berlin http://dx.doi.org/10.13039/501100006188Peer Reviewe

    The Impact of Technology Characteristics on Infusion of Software Development Tools

    Get PDF
    Innovation diffusion research is a widely accepted theoretical basis for studying IT implementation but has many limitations. In view of these limitations some researchers have proposed that infusion of IT innovations in organizations should be studied. This paper empirically studies the impact of technology characteristics on infusion of systems development tools in organizations. The results indicate that while subsystem compatibility and scope of development tools strongly influenced infusion, methodology compatibility had no impact on infusio

    Object oriented fault diagnosis system for space shuttle main engine redlines

    Get PDF
    A great deal of attention has recently been given to Artificial Intelligence research in the area of computer aided diagnostics. Due to the dynamic and complex nature of space shuttle red-line parameters, a research effort is under way to develop a real time diagnostic tool that will employ historical and engineering rulebases as well as a sensor validity checking. The capability of AI software development tools (KEE and G2) will be explored by applying object oriented programming techniques in accomplishing the diagnostic evaluation

    Evaluation of flight simulation software development tools

    Get PDF
    One of the CAE product lines is commercial aircraft flight simulators for which over 400 engineers develop the simulation codes. Currently, aircraft design documents are converted into source code manually. This approach is time consuming, generates large number of errors in the code, and the code generated is very hard to debug. An alternative approach is to use commercially available software development tools to implement the design documents into a visual environment and automatically generate the simulation code for the implemented model. This approach is expected to reduce the software development process, minimize the number of errors in the generated simulation software, and provide user-friendly environment for debugging the code more easily and efficiently, and plus many more advantages. This thesis contributes in the development of such an approach. It addresses the new software development method using MATRIX X which is one of the leading commercial software development tools widely used in aerospace industries. Two aircraft systems, medium commercial jet's flight warning computer and a generic autopilot, have been chosen to evaluate the use of MATRIX X as software development tool. This thesis will explore the use of MATRIX X and its advantages over manual coding, and will identify if there are any evaluation criteria or implementation issues that will make the use of MATRIX X impractical. In addition, it will be examined if there is any need for post-processing utility to adapt the generated code to flight simulation software environment
    • 

    corecore