Presentation is loading. Please wait.

Presentation is loading. Please wait.

Do we need theoretical computer science in software engineering curriculum: an experience from Uni Novi Sad Bansko, August 28, 2013.

Similar presentations


Presentation on theme: "Do we need theoretical computer science in software engineering curriculum: an experience from Uni Novi Sad Bansko, August 28, 2013."— Presentation transcript:

1 Do we need theoretical computer science in software engineering curriculum: an experience from Uni Novi Sad Bansko, August 28, 2013

2 Andreja Tepavčević Department of Mathematics and Informatics Faculty of Sciences University of Novi Sad Serbia

3 Outline: New accreditation round at Faculty of Sciences, UNI Novi Sad Theoretical computer science SWEBOK Current situation at UNI Novi Sad Conclusion

4 New accreditation round at Faculty of Sciences Programs Bachelor Informatics 3 years Modules: Computer Sciences Information Technologies Bachelor Informatics 4 years Master Informatics 2 years: Modules: Computer Sciences Software Engineering Information Technologies

5  Adjusting programmes at UNI for the new accreditation round  How it was through the history of the department?

6 Theoretical computer science (TCS) is a division (or subset) of general computer science and mathematics which focuses on more abstract or mathematical aspects of computing. (from Wikipedia)

7 The field of TCS include algorithms, data structures, computational complexity theory, distributed computation, parallel computation, machine learning, information theory, cryptography, quantum computation, computational number theory and algebra, program semantics and verification, automata theory, the study of randomness,…

8 Important aspects: mathematical technique and rigor

9 IEEE Computer Society Guide to the Software Engineering Body of Knowledge (SWEBOK)

10 The SWEBOK Guide: characterizes the contents of the software engineering discipline promotes a consistent view of software engineering worldwide clarifies software engineering's place with respect to other disciplines provides a foundation for training materials and curriculum development, provides a basis for certification and licensing of software engineers.

11 Engineering foundations Mathematical foundations Computing foundations

12 Engineering foundations Empirical Methods and Experimental Techniques Statistical Analysis Measurement Engineering Design Modeling, Simulation, and Prototyping Standards

13 Computing foundations: Not all courses in computer science are related or equally important to software engineering

14 Computing foundations Problem Solving Techniques Abstraction Programming Fundamentals and Programming Language Basics Debugging Tools and Techniques Data Structure and Representation Algorithms and Complexity Basic Concept of a System Computer Organization Secure Coding,…

15 Mathematics for a software engineer is mostly connected to the logic and reasoning.

16 Mathematical foundations  Sets, relations, functions  Basic logic  Proof Techniques  Basics of Counting  Graphs and Trees  Discrete Probability  Finite State Machines  Grammars  Numerical precision  Number Theory  Algebraic Structures

17 Situation at UNI Novi Sad Software engineering curriculum: -Bachelor Informatics 3 years’ -Master in Informatics (a module - Master in SE)

18 Courses connected with TCS  Bachelor 3 years: Obligatory courses for both modules: Computing foundations Mathematical foundations e.g. Mathematical logics and basics of algebra, Discrete Mathematics, Formal Languages and Automata,… + Several elective courses

19 Master in SE It is assumed that students already learned TCS fundamentals at bachelor level No obligatory courses in TCS at master level Some elective courses as Applied Mathematical Statistics, Mathematical Logics, Combinatorial Algorithms In practice, they are rarely chosen by students

20 Do we need TCS in SE curriculum? Yes, we do because TCS provides necessary basics to SE. Yes, we do, although the courses and methods should be very carefully chosen Yes, not because mathematicians insist that mathematics is needed, but because some basics is really needed (according to SWEBOK guide).

21 Thank you for your attention!


Download ppt "Do we need theoretical computer science in software engineering curriculum: an experience from Uni Novi Sad Bansko, August 28, 2013."

Similar presentations


Ads by Google