2009 ICSE Workshop on Software Engineering for Computational Science and Engineering最新文献

筛选
英文 中文
Refactoring and the evolution of Fortran 重构和 Fortran 的演变
2009 ICSE Workshop on Software Engineering for Computational Science and Engineering Pub Date : 2009-05-23 DOI: 10.1109/SECSE.2009.5069159
J. Overbey, Stas Negara, Ralph E. Johnson
{"title":"Refactoring and the evolution of Fortran","authors":"J. Overbey, Stas Negara, Ralph E. Johnson","doi":"10.1109/SECSE.2009.5069159","DOIUrl":"https://doi.org/10.1109/SECSE.2009.5069159","url":null,"abstract":"Successful languages like Fortran keep changing and tend to become more complex, often containing older features that are rarely used. Complexity makes languages harder to use and makes it harder to build tools for them. A refactoring tool can eliminate use of these features from programs; this makes programs easier to understand and maintain, and it can simplify building certain programming tools. This is illustrated by using Photran, a refactoring tool for Fortran, to eliminate global variables from Fortran programs so that they can be used with Adaptive MPI, a version of MPI that performs load balancing.","PeriodicalId":311477,"journal":{"name":"2009 ICSE Workshop on Software Engineering for Computational Science and Engineering","volume":"11 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2009-05-23","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"128448601","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 26
How do scientists develop and use scientific software? 科学家如何开发和使用科学软件?
2009 ICSE Workshop on Software Engineering for Computational Science and Engineering Pub Date : 2009-05-23 DOI: 10.1109/SECSE.2009.5069155
J. Hannay, H. Langtangen, Carolyn MacLeod, Dietmar Pfahl, J. Singer, G. Wilson
{"title":"How do scientists develop and use scientific software?","authors":"J. Hannay, H. Langtangen, Carolyn MacLeod, Dietmar Pfahl, J. Singer, G. Wilson","doi":"10.1109/SECSE.2009.5069155","DOIUrl":"https://doi.org/10.1109/SECSE.2009.5069155","url":null,"abstract":"New knowledge in science and engineering relies increasingly on results produced by scientific software. Therefore, knowing how scientists develop and use software in their research is critical to assessing the necessity for improving current development practices and to making decisions about the future allocation of resources. To that end, this paper presents the results of a survey conducted online in October-December 2008 which received almost 2000 responses. Our main conclusions are that (1) the knowledge required to develop and use scientific software is primarily acquired from peers and through self-study, rather than from formal education and training; (2) the number of scientists using supercomputers is small compared to the number using desktop or intermediate computers; (3) most scientists rely primarily on software with a large user base; (4) while many scientists believe that software testing is important, a smaller number believe they have sufficient understanding about testing concepts; and (5) that there is a tendency for scientists to rank standard software engineering concepts higher if they work in large software development projects and teams, but that there is no uniform trend of association between rank of importance of software engineering concepts and project/team size.","PeriodicalId":311477,"journal":{"name":"2009 ICSE Workshop on Software Engineering for Computational Science and Engineering","volume":"37 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2009-05-23","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"131721849","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 237
Preparing scientists for scalable software development 让科学家为可扩展软件开发做好准备
2009 ICSE Workshop on Software Engineering for Computational Science and Engineering Pub Date : 2009-05-23 DOI: 10.1109/SECSE.2009.5069166
Valerie Maxville
{"title":"Preparing scientists for scalable software development","authors":"Valerie Maxville","doi":"10.1109/SECSE.2009.5069166","DOIUrl":"https://doi.org/10.1109/SECSE.2009.5069166","url":null,"abstract":"Software development projects have always struggled to find the balance between domain knowledge and software engineering skills and experience. In computational science, this situation is in the extreme, requiring highly specific domain knowledge paired with skills in tuning parallel programs for optimal performance on specific hardware. These projects often take place in very small teams, or by an individual researcher, who must embody both the scientist and the software engineer. Through observation of a range of computational science projects, and the implementation of rigorous software engineering methods in larger projects, we can reflect on where to bring some of the formality of software engineering into computational science. As part of the iVEC Education Program we provide training to eResearchers, which provides an opportunity to prepare scientists for software projects. By infusing the training program with Software Engineering principles, we can provide best practice essentials to the scientists whose code may eventually need to be scaled to multiple processors, platforms, sites, users and developers. By promoting easily adopted, high-return techniques, we hope to develop a culture where quality is intrinsic, reuse is maximised and effort can be focussed on innovative, robust science.","PeriodicalId":311477,"journal":{"name":"2009 ICSE Workshop on Software Engineering for Computational Science and Engineering","volume":"36 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2009-05-23","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"130202173","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 5
Integration strategies for Computational Science & Engineering software 计算科学与工程软件的集成策略
2009 ICSE Workshop on Software Engineering for Computational Science and Engineering Pub Date : 2009-05-23 DOI: 10.1109/SECSE.2009.5069160
R. Bartlett
{"title":"Integration strategies for Computational Science & Engineering software","authors":"R. Bartlett","doi":"10.1109/SECSE.2009.5069160","DOIUrl":"https://doi.org/10.1109/SECSE.2009.5069160","url":null,"abstract":"In order to make significant progress in solving challenging problems in Computational Science & Engineering (CS&E), we need to integrate a large amount of software written by different groups of experts. Modern Lean/Agile methodologies would seem to provide a good foundation for research-driven development of complex CS&E software. Here, we describe issues related to the integration of CS&E software and propose different integration processes tailored to the special challenges in CS&E. We also describe practical experience with some of these tailored integration strategies related to Trilinos and some of its important application customers at Sandia National Labs.","PeriodicalId":311477,"journal":{"name":"2009 ICSE Workshop on Software Engineering for Computational Science and Engineering","volume":"16 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2009-05-23","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"114545002","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 9
Some challenges facing software engineers developing software for scientists 为科学家开发软件的软件工程师面临的一些挑战
2009 ICSE Workshop on Software Engineering for Computational Science and Engineering Pub Date : 2009-05-23 DOI: 10.1109/SECSE.2009.5069156
J. Segal
{"title":"Some challenges facing software engineers developing software for scientists","authors":"J. Segal","doi":"10.1109/SECSE.2009.5069156","DOIUrl":"https://doi.org/10.1109/SECSE.2009.5069156","url":null,"abstract":"In this paper, I discuss two types of challenges facing software engineers as they develop software for scientists. The first type is those challenges that arise from the experience that scientists might have of developing their own software. From this experience, they internalise a model of software development but may not realise the contextual factors which make such a model successful. They thus have expectations and assumptions which prove challenging to software engineers. The second type is those challenges which, while not unique to the development of software for scientists, have especial significance in the context of such development. These include the challenges of ensuring effective user engagement and of developing software for a community.","PeriodicalId":311477,"journal":{"name":"2009 ICSE Workshop on Software Engineering for Computational Science and Engineering","volume":"6 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2009-05-23","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"121266276","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 30
Testing for trustworthiness in scientific software 科学软件的可信度测试
2009 ICSE Workshop on Software Engineering for Computational Science and Engineering Pub Date : 2009-05-23 DOI: 10.1109/SECSE.2009.5069163
D. Hook, D. Kelly
{"title":"Testing for trustworthiness in scientific software","authors":"D. Hook, D. Kelly","doi":"10.1109/SECSE.2009.5069163","DOIUrl":"https://doi.org/10.1109/SECSE.2009.5069163","url":null,"abstract":"Two factors contribute to the difficulty of testing scientific software. One is the lack of testing oracles - a means of comparing software output to expected and correct results. The second is the large number of tests required when following any standard testing technique described in the software engineering literature. Due to the lack of oracles, scientists use judgment based on experience to assess trustworthiness, rather than correctness, of their software. This is an approach well established for assessing scientific models. However, the problem of assessing software is more complex, exacerbated by the problem of code faults. This highlights the need for effective and efficient testing for code faults in scientific software. Our current research suggests that a small number of well chosen tests may reveal a high percentage of code faults in scientific software and allow scientists to increase their trust.","PeriodicalId":311477,"journal":{"name":"2009 ICSE Workshop on Software Engineering for Computational Science and Engineering","volume":"68 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2009-05-23","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"126268581","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 49
Injecting software architectural constraints into legacy scientific applications 将软件架构约束注入到遗留科学应用程序中
2009 ICSE Workshop on Software Engineering for Computational Science and Engineering Pub Date : 2009-05-23 DOI: 10.1109/SECSE.2009.5069164
D. Woollard, C. Mattmann, N. Medvidović
{"title":"Injecting software architectural constraints into legacy scientific applications","authors":"D. Woollard, C. Mattmann, N. Medvidović","doi":"10.1109/SECSE.2009.5069164","DOIUrl":"https://doi.org/10.1109/SECSE.2009.5069164","url":null,"abstract":"While software architectures have been shown to aid developers in maintenance, reuse, and evolution as well as many other software engineering tasks, there is little language-level support for these architectural concepts in scientific programming languages such as Fortran and C. Because many existing scientific codes are written in legacy languages, it is difficult to integrate them into architected software systems. By wrapping scientific codes in architecturally-aware interfaces, we are able to componentize legacy programs, integrating them into systems built with first-class architectural elements while meeting performance and throughput requirements of scientific codes.","PeriodicalId":311477,"journal":{"name":"2009 ICSE Workshop on Software Engineering for Computational Science and Engineering","volume":"73 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2009-05-23","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"124648952","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 9
Reusability of FEA software: A program family approach 有限元分析软件的可重用性:一个程序族方法
2009 ICSE Workshop on Software Engineering for Computational Science and Engineering Pub Date : 2009-05-23 DOI: 10.1109/SECSE.2009.5069161
Wen Yu, Spencer Smith
{"title":"Reusability of FEA software: A program family approach","authors":"Wen Yu, Spencer Smith","doi":"10.1109/SECSE.2009.5069161","DOIUrl":"https://doi.org/10.1109/SECSE.2009.5069161","url":null,"abstract":"This paper proposes a methodology to improve the reusability of Finite Element Analysis (FEA) software using a program family approach. The usability and the maintainability are significant problems for a developer trying to properly reuse FEA software. Usability is promoted via systematically defined goals, assumptions, theoretical and computational models, definitions, common requirements and variabilities. Maintainability is improved through a component generator and traceability matrices between different portions of the documentation. We present preliminary work on a simple FEA program family for solving beam analysis problems to illustrate how the program family approach can be applied to FEA software.","PeriodicalId":311477,"journal":{"name":"2009 ICSE Workshop on Software Engineering for Computational Science and Engineering","volume":"19 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2009-05-23","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"116004803","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 9
Developing scientific applications using Generative Programming 使用生成式编程开发科学应用程序
2009 ICSE Workshop on Software Engineering for Computational Science and Engineering Pub Date : 2009-05-23 DOI: 10.1109/SECSE.2009.5069162
R. Arora, P. Bangalore, M. Mernik
{"title":"Developing scientific applications using Generative Programming","authors":"R. Arora, P. Bangalore, M. Mernik","doi":"10.1109/SECSE.2009.5069162","DOIUrl":"https://doi.org/10.1109/SECSE.2009.5069162","url":null,"abstract":"Scientific applications usually involve large number of distributed and dynamic resources and huge datasets. A mechanism like checkpointing is essential to make these applications resilient to failures. Using checkpointing as an example, this paper presents an approach for integrating the latest software engineering techniques with the development of scientific software. Generative programming is used in this research to achieve the goals of non-intrusive reengineering of existing applications to insert the checkpointing mechanism and to decouple the checkpointing-specifications from its actual implementation. The end-user specifies the checkpointing details at a higher level of abstraction, using which the necessary code is generated and woven into the application. The lessons learned and the implementation approach presented in this paper can be applied to the development of scientific applications in general. The paper also demonstrates that the generated code does not introduce any inaccuracies and its performance is comparable to the manually inserted code.","PeriodicalId":311477,"journal":{"name":"2009 ICSE Workshop on Software Engineering for Computational Science and Engineering","volume":"21 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2009-05-23","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"130357534","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 7
An empirical characterization of scientific software development projects according to the Boehm and Turner model: A progress report 根据Boehm和Turner模型的科学软件开发项目的经验特征:进度报告
2009 ICSE Workshop on Software Engineering for Computational Science and Engineering Pub Date : 2009-05-23 DOI: 10.1109/SECSE.2009.5069158
Carlton A. Crabtree, A. G. Koru, C. Seaman, H. Erdogmus
{"title":"An empirical characterization of scientific software development projects according to the Boehm and Turner model: A progress report","authors":"Carlton A. Crabtree, A. G. Koru, C. Seaman, H. Erdogmus","doi":"10.1109/SECSE.2009.5069158","DOIUrl":"https://doi.org/10.1109/SECSE.2009.5069158","url":null,"abstract":"A number of recent studies reported on the success of applying agile methods in scientific software development projects. These studies found that agile methods are well suited to the exploratory, iterative, and collaborative nature of scientific inquiry. However, these findings might not be applicable in all situations pertaining to scientific software development projects. In addition, they only constitute a subset of the important factors while deciding which development methods and practices should be adopted. Therefore, it becomes important to conduct further research before making recommendations regarding the adoption of certain development methods and practices in this domain. In this progress report, we discuss our on-going research that will empirically study the characteristics of various scientific software development projects according to a model suggested by Boehm and Turner. We plan to conduct interviews and collect data from various scientific software development projects in the Baltimore-Washington area. We expect that our qualitative results will increase our understanding of the characteristics in those projects favoring plan-driven approaches or agile methods, and the needs and conditions associated with those characteristics. Our research provides guidance to scientific software developers by enhancing their capacity to evaluate and understand their own project characteristics and select effective software practices. As a long-term benefit in the same direction, our qualitative results will generate a set of hypotheses that can be tested in different project environments to better understand and categorize scientific software development projects. Consequently, in the future, more generalizable and actionable recommendations can be made for scientific software development projects.","PeriodicalId":311477,"journal":{"name":"2009 ICSE Workshop on Software Engineering for Computational Science and Engineering","volume":"37 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2009-05-23","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"127385906","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 12
0
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
确定
请完成安全验证×
相关产品
×
本文献相关产品
联系我们:info@booksci.cn Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。 Copyright © 2023 布克学术 All rights reserved.
京ICP备2023020795号-1
ghs 京公网安备 11010802042870号
Book学术文献互助
Book学术文献互助群
群 号:604180095
Book学术官方微信