A Survey on Teaching of
Software Product Lines
Mathieu Acher

Roberto Lopez-Herrejon

Rick Rabiser

Inria/IRISA
University...
Teach or perish!

SPL
19902014

Jan, 2014

VaMoS 2014, Nice, France

2
Motivation and Goals
•
•
•
•

SPL now well-established in research and industry; body of knowledge growing
Scope continuou...
Survey Design

• 91 contacts
• pool of SPL researchers we know teach
• search for SPL courses online
• review SPLC and VaM...
Survey Results
Respondents and their institutions
• 34 responses from 13 countries
• Avg. SPL experience 10yrs, avg. SPL t...
Survey Results
Literature used
• 28 respondents use these books
• 25 use research papers, selected based on personal prefe...
Survey Results
Tools used
SPL Tool
used by
None
8
FeatureIDE
6
BigLever's GEARS
4
FeatureHouse
3
pure system's pure::varia...
Survey Results
Length, audience
• Most courses are held over a semester (26)
• 3 "on demand", 2 as week-long courses, quar...
Survey Results
Practical time, SPL lifecycle coverage
• Practical time/overall course time 65% in average

Topic
Requireme...
Survey Results
Challenges of teaching SPL
• Lack of and availability of well-documented real-world examples and
case studi...
Survey Results
How to improve the state of teaching SPL
• Improved textbook examples and case studies (13)
• Better tools ...
Survey Results
Impact of teaching SPL
• On research
•
•
•
•
•

Student participation in research evaluations (11)
Finding ...
Survey Results
Other comments
• Teaching SPLs together with model-driven development
• very interesting from a teaching pe...
What now? Perspectives?
Here, we need your help!
• Organize SPL teaching workshop at SPLC
• Create a virtual meeting place...
Nächste SlideShare
Wird geladen in …5
×

A survey on teaching of software product lines

2.437 Aufrufe

Veröffentlicht am

With around two decades of existence, the community of Software Product Line (SPL) researchers and practitioners is thriving as can be attested by the extensive research output and the numerous successful industrial projects. Education has a key role to support the next generation of engineers to build highly complex SPLs. Yet, it is unclear how SPLs are taught, what are the possible missing gaps and difficulties faced, what are the benefits, or what is the material available. In this paper, we carry out a survey with over 30 respondents with the purpose of capturing a snapshot of the state of teaching in our community. We report and discuss quantitative as well as qualitative results of the survey. We build upon them and sketch six concrete actions to continue improving the state of practice of SPL teaching.

Veröffentlicht in: Bildung, Technologie
0 Kommentare
1 Gefällt mir
Statistik
Notizen
  • Als Erste(r) kommentieren

Keine Downloads
Aufrufe
Aufrufe insgesamt
2.437
Auf SlideShare
0
Aus Einbettungen
0
Anzahl an Einbettungen
995
Aktionen
Geteilt
0
Downloads
23
Kommentare
0
Gefällt mir
1
Einbettungen 0
Keine Einbettungen

Keine Notizen für die Folie
  • SPL teaching is probably performed concurrently with research and thus it might not always be the result of mature research experience.software engineering (8)requirements engineering (4)automated software design (1)principles of software construction (1)domain engineering (1)software architecture (1)factory development of software (1)Given the relative novelty of the topic, it is not surprising that over half of respondents teach SPL topics as part of other courses.
  • While using text books and some research papers for teaching is pretty much standard in computer science, using case studies is also essential, especially for teaching SPLs. Why only about a third of respondents use case studies to teach SPLs should be further investigated (cf. Section 3.6)
  • A survey on teaching of software product lines

    1. 1. A Survey on Teaching of Software Product Lines Mathieu Acher Roberto Lopez-Herrejon Rick Rabiser Inria/IRISA University of Rennes 1 Rennes, France SEA Johannes Kepler Univ. Linz, Austria CDL MEVSS Johannes Kepler Univ. Linz, Austria mathieu.acher@irisa.fr www.mathieuacher.com roberto.lopez@jku.at www.sea.jku.at rick.rabiser@jku.at mevss.jku.at
    2. 2. Teach or perish! SPL 19902014 Jan, 2014 VaMoS 2014, Nice, France 2
    3. 3. Motivation and Goals • • • • SPL now well-established in research and industry; body of knowledge growing Scope continuously broadens Education has a key role to play in disseminating the SPL knowledge Research can also benefit from teaching • Teaching SPLs is challenging • Relatively young discipline • SPLE encompasses a variety of topics • Teaching material suitable for attracting students? • Dedicated venues for SW Eng. teaching (SEET@ICSE, CSEE&T, Educators Symposium at MODELS) -- Not for SPLs! • Currently unclear, our goal: find out… • • • • …how SPLs are taught …what are the possible gaps and difficulties faced …what are the benefits …what is the material available Jan, 2014 VaMoS 2014, Nice, France 3
    4. 4. Survey Design • 91 contacts • pool of SPL researchers we know teach • search for SPL courses online • review SPLC and VaMoS papers • on-line questionnaire (http://www.surveygizmo.com/s3/1342346 /Teaching-Software-Product-Lines) • 13 enumerative and 5 open questions • feedback by colleagues to refine questionnaire • 34 complete responses and 15 partial • Decision: only analyze complete responses • 13 enumerative questions  5 categories Jan, 2014 VaMoS 2014, Nice, France 4
    5. 5. Survey Results Respondents and their institutions • 34 responses from 13 countries • Avg. SPL experience 10yrs, avg. SPL teaching experience 6yrs • Half say their research exp. = their teaching exp. • Institutions • • • • 15 research-focused 9 teaching-focused (colleges) 7 have both focuses 3 industrial institutions • Departments • CS (13), SE (9), IT (2) • others (10) -- all CS-related Portugal, 1 USA, 6 VaMoS 2014, Nice, France Colombia, 1 France, 2 Switzerland, 1 Spain, 3 Korea, Rep. Of, 1 Japan, 1 Italy, 1 Israel, 2 • 16 full and self-contained SPL courses • 18 teach SPL topics as part of other courses Jan, 2014 Austria, 2 Canada, 1 Germany, 1 2 5
    6. 6. Survey Results Literature used • 28 respondents use these books • 25 use research papers, selected based on personal preferences • 12 use case studies, e.g., by van der Linden et al. 2007; BigLever; Renault, STAGO, LINUX, and SPLOT; and own case studies 10 9 8 7 6 5 4 3 2 1 0 Apel et al. 2013 Jan, 2014 Clements Czarnecki and and Northrop Eisenecker 2001 2000 VaMoS 2014, Nice, France Gomaa 2005 Pohl et al. 2005 van der Weiss and Linden et Lai 1999 al. 2007 6
    7. 7. Survey Results Tools used SPL Tool used by None 8 FeatureIDE 6 BigLever's GEARS 4 FeatureHouse 3 pure system's pure::variants 3 AHEAD 2 CIDE 2 CVL 2 Feature Modelling Plug-in (FMP) 2 DOPLER, EasyProducer, FaMa, Familiar, FeatureMapper, Munge, 1 SPLAR, SPLOT, VARIAMOS, Varmod each C++, Metaprogramming, Software Generators, Xtext, MPS 1 Different tools for creating feature diagrams and UML-based models 1 Feature modeling UML tools extended for SPL 1 Haskell-Embedded Variation DSL 1 Own research prototypes 1 also see the survey by Berger et al. VaMoS 2013 Jan, 2014 VaMoS 2014, Nice, France 7
    8. 8. Survey Results Length, audience • Most courses are held over a semester (26) • 3 "on demand", 2 as week-long courses, quarter (1), 1-2 days seminars (1), and with a flexible schedule (1) • Average course length 24 hours (min: 1h; max: 120h) Only Undergrads 14 Undergrads, Grads , and Industry people 12 10 8 Only Grads 6 4 2 Undergrads students and Industry people Grads and Industry people Jan, 2014 VaMoS 2014, Nice, France 0 Only Industry People Undergrads and Grads 8
    9. 9. Survey Results Practical time, SPL lifecycle coverage • Practical time/overall course time 65% in average Topic Requirements engineering Testing Modelling Implementation Maintenance & Evolution Reverse engineering & SPL Adoption Processes Other Department CS SE OT 7 4 12 3 1 4 9 8 13 9 8 8 9 3 5 7 2 1 5 6 8 5 2 3 Total 23 8 30 25 17 10 19 10 CS: Computer Science, SE: Software Engineering, OT: Other departments Jan, 2014 VaMoS 2014, Nice, France 9
    10. 10. Survey Results Challenges of teaching SPL • Lack of and availability of well-documented real-world examples and case studies suitable for teaching (16) • Complexity of the subject and required background knowledge (9) • Lack of and availability of SPL tools (7) • Acceptance on the curriculum and opening the mind of students (4) • "Even software engineering can be hard to teach as developing large-scale systems does not connect to students hands-on experience of developing rather small solutions. Teaching SPL means SE for many systems, this does even less relate to students' experiences." Jan, 2014 VaMoS 2014, Nice, France 10
    11. 11. Survey Results How to improve the state of teaching SPL • Improved textbook examples and case studies (13) • Better tools for students (7) • Broaden the focus of teaching SPLs (3) • SPL is already mainstream! (2) • Other ideas • videos of experts to motivate SPLs and explain key concepts and ideas • incorporate the notions and terminology of SPLs more in other courses • develop a standard curriculum and evaluation scheme for teaching SPLs Jan, 2014 VaMoS 2014, Nice, France 11
    12. 12. Survey Results Impact of teaching SPL • On research • • • • • Student participation in research evaluations (11) Finding research personnel (8) Feedback on and discussion about tools, examples, case studies (6) Connecting with industry (5) Discussion of open research issues with students (2) • On practice • Teaching SPLE = preparation of introduction of SPLE in industry (13) • Makes students aware of the topic  students eventually end up in industry or even are already working in industry  increases awareness of SPL in industry and trains future practitioners (7) • Teaching SPLs can be the start of industry-academia collab. projects (2) Jan, 2014 VaMoS 2014, Nice, France 12
    13. 13. Survey Results Other comments • Teaching SPLs together with model-driven development • very interesting from a teaching perspective • Having a common, clearly defined basis of terminology and concepts taught at the majority of the institutions • would help a lot • Real-world SPLE is very different from research • Variability models seem to be the key topic in research • In practice it often is just one technique for some roles • Industry often successfully manages variability w/o dedicated models • Our survey was not a perfect fit for SPL consultants and trainers • True; we have to address this in our future work • Invite consultants/trainers in a workshop Jan, 2014 VaMoS 2014, Nice, France 13
    14. 14. What now? Perspectives? Here, we need your help! • Organize SPL teaching workshop at SPLC • Create a virtual meeting place for the community • teaching materials, tools, case studies, examples for teaching • Later • Tool and artifact recognition at conferences or workshops, awards • Strive for teaching benchmarks • Involve industry in teaching • Develop a baseline curriculum and evaluation scheme Thank You! Questions now or later to mathieu.acher@irisa.fr – roberto.lopez@jku.at – rick.rabiser@jku.at Jan, 2014 VaMoS 2014, Nice, France 14

    ×