4,480 research outputs found
Software development tools: A bibliography, appendix C.
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
[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
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
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
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
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
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
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
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
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
- âŠ