Teaching Computer Science/ TLA+ Friedrich Vogt/Paul Tavolato - - PowerPoint PPT Presentation

teaching computer science
SMART_READER_LITE
LIVE PREVIEW

Teaching Computer Science/ TLA+ Friedrich Vogt/Paul Tavolato - - PowerPoint PPT Presentation

General and Specific Issues in Teaching Computer Science/ TLA+ Friedrich Vogt/Paul Tavolato University of Technology Hamburg-Harburg and University of Applied Science, St. Plten, Austria 1 | Scope The paper Integrating Formal Methods into


slide-1
SLIDE 1

1 |

General and Specific Issues in Teaching Computer Science/ TLA+

Friedrich Vogt/Paul Tavolato

University of Technology Hamburg-Harburg and University of Applied Science, St. Pölten, Austria

slide-2
SLIDE 2

2 |

Scope

The paper Integrating Formal Methods into Computer Science Curricula at a UAS (St. Pölten, Austria) describes the universe of discourse. My presentation concentrates on two parts:

  • Present challenges on education and
  • My experience in teaching Model Checking using TLA+

(since 2009) at UAS

slide-3
SLIDE 3

3 |

Student(s), TLA+ and real problems?

“I missed the reference to the practice: for example, in which projects or which companies do really use TLA+ and what for? Maybe I’ll thinking about the features or the possibilities of TLA+ in some years, when I’m in some projects and I’m missing something and TLA+ could be the solution for that. But at the moment I am really not able to answer that question.”

slide-4
SLIDE 4

4 |

Education Science

… tells us, to distinguish between two kinds

  • f knowledge (Marotzki , U of Magdeburg):
  • available (or ready to use!) knowledge

and

  • rientation (direction of progress)

knowledge

slide-5
SLIDE 5

5 |

But how can we assure …

… that available knowledge does not come as „passive“ knowledge (A. N. Whitehead) by

  • Learning from projects in industry – right from the

beginning (this idea is currently successfully implemented at UAS) and

  • Learning from scientists/engineers working in

industry (e.g. Amazon, Motorola, etc.)?

slide-6
SLIDE 6

6 |

At UAS …

a problem oriented teaching approach is used: (teaching is organized blockwise)

Explain a practical real world problem Give basic information on possible solution paths Let the students work on the problem Discuss solutions

slide-7
SLIDE 7

7 |

And Implemented for CS by …

Formal Methods

Theoretical Computer Science Software Engineering Model Checking and Testing

the following three courses:

slide-8
SLIDE 8

8 |

Theoretical Computer Science,

  • Model building in general
  • Complexity of algorithms
  • Formal language theory and automata
  • Introduction to logics

Problem

Model Formal Model

LANGUAGE

Results

slide-9
SLIDE 9

9 |

Software Engineering, and

  • Requirements engineering
  • Software design
  • UML
  • Software project management

Reqirement

UML Diagram Formal Requirement

OCL

slide-10
SLIDE 10

10 |

Model Checking, being Aware that:

“The task of science is not to explain nature through an appeal to a conceptual representation

  • f it, but rather to explain a conceptual

representation through an appeal to experience” and “abstraction is foremost a tool of science“. (as of A. N. Whitehead)

slide-11
SLIDE 11

11 |

Trying to answer Questions like …

  • What has to be provided before learning can take

place ?

  • How can we avoid the impression students may

have, that teaching theory is mostly related to obtain „passive“ knowledge?

  • Is it possible to install learning prerequisites for those

who want to be part of a learning community?

slide-12
SLIDE 12

12 |

Not Ignoring the Current State in CS Education, which to my opinion …

… is to a large extend characterized by the fact that:

  • The so called „available knowledge“ in CS is quite

low and seems to become lower every year (i- generation?).

  • The demand on „orientation knowledge“ is increasing

sharply, since the job perspectives are in flux creating severe uncertainty.

slide-13
SLIDE 13

13 |

Can we meet this additional Challenge by Assuming that Learning/Teaching

  • is a project oriented tool based process

with strong emphasis on self learning, and

  • is a social process (continuous exchange

and presentation opportunities are part of the learning process)?

slide-14
SLIDE 14

14 |

In my Opinion yes, if we

are successful in:

  • Providing the flavor/feeling about the subject
  • Distinguishing between available and
  • rientation knowledge
  • Interpreting Questions as a coming up

reflection of a difference

  • Viewing Answers as tools backed by actual

industry-examples

slide-15
SLIDE 15

15 |

Back to Model Checking at UAS

  • What worked well?
  • What didn't work well?
  • What additional tools may help?
  • Can students apply TLA+ to real problems when

they get into industry?

slide-16
SLIDE 16

16 |

What worked well?

  • The strong emphasis on simple examples lead to a

rather good understanding of the basic concepts of TLA+

  • The use of the Toolbox was quite well practiced and

where used heavily by all students

  • Hyperbook was used as well, and new concepts got

understood in selfstudy (PlusCal)

slide-17
SLIDE 17

17 |

What didn't work well?

  • The focus on simple examples seemed to prohibit the

understanding of the general applicability of the TLA concepts

  • To what extend the understanding of the principles of

the TLC is required for a more advanced use of the Toolbox is left unclear

  • Most of the Hyperbook examples are considered as too

„mathematical“ and less „system oriented“

slide-18
SLIDE 18

18 |

What additional Tools may help?

Three directions may be considered:

  • 1. Round up the Hyperbook to be a perfect basis for all

theories and concepts relevant to apply TLA+/PlusCal for novice users

  • 2. Add examples which make the systemic and process

views for various application areas more obvious

  • 3. Provide for all cross links to enable an uniform view of

the whole

slide-19
SLIDE 19

19 |

Conclusion

  • Focus should be directed to widen the community

by attracting more educational institutions

  • Systems examples from industry and research

should widely be available and communicated

and Future Work

  • Within UAS we will try to apply the concepts to fit

TLA+ in with the other topics, such as theory of computation and UML (is emphasized, but not yet done completely)