Thanks to visit codestin.com
Credit goes to www.scribd.com

0% found this document useful (0 votes)
73 views5 pages

Using Videos in SE Teaching

The document discusses using videos in teaching software engineering. It describes the author's experience creating videos and using them in a flipped classroom model. Some key points made are that videos allow students to learn at their own pace, and non-native English speakers found them especially helpful for reviewing material. The author provides examples of how the videos could be used, such as for project-based courses or supplementing lectures.

Uploaded by

Ssemwogerere Tom
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
73 views5 pages

Using Videos in SE Teaching

The document discusses using videos in teaching software engineering. It describes the author's experience creating videos and using them in a flipped classroom model. Some key points made are that videos allow students to learn at their own pace, and non-native English speakers found them especially helpful for reviewing material. The author provides examples of how the videos could be used, such as for project-based courses or supplementing lectures.

Uploaded by

Ssemwogerere Tom
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 5

!

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

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 dont 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 (weve all taught courses where this is the
case). In this case, videos such as case studies and examples are particularly helpful as

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 46)


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, theres a lot on YouTube on the UML and
system modeling so I havent 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 didnt have to spend time on this during
the course.

4.

Implementation and evolution (Chapters 79)


I havent been involved in teaching in this area for some time so I dont 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.

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
thats 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 1518)


I havent 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 1921)


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! Making!videos!
If you are thinking of making videos to support your own course, my suggestions are:

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 (its 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 peoples 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.

You might also like