hig.sePublications
Change search
CiteExportLink to record
Permanent link

Direct link
Cite
Citation style
  • apa
  • harvard-cite-them-right
  • ieee
  • modern-language-association-8th-edition
  • vancouver
  • Other style
More styles
Language
  • sv-SE
  • en-GB
  • en-US
  • fi-FI
  • nn-NO
  • nn-NB
  • de-DE
  • Other locale
More languages
Output format
  • html
  • text
  • asciidoc
  • rtf
On the Road to a Software Profession: Students' Experiences of Concepts and Thresholds
University of Gävle, Faculty of Engineering and Sustainable Development, Department of Industrial Development, IT and Land Management. (UpCERG)
2010 (English)Doctoral thesis, comprehensive summary (Other academic)
Abstract [en]

Research has shown that there are gaps in knowledge between newly hired and experienced professionals and that some of these gaps are related to concepts, such as the concepts of object orientation. This problem, and the fact that most computer science majors want to work in the software industry, leads to questions regarding why these gaps exist and how students can be better prepared for their future careers. Against this background, this thesis addresses two theme-based perspectives that focus on students' views of concepts in Computer Science.

The first theme-based perspective investigated the existence of potential Threshold Concepts in Computer Science. Such concepts should be troublesome, transformative, irreversible, and integrative. Qualitative methods have been mainly used and empirical data have been collected through semi-structured interviews, concept maps, and written stories. The results identified two Threshold Concepts, suggested several more, and then described the ways in which these concepts have transformed students.

The second theme-based perspective took a phenomenographic approach to find the variation in how students understand concepts related to the software profession. Data were collected via semi-structured interviews. In one study the interviews were held in connection with role-playing where students took on the role of a newly hired programmer. The results show a variety of ways to experience the addressed phenomena in the student collective, ranging from superficial views that often have a practical nature to more sophisticated understandings that reflect a holistic approach, including a professional point of view.

Educators can use the results to emphasize concepts that are important from students' perspectives. The phenomenographic outcome spaces can help teachers to reflect upon their own ways of seeing contrasted with student conceptions. I have indicated how variation theory can be applied to open more sophisticated ways of seeing, which in this context stresses the professional aspects to help students prepare for becoming professional software developers.

Place, publisher, year, edition, pages
Uppsala: Acta Universitatis Upsaliensis , 2010. , 61 p.
Series
Digital Comprehensive Summaries of Uppsala Dissertations from the Faculty of Science and Technology, ISSN 1651-6214 ; 734
Keyword [en]
Biographies, class diagram, computer science education, computer science education research, computing concepts, concept map, content analysis, higher education, java interface, learning, object orientation, phenomenography, programming, role-play, software development, software profession, threshold concepts, variation theory
National Category
Computer Science Didactics
Identifiers
URN: urn:nbn:se:hig:diva-10531ISBN: 978-91-554-7789-9 (print)OAI: oai:DiVA.org:hig-10531DiVA: diva2:444430
Public defence
2010-06-04, Room 2446, Polacksbacken, Lägerhyddsvägen 2D, Uppsala, Uppsala, 13:15 (English)
Opponent
Supervisors
Note
1) Forskningsämne: Datavetenskap med inriktning mot datavetenskapens didaktik 2) Boustedts forskning skedde vid Uppsala universitet, Teknisk-naturvetenskapliga vetenskapsområdet, Matematisk-datavetenskapliga sektionen, Institutionen för informationsteknologi, Avdelningen för teknisk databehandling) (Uppsala universitet, Teknisk-naturvetenskapliga vetenskapsområdet, Matematisk-datavetenskapliga sektionen, Institutionen för informationsteknologi, Numerisk analysAvailable from: 2011-09-29 Created: 2011-09-29 Last updated: 2011-09-29Bibliographically approved
List of papers
1. Student transformations: are they computer scientists yet?
Open this publication in new window or tab >>Student transformations: are they computer scientists yet?
Show others...
2009 (English)In: ICER '09: Proceedings of the fifth international workshop on Computing education research, New York: ACM , 2009, 129-140 p.Conference paper, Published paper (Refereed)
Abstract [en]

We examine the changes in the ways computing students view their field as they learn, as reported by the students themselves in short written biographies. In many ways, these changes result in students thinking and acting more like computer scientists and identifying more with the computing community. Most of the changes are associated with programming and software engineering, rather than theoretical computer science, however.

Place, publisher, year, edition, pages
New York: ACM, 2009
Keyword
Threshold Concepts, Transformations, Student biographies
National Category
Computer Science Didactics
Identifiers
urn:nbn:se:hig:diva-3962 (URN)10.1145/1584322.1584337 (DOI)000282382600014 ()978-1-60558-615-1 (ISBN)
Conference
Fifth international workshop on Computing education research, ICER ´09
Available from: 2009-03-18 Created: 2009-03-18 Last updated: 2016-10-25Bibliographically approved
2. Student understanding of object-oriented programming as expressed in concept maps
Open this publication in new window or tab >>Student understanding of object-oriented programming as expressed in concept maps
Show others...
2008 (English)In: SIGCSE Bulletin inroads, ISSN 0097-8418, Vol. 40, no 1, 332-336 p.Article in journal (Refereed) Published
Abstract [en]

In this paper, we present the results of an experiment in which we sought to elicit students’ understanding of objectoriented (OO) concepts using concept maps. Our analysis confirmed earlier research indicating that students do not have a firm grasp on the distinction between “class” and “instance.” Unlike earlier research, we found that our students generally connect classes with both data and behavior. Students rarely included any mention of the hardware/software context of programs, their users, or their real-world domains. Students do mention inheritance, but not encapsulation or abstraction. And the picture they draw of OO is a static one: we found nothing that could be construed as referring to interaction among objects in a program. We then discuss the implications for teaching introductory OO programming.

Keyword
CS1, object-oriented, empirical research, concept maps
National Category
Computer Science Didactics
Identifiers
urn:nbn:se:hig:diva-1566 (URN)doi:10.1145/1352322.1352251 (DOI)000265741800078 ()
Note
The journal issue constitutes: SIGCSE '08 Proceedings of the 39th SIGCSE technical symposium on Computer science education. ISBN 978-1-59593-799-5 Available from: 2008-03-20 Created: 2008-03-20 Last updated: 2011-09-29Bibliographically approved
3. Concrete examples of abstraction as manifested in students’ transformative experiences
Open this publication in new window or tab >>Concrete examples of abstraction as manifested in students’ transformative experiences
Show others...
2008 (English)In: ICER '08: proceedings of the fourth international workshop on Computing education research, New York: ACM , 2008, 125-136 p.Conference paper, Published paper (Refereed)
Abstract [en]

This paper examines transformational learning experiences of computing students as a way to better understand threshold concepts in computing. From empirical evidence we found that students often describe transformative experiences as learning situations in which they were led to use various kinds of abstraction, for example modularity, data abstraction, inheritance, polymorphism, reuse, design patterns, and complexity. Some students describe an abstract concept as coming first, and then needing to be made concrete though application; others describe transformations in which they learn the advantages of these abstract concepts from their experience of not using them.

Abstraction is certainly of central importance in computer science. It appears, however, from our students’ descriptions of transformative experiences, that abstraction per se is not a threshold, but that particular concepts in which abstraction is paramount exhibit the characteristics of threshold concepts.

Place, publisher, year, edition, pages
New York: ACM, 2008
Keyword
Threshold Concepts, learning theory, transformation, abstraction
National Category
Computer Science Didactics
Identifiers
urn:nbn:se:hig:diva-2199 (URN)doi:http://doi.acm.org/10.1145/1404520.1404533 (DOI)978-1-60558-216-0 (ISBN)
Available from: 2008-09-24 Created: 2008-09-24 Last updated: 2011-09-29Bibliographically approved
4. Threshold concepts in computer science: do they exist and are they useful?
Open this publication in new window or tab >>Threshold concepts in computer science: do they exist and are they useful?
Show others...
2007 (English)In: SIGCSE Bulletin inroads, ISSN 0097-8418, Vol. 39, no 1, 504-508 p.Article in journal (Other academic) Published
Abstract [en]

Yes, and Yes.

We are currently undertaking an empirical investigation of “Threshold Concepts” in Computer Science, with input from both instructors and students. We have found good empirical evidence that at least two concepts—Object-oriented programming and pointers—are Threshold Concepts, and that there are potentially many more others.

In this paper, we present results gathered using various experimental techniques, and discuss how Threshold Concepts can affect the learning process.

Keyword
Threshold Concepts, learning theory
National Category
Didactics Computer Science
Identifiers
urn:nbn:se:hig:diva-2624 (URN)doi:10.1145/1227504.1227482 (DOI)
Available from: 2008-03-07 Created: 2008-03-07 Last updated: 2011-09-29Bibliographically approved
5. Students' Understanding of the Concept of Interface in a Situated Context
Open this publication in new window or tab >>Students' Understanding of the Concept of Interface in a Situated Context
2009 (English)In: Computer Science Education, ISSN 0899-3408, E-ISSN 1744-5175, Vol. 19, no 1, 15-36 p.Article in journal (Refereed) Published
Abstract [en]

The paper describes an empirical study with the aim of producing insights about how students experience programming and software engineering. The research aims to investigate the students’ world, and hence, we have chosen a phenomenographic approach. Our questions focus on the students’ experience of concepts related to a realistic programming task in an extensive software system, particularly the Java Interface. The results show that there is a distinct variation of descriptions spanning from a concrete to-do list to a more advanced description where the interface plays a crucial role in order to produce dynamic and adaptive systems. We interpret the results and suggest how they can be used in teaching to provide an extended and varied understanding for how to work with advanced software.

Place, publisher, year, edition, pages
Abingdon, UK: Routledge, 2009
Keyword
experiences; interface; java; phenomenography; programming; software engineering
National Category
Computer Science Didactics
Identifiers
urn:nbn:se:hig:diva-3839 (URN)10.1080/08993400902819980 (DOI)
Available from: 2009-03-02 Created: 2009-03-02 Last updated: 2011-09-29Bibliographically approved
6. A Student Perspective on Software Development and Maintenance
Open this publication in new window or tab >>A Student Perspective on Software Development and Maintenance
2010 (English)Report (Other academic)
Abstract [en]

How do Computer Science students view Software Development and Software Maintenance? To answer this question, a Phenomenographic perspective was chosen, and 20 Swedish students at four universities were interviewed.

The interviews were analyzed to find in which different ways the informants, on collective level, see the phenomena of interest. The resulting outcome spaces show that software development is described in a number of qualitatively different ways reaching from problem solving, design and deliver, design for the future and then a more comprehensive view that includes users, customers, budget and other aspects. Software maintenance is described as correcting bugs, making additions, adapting to new requirements from the surroundings, and something that is a natural part of the job.

Finally, conclusions from the results and additional observations are discussed in terms of their implications for teaching, and some suggestions for practical use are given.

Place, publisher, year, edition, pages
Uppsala: Uppsala University, 2010. 20 p.
Series
Technical reports from the Department of Information Technology, ISSN 1404-3203 ; 2010-012
National Category
Computer Science Didactics
Identifiers
urn:nbn:se:hig:diva-6674 (URN)
Available from: 2010-04-17 Created: 2010-04-17 Last updated: 2011-09-29Bibliographically approved
7. Ways to Understand Class Diagrams
Open this publication in new window or tab >>Ways to Understand Class Diagrams
2010 (English)Report (Other academic)
Abstract [en]

The software industry needs well trained software designers and one important aspect of software design is the ability to model software designs visually and understand what visual models represent. However, previous research indicates that software design is a difficult task to many students. This paper reports empirical findings from a phenomenographic investigation on how students understand class diagrams, UML symbols and relations to object oriented concepts. The informants were 20 Computer Science students from four different universities in Sweden.

The results show qualitively different ways to understand and describe UML class diagrams and the "diamond symbols" representing aggregation and composition. The purpose of class diagrams was understood in a varied way, from describing it as a documentation to a more advanced view related to communication. The descriptions of class diagrams varied from seeing them as a specification of classes to a more advanced view where they were described to show hierarchic structures of classes and relations. The diamond symbols were seen as "relations" and a more advanced way was seeing the white and the black diamonds as different symbols for aggregation and composition.

As a consequence of the results, it is recommended that UML should be adopted in courses. It is briefly indicated how the phenomenographic results in combination with variation theory can be used by teachers to enhance students' possibilities to reach advanced understanding of phenomena related to UML class diagrams. Moreover, it is recommended that teachers should put more effort in assessing skills in proper using of the basic symbols and models, and students should get many opportunities to practise collaborative design, e.g., using whiteboards.

Place, publisher, year, edition, pages
Uppsala: Uppsala University, 2010. 16 p.
Series
Technical reports from the Department of Information Technology, ISSN 1404-3203 ; 2010-013
National Category
Computer Science Didactics
Identifiers
urn:nbn:se:hig:diva-6675 (URN)
Available from: 2010-04-17 Created: 2010-04-17 Last updated: 2011-09-29Bibliographically approved
8. A methodology for exploring students’ experiences and interaction with large-scale software through role-play and phenomenography
Open this publication in new window or tab >>A methodology for exploring students’ experiences and interaction with large-scale software through role-play and phenomenography
2008 (English)In: ICER '08: proceedings of the fourth international workshop on Computing education research, New York: ACM , 2008, 27-38 p.Conference paper, Published paper (Refereed)
Abstract [en]

Traditional interview methods within qualitative research often capture the purely academic perspective on phenomena. To address this problem, an innovative research method, combining role-playing with phenomenography is proposed. The approach suggested in this paper aims to stimulate participants to widen their perspectives by encouraging them to a deeper engagement with a specific activity, thereby enabling them to reflect actively on their actions and on concepts involved in a specific situated context. In the outlined strategy, the role-playing involved realistic work with large-scale software. This was immediately followed by a debriefing using phenomenographic research interviews when the participants still had the experience fresh in mind. The phenomenographic analysis of the interview transcripts confirmed that the method was successful. The subjects frequently expressed their understanding of theoretical concepts in relation to their experiences from working with the software. The more advanced ways to experience the phenomena was often expressed – and sometimes inspired – by the software’s way to take advantage of the concepts. The specific use of the described method resulted in empirical insights into how students experience object-oriented concepts in software engineering, such as the Java Interface.

Place, publisher, year, edition, pages
New York: ACM, 2008
Keyword
Role-play, phenomenography, qualitative method, programming, software
National Category
Computer Science Didactics
Identifiers
urn:nbn:se:hig:diva-2198 (URN)10.1145/1404520.1404524 (DOI)978-1-60558-216-0 (ISBN)
Available from: 2008-09-22 Created: 2008-09-22 Last updated: 2011-09-29Bibliographically approved

Open Access in DiVA

No full text

Other links

http://urn.kb.se/resolve?urn=urn:nbn:se:uu:diva-122304

Search in DiVA

By author/editor
Boustedt, Jonas
By organisation
Department of Industrial Development, IT and Land Management
Computer ScienceDidactics

Search outside of DiVA

GoogleGoogle Scholar

Total: 1149 hits
CiteExportLink to record
Permanent link

Direct link
Cite
Citation style
  • apa
  • harvard-cite-them-right
  • ieee
  • modern-language-association-8th-edition
  • vancouver
  • Other style
More styles
Language
  • sv-SE
  • en-GB
  • en-US
  • fi-FI
  • nn-NO
  • nn-NB
  • de-DE
  • Other locale
More languages
Output format
  • html
  • text
  • asciidoc
  • rtf