Professional Documents
Culture Documents
Presentation - OSS2019 - FLOSSinSEE - Theory - and - Practice-FINAL
Presentation - OSS2019 - FLOSSinSEE - Theory - and - Practice-FINAL
Inside
2009 Software Evolution UFBA 20 Seniors
control
2009.1
Software
and UFBA ~30 Full control Juniors
Engineering
2009.2
MsC and
2011 Topics on SE UFBA 15 No control
PhD cand
… … … … … …
!3
… we decided to scratch our own itches and …
2012
Do FLOSS projects stand for a proper real-world experience
to be used in formal education in software engineering?
PhD research on the Use of FLOSS for SEE [*]
Goals
1. …
2. Investigate whether the use of FLOSS projects in formal
education in software engineering supports students to
make a connection between theory and practice.
3. …
!4
… learn about how others scratched their itches
2013
Open Source Projects in Software Engineering Education:
A Mapping Study
Systematic Mapping Study on FLOSS + SEE [19]
— updated in 2018 [2]
Questions
RQ1. How have open source projects been used in formal
education in software engineering?
RQ2. Which of the initiatives combine open source projects
with active learning in software engineering courses?
RQ3. …
!5
Software Engineering Educators also have recurrent concerns
Here we go!
!6
The Theory-Practice Gap
A metaphor that represents the separation of the
practical dimension [..] from that of theoretical
knowledge, e.g. nursing, medicine.
!7
The Theory-Practice Gap in SEE: our definition
Attributes
Antecedents Consequences
!9
Learning Theories: Background
Cognitive Content
Experience Engagement Significance
!10
Learning Theories
Experience
!11
Learning Theories
Cognitive
engagement
!12
Learning Theories
Content
significance
!13
FLOSS + SEE + Learning Theories: Related Work
Cognitive Content
Experience Engagement Significance
!14
Methodology
Methodology
● Two case studies
Goal
Academic
ID Knowledge Area Place #participants Activity
Maturity
Software
CS2 UFS 15 Compulsory Juniors
Requirements
!16
Methodology
Forces
Roles Activities
!18
Methodology
CS2: software requirements (compulsory)
Roles Activities
● data analysis
○ inductive-deductive process for qualitative data
!20
Inductive: from codes to themes
Deductive: back to the literature
engagement significance
uncovered
[22]
abstract general
Theme
• coding
• category formation Category Category Category
• theme development
!21
Results
Results
● Three key themes
!23
Theme 1: The importance of practice for learning the theory
CS1 CS2
CS1 CS2
!25
Theme 1: The importance of Practice for learning the Theory
concretizes theory
leads to active
participation
helps students to
understand theory
consolidates contents
Practice helps contents retention
confirms the applicability
of theory
helps to
concretizes consolidates
understand
promotes active
participation
!27
Contributions from Practice to the Development of Skills
develops
enables discussion
soft skills
!28
Discussion
● How do these results / evidences (EV) match up with, or
modify or contradict existing learning theories (LT)?
!29
Discussion:
Practice helps the student to understand theory
!30
Discussion:
Practice consolidate contents
(EV) Students mention that, with the OSP, they were able to
`connect the dots and fill in the gaps' (SR8).
!31
Discussion:
Practice is essential to learning some subjects
(EV) In CS1, students recognized that 'lack of practice leads to partial
learning’.
'Lectures enabled understanding about tests, but doubts emerged with practical
activities: [..] when you put into practice what was presented in class,
then the doubts begin to arise’ (ST7) .
(LT) The learner will only be sure if he or she knows or does not know,
after experiencing [8] — Gentry 1990.
!32
Discussion:
Practice promotes student's active participation
!33
Discussion:
Practice helps students grasp the problem
(EV) By working with projects that are close to reality, students could
`see how the problem really is’ and confirm that things are not as
simple as they seem, when they consider only theory.
"(..) you only see the problem when you have the problem at hand.
Knowing the theory on how to do the tests, what is needed, is nice,
but you will only really know what is needed,
when you are there in the situation" (ST2).
!35
Conclusions
Our study investigated whether
the use of open source projects in SE education
in two case studies enabled students to
connect software engineering theory with practice
under students' own perceptions and
narrowed the theory-practice gap.
YES
(with all applicable threats to validity included)
!36
Conclusions
● Within the 2 case studies with JabRef:
○ the object of study became less dependent on
instructors and less abstract
○ The use of FLOSS supported students in making
connections between theory and practice
!37
Challenges
● The use of FLOSS in SEE may require re-structuring of
teaching and detailed planning.
!38
Give back (and culture expects feedback)
Evidence-based research in SEE:
better software engineers,
better educators,
better software, better research
!39
Our Message
Learn upon
software engineering theoretical knowledge in
academia with the support FLOSS projects and
their communities (and vice-versa)
!40
Thanks for your attention
Does FLOSS in Software Engineering Education
narrow the Theory-Practice Gap?
A Study Grounded on Students' Perception
*deboramcn@dcomp.ufs.br
flach@ufba.br, roberto@uefs.br