!!! Software Engineering 10! Using videos in teaching software engineering IAN SOMMERVILLE



Similar documents
Software Engineering 10. Teaching introductory and advanced courses in software engineering IAN SOMMERVILLE

Realizing the Full Potential of Blended Learning

Insights from Today s Student

Rapid software development. Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 17 Slide 1

Student diaries: using technology to produce alternative forms of feedback

Online Training Made Easier with Video

Choose your blend. Case stories from real classrooms that show how to succeed with blended learning WHAT IS BLENDED LEARNING?

Can using free online video tutorials through lynda.com enhance my teaching?

Flip Your Classroom to Increase Active Learning and Student Engagement

Femke Knoops, Fethiye Erbil, Mustafa Ertürk

Examining Students Performance and Attitudes Towards the Use of Information Technology in a Virtual and Conventional Setting

Phase 2 The System Specification

CTL Online Workshop Program Referral Resource Sheet

A SUCCESSFUL STAND ALONE BRIDGE COURSE

Managing Tasks with Microsoft Project Server, Project Online and Project Lite

Student Feedback on Online Summer Courses

STOP MOTION. Recommendations:

DOES ONLINE LEARNING HAVE A ROLE IN LIBERAL ARTS COLLEGES? An Interview with Council of Independent Colleges President Richard Ekman

REMOVING THE DISTANCE FROM DISTANCE EDUCATION: STRATEGIES FOR SUCCESSFUL STUDENT ENGAGEMENT AND COLLABORATION

advertising research methods

For Android A LEADING PROVIDER OF CONSULTANCY & TRAINING IN MOBILE TECHNOLOGIES IN EDUCATION

INTERCALL STREAMING SURVEY REPORT

Expectations for Classroom Setup and Online Teaching

!!!! Online Education White Paper. January 25, 2014

How To Make Your School Successful Online

BA530 Financial Management Spring 2015

Educational Benefits of Online Learning

The Customer Value Proposition

Converting a Face-to-Face Course to a Hybrid Course

WIRED VIDEO STEP GUIDE TO COMMISSIONING VIDEO CONTENT.

* A Practical Response to. Massive Open Online Courses (MOOCs)

COURSE SYLLABUS MGMT 3313 HUMAN RESOURCE MANAGEMENT Spring 2015

MBA 695 B Advertising and Promotions UNC-GREENSBORO

SOCIAL MEDIA METRICS & EVALUATION

Virtual Classroom Designer Competency Resources

Flipping Courses: Transitioning From Traditional Courses to a Blended Learning Approach 1

Online Program. An academic program that contains only online courses.

Introduction. The busy lives that people lead today have caused a demand for a more convenient method to

Leader s Instructions Handbook

The Future with Blended Instruction

Planning and Deploying a Disaster Recovery Solution

As postgraduate degrees become increasingly. Master s Degrees - A Guide to Studying Online. Flexible Learning to Fit Your Life

1. Responsive Website Basics: Code with HTML, CSS and JavaScript 2. Responsive Web Design

Coursera at the UW: The challenges, benefits, and surprises of teaching a MOOC Janice Fournier, UW Information Technology

Instructional Design Final Paper. TeaM 3J: Melissa Ferry, Terri Golden, Jaclyn Hawkins, Jennifer Lanza, Jenna Ward. University of Akron

Creating an Effective Online Instructor Presence

Corporate Strategy

1 of 2 18/3/ :42 AM

Introduction to Game Design and Development GAME 1303 Syllabus

Live Streaming on YouTube

Student Evaluation of Teaching - Form SRT Form - Official End-of-Semester Evaluation of Teaching

D R A F T. Faculty Senate Ad Hoc Committee on Quality in Online Learning.

Communication Program Assessment Report

BEST PRACTICES FROM EXPERIENCED EDUCATORS. 25 TIPS FOR BLENDED LEARNING SUCCESS When Implementing a Program to Personalize Education

Using Online Video Lectures to Enhance Engineering Courses

Author Guidelines: What to Submit & How

ACADEMIC CONTINUATION PLAN

Davis Applied Technology College Curriculum Development Policy and Procedures Training Division

Gonzaga University Virtual Campus Ignatian Pedagogical Approach Design Portfolio (IPA) Updated: October 15, 2014

The Impact of Web-Based Lecture Technologies on Current and Future Practices in Learning and Teaching

Tom s Reflective Log. My Work Placement at ACME Community School. Week 1

The design of the AFTRS Curriculum is based on the following principles:

Title: Transforming a traditional lecture-based course to online and hybrid models of learning

Find OneNote in your start menu (in Windows 8.1), select it and pin it to either your start menu or your taskbar.

Instructional Design. Final Paper: Wikispaces. University of Akron. Fantastic Five

PSY 211 Psychology of Learning San Diego State University Fall Semester 2010 Tuesday 8:00-9:15 and Online

Using ipads and QR Codes with D/HH Students. Amanda Lee 3 rd Grade Atlanta Area School for the Deaf

Lessons Learning in Online, Hybrid and Flipped Teaching in STEM. Sarah E. Eichhorn Associate Dean, Distance Learning University of California, Irvine

Teaching large lecture classes online: Reflections on engaging 200 students on Blackboard and Facebook

IDS data identified several schools across the County with low CVA/conversions according to the septiles (1 to 7 grading) at KS4.

New Approaches to Online Accounting Education

Transcription:

Software Engineering 10 Using videos in teaching software engineering IAN SOMMERVILLE 1

As part of the teaching material to support the book, I have made a number of videos on software engineering topics and have also spent some time exploring YouTube and recommending videos that have been uploaded there. The initial rationale for this was to preserve some of my lectures on critical systems to supplement the lectures given by the instructor who took over this course for me; I also wondered about developing a software engineering MOOC and wondered about using the videos as part of that. Fairly quickly, I gave up on the idea of a MOOC. I am not convinced that this approach to teaching is helpful in a subject like software engineering. Because instructors have very limited time available, MOOCS only work when peer-based learning is possible. This is the case in skills-based courses (e.g. programming courses) but is much more difficult in courses that rely on the experience of the instructors. Students simply do not have the experience to support each other. My development of videos was also informed by my interest in what is known as the flipped classroom model of learning. The traditional model of learning is based around the delivery of factual material in the classroom with students focusing on tasks such as practical work as homework. In the flipped classroom, students prepare for classes by studying the learning material (usually presented as videos) with the classroom discussions focused on problem solving, application of the learning material, discussion of examples and so on. The benefits of the flipped classroom approach are that students can absorb knowledge at their own pace rather than at a pace set by the instructor and that class time can be spent more productively in the development of understanding (e.g. through problem solving) rather than simply knowledge transmission. The disadvantages are that not all students are motivated to work independently so don t engage and that students are at different stages of learning. This means that classroom activities are sometimes challenging to organise. So, my initial venture into video making (a set of videos on critical systems) was intended to support this approach. I did not wish to take the risk of a completely flipped approach so I used a hybrid approach with some material delivered by video, and some face-to-face. The flipped classroom model sort of worked those students who engaged with the video participated in discussions found this to be an effective model of learning. But a significant minority did not view the videos in advance and so were unable to participate in the class. This was perhaps a consequence of the hybrid approach where they thought of the videos as of secondary importance but without trying a completely flipped experience, this is impossible to know. What emerged from my experience, however, was an insight that I had not anticipated. Many of the students taking the course did not have English as their first language and often had problems understanding the material as it was delivered in real-time. In fact, they often asked permission to record lectures so that they could listen to them later. These students really liked the videos because they could then replay material as often as they wished, so that they could develop their understanding of the topic. Other students, who did not have language problems, also liked the idea of having videos available as a reminder of lectures and they found them particularly helpful when revising for tests and exams. So, all of this is a slightly long-winded introduction to how I think that the videos I have created can be used effectively in a software engineering course. I see them being used in three possible ways: 1. As part of a flipped classroom model in project-based courses. Project-based software engineering courses are common but one of the difficulties is finding time to get over some basic knowledge that students need before starting project work. 2. As an alternative view of lectures presented by an instructor. Sometimes it is helpful to have material presented in different ways and some students find that it makes concepts easier to understand. Sometimes, when there is a subjective aspect to topics, it is helpful to demonstrate in your course that there are alternative ways of looking at a topic and videos are a cost-effective way of doing this. 3. As a supplement to lectures where students look at extra material on video to extent their knowledge and understanding. This is particularly helpful when an instructor lacks knowledge or expertise in part of a course (we ve all taught courses where this is the case). In this case, videos such as case studies and examples are particularly helpful as 2

these are difficult to develop without detailed knowledge of a subject area. Videos are also useful when you have a class with a mixed background so that not all students have the same background knowledge. You can ask students to view the videos which may cover course background so that they then have a shared understand that you can build on. To support these approaches to learning, I have made or selected YouTube videos from 10 areas of software engineering as I show on the Videos page of the book website. These were made over a period of 2 years and it was a learning experience for me hence you will find quite significant differences between the early videos on critical systems and the later ones that were made more recently on topics such as agile development and systems engineering. While I suspect that I will not be updating the suggested YouTube videos (looking for good quality YouTube videos was a dispiriting experience), I do intend to re-edit some of the earlier videos and make some new videos particularly on Requirements and Design, Implementation and Evolution, Software Reuse and Software Management. 11.1 Video topics There are videos in 10 areas and students do not need to have watched videos in one area before viewing another area. However, within an area, there are dependencies and it may be helpful to watch videos in a particular order. 1. Introducing software engineering (Chapters 1 and 2) If you are presenting a course then you might wish to have a single introductory lecture then ask students to watch some of the videos in this part to get a broader background in the subject. You may not have time to cover ethical issues and the video here by Gotterbarn is a very good introduction to this topic. I would recommend that all students watch the video on Fundamental Activities of Software Engineering video to help them understand that software processes are simply different ways of enacting the same fundamental activities. 2. Agile methods (Chapter 3) This is an area where there are hundreds of YouTube videos, some of them of excellent quality. However, I did not find videos that covered user stories effectively or scaling agile methods. User stories are one of the most helpful approaches to requirements and can be used in different ways to that discussed in Extreme Programming. If you are teaching agile methods, you may not have time to talk about scaling issues but I suggest you ask students to look at these videos to get an awareness of the issues here. 3. Requirements and design (Chapters 4 6) My videos in this section focus on key issues on requirements engineering processes, stakeholders and viewpoints, challenges and user stories. I found very few YouTube videos which were any good. By contrast, there s a lot on YouTube on the UML and system modeling so I haven t attempted to replicate these. I made these videos originally because I was teaching advanced courses and found that students did not all have an awareness of requirements engineering. I asked them to watch these videos as preparation for the course so that I didn t have to spend time on this during the course. 4. Implementation and evolution (Chapters 7 9) I haven t been involved in teaching in this area for some time so I don t have any specially prepared videos. All of my suggestions are from YouTube. Even if you are not teaching this topic explicitly, I think that it is useful for students to know about open source technology and test-driven development. I would certainly ask all students taking software engineering courses to look at these as background to the course. 3

5. Critical systems (Chapter 10) I made my experiments in teaching using videos in a critical systems course so there are more videos available for Part 2 of the book than other parts. The videos in this section are an introduction to the area discussing what is meant by a critical system, engineering techniques for critical systems, the notion of software dependability and why critical systems are sociotechnical systems. I think in teaching you need to cover the notion of a critical system in a lecture and discuss why we need special techniques for critical systems development. The videos can reinforce this. Details of dependability attributes and sociotechnical systems can be covered on video only as background. 6. Reliability and safety (Chapters 11 and 12) In this section, I have included videos where I discuss what is meant by availability, reliability and safety as well as a number of case studies. The introductory videos allowed me to cover definitions very quickly in lectures and I asked the students to look at the case study videos in advance so that I could refer to them when teaching. 7. Security and resilience (Chapters 13 and 14) My course latterly spent quite a lot of time talking about cybersecurity and critical infrastructure failure so the videos available in this section reflect this. They do not just cover material from the book. If you are covering security, you may find it helpful to look at the cybersecurity videos as background before your course. SCADA is not a topic that s discussed in many software engineering courses but I think these are helpful to demonstrate to students that there are other approaches to programming than in conventional languages. 8. Software reuse (Chapters 15 18) I haven t taught this course for a while so my only video here is on the reuse landscape with others all taken from YouTube, where there are quite a number of good videos on relevant reuse topics. Lots of project based courses now focus on the development of services and the videos here may be useful background for this. This is an area where I plan to create several new videos that are aligned to material in the book. 9. Systems engineering (Chapters 19 21) I think that this is a really important topic and that students should all have an awareness of systems engineering issues. It is an area where there are many different views on how to present a systems approach so you may use the videos here to complement your own approach and to stimulate discussion on the differences. If you are teaching a software engineering course, you may ask students to look at some of these videos as background - 10. Software management (Chapters 22-25) At the date of writing this document (July 2015) I have not made any videos specifically for this section but rely on existing videos from YouTube. This is an essential area but I have always found it difficult to make management issues interesting in a lecture. I think that maybe the best way to use these videos is as background to practical exercises such as drawing up a project plan or setting up a project on github. 11.2 Makingvideos If you are thinking of making videos to support your own course, my suggestions are: 4

1. Simply filming a lecture does not work. Lectures, by their nature, are interactive sessions where you respond to the audience. You may repeat things, refer to previous lectures, make jokes, etc. These enliven face to face lectures but do not come over well on video. You save time doing videos this way but your students will not thank you for it. 2. You do not need any special equipment if you have a reasonable digital camera and a tripod. I made all the videos in my home office using natural light (it s better lit than what was my university office). Do not make videos using top light such as conventional office fluorescent lighting. These look dreadful. 3. Do not underestimate the time that you need to make and edit a video. I reckon that the time required to write a script, set up equipment, film the video then edit the video (I used imovie) is 15-30 times the length of the video in minutes, depending on how well you do the presentation. 4. I did not write and learn a script but prepared a set of Powerpoint slides as if I was giving a lecture and used these. I think that this comes over as a more natural approach. I then edited the presentation so that there was less text on each slide and used these in the videos. 5. The situation about using other people s images is unclear. These are copyright and one interpretation of the law is that you should get permission before using an image. This is practically impossible. Another interpretation is that fair use for educational purposes is permitted and this is the one I chose to adopt. However, I tried to use images that were licensed using a Creative Commons license whenever possible and I included an image credit whenever I could. I avoided using images from commercial libraries. If you make videos on software engineering and are interested in sharing these, please let me know and I can link to these from my web pages. 5