SlideShare une entreprise Scribd logo
1  sur  4
Télécharger pour lire hors ligne
2010 CRC PhD Student Conference



How best to               support         scientific           end-user    software
development?
                               Aleksandra Pawlik
                             a.n.pawlik@open.ac.uk

Supervisors          Dr. Judith Segal
                     Prof. Marian Petre
                     Prof. Helen Sharp
Department/Institute Computing
Status               Full-time
Probation viva       Before
Starting date        October 2009

Introduction

End-user software development has received substantial amounts of attention within
both the academic and software engineering communities [1-3]. One of the sub-
groups that can be distinguished amongst end-user developers is that of scientific end-
user developers [4]. A particular set of characteristics differentiates scientists from
other end-user developers. Firstly, working in the field of science often necessitates
the use of various software packages on a daily basis. Secondly, scientists are familiar
with and utilize formal languages as well as particular modelling techniques.
Additionally, the majority of science degree curriculums offered by universities
contain at least one course in programming. Thus, many scientists have some
experience with coding at a relatively early stage of their academic and professional
career. In many cases, conducting a scientific research project means developing a
tailor-made software tool which will address a particular scientific problem. Therefore,
it may seem that scientists are “predisposed” to being effective and successful end-
user software developers more likely to produce a sustainable end-product software.
However, numerous problematic issues related to scientific end-user software
development have been reported by researchers in computing [5, 6], software
engineers [7] and scientists themselves [8]. For the purpose of my research project, I
will make the distinction between two different contexts within scientific end-user
software development:
    - Limited Context: when software is developed (usually in a purely academic
        environment) in order to address a specific problem within a particular project
        which is being run by a limited group of anticipated users;
    - Extended Context: when it is expected that the software will be reusable,
        maintainable and flexible (i.e. potentially used by an extended group of as yet
        undetermined users).
Scientific end-user software development needs, therefore, relevant and effective
support from the software development professionals’ community. Despite the fact
that some related help exists and is available [9], scientists who develop software and
software engineers who collaborate with them at various levels may find scientific
software development problematic. This indicates that the assistance and support
provided may need adjustments and improvements, an objective that may be
approached from different angles. First of all, it is essential to identify and examine
difficulties which may crop up during scientific end-user software development. The
second approach is to investigate and understand the origins of these problems.


                                      Page 78 of 125
2010 CRC PhD Student Conference



Finally, we need to comprehend why the support available for scientific end-users
provided by the software development professionals’ community does not seem to be
working effectively and what steps should be taken to attempt to remedy this. I argue
that these steps need to involve observing the practices applied during scientific
software development in a number of different contexts.

In my PhD research project, I intend to focus on exploring the tools and methods
which scientific end-user developers employ in their work. The answer to the
question ”What techniques do scientific end-user developers use?” should allow me
to identify the ways in which scientists address issues that emerge during software
development. Additionally, I will pay special attention to the methods which scientific
end-user developers find successful. By “successful” I mean those that were
introduced and maintained during part or indeed the whole cycle of software
development, and which resulted in sustainable software. Thus, my second research
question is “What are the problematic and successful applications of tools and
techniques for supporting end-user software developers?". The results of my study
may potentially provide sufficient information which could be used to tailor and
improve ways of assisting scientific end-user development.

Background

A number of researchers investigated the characteristics and issues related to
scientific end-user development. For example, Segal [10] notes that the software
development process consists of short cycles and proposes an “iterative and
incremental” model of scientific software development which is a result of the fact
that the majority of scientific work remains experimental and is based on
approximation models. Moreover, some scientific projects involve tacit knowledge,
something which creates difficulties in establishing requirements and designing
software packages [11]. The experimental nature of these scientific projects, the
application of tacit knowledge and the approximations generated by mathematical
models create a further problem, that of software testing [12] [13].

Some problems are generated by the fact that many scientific end-user developers
make software within a very limited context of usage. The main aim of scientific
projects is to advance science, deliver and publish the findings. The resources (time,
finances and people) allocated to software development within the framework of a
scientific project tend to be insufficient [14]. Therefore, scientists’ reluctance to
apprehend, for example, object-oriented programming languages, and their preference
to implement code in Fortran seems justified. Moreover, by sticking with familiar
programming languages, scientific end-user developers reduce the risk of errors that
might result from the use of languages which are new or unfamiliar to them [6]. Since,
within the scientific working culture [5], software development is not made a high
priority, scientists who develop software packages do not, as a result, receive relevant
credit, something which tends to discourage them from putting more effort into
creating sustainable software [14]. Other factors which contribute to problems with
scientific end-user software development, such as lack of effective project
management or problems with the labour division, may dissuade developers from
making use of any version control systems or configuration management tools [15].




                                      Page 79 of 125
2010 CRC PhD Student Conference



In fact, tailor-made resources relating directly to software engineering techniques and
methods supporting scientific end-user software development are available and being
continuously developed, mainly by software development professionals [16].
However, these resources only receive rather a poor uptake from the scientific
community, as scientists prefer to teach themselves from, for example, generic
textbooks, colleagues, the Internet, and so on [17] [6]. Additionally, as described by
Kelly [18], the chasm that divides the different approaches to software development
between the communities of scientific end-user developers and software development
professionals only serves to cause further discrepancies in the overall communication
between the two groups.


Methodology

I intend to investigate case studies of scientific end-user software development in
which various software engineering techniques and methods were used in covering
the following:
- The transition of turning purely academic (Limited Context) scientific software
packages into commercial ones;
- The transition of turning purely academic (Limited Context) scientific software
packages into open source (Extended Context) ones;
- The development of scientific software which directly involves software
development professionals (Extended Context).

Since this PhD research project is exploratory in nature, qualitative research methods
would seem to be the most appropriate. Moreover, studies in information systems are
highly context-dependent and interpretative [19], something which requires making
use of methods that allow researchers to investigate issues in depth. I will use
interviews and participant observation as the main methods of data collection. The
interviews will be conducted with both scientific end-user developers and software
development professionals who are directly involved, together with scientists, in
scientific software development teams. The former will constitute the majority of the
respondent group whilst interviews with software development professionals will aim
to provide additional information about the application of methods and techniques for
supporting scientific end-user development. Ideally the interviews will be combined
with participant observation enabling me to obtain a fuller picture of the process and
to perceive any issues related to scientific end-user development. Two things will be
crucial in the sampling of the case studies: being able to obtain maximum variation
within the sample, but also the ability to include convenient sampling (e.g. contacting
respondents, access to the fieldwork etc.), something which will doubtless have an
impact on the final construction of the set of case studies.

References

[1]    B. A. Myers, M. M. Burnett, S. Wiedenbeck, A. J. Ko, and M. B. Rosson,
       "End user software engineering: CHI: 2009 special interest group meeting," in
       Proceedings of the 27th international conference extended abstracts on
       Human factors in computing systems Boston, MA, USA: ACM, 2009.
[2]    H. Lieberman, Paternò, F., Wulf, V., "End user development," Dordrecht, The
       Netherlands: Springer, 2006.


                                      Page 80 of 125
2010 CRC PhD Student Conference



[3]    M. F. Costabile, P. Mussio, L. P. Provenza, and A. Piccinno, "End users as
       unwitting software developers," in Proceedings of the 4th international
       workshop on End-user software engineering Leipzig, Germany: ACM, 2008.
[4]    J. Segal and S. Clarke, "Point/Counterpoint: Software Engineers Don't Know
       Everything about End-User Programming," Software, IEEE, vol. 26, pp. 54-57,
       2009.
[5]    J. Segal, "Software Development Cultures and Cooperation Problems: A field
       Study of the Early Stages of Development of Software for a Scientific
       Community," Computer Supported Cooperative Work (CSCW), vol. 18, pp.
       581-606, 2009.
[6]    R. Sanders and D. Kelly, "Dealing with risk in scientific software
       development," Software, IEEE, pp. 21-28, 2008.
[7]    V. R. Basili, D. Cruzes, J. C. Carver, L. M. Hochstein, J. K. Hollingsworth, M.
       V. Zelkowitz, and F. Shull, "Understanding the high-performance-computing
       community: A software engineer's perspective," Software, IEEE, vol. 25, pp.
       29-36, 2008.
[8]    C. Rickett, S. Choi, C. Rasmussen, and M. Sottile, "Rapid prototyping
       frameworks for developing scientific applications: A case study," The Journal
       of Supercomputing, vol. 36, pp. 123-134, 2006.
[9]    G. Wilson, "Those Who Will Not Learn From History," Computing in Science
       and Engineering, vol. 10, p. 5, 2008.
[10]   J. Segal, "Models of scientific software development," in Workshop on
       Software Engineering in Computational Science and Engineering, Leipzig,
       Germany, 2008
[11]   S. Thew, A. Sutcliffe, R. Procter, O. de Bruijn, J. McNaught, C. C. Venters,
       and I. Buchan, "Requirements Engineering for E-science: Experiences in
       Epidemiology," Software, IEEE, vol. 26, pp. 80-87, 2009.
[12]   D. Hook and D. Kelly, "Testing for trustworthiness in scientific software," in
       Proceedings of the 2009 ICSE Workshop on Software Engineering for
       Computational Science and Engineering: IEEE Computer Society, 2009.
[13]   S. Easterbrook and T. Johns, "Engineering the Software for Understanding
       Climate Change," Computing in Science and Engineering, vol. 26, 2009.
[14]   "Reporting Back - Open Middleware Infrastructure Institute Collaboration
       Workshops 2010," http://www.omii.ac.uk/wiki/CW10ReportingBack, 2010.
[15]   M. Vigder, "End-user software development in a scientific organization," in
       Proceedings of the 2009 ICSE Workshop on Software Engineering
       Foundations for End User Programming: IEEE Computer Society, 2009.
[16]   "Software Carpentry - an intensive introduction to basic software development
       practices for scientists and engineers," http://software-carpentry.org/.
[17]   G. Wilson, "How Do Scientists Really Use Computers?," American Scientist,
       vol. 97, pp. 360-362, 2009.
[18]   D. Kelly, "A software chasm: Software engineering and scientific computing,"
       Software, IEEE, p. 120, 2007.
[19]   H. K. Klein and M. D. Myers, "A set of principles for conducting and
       evaluating interpretive field studies in information systems," MIS Quarterly,
       vol. 23, p. 67(2), 1999.




                                      Page 81 of 125

Contenu connexe

Tendances

Lecture plan ec202_eca-365
Lecture plan ec202_eca-365Lecture plan ec202_eca-365
Lecture plan ec202_eca-365ArunKishorJohar
 
Managing Large-scale Multimedia Development Projects
Managing Large-scale Multimedia Development ProjectsManaging Large-scale Multimedia Development Projects
Managing Large-scale Multimedia Development ProjectsSimon Price
 
Understanding software quality assurance in Open Source Software
Understanding software quality assurance in Open Source SoftwareUnderstanding software quality assurance in Open Source Software
Understanding software quality assurance in Open Source SoftwareHwer Aron
 
Center for Visual & Decision Information Highlights and Facilities
Center for Visual & Decision Information Highlights and FacilitiesCenter for Visual & Decision Information Highlights and Facilities
Center for Visual & Decision Information Highlights and FacilitiesLouisiana Technology Council
 
112 - The Role of Mentoring and Project Characteristics for Onboarding in Ope...
112 - The Role of Mentoring and Project Characteristics for Onboarding in Ope...112 - The Role of Mentoring and Project Characteristics for Onboarding in Ope...
112 - The Role of Mentoring and Project Characteristics for Onboarding in Ope...ESEM 2014
 
Supporting software documentation with source code summarization
Supporting software documentation with source code summarization Supporting software documentation with source code summarization
Supporting software documentation with source code summarization Ra'Fat Al-Msie'deen
 
Introduction Promise 2008 V3
Introduction Promise 2008 V3Introduction Promise 2008 V3
Introduction Promise 2008 V3gregoryg
 

Tendances (7)

Lecture plan ec202_eca-365
Lecture plan ec202_eca-365Lecture plan ec202_eca-365
Lecture plan ec202_eca-365
 
Managing Large-scale Multimedia Development Projects
Managing Large-scale Multimedia Development ProjectsManaging Large-scale Multimedia Development Projects
Managing Large-scale Multimedia Development Projects
 
Understanding software quality assurance in Open Source Software
Understanding software quality assurance in Open Source SoftwareUnderstanding software quality assurance in Open Source Software
Understanding software quality assurance in Open Source Software
 
Center for Visual & Decision Information Highlights and Facilities
Center for Visual & Decision Information Highlights and FacilitiesCenter for Visual & Decision Information Highlights and Facilities
Center for Visual & Decision Information Highlights and Facilities
 
112 - The Role of Mentoring and Project Characteristics for Onboarding in Ope...
112 - The Role of Mentoring and Project Characteristics for Onboarding in Ope...112 - The Role of Mentoring and Project Characteristics for Onboarding in Ope...
112 - The Role of Mentoring and Project Characteristics for Onboarding in Ope...
 
Supporting software documentation with source code summarization
Supporting software documentation with source code summarization Supporting software documentation with source code summarization
Supporting software documentation with source code summarization
 
Introduction Promise 2008 V3
Introduction Promise 2008 V3Introduction Promise 2008 V3
Introduction Promise 2008 V3
 

En vedette

Pawlik crc conf_2010_
Pawlik crc conf_2010_Pawlik crc conf_2010_
Pawlik crc conf_2010_alleksandra
 
Pawlik crc conf_2010_
Pawlik crc conf_2010_Pawlik crc conf_2010_
Pawlik crc conf_2010_alleksandra
 
A Knowledge Transfer Program
A Knowledge Transfer ProgramA Knowledge Transfer Program
A Knowledge Transfer ProgramKeith De La Rue
 
10 Insightful Quotes On Designing A Better Customer Experience
10 Insightful Quotes On Designing A Better Customer Experience10 Insightful Quotes On Designing A Better Customer Experience
10 Insightful Quotes On Designing A Better Customer ExperienceYuan Wang
 
How to Build a Dynamic Social Media Plan
How to Build a Dynamic Social Media PlanHow to Build a Dynamic Social Media Plan
How to Build a Dynamic Social Media PlanPost Planner
 
Learn BEM: CSS Naming Convention
Learn BEM: CSS Naming ConventionLearn BEM: CSS Naming Convention
Learn BEM: CSS Naming ConventionIn a Rocket
 
SEO: Getting Personal
SEO: Getting PersonalSEO: Getting Personal
SEO: Getting PersonalKirsty Hulse
 

En vedette (7)

Pawlik crc conf_2010_
Pawlik crc conf_2010_Pawlik crc conf_2010_
Pawlik crc conf_2010_
 
Pawlik crc conf_2010_
Pawlik crc conf_2010_Pawlik crc conf_2010_
Pawlik crc conf_2010_
 
A Knowledge Transfer Program
A Knowledge Transfer ProgramA Knowledge Transfer Program
A Knowledge Transfer Program
 
10 Insightful Quotes On Designing A Better Customer Experience
10 Insightful Quotes On Designing A Better Customer Experience10 Insightful Quotes On Designing A Better Customer Experience
10 Insightful Quotes On Designing A Better Customer Experience
 
How to Build a Dynamic Social Media Plan
How to Build a Dynamic Social Media PlanHow to Build a Dynamic Social Media Plan
How to Build a Dynamic Social Media Plan
 
Learn BEM: CSS Naming Convention
Learn BEM: CSS Naming ConventionLearn BEM: CSS Naming Convention
Learn BEM: CSS Naming Convention
 
SEO: Getting Personal
SEO: Getting PersonalSEO: Getting Personal
SEO: Getting Personal
 

Similaire à Pawlik

NEED FOR A SOFT DIMENSION
NEED FOR A SOFT DIMENSIONNEED FOR A SOFT DIMENSION
NEED FOR A SOFT DIMENSIONcsandit
 
Better Software, Better Research
Better Software, Better ResearchBetter Software, Better Research
Better Software, Better ResearchCarole Goble
 
Project On-Science
Project On-ScienceProject On-Science
Project On-ScienceAmrit Ravi
 
Supporting The Initial Stages of The Product Design Process: Towards Knowledg...
Supporting The Initial Stages of The Product Design Process: Towards Knowledg...Supporting The Initial Stages of The Product Design Process: Towards Knowledg...
Supporting The Initial Stages of The Product Design Process: Towards Knowledg...CSCJournals
 
Omics Logic - Bioinformatics 2.0
Omics Logic - Bioinformatics 2.0Omics Logic - Bioinformatics 2.0
Omics Logic - Bioinformatics 2.0Elia Brodsky
 
A noble methodology for users’ work
A noble methodology for users’ workA noble methodology for users’ work
A noble methodology for users’ workijseajournal
 
OPEN SOURCE TECHNOLOGY: AN EMERGING AND VITAL PARADIGM IN INSTITUTIONS OF LEA...
OPEN SOURCE TECHNOLOGY: AN EMERGING AND VITAL PARADIGM IN INSTITUTIONS OF LEA...OPEN SOURCE TECHNOLOGY: AN EMERGING AND VITAL PARADIGM IN INSTITUTIONS OF LEA...
OPEN SOURCE TECHNOLOGY: AN EMERGING AND VITAL PARADIGM IN INSTITUTIONS OF LEA...AIRCC Publishing Corporation
 
OPEN SOURCE TECHNOLOGY: AN EMERGING AND VITAL PARADIGM IN INSTITUTIONS OF LEA...
OPEN SOURCE TECHNOLOGY: AN EMERGING AND VITAL PARADIGM IN INSTITUTIONS OF LEA...OPEN SOURCE TECHNOLOGY: AN EMERGING AND VITAL PARADIGM IN INSTITUTIONS OF LEA...
OPEN SOURCE TECHNOLOGY: AN EMERGING AND VITAL PARADIGM IN INSTITUTIONS OF LEA...ijcsit
 
mLearn Project 2012 Full Report
mLearn Project 2012 Full ReportmLearn Project 2012 Full Report
mLearn Project 2012 Full ReportmLearn
 
Improving usage and impact of digitised resources
Improving usage and impact of digitised resourcesImproving usage and impact of digitised resources
Improving usage and impact of digitised resourcesAlastair Dunning
 
Improving usage and impact of digitised resources
Improving usage and impact of digitised resourcesImproving usage and impact of digitised resources
Improving usage and impact of digitised resourcesJisc
 
SciForge Workshop@Potsdam Institute for Climate Impact Reserach; Nov 2014
SciForge Workshop@Potsdam Institute for Climate Impact Reserach; Nov 2014SciForge Workshop@Potsdam Institute for Climate Impact Reserach; Nov 2014
SciForge Workshop@Potsdam Institute for Climate Impact Reserach; Nov 2014dreusser
 
International Cooperation Experiences: Results Achieved, Lessons Learned, and...
International Cooperation Experiences: Results Achieved, Lessons Learned, and...International Cooperation Experiences: Results Achieved, Lessons Learned, and...
International Cooperation Experiences: Results Achieved, Lessons Learned, and...SOFIProject
 
Personal dashboards for individual learning and project awareness in social s...
Personal dashboards for individual learning and project awareness in social s...Personal dashboards for individual learning and project awareness in social s...
Personal dashboards for individual learning and project awareness in social s...Wolfgang Reinhardt
 
Student perceptions and attitudes towards the software factory as a learning ...
Student perceptions and attitudes towards the software factory as a learning ...Student perceptions and attitudes towards the software factory as a learning ...
Student perceptions and attitudes towards the software factory as a learning ...Muhammad Ahmad
 
CREW VRE Release 5 - 2009 May
CREW VRE Release 5 - 2009 MayCREW VRE Release 5 - 2009 May
CREW VRE Release 5 - 2009 MayMartin Turner
 
A Practical Approach Of Teaching Software Engineering
A Practical Approach Of Teaching Software EngineeringA Practical Approach Of Teaching Software Engineering
A Practical Approach Of Teaching Software EngineeringAmy Cernava
 
Understanding Continuous Design in F/OSS Projects
Understanding Continuous Design in F/OSS ProjectsUnderstanding Continuous Design in F/OSS Projects
Understanding Continuous Design in F/OSS ProjectsBetsey Merkel
 

Similaire à Pawlik (20)

NEED FOR A SOFT DIMENSION
NEED FOR A SOFT DIMENSIONNEED FOR A SOFT DIMENSION
NEED FOR A SOFT DIMENSION
 
Better Software, Better Research
Better Software, Better ResearchBetter Software, Better Research
Better Software, Better Research
 
Project On-Science
Project On-ScienceProject On-Science
Project On-Science
 
Lopez
LopezLopez
Lopez
 
Supporting The Initial Stages of The Product Design Process: Towards Knowledg...
Supporting The Initial Stages of The Product Design Process: Towards Knowledg...Supporting The Initial Stages of The Product Design Process: Towards Knowledg...
Supporting The Initial Stages of The Product Design Process: Towards Knowledg...
 
Omics Logic - Bioinformatics 2.0
Omics Logic - Bioinformatics 2.0Omics Logic - Bioinformatics 2.0
Omics Logic - Bioinformatics 2.0
 
A noble methodology for users’ work
A noble methodology for users’ workA noble methodology for users’ work
A noble methodology for users’ work
 
OPEN SOURCE TECHNOLOGY: AN EMERGING AND VITAL PARADIGM IN INSTITUTIONS OF LEA...
OPEN SOURCE TECHNOLOGY: AN EMERGING AND VITAL PARADIGM IN INSTITUTIONS OF LEA...OPEN SOURCE TECHNOLOGY: AN EMERGING AND VITAL PARADIGM IN INSTITUTIONS OF LEA...
OPEN SOURCE TECHNOLOGY: AN EMERGING AND VITAL PARADIGM IN INSTITUTIONS OF LEA...
 
OPEN SOURCE TECHNOLOGY: AN EMERGING AND VITAL PARADIGM IN INSTITUTIONS OF LEA...
OPEN SOURCE TECHNOLOGY: AN EMERGING AND VITAL PARADIGM IN INSTITUTIONS OF LEA...OPEN SOURCE TECHNOLOGY: AN EMERGING AND VITAL PARADIGM IN INSTITUTIONS OF LEA...
OPEN SOURCE TECHNOLOGY: AN EMERGING AND VITAL PARADIGM IN INSTITUTIONS OF LEA...
 
mLearn Project 2012 Full Report
mLearn Project 2012 Full ReportmLearn Project 2012 Full Report
mLearn Project 2012 Full Report
 
Improving usage and impact of digitised resources
Improving usage and impact of digitised resourcesImproving usage and impact of digitised resources
Improving usage and impact of digitised resources
 
Improving usage and impact of digitised resources
Improving usage and impact of digitised resourcesImproving usage and impact of digitised resources
Improving usage and impact of digitised resources
 
SciForge Workshop@Potsdam Institute for Climate Impact Reserach; Nov 2014
SciForge Workshop@Potsdam Institute for Climate Impact Reserach; Nov 2014SciForge Workshop@Potsdam Institute for Climate Impact Reserach; Nov 2014
SciForge Workshop@Potsdam Institute for Climate Impact Reserach; Nov 2014
 
International Cooperation Experiences: Results Achieved, Lessons Learned, and...
International Cooperation Experiences: Results Achieved, Lessons Learned, and...International Cooperation Experiences: Results Achieved, Lessons Learned, and...
International Cooperation Experiences: Results Achieved, Lessons Learned, and...
 
Personal dashboards for individual learning and project awareness in social s...
Personal dashboards for individual learning and project awareness in social s...Personal dashboards for individual learning and project awareness in social s...
Personal dashboards for individual learning and project awareness in social s...
 
Student perceptions and attitudes towards the software factory as a learning ...
Student perceptions and attitudes towards the software factory as a learning ...Student perceptions and attitudes towards the software factory as a learning ...
Student perceptions and attitudes towards the software factory as a learning ...
 
CREW VRE Release 5 - 2009 May
CREW VRE Release 5 - 2009 MayCREW VRE Release 5 - 2009 May
CREW VRE Release 5 - 2009 May
 
A Practical Approach Of Teaching Software Engineering
A Practical Approach Of Teaching Software EngineeringA Practical Approach Of Teaching Software Engineering
A Practical Approach Of Teaching Software Engineering
 
Understanding Continuous Design in F/OSS Projects
Understanding Continuous Design in F/OSS ProjectsUnderstanding Continuous Design in F/OSS Projects
Understanding Continuous Design in F/OSS Projects
 
Introduction to the Software Sustainability Institute
Introduction to the Software Sustainability InstituteIntroduction to the Software Sustainability Institute
Introduction to the Software Sustainability Institute
 

Plus de anesah

Aizatulin slides-4-3
Aizatulin slides-4-3Aizatulin slides-4-3
Aizatulin slides-4-3anesah
 
Aizatulin poster
Aizatulin posterAizatulin poster
Aizatulin posteranesah
 
Abraham
AbrahamAbraham
Abrahamanesah
 
Mouawad
MouawadMouawad
Mouawadanesah
 
Pantidi
PantidiPantidi
Pantidianesah
 
Wilkie
WilkieWilkie
Wilkieanesah
 
Van der merwe
Van der merweVan der merwe
Van der merweanesah
 
Thomas
ThomasThomas
Thomasanesah
 
Taubenberger
TaubenbergerTaubenberger
Taubenbergeranesah
 
Pantidi
PantidiPantidi
Pantidianesah
 
Corneli
CorneliCorneli
Cornelianesah
 
Collins
CollinsCollins
Collinsanesah
 
Ullmann
UllmannUllmann
Ullmannanesah
 
Quinto
QuintoQuinto
Quintoanesah
 
Overbeeke
OverbeekeOverbeeke
Overbeekeanesah
 

Plus de anesah (20)

Aizatulin slides-4-3
Aizatulin slides-4-3Aizatulin slides-4-3
Aizatulin slides-4-3
 
Aizatulin poster
Aizatulin posterAizatulin poster
Aizatulin poster
 
Abraham
AbrahamAbraham
Abraham
 
Mouawad
MouawadMouawad
Mouawad
 
Pantidi
PantidiPantidi
Pantidi
 
Wilkie
WilkieWilkie
Wilkie
 
Van der merwe
Van der merweVan der merwe
Van der merwe
 
Thomas
ThomasThomas
Thomas
 
Taubenberger
TaubenbergerTaubenberger
Taubenberger
 
Sach
SachSach
Sach
 
Rae
RaeRae
Rae
 
Pantidi
PantidiPantidi
Pantidi
 
Corneli
CorneliCorneli
Corneli
 
Collins
CollinsCollins
Collins
 
Xambo
XamboXambo
Xambo
 
Ullmann
UllmannUllmann
Ullmann
 
Tran
TranTran
Tran
 
Quinto
QuintoQuinto
Quinto
 
Pluss
PlussPluss
Pluss
 
Overbeeke
OverbeekeOverbeeke
Overbeeke
 

Dernier

Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobeapidays
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDropbox
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processorsdebabhi2
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...apidays
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024The Digital Insurer
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoffsammart93
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherRemote DBA Services
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)wesley chun
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...apidays
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodJuan lago vázquez
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Scriptwesley chun
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWERMadyBayot
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CVKhem
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsNanddeep Nachan
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024The Digital Insurer
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfsudhanshuwaghmare1
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingEdi Saputra
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...apidays
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businesspanagenda
 

Dernier (20)

Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectors
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 

Pawlik

  • 1. 2010 CRC PhD Student Conference How best to support scientific end-user software development? Aleksandra Pawlik a.n.pawlik@open.ac.uk Supervisors Dr. Judith Segal Prof. Marian Petre Prof. Helen Sharp Department/Institute Computing Status Full-time Probation viva Before Starting date October 2009 Introduction End-user software development has received substantial amounts of attention within both the academic and software engineering communities [1-3]. One of the sub- groups that can be distinguished amongst end-user developers is that of scientific end- user developers [4]. A particular set of characteristics differentiates scientists from other end-user developers. Firstly, working in the field of science often necessitates the use of various software packages on a daily basis. Secondly, scientists are familiar with and utilize formal languages as well as particular modelling techniques. Additionally, the majority of science degree curriculums offered by universities contain at least one course in programming. Thus, many scientists have some experience with coding at a relatively early stage of their academic and professional career. In many cases, conducting a scientific research project means developing a tailor-made software tool which will address a particular scientific problem. Therefore, it may seem that scientists are “predisposed” to being effective and successful end- user software developers more likely to produce a sustainable end-product software. However, numerous problematic issues related to scientific end-user software development have been reported by researchers in computing [5, 6], software engineers [7] and scientists themselves [8]. For the purpose of my research project, I will make the distinction between two different contexts within scientific end-user software development: - Limited Context: when software is developed (usually in a purely academic environment) in order to address a specific problem within a particular project which is being run by a limited group of anticipated users; - Extended Context: when it is expected that the software will be reusable, maintainable and flexible (i.e. potentially used by an extended group of as yet undetermined users). Scientific end-user software development needs, therefore, relevant and effective support from the software development professionals’ community. Despite the fact that some related help exists and is available [9], scientists who develop software and software engineers who collaborate with them at various levels may find scientific software development problematic. This indicates that the assistance and support provided may need adjustments and improvements, an objective that may be approached from different angles. First of all, it is essential to identify and examine difficulties which may crop up during scientific end-user software development. The second approach is to investigate and understand the origins of these problems. Page 78 of 125
  • 2. 2010 CRC PhD Student Conference Finally, we need to comprehend why the support available for scientific end-users provided by the software development professionals’ community does not seem to be working effectively and what steps should be taken to attempt to remedy this. I argue that these steps need to involve observing the practices applied during scientific software development in a number of different contexts. In my PhD research project, I intend to focus on exploring the tools and methods which scientific end-user developers employ in their work. The answer to the question ”What techniques do scientific end-user developers use?” should allow me to identify the ways in which scientists address issues that emerge during software development. Additionally, I will pay special attention to the methods which scientific end-user developers find successful. By “successful” I mean those that were introduced and maintained during part or indeed the whole cycle of software development, and which resulted in sustainable software. Thus, my second research question is “What are the problematic and successful applications of tools and techniques for supporting end-user software developers?". The results of my study may potentially provide sufficient information which could be used to tailor and improve ways of assisting scientific end-user development. Background A number of researchers investigated the characteristics and issues related to scientific end-user development. For example, Segal [10] notes that the software development process consists of short cycles and proposes an “iterative and incremental” model of scientific software development which is a result of the fact that the majority of scientific work remains experimental and is based on approximation models. Moreover, some scientific projects involve tacit knowledge, something which creates difficulties in establishing requirements and designing software packages [11]. The experimental nature of these scientific projects, the application of tacit knowledge and the approximations generated by mathematical models create a further problem, that of software testing [12] [13]. Some problems are generated by the fact that many scientific end-user developers make software within a very limited context of usage. The main aim of scientific projects is to advance science, deliver and publish the findings. The resources (time, finances and people) allocated to software development within the framework of a scientific project tend to be insufficient [14]. Therefore, scientists’ reluctance to apprehend, for example, object-oriented programming languages, and their preference to implement code in Fortran seems justified. Moreover, by sticking with familiar programming languages, scientific end-user developers reduce the risk of errors that might result from the use of languages which are new or unfamiliar to them [6]. Since, within the scientific working culture [5], software development is not made a high priority, scientists who develop software packages do not, as a result, receive relevant credit, something which tends to discourage them from putting more effort into creating sustainable software [14]. Other factors which contribute to problems with scientific end-user software development, such as lack of effective project management or problems with the labour division, may dissuade developers from making use of any version control systems or configuration management tools [15]. Page 79 of 125
  • 3. 2010 CRC PhD Student Conference In fact, tailor-made resources relating directly to software engineering techniques and methods supporting scientific end-user software development are available and being continuously developed, mainly by software development professionals [16]. However, these resources only receive rather a poor uptake from the scientific community, as scientists prefer to teach themselves from, for example, generic textbooks, colleagues, the Internet, and so on [17] [6]. Additionally, as described by Kelly [18], the chasm that divides the different approaches to software development between the communities of scientific end-user developers and software development professionals only serves to cause further discrepancies in the overall communication between the two groups. Methodology I intend to investigate case studies of scientific end-user software development in which various software engineering techniques and methods were used in covering the following: - The transition of turning purely academic (Limited Context) scientific software packages into commercial ones; - The transition of turning purely academic (Limited Context) scientific software packages into open source (Extended Context) ones; - The development of scientific software which directly involves software development professionals (Extended Context). Since this PhD research project is exploratory in nature, qualitative research methods would seem to be the most appropriate. Moreover, studies in information systems are highly context-dependent and interpretative [19], something which requires making use of methods that allow researchers to investigate issues in depth. I will use interviews and participant observation as the main methods of data collection. The interviews will be conducted with both scientific end-user developers and software development professionals who are directly involved, together with scientists, in scientific software development teams. The former will constitute the majority of the respondent group whilst interviews with software development professionals will aim to provide additional information about the application of methods and techniques for supporting scientific end-user development. Ideally the interviews will be combined with participant observation enabling me to obtain a fuller picture of the process and to perceive any issues related to scientific end-user development. Two things will be crucial in the sampling of the case studies: being able to obtain maximum variation within the sample, but also the ability to include convenient sampling (e.g. contacting respondents, access to the fieldwork etc.), something which will doubtless have an impact on the final construction of the set of case studies. References [1] B. A. Myers, M. M. Burnett, S. Wiedenbeck, A. J. Ko, and M. B. Rosson, "End user software engineering: CHI: 2009 special interest group meeting," in Proceedings of the 27th international conference extended abstracts on Human factors in computing systems Boston, MA, USA: ACM, 2009. [2] H. Lieberman, Paternò, F., Wulf, V., "End user development," Dordrecht, The Netherlands: Springer, 2006. Page 80 of 125
  • 4. 2010 CRC PhD Student Conference [3] M. F. Costabile, P. Mussio, L. P. Provenza, and A. Piccinno, "End users as unwitting software developers," in Proceedings of the 4th international workshop on End-user software engineering Leipzig, Germany: ACM, 2008. [4] J. Segal and S. Clarke, "Point/Counterpoint: Software Engineers Don't Know Everything about End-User Programming," Software, IEEE, vol. 26, pp. 54-57, 2009. [5] J. Segal, "Software Development Cultures and Cooperation Problems: A field Study of the Early Stages of Development of Software for a Scientific Community," Computer Supported Cooperative Work (CSCW), vol. 18, pp. 581-606, 2009. [6] R. Sanders and D. Kelly, "Dealing with risk in scientific software development," Software, IEEE, pp. 21-28, 2008. [7] V. R. Basili, D. Cruzes, J. C. Carver, L. M. Hochstein, J. K. Hollingsworth, M. V. Zelkowitz, and F. Shull, "Understanding the high-performance-computing community: A software engineer's perspective," Software, IEEE, vol. 25, pp. 29-36, 2008. [8] C. Rickett, S. Choi, C. Rasmussen, and M. Sottile, "Rapid prototyping frameworks for developing scientific applications: A case study," The Journal of Supercomputing, vol. 36, pp. 123-134, 2006. [9] G. Wilson, "Those Who Will Not Learn From History," Computing in Science and Engineering, vol. 10, p. 5, 2008. [10] J. Segal, "Models of scientific software development," in Workshop on Software Engineering in Computational Science and Engineering, Leipzig, Germany, 2008 [11] S. Thew, A. Sutcliffe, R. Procter, O. de Bruijn, J. McNaught, C. C. Venters, and I. Buchan, "Requirements Engineering for E-science: Experiences in Epidemiology," Software, IEEE, vol. 26, pp. 80-87, 2009. [12] D. Hook and D. Kelly, "Testing for trustworthiness in scientific software," in Proceedings of the 2009 ICSE Workshop on Software Engineering for Computational Science and Engineering: IEEE Computer Society, 2009. [13] S. Easterbrook and T. Johns, "Engineering the Software for Understanding Climate Change," Computing in Science and Engineering, vol. 26, 2009. [14] "Reporting Back - Open Middleware Infrastructure Institute Collaboration Workshops 2010," http://www.omii.ac.uk/wiki/CW10ReportingBack, 2010. [15] M. Vigder, "End-user software development in a scientific organization," in Proceedings of the 2009 ICSE Workshop on Software Engineering Foundations for End User Programming: IEEE Computer Society, 2009. [16] "Software Carpentry - an intensive introduction to basic software development practices for scientists and engineers," http://software-carpentry.org/. [17] G. Wilson, "How Do Scientists Really Use Computers?," American Scientist, vol. 97, pp. 360-362, 2009. [18] D. Kelly, "A software chasm: Software engineering and scientific computing," Software, IEEE, p. 120, 2007. [19] H. K. Klein and M. D. Myers, "A set of principles for conducting and evaluating interpretive field studies in information systems," MIS Quarterly, vol. 23, p. 67(2), 1999. Page 81 of 125