teaching software engineering using foss
DESCRIPTION
Ashley's presentation from LCA2010 education miniconference, Wellington.TRANSCRIPT
Didymo DesignsABN 91 109 275 265 P.O.Box 410North Sydney, NSW 2059 AustraliaP.O. Box 1122WollongongNSW 2500 Australia
Ph +61 1300 762 599Fax +61 2 8002 0071www.didymodesigns.com.au
FOSS in the Teaching of Software Engineering
Ashley Maher
Ashley Maher Education Mini-Conference LCA Tuesday 19th January, 2010
Didymo DesignsABN 91 109 275 265 P.O.Box 410North Sydney, NSW 2059 AustraliaP.O. Box 1122WollongongNSW 2500 Australia
Ph +61 1300 762 599Fax +61 2 8002 0071www.didymodesigns.com.au
FOSS in the Teaching of Software Engineering
Questions?
When the presentation is only 15 - 20 minutes in length there is very limited time to be properly interactive during the presentation, sorry.
Education Mini-Conference LCA Tuesday 19th January, 2010 Ashley Maher
Didymo DesignsABN 91 109 275 265 P.O.Box 410North Sydney, NSW 2059 AustraliaP.O. Box 1122WollongongNSW 2500 Australia
Ph +61 1300 762 599Fax +61 2 8002 0071www.didymodesigns.com.au
FOSS in the Teaching of Software Engineering
BackgroundHow did Software Engineering come into being?DefinitionsCourse work – Text BooksWhat is missing?The Group ProjectOut comesMoving forwardQuestions
Education Mini-Conference LCA Tuesday 19th January, 2010 Ashley Maher
Didymo DesignsABN 91 109 275 265 P.O.Box 410North Sydney, NSW 2059 AustraliaP.O. Box 1122WollongongNSW 2500 Australia
Ph +61 1300 762 599Fax +61 2 8002 0071www.didymodesigns.com.au
FOSS in the Teaching of Software Engineering
I am not an academic
Several of my close friends and colleagues are academics
Education Mini-Conference LCA Tuesday 19th January, 2010 Ashley Maher
Didymo DesignsABN 91 109 275 265 P.O.Box 410North Sydney, NSW 2059 AustraliaP.O. Box 1122WollongongNSW 2500 Australia
Ph +61 1300 762 599Fax +61 2 8002 0071www.didymodesigns.com.au
FOSS in the Teaching of Software Engineering
A new academic could not take up position until later in the Year, so I was invited from Industry to teach the Spring Session 2009
Software Engineering Subject at the University of Wollongong.
Ashley Maher Education Mini-Conference LCA Tuesday 19th January, 2010
Didymo DesignsABN 91 109 275 265 P.O.Box 410North Sydney, NSW 2059 AustraliaP.O. Box 1122WollongongNSW 2500 Australia
Ph +61 1300 762 599Fax +61 2 8002 0071www.didymodesigns.com.au
FOSS in the Teaching of Software Engineering
Ashley Maher Education Mini-Conference LCA Tuesday 19th January, 2010
● The field of software engineering was born in 1968 in response to chronic failures of large software projects to meet schedule and budget constraints ● Recognition of "the software crisis"
● Term became popular after NATO Conference in Garmisch Partenkirchen (Germany), 1968
Didymo DesignsABN 91 109 275 265 P.O.Box 410North Sydney, NSW 2059 AustraliaP.O. Box 1122WollongongNSW 2500 Australia
Ph +61 1300 762 599Fax +61 2 8002 0071www.didymodesigns.com.au
FOSS in the Teaching of Software Engineering
Ashley Maher Education Mini-Conference LCA Tuesday 19th January, 2010
http://war.wikipedia.org/wiki/File:01_khafre_north.jpg
Didymo DesignsABN 91 109 275 265 P.O.Box 410North Sydney, NSW 2059 AustraliaP.O. Box 1122WollongongNSW 2500 Australia
Ph +61 1300 762 599Fax +61 2 8002 0071www.didymodesigns.com.au
FOSS in the Teaching of Software Engineering
Ashley Maher Education Mini-Conference LCA Tuesday 19th January, 2010
http://en.wikipedia.org/wiki/File:20090529_Great_Wall_8185.jpg
Didymo DesignsABN 91 109 275 265 P.O.Box 410North Sydney, NSW 2059 AustraliaP.O. Box 1122WollongongNSW 2500 Australia
Ph +61 1300 762 599Fax +61 2 8002 0071www.didymodesigns.com.au
FOSS in the Teaching of Software Engineering
Ashley Maher Education Mini-Conference LCA Tuesday 19th January, 2010
http://commons.wikimedia.org/wiki/File:Tacoma_Narrows_Bridge_destruction.ogg
Didymo DesignsABN 91 109 275 265 P.O.Box 410North Sydney, NSW 2059 AustraliaP.O. Box 1122WollongongNSW 2500 Australia
Ph +61 1300 762 599Fax +61 2 8002 0071www.didymodesigns.com.au
FOSS in the Teaching of Software Engineering
Ashley Maher Education Mini-Conference LCA Tuesday 19th January, 2010
Let us consider some modern definitions● The IEEE Computer Society defines software
engineering as: "(1) The application of a systematic, disciplined, quantifiable approach to the development, operation, and maintenance of software; that is, the application of engineering to software. (2) The study of approaches as in (1).”● "IEEE Standard Glossary of Software Engineering
Terminology," IEEE std 610.12-1990, 1990.
Didymo DesignsABN 91 109 275 265 P.O.Box 410North Sydney, NSW 2059 AustraliaP.O. Box 1122WollongongNSW 2500 Australia
Ph +61 1300 762 599Fax +61 2 8002 0071www.didymodesigns.com.au
FOSS in the Teaching of Software Engineering
Ashley Maher Education Mini-Conference LCA Tuesday 19th January, 2010
Let us have a quick look at some course outlines and some text books
Didymo DesignsABN 91 109 275 265 P.O.Box 410North Sydney, NSW 2059 AustraliaP.O. Box 1122WollongongNSW 2500 Australia
Ph +61 1300 762 599Fax +61 2 8002 0071www.didymodesigns.com.au
FOSS in the Teaching of Software Engineering
Ashley Maher Education Mini-Conference LCA Tuesday 19th January, 2010
● Quickly we notice points like:● principles● qualities● processes● requirements elicitation● formal methods● diagrams● Testing● OO [and UML]
Didymo DesignsABN 91 109 275 265 P.O.Box 410North Sydney, NSW 2059 AustraliaP.O. Box 1122WollongongNSW 2500 Australia
Ph +61 1300 762 599Fax +61 2 8002 0071www.didymodesigns.com.au
FOSS in the Teaching of Software Engineering
Such courses are very good.
Some students have great results and excellent understanding following such courses.
There is however no comment on Programming in the Large.
Ashley Maher Education Mini-Conference LCA Tuesday 19th January, 2010
Didymo DesignsABN 91 109 275 265 P.O.Box 410North Sydney, NSW 2059 AustraliaP.O. Box 1122WollongongNSW 2500 Australia
Ph +61 1300 762 599Fax +61 2 8002 0071www.didymodesigns.com.au
FOSS in the Teaching of Software Engineering
Ashley Maher Education Mini-Conference LCA Tuesday 19th January, 2010
● Points of understanding:● principles● qualities● processes● requirements elicitation● formal methods● diagrams● Testing● OO [and UML]● communication
Didymo DesignsABN 91 109 275 265 P.O.Box 410North Sydney, NSW 2059 AustraliaP.O. Box 1122WollongongNSW 2500 Australia
Ph +61 1300 762 599Fax +61 2 8002 0071www.didymodesigns.com.au
FOSS in the Teaching of Software Engineering
Then placing the student in a situation similar environment to those developers in the 1960's gives the learner a far greater insight to what is needed to be understood rather than something more to learn.
I will expand on this.
Ashley Maher Education Mini-Conference LCA Tuesday 19th January, 2010
Didymo DesignsABN 91 109 275 265 P.O.Box 410North Sydney, NSW 2059 AustraliaP.O. Box 1122WollongongNSW 2500 Australia
Ph +61 1300 762 599Fax +61 2 8002 0071www.didymodesigns.com.au
FOSS in the Teaching of Software Engineering
Software Engineering Practices & PrinciplesCSCI318- MCS9318Spring Session 2009
Group Project Description
Ashley Maher Education Mini-Conference LCA Tuesday 19th January, 2010
Didymo DesignsABN 91 109 275 265 P.O.Box 410North Sydney, NSW 2059 AustraliaP.O. Box 1122WollongongNSW 2500 Australia
Ph +61 1300 762 599Fax +61 2 8002 0071www.didymodesigns.com.au
FOSS in the Teaching of Software Engineering
Ashley Maher Education Mini-Conference LCA Tuesday 19th January, 2010
● Projects Approved● School web project● Timetable project (Multi-Lingual)● Real Estate Project● YouTube style site● Team Management Project● POS-ERP Project
Didymo DesignsABN 91 109 275 265 P.O.Box 410North Sydney, NSW 2059 AustraliaP.O. Box 1122WollongongNSW 2500 Australia
Ph +61 1300 762 599Fax +61 2 8002 0071www.didymodesigns.com.au
FOSS in the Teaching of Software Engineering
Ashley Maher Education Mini-Conference LCA Tuesday 19th January, 2010
● FOSS Projects used as basis● Drupal ==> Drupal has installation profiles,
the first 5 projects aim was to create installation profiles to achieve their end goals. So an end user could down load Drupal with their installation profile and have a functioning application quickly
● OpenBravo ==> Is a FOSS ERP-POS their aim was to customise OpenBravo for use in a Furniture Store.
Didymo DesignsABN 91 109 275 265 P.O.Box 410North Sydney, NSW 2059 AustraliaP.O. Box 1122WollongongNSW 2500 Australia
Ph +61 1300 762 599Fax +61 2 8002 0071www.didymodesigns.com.au
FOSS in the Teaching of Software Engineering
Ashley Maher Education Mini-Conference LCA Tuesday 19th January, 2010
● The project is a Software Engineering Teaching, Learning and Evaluation exercise, it is not a software project per sea.
● This was not about FOSS● Morally wrong to turn the students into FOSS
experts in a Software Engineering Course, the aim of taking such a course is to learn SE.
Didymo DesignsABN 91 109 275 265 P.O.Box 410North Sydney, NSW 2059 AustraliaP.O. Box 1122WollongongNSW 2500 Australia
Ph +61 1300 762 599Fax +61 2 8002 0071www.didymodesigns.com.au
FOSS in the Teaching of Software Engineering
Ashley Maher Education Mini-Conference LCA Tuesday 19th January, 2010
● Students should feel comfortable to be able to pursue any career path● One students career goal is to work for
Microsoft, this student very much enjoyed the project and felt he had learned a great deal from the exercise.
Didymo DesignsABN 91 109 275 265 P.O.Box 410North Sydney, NSW 2059 AustraliaP.O. Box 1122WollongongNSW 2500 Australia
Ph +61 1300 762 599Fax +61 2 8002 0071www.didymodesigns.com.au
FOSS in the Teaching of Software Engineering
Lecture DiscussionsRefinement of the Assignment was undertaken in Lectures under direction from the Lecturer or by Student question
Ashley Maher Education Mini-Conference LCA Tuesday 19th January, 2010
Didymo DesignsABN 91 109 275 265 P.O.Box 410North Sydney, NSW 2059 AustraliaP.O. Box 1122WollongongNSW 2500 Australia
Ph +61 1300 762 599Fax +61 2 8002 0071www.didymodesigns.com.au
FOSS in the Teaching of Software Engineering
Lecture DiscussionsSo if I am claiming the students learned by participating in larger projects, how large?469 contributors to Drupal 7.x core
4940 contributed modules
Ashley Maher Education Mini-Conference LCA Tuesday 19th January, 2010
Didymo DesignsABN 91 109 275 265 P.O.Box 410North Sydney, NSW 2059 AustraliaP.O. Box 1122WollongongNSW 2500 Australia
Ph +61 1300 762 599Fax +61 2 8002 0071www.didymodesigns.com.au
FOSS in the Teaching of Software Engineering
Lecture DiscussionsOO is mentioned in many SE coursesWe see here:http://drupal.org/node/547518“Drupal programming from an object-oriented perspective”
Modularity – Reuse code
Ashley Maher Education Mini-Conference LCA Tuesday 19th January, 2010
Didymo DesignsABN 91 109 275 265 P.O.Box 410North Sydney, NSW 2059 AustraliaP.O. Box 1122WollongongNSW 2500 Australia
Ph +61 1300 762 599Fax +61 2 8002 0071www.didymodesigns.com.au
FOSS in the Teaching of Software Engineering
Lecture Discussions●Information hiding●Code Quality
● http://drupal.org/contributors-guide● http://drupal.org/developing/modules● Why have these tools? Why even specify white space?
●Large to Small● Mindset
●point
Ashley Maher Education Mini-Conference LCA Tuesday 19th January, 2010
Didymo DesignsABN 91 109 275 265 P.O.Box 410North Sydney, NSW 2059 AustraliaP.O. Box 1122WollongongNSW 2500 Australia
Ph +61 1300 762 599Fax +61 2 8002 0071www.didymodesigns.com.au
FOSS in the Teaching of Software Engineering
Results of Student Survey37 students in the course24 attended the final lectureAll those attending the final lecture completed the assessment of the Group Project Assignment.
Ashley Maher Education Mini-Conference LCA Tuesday 19th January, 2010
Didymo DesignsABN 91 109 275 265 P.O.Box 410North Sydney, NSW 2059 AustraliaP.O. Box 1122WollongongNSW 2500 Australia
Ph +61 1300 762 599Fax +61 2 8002 0071www.didymodesigns.com.au
FOSS in the Teaching of Software Engineering
Results of Student Survey
How well did the project full fill its role of giving students an understanding of programming in the large (Sliding scale out of 5)
Mean: 4.5
Standard Deviation: 0.5
Ashley Maher Education Mini-Conference LCA Tuesday 19th January, 2010
Didymo DesignsABN 91 109 275 265 P.O.Box 410North Sydney, NSW 2059 AustraliaP.O. Box 1122WollongongNSW 2500 Australia
Ph +61 1300 762 599Fax +61 2 8002 0071www.didymodesigns.com.au
FOSS in the Teaching of Software EngineeringResults of Student Survey
How well did the project full fill its role of giving students skills and experience transferable to the workplace (Sliding scale out of 5)
Mean: 4.28
Standard Deviation: 0.6
Ashley Maher Education Mini-Conference LCA Tuesday 19th January, 2010
Didymo DesignsABN 91 109 275 265 P.O.Box 410North Sydney, NSW 2059 AustraliaP.O. Box 1122WollongongNSW 2500 Australia
Ph +61 1300 762 599Fax +61 2 8002 0071www.didymodesigns.com.au
FOSS in the Teaching of Software EngineeringResults of Student Survey
Would you run the Project in the same way if you were the lecturer?
22 yes or pretty much1 smaller deliverables1 no
Ashley Maher Education Mini-Conference LCA Tuesday 19th January, 2010
Didymo DesignsABN 91 109 275 265 P.O.Box 410North Sydney, NSW 2059 AustraliaP.O. Box 1122WollongongNSW 2500 Australia
Ph +61 1300 762 599Fax +61 2 8002 0071www.didymodesigns.com.au
FOSS in the Teaching of Software EngineeringResults of Student Survey
Why to answer of previous question:taught valuable lessonsgreat programming is not allclear to understand SEclear and effective showing students working in groups
Ashley Maher Education Mini-Conference LCA Tuesday 19th January, 2010
Didymo DesignsABN 91 109 275 265 P.O.Box 410North Sydney, NSW 2059 AustraliaP.O. Box 1122WollongongNSW 2500 Australia
Ph +61 1300 762 599Fax +61 2 8002 0071www.didymodesigns.com.au
FOSS in the Teaching of Software EngineeringResults of Student Survey
good project, good group size gives idea of larger, good open sourceall goodreal world experienceexcellent way to teach SEwell structured met outlinegreat experience in SEthe process of software engineering seamed concisely conveyed
Ashley Maher Education Mini-Conference LCA Tuesday 19th January, 2010
Didymo DesignsABN 91 109 275 265 P.O.Box 410North Sydney, NSW 2059 AustraliaP.O. Box 1122WollongongNSW 2500 Australia
Ph +61 1300 762 599Fax +61 2 8002 0071www.didymodesigns.com.au
FOSS in the Teaching of Software Engineering
So!
What does this prove?
Ashley Maher Education Mini-Conference LCA Tuesday 19th January, 2010
Didymo DesignsABN 91 109 275 265 P.O.Box 410North Sydney, NSW 2059 AustraliaP.O. Box 1122WollongongNSW 2500 Australia
Ph +61 1300 762 599Fax +61 2 8002 0071www.didymodesigns.com.au
FOSS in the Teaching of Software Engineering
NOTHING
Ashley Maher Education Mini-Conference LCA Tuesday 19th January, 2010
Didymo DesignsABN 91 109 275 265 P.O.Box 410North Sydney, NSW 2059 AustraliaP.O. Box 1122WollongongNSW 2500 Australia
Ph +61 1300 762 599Fax +61 2 8002 0071www.didymodesigns.com.au
FOSS in the Teaching of Software Engineering
Concluding RemarksFOSS has a part to play in providing Student Software Engineers a greater understanding
of Software Engineering.OpenBravo has realised this and does this
well:http://wiki.openbravo.com/wiki/Universities
Ashley Maher Education Mini-Conference LCA Tuesday 19th January, 2010
Didymo DesignsABN 91 109 275 265 P.O.Box 410North Sydney, NSW 2059 AustraliaP.O. Box 1122WollongongNSW 2500 Australia
Ph +61 1300 762 599Fax +61 2 8002 0071www.didymodesigns.com.au
FOSS in the Teaching of Software Engineering
Oh
And
http://drupal.org/project/anytm
Ashley Maher Education Mini-Conference LCA Tuesday 19th January, 2010
Didymo DesignsABN 91 109 275 265 P.O.Box 410North Sydney, NSW 2059 AustraliaP.O. Box 1122WollongongNSW 2500 Australia
Ph +61 1300 762 599Fax +61 2 8002 0071www.didymodesigns.com.au
FOSS in the Teaching of Software Engineering
Ashley Maher
Ashley Maher Education Mini-Conference LCA Tuesday 19th January, 2010