Do we need theoretical computer science in software engineering curriculum: an experience from Uni Novi Sad - PowerPoint PPT Presentation

Loading...

PPT – Do we need theoretical computer science in software engineering curriculum: an experience from Uni Novi Sad PowerPoint presentation | free to view - id: 77b3bf-ZGRhZ



Loading


The Adobe Flash plugin is needed to view this content

Get the plugin now

View by Category
About This Presentation
Title:

Do we need theoretical computer science in software engineering curriculum: an experience from Uni Novi Sad

Description:

Do we need theoretical computer science in software engineering curriculum: an experience from Uni Novi Sad Bansko, August 28, 2013 Andreja Tepav evi Department of ... – PowerPoint PPT presentation

Number of Views:92
Avg rating:3.0/5.0
Slides: 22
Provided by: Andre849
Category:

less

Write a Comment
User Comments (0)
Transcript and Presenter's Notes

Title: Do we need theoretical computer science in software engineering curriculum: an experience from Uni Novi Sad


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

2
Andreja Tepavcevic 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 SocietyGuide 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!
About PowerShow.com