TDDD89 Lecture 1 måndag 2 november 15

advertisement
TDDD89
Lecture 1
måndag 2 november 15
Part I
• Course format
• Activities
• Examination
måndag 2 november 15
Part II
• Starting your thesis project:
• What is a good thesis project?
• How do you start?
måndag 2 november 15
Part I
måndag 2 november 15
Course format
• Select a thesis topic
• 3x2h lectures
• 6x2h seminars
• 4x2 students
• theme-specific groups
måndag 2 november 15
Interlude
måndag 2 november 15
You want a great challenge, and an ability to work with rewarding problems that will have an
effect on peoples lives.
How about working on issues that will have a profound effect on all life unless we change
everything about how we consume & produce in our societies?
Climate Change
måndag 2 november 15
This is the single most important issue that will shape your professional and personal lives
for decades to come. Everything we do will be affected by the effects of climate change. As
far as challenges go, there is no greater one, nor more devastating effects of one.
These are some of the effects with the most conservative estimated effects, if our CO2
emissions are reduced by a great deal more than what is currently promised, or happening.
måndag 2 november 15
Those who are concerned with peoples having to flee their homes, hundreds of millions of
people will be displaced by the mid century.
måndag 2 november 15
måndag 2 november 15
måndag 2 november 15
You may have heard of the California Drought, but how about the Amazon drought?
The Amazon rainforest is in it’s fifth consecutive year of drought, and is at a very real risk of
disappearing and becoming a savannah.
måndag 2 november 15
Climate simulations have been very accurate until now, scarily so.
Fighting climate change will require substantial efforts by all, and require Systems
Engineering perspectives on all developments.
The models used to predict the effects of climate change, and the visualizations used to
convey messages are complex pieces of Software Engineering.
måndag 2 november 15
There are of course more projects, and not all projects that you do will have to do with
Climate Models, but as for the impacts of your theses and your future work, there is no
greater challenge.
Why should anyone be interested in that which you work with?
Selecting a thesis topic
• Option 1:You have a thesis proposal that
you will work with in your Master’s thesis
projects: great!
• Option 2:You find a partner to work with
in the course
• Matchmaking: https://goo.gl/5DZzIl
måndag 2 november 15
Lectures
1. What is a great thesis?
2. Learning and writing about a new subject
area
3. Method
måndag 2 november 15
Lecture 1: different types of theses, the introduction to your thesis
Seminar
Read
Write
1
Introduction
Thesis plan
Introduction
2
3
Theory
Theory
4
5
6
måndag 2 november 15
Results,
Discussion,
Conclusion
Method
Seminar groups
Ola
A1
A1
A1
A4
”Usability evaluation”
B4
måndag 2 november 15
Aseel
Johannes
A1
A1
A1B4
A1
A1
A1
C4
”Machine Learning”
C3
Gitlab - demo
måndag 2 november 15
Seminar 1,3,5
1
måndag 2 november 15
2
3
Seminar 2,4,6
1
måndag 2 november 15
2
3
Gitlab
måndag 2 november 15
Gitlab
This course
Milestones
Seminars & chapters
Issues
Feedback
Labels
Guidelines &c
Members
WebReg group +
teacher
Examination
UPG1
SE 1
måndag 2 november 15
SE 2
SE 3
SE 4
SE 5
SE 6
UPG2
Seminars
måndag 2 november 15
Final submissions
Review, rewrite
SE 6
End of HT2
måndag 2 november 15
End of exam
period for HT2
Part 2
måndag 2 november 15
What is a great thesis?
Thesis = project results + written presentation
• A working, interesting application with
proven and general value
• A well-described application
• of general interest
• and with a clear description of ”proven”
and ”value”
måndag 2 november 15
What is a great thesis?
Thesis = project results + written presentation
• An evaluation with general and interesting
results
• that others can use
• that others will believe
måndag 2 november 15
What is a great thesis?
Thesis = project results + written presentation
• An authoritative report
• with a good focus (questions!)
• and results that answer the questions
• through a transparent, thorough
description of the process
måndag 2 november 15
Starting your thesis
work
”Determine
whether
Why?
clustering algorithms
”Evaluate algorithms
can be used to
to be used for image
detect activities in
clustering”
sets of images”
How?
”Find activities in
sets of images”
måndag 2 november 15
Vague requirements: finding focus and rigor more important
Precise requirements: finding relevance more important
Rigor
Solve a
real problem
A properly evaluated
solution to an irrelevant
problem
A properly evaluated
solution to a relevant
problem
Verify your
solution
A random solution to a
relevant problem
Relevance
måndag 2 november 15
Thesis outline
Why should even I read this report?
What have you studied here?
What does this relate to?
Should I trust you?
What is built?
What have you found?
How can we explain the results?
How can I use these results in my work?
måndag 2 november 15
Thesis outline
Abstract
Research Questions
Theory, Background
Method
Implementation
Results
Discussion
Conclusion
måndag 2 november 15
Thesis plan
Subject
Type
Software Machine
Eng.
Learning
Evaluation
X
Design
X
Improvement
måndag 2 november 15
X
Games
...
Time Plan
Design
?
Evaluation
?
T
T+5 months
måndag 2 november 15
To mitigate risks, consider
* working with parallel activities
* keep track of time spent, so you can adjust your time estimates
* having decision points, and consider alternative solutions to problem along the way.
Diary
måndag 2 november 15
A Great Thesis
måndag 2 november 15
måndag 2 november 15
You will need to start with a problem that people are interested in, a few more than only
those that gave you your task.
måndag 2 november 15
you will need to convince people that you have a solid understanding of the field you are
writing about
måndag 2 november 15
In many cases, you will produce some code as part of your thesis. This is not enough for your
thesis project though.
You need to convince your (critical) audience that you have done a great job!
They don’t know you..
or your supervisor
or your company
so you better be convincing!
måndag 2 november 15
There are several established methods of persuasion:
In industry as well as in academia, well-presented working solutions are the best means of
persuasion.
in the scientific community, we also require claims about solutions to be sound, so others
can rely on them in their work. We will cover what we mean by soundness when we talk about
specific methods later, but in general,
måndag 2 november 15
you may want to assess the external or internal qualities of that which you produce, using
qualitative or quantitative methods.
There are of course other types of theses that do not involve creating products, and they
have their own criteria for assessment.
måndag 2 november 15
måndag 2 november 15
Mind the language. It IS important that others find your report attractive, since it will be the
single longest report that you write in your Master’s programme, and it may be some time
before you write another report quite like it.
måndag 2 november 15
Pay attention to the structure, formatting & typesetting of your report, and start to write
early. Few people have accurate estimates of how long it takes to write a report.
A great thesis:
An interesting problem
A convincing theory
A reliable method
A working solution
Established effects
Great presentation
måndag 2 november 15
But I will become a
Master of Engineering,
right?
måndag 2 november 15
Engineering vs research
Engineering
Research
Solve a problem
Gain
understanding
Activities
Design,
implement, verify
interviews,
experiments,
proofs, ...
Goal
Satisfied
customers
New/shared
understanding
Rationale
måndag 2 november 15
Are they really that
different?
måndag 2 november 15
In order to solve a problem, you need to gain
understanding of the problem
In order to verify your implementation, you may need
to do experiments, interviews or proofs
In order to have satisfied customers, you need to
achieve a shared understanding that the problem
has been solved appropriately
måndag 2 november 15
Thesis types
måndag 2 november 15
Thesis types
• Evaluations of new techniques or
methods to improve existing products or
processes
• Design of an application
• Incremental improvements of existing
techniques of methods
måndag 2 november 15
Evaluation
General problem: Does the code quality
deteriorate over time? How do we know?
Approach 1: Relate Git commits to code metrics
such as cyclomatic complexity and draw a graph
måndag 2 november 15
Why is this not a good
idea?
• We have not defined what we mean by
”code quality”, and hence, we have no way
of knowing what to measure, or whether it
relates to our desired quality.
• There is no clear sense of how to assess
what we have done.
måndag 2 november 15
Approach 2
General problem: Does the code quality
deteriorate over time? How do we know?
Approach 2: Based on interviews, we define code
quality as detected faults. Determine whether
detected faults correlate with cyclomatic
complexity.
måndag 2 november 15
Why is this a better
approach?
• We now have a definition of code quality
• The result can be assessed
måndag 2 november 15
Design
General problem: Create a new Foo application at our
company
Approach 1: Read about the latest techniques that can
be used on Wikipedia and on project sites, implement
the system and ask the company supervisor if he/she is
happy
måndag 2 november 15
Why is this not a good
approach?
• We don’t know why the company wants
the Foo application, how to evaluate it, or
how long time it would take to implement
it in full.
• IF the requirements are not clear from
the start, and the estimated time to
implement the working, full solution is >
6 weeks, do not aim for a full
solution
måndag 2 november 15
Approach 2
If the projected time to implement a full solution is > 6
weeks
Conduct a set of semi-structured
interviews to understand the problem
domain and the goal,
•
• a literature survey to understand solutions
to similar problems,
• and a few structured iterations of
development and documented customer
feedback, to produce a set of requirements
based on the initial prototypes.
måndag 2 november 15
Approach 3
If the projected time to implement a full solution is <= 6
weeks
• Determine functional and nonfunctional requirements,
• a literature survey to understand solutions
to similar problems and how to assess
them,
• develop the application iteratively, and
evaluate the resulting application
based on the non-functional requirements
måndag 2 november 15
Incremental
improvement
General problem: We would like to perform testing of
Telecom equipment with less hardware resources
Approach 1: Implement a booking system that
automatically releases resources upon expired time
slots.
måndag 2 november 15
Why is this not a good
approach?
• We do not know how and why people use
hardware resources, so we do not know
how to optimize something.
• Is this a technical, an organizational
problem or a cultural issue?
• How do we even measure utilization?
måndag 2 november 15
Approach 2
• Conduct an interview series to establish
how different people perceive the problem
• Conduct an observational study to
determine how people actually use
resources
• Find a suitable model for resource
utilization in the literature and apply it
• Measure utilization and relate to the results
of the interviews
måndag 2 november 15
What’s next?
måndag 2 november 15
• Write a draft of your thesis plan by Friday.
Focus on the main topic, relate to previous
courses, both the WHAT and the HOW.
• Set up Gitlab projects for each thesis, and
one for your group once you have one
assigned (next Tuesday at the earliest).
måndag 2 november 15
Summary
• Write a draft thesis & plan, prepare for and
participate in seminars
• A great thesis is a marriage between solid
engineering skills, genuine scientific
approach to validate your work, and a
crystal clear presentation.
• There are three main types of industry
theses: evaluations, prototypes and
improvements.
måndag 2 november 15
Download