Survey
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
Reconstruction of Computer Science Curricula at Faculty of Electronic Engineering UNIVERSITY OF NIŠ M. Stoj~ev, M. Stankovi}, E. Milovanovi}, R. Stankovi}, S. Djordjevi}-Kajan, I. Milentijevi} FEEN organization Faculty of Electronic Engineering Institute: Education • research projects • scientific projects • industrial projects Undergraduate studies Graduate studies 5 years (dipl. ing.) 2 years (MS degree) +3 years (PhD) Undergraduate Studies Six departments organize education in six study groups. Majors and number of subjects: Majors Total no. / CS Automatic Control 40 / 3 Electronics 38 / 3 Industrial Electric Power Engineering 38 / 2 Microelectronics 39 / 2 Computer Science and Informatics 39 / 18 Telecommunications 40 / 3 The People's Assembly of Republic of Serbia brought a new Law in education on march 2002. What does it mean? A new education scheme for FEEN 2 common years +1 year (ing) +2 years (dipl.ing.) + 2 years (MS degree) + 3 years (PhD) Problems & Solutions Problems P1: Education according to a new scheme should start next academic year; P2: How to improve the education of students that are already in the process of the education. Solutions S1: Intensive work on new curricula; S2: Reconstruction of existing courses. Curriculum for the 1st year of studies Subjects in the 1st year (all majors) I Philosophy and Sociology 2+1+0 Fundamentals of Electrical Engineering 4+4+0 4+4+1 Mathematics I 4+4+0 4+4+0 Physics 3+2+1 3+2+1 Fundamentals of Computer Science 2+1+0 2+1+1 Theory of Social Development II 2+1+0 CA LD DBS CNET IET OTHER I II Fundamentals of Computer Science2+1+1 Prerequisites: none Main topics: Data representation Data structure Boolean functions Automats theory Basics of software and hardware organization Basics of internet technologies 2+1+1 I II Fundamentals of Computer Science2+1+1 Outcomes: Basic knowledge of data representation Basic knowledge of logic design Windows program skills Using Internet services 2+1+1 Subjects in the 2nd year III IV Programming 2+2+1 - Materials for Electronics 2+1+1 - Electronic Components 2+1+1 - Electronics I 3+2+1 3+2+2 Mathematics II 4+3+0 4+3+0 Electrical Circuits Theory 2+2+0 3+2+0 Electrical Measurements - 2+1+2 CA LD DBS CNET IET OTHER Programming I II 2+2+1 2+2+1 Prerequisites: Data representation Data structures Main topics: Algorithms and problem solving Properties of algorithms Implementation strategies Structural programming Basic control structure Subprograms, procedures and functions Structured data types (arrays, files, ...) Overview of programming methodologies Programming Outcomes: Solving of problems on algorithm level Programming using HLL I II 2+2+1 2+2+1 CA LD DBS CNET IET OTHER AUTOMATIC CONTROL Fundamentals of Automatic Control - 3+2+1/V ELECTRONICS Fundamentals of Microelectronics - 3+2+1 INDUSTRIAL ELECTRIC POWER ENGINEERING Technical Mechanics - 4+2+0 MICROELECTRONICS Fundamentals of Microelectronics - 3+2+1 TELECOMMUNICATIONS Electromagnetics - 3+2+0 COMPUTER SCIENCE AND INFORMATICS Computer Systems - 3+2+1/V Subjects in the 3rd year Electronics II V 3+2+1 VI - Numerical Mathematics 3+2+1 - Electromagnetics 2+1+0 - Measurements in Electronics 2+0+1 - Programming Languages 2+2+0 2+2+2 Computer Organization 2+2+0 2+2+1 Logical Design 2+2+0 2+2+1 Automatic Control - 2+2+0 Telecommunications - 2+2+0 Digital Electronics - 3+2+1 CA LD DBS CNET IET OTHER Subjects in the 4th year Computer Telecommunications Artificial Intelligence Discrete Mathematics Microcomputer Systems and Input/Output Devices Systems Software VII 2+2+0 2+2+1 2+1+0 2+2+1 VIII _ 2+2+1 2+1+1 2+2+1 Data Structures and Data Bases 2+2+1 2+2+1 Parallel Computer Systems 2+2+0 2+2+1 Techniques and Methods of Programming - 2+2+1 Computer Networks - 2+2+1 CA LD DBS CNET IET OTHER Subjects in the 5th year IX Compilers 3+2+1 Computer Graphics 3+2+1 Algorithms and Architectures of Specialized Computer Systems 2+2+1 Option 2+2+1 Option 2+2+0 CA LD DBS CNET IET OTHER Options include: Computer System Control; Data Acquisition Systems; High Reliability Systems; Real-Time Systems; Expert Systems and Neural Networks; Option 2+2+0 Performances of Computer Systems; Parallel Algorithms; Patterns Recognition; Software Engineering; Visual Languages and Visualization; Distributed Data Bases; Integrated Telecommunication Services; System Simulation and Simulation Languages; Information Systems. Workgroup for Computer Architecture Current status Computer Systems (semester IV - 3+2+1) Computer Organization (semester V - 2+2+0,VI - 2+2+1) Microcomputer Systems and Input/Output Devices (semester VII - 2+2+1, VIII - 2+2+1) Parallel Computer Systems (semester VII - 2+2+0, VIII - 2+2+1) Algorithms and Architectures of Specialized Computer Systems (semester IX - 2+2+1) Computer Systems V 3+2+1 Prerequisites: Data representation Data structure Digital logic circuits Switching algebra Main topics: Instruction set architecture – ISA Addressing modes Data path / control unit Assembly programming DMA & interrupts I/O handling Computer Systems V 3+2+1 Outcomes (be familiar with) : Instruction set architecture – ISA Simple processor organization Assembly programming Innovation proposal: Visualization of addressing modes Simple processor: Visualization of instruction execution creation of testbench programs simulation of operation Visualization of interrupt handling and DMA Computer Organization V VI 2+2+0 2+2+1 Prerequisites: Processor organization Assembly programming Computer organization Main topics: RISC and CISC concepts Pipeline organization Memory organization Cache coherency Microprogramming Computer Organization V VI 2+2+0 2+2+1 Outcomes (be familiar with) : Scalar processor architecture Memory hierarchy Microprogramming Innovation proposal: Non-blocking cache memories RAMBUS DRAM, SDR and DDR SDRAM RAID Universal Serial Bus - USB VII VIII Microcomputer Systems and I/O devices 2+2+1 Prerequisites: RISC, CISC concepts Digital logic design Assembly programming Main topics: Microcomputer System Architecture Microprocessor Architecture Microcontrollers Programmable peripheral devices (parallel and serial data transfer) I/O devices 2+2+1 VII VIII Microcomputer Systems and I/O devices 2+2+1 2+2+1 Outcomes (be familiar with): Design of microcomputer/microcontroller systems Organization of peripheral controllers I/O devices Innovation proposal: New generation microcontrollers Simulation of program execution Visualization of peripheral devices connection (display, keyboard, interrupt controller, etc) Parallel Computer Systems VII VIII 2+2+0 2+2+1 Prerequisites: RISC and CISC architectures Memory organization, Pipelining technique, HLL (High Level Language) Main topics: Taxonomy Performances of parallel systems Advanced pipelining techniques Processor arrays, Interconnection networks Multiprocessors and multicomputers Cache coherency in multiprocessor systems Interprocessor communication and synchronization Parallel programming Parallel Computer Systems VII VIII 2+2+0 2+2+1 Outcomes (be familiar with): Superscalar processors Super pipeline processors VLIW machines Parallel processors Cache coherency Parallel programming Innovation proposal: Cluster computing CORBA programming Concurrent programming with Java Threads Algorithms and Architectures of Specialized Computer Systems Prerequisites: IX 2+2+1 Graph theory, CFG, DFG Digital signal processing Digital logic design HDL (VHDL) Main topics: Mapping Algorithm onto the Architecture Hardware synthesis Hardware description Special purpose data paths DSP applications Algorithms and Architectures of Specialized Computer Systems IX 2+2+1 Outcomes (be familiar with): Hardware synthesis ASIC, ASIP Simulation, testing and verification Course at department of Electronics – VII VIII 2+2+1 2+2+1 Microprocessor systems Prerequisites: Digital logic design Programming technique Main topics: Performance evaluation of computer systems Hardware structure of simple and complex processors Memory subsystem, I/O subsystem, I/O technique Pipeline technique RISC, CISC and DSP architectures Programming techniques (Assembler, C) Advanced microprocessor architectures Course at department of Electronics – VII VIII 2+2+1 2+2+1 Microprocessor systems Outcomes (be familiar with): Design of microprocessor systems Programming microprocessor systems Integration of hardware and software Innovation proposal: Synthesis of microprocessor system's constituents using HDL (VHDL, Verilog, System C) Concepts of VLIW machines Instruction level parallelism Speculative execution Proposal for new Course in Computer Architecture – Embedded Computing Systems Prerequisites: Microprocessor and microcontroller systems RISC and CISC concepts Hardware synthesis (mixed logic – analog & digital) Main topics: Embedded Computing Processor for embedding system Embedded computing platform Program design and analysis Hardware accelerators Networks System design technique Proposal for new Course in Computer Architecture – Embedded Computing Systems Outcomes (be familiar with): Hardware-software codesign System-on-Chip design - (SoC) Multichip design Configurable computing Workgrup for Logic Design Logic Design Switching Theory Mathematical foundations Realizations Logic design Teaching Two semesters 2 + 2 Third year of study Goals Provide elements of Switching theory as foundations for Logic and VLSI design Discuss optimization problems, verification, and testing Present current methods and systems for DAC Student should be able to perform simple designs by using DAC tools Prerequisites Basic knowledge of 1. Boolean algebra 2. Linear algebra 3. Mathematical analysis 4. System theory Problems Lack of 1. Literature Lazic, B., 1989 Stankovic, R.S., Stankovic, M., 1991 2. Practical work Student projects Way of Teaching Switching Theory Signal Processing Processing of Logic Signals Logic Design System Theory Design of Digital Systems Future Work Translation of book Sasao, T., Switching Theory for Logic Design First edition Kindai Kaga.ku-Sha, 1995 Fourth edition 2002 English edition Kluwer 1999 Lecture Notes Stankovic, R.S., Moraga, C. Practical Work Altera University Program Workgroup for Database Systems Current status Data Structures and Databases (semester VII - 2+2+1,VIII - 2+2+1) Distributed Databases (semester IX- 2+2+1) Data Structures and Databases Prerequisites VII VIII 2+2+0 2+2+1 (for Data Structures): Solving of problems on algorithm level Programming with C/C++ Main topics (for Data Structures): Linear and non-linear data structures (strings, arrays, linked lists, stacks, queues, trees, graphs, tables) Algorithms that operate on them Representation in memory Sorting and searching algorithms File organization and indexes Practical laboratory work in programming with data structures Data Structures and Data Bases VII VIII 2+2+0 2+2+1 Outcomes for Data Structure ( to enable the students to): Identify data structures that could be used to represent specific types of information Write programs with C/C++ that use the data structures Innovation proposal: Data struvtures in JAVA Data Structures and Databases Prerequisites VII VIII 2+2+1 2+2+1 (for Databases): Data structures Programming with C/C++ Main topics (for Data Bases): Database systems Data models (ER/EER, Relational) and data modeling Mapping ER/EER to relational schema Relational query languages (algebra, calculus, SQL) Relational database design Transaction processing (concurrency control, crash recovery) ORACLE (SQL*Plus, Pro*C ) Data Structures and Databases VII VIII 2+2+1 2+2+1 Labs (for Databases): Lab1: ER modeling and ER-to-Relational mapping Lab2: SQL (Create and loading) Lab3: SQL (Queries) Lab4: SQL (Update and Delete) Lab5: SQL (Views and Indexes) Lab6: Pro*C Lab test: Lab platform (for Databases): Oracle 7.3 (Server) Oracle 8 (clients) Pro*C, SQL*Plus Data Structures and Databases Text books VII VIII 2+2+1 2+2+1 (for Data Bases): R. Elmasri, S. Navathe, “Fundamentals of Database Systems”,2nd (1994), 3rd (2000) Handouts (in Serbian) Data Structures and Databases VII VIII 2+2+1 2+2+1 Outcomes for Databases ( to enable the students to) : Design database Use relational algebra and calculus to query DBs Use SQL to query, define, load, update and manage relational databases Understand the functionality of RDBMSs Innovation proposal: New topic (embedding SQL queries into C++ and JAVA) New Lab platform (Oracle 9i, Oracle Designer, Oracle Developer) New teaching tools (ITS SQL-tutor, KERMIT) Text book in Serbian Distributed Databases IX-elective 2+2+1 Prerequisites: Databases C/C++, Java Computer network Main topics: Distributed DBMS architecture Distributed data storage Distributed query processing Distributed transaction model Distributed database design Practical laboratory work in DDB design and application Distributed Databases IX - elective 2+2+1 Text books: T.Ozsu, P.Valduriez, “Principles of Distributed Database Systems”, Prentice Hall, 2000 Handouts (in Serbian) Distributed Databases Outcomes ( to enable the students to) : IX 2+2+1 Design distributed database Understand the functionality of RDDBMS Use SQL to query, define, load, update and manage distributed databases Innovation proposal: New topics (distributed object database management, database interoperability, data warehousing, www database access) New Lab platform (Oracle 9i, Oracle Designer, Oracle Developer) Proposal for new Course in Databases Object-Based Databases Prerequisites: 2+1+2 Data Structures and Databases C++, Java, XML, HTML Main topics: OO data model Mapping ER to OO and OO to relational schema Object-Oriented Databases Object-Relational Databases Web-based Databases Management of XML data with database technique Object-Relational database HTML pages, querying Proposal for new Course in Data Bases – Object-Based Databases 2+1+2 Outcomes (be familiar with): Object-oriented model and modeling Using OO queries into C++ and Java Building applications on an ORDBMS/OODBMS Workgroup for Computer Networks Current status Computer Telecommunications (semester VII – 2+2+0) Computer Networks (semester VIII - 2+2+1) Computer Telecommunications VII 2+2+0 Prerequisites: Telecommunications, Computer architecture Main topics: Who is who in telecommunications world ? Public switched telephone network (PSTN), Public switched data network (PSDN) Data transmission, Transmission media OSI reference model, Physical layer Network components (modems, routers, bridges, switches, hubs.) Encoding/decoding techniques Error detecting and correcting codes Packet switching and circuit switching Basic of wireless communication Computer Telecommunications VII 2+2+0 Outcomes (be familiar with) : Data transmission technique Network components Standards and regulatives for data transmission Computer Networks VIII 2+2+1 Prerequisites: Computer architecture Programming in C++ and Java Physical layer communication Computer Networks VIII 2+2+1 Main topics: Background and history of networking and Internet Network architectures, Network hw and sw Protocol layers and their reference models (OSI and TCP/IP) The Data Link Layer (services, elementary protocols, example protocols: HDLC, PPP) MAC and LANs (Ethernet, Token Bus, Token Ring, Fast Etherne The Network Layer (services, virtual circuits and datagrams, routing algorithms, congestion control, IP protocol) The Transport Layer (services, addressing, multiplexing and demultiplexing, TCP and UDP) The Application Layer (DNS, WWW, e-mail, File transfer) Computer Networks VIII 2+2+1 Labs: Framing Error control Flow control Datagram sockets Stream sockets (HTTP client/server) Windows NT network tools Textbooks: Andrew S. Tanenbaum, Computer Networks (third edition) James F. Kurose, Keith W. Ross, Computer Networking: Atop Down Approach Featuring the Internet. Computer Networks VIII 2+2+1 Outcomes (be familiar with) : Understanding the hierarchical, layered structure of typical network architecture; Discuss important network standards; Explain how network can detect and correct transmission errors; Explain how the packet is routed over the Internet; Install a simple network with two clients and single server; Design and build a simple web-based application; Computer Networks VIII 2+2+1 Innovation proposal: Textbook on Computer Networks in Serbian Two new courses: Wireless networks (elective) Network management (elective) Proposal for new Course in Computer Networks – Wireless networks Prerequisites: Computer telecommunications Computer networks Main topics: Evolution of wireless networks Standards and regulatives Network planning Networking (LAN technology, WAN technology, Satellite communications, Cellular network, Mobility) WAP, QoS Network components design (IC Technology, SoC design) Software support Proposal for new Course in Computer Networks – Wireless networks Outcomes (be familiar with) : Wireless network standards and regulatives Mobility management Wireless technologies Design of wireless network components Proposal for new Course in Computer Networks – Network management Prerequisites: Computer networks Operating systems Main topics: Network management: goals, organization and functions Services Types of management: models and languages (SNMP, Remote monitoring - RMon, Telecomunication Management Networks TMN) Tools for network management Web-based management Aspects of system and network administration Proposal for new Course in Computer Networks – Network management Outcomes (be familiar with) : Network and system management Practical aspects of administration (e-mail, print, remote access, software and monitoring services) Workgrup for Internet and e-technologies First experiences 1992 – First mail server at Faculty of Electronics. 1995 – Two diploma works in this field. 1995 – First Web server and Web presentation of the faculty. 1996 – First book titled: Network service World Wide Web. Diploma works-Main topics HTML, CGI, JavaScript technologies Java and Java applets, Active X PHP technologies, ASP. XML-technologies E-commerce Student WEB laboratory 1997-1999 Self education Groups for Web development, programming, Web design. Projects: Web presentation of Faculty of Electronics Virtual reality model of the faculty building Education: Current state Fundamentals of computer science Internet technologies Programming languages Java, Java applets Computer networks Protocols, … Fundamentals of Computer Science I II 2+1+1 2+1+1 Prerequisites: none Main topics: Data representation Data structures Boolean functions Automata theory Basics of software and hardware organization Basics of internet tehnologies Laboratory exercises: Windows, Word, Corel, Excel, Internet. Fundamentals of Computer Science I II 2+1+1 2+1+1 Outcomes: Knowledge about basic principles and concepts of computer technique. Using of Windows programs Innovation proposal: Topics: Containt: Exercises: Basics of Internet technologies Internet architecture, Main services, Web, HTML, XML. e-mail, Ftp, Telnet, Using of Web. Textbooks: Lecture note. Programming languages V VI 2+1+1 2+2+2 Prerequisites : Basics of algorithm solving Basics of programming Main topics: Data types and strong typing Control structures Subprograms Modules Data abstraction OO programming Concurrent programming Web programming Exercises: C, C++ and Java programming Programming languages V VI 2+1+1 2+2+2 Outcomes: After the course a student knows to implement non-trivial C an OO applications. Innovation proposal: Topics: Java technologies for Web programming Containt: Java applets, servlets, JSP (Java Server Pages), Java beans. Exercises: Creating of Java applets. Servlets, EJB, JSP. Literature: Course material. Text book. Web technologies New elective subject: Prerequisites : Basics of programming Basics of Internet concepts Main topics: Web architecture, Client side scripting, Server side scripting, Component WEB programming, XML technologies. IX 2+2+2 Web technologies IX 2+2+2 Outcomes: After the course a student knows to implement non-trivial Web application. Requirements Project, Exam. Literature: . Lecture note, M. Stanković, D. Radulović, D. Ristić, Network Service World Wide Web, 1996, Faculty of Electronics, Nis. New curricula Basics of Internet technologies Web programming Technologies for e-business Basics of Internet technologies II 2+2+2 Prerequisites :none Main topics: Internet architecture Main services Web HTML XML Exercises: e-mail, Ftp, Telnet, Using of Web, Build HTML documents. Embed image and other multimedia. Basics of Internet technologies II 2+2+2 Outcomes: Effective use of Internet. se the Internet to access any fact, at any time, from any place. Possibility to development of simple Web applications. Requirements : Practical work in computer lab, Exam. Literature: Lecture note. Web programming Prerequisites : Basics of programming Basics of Internet concepts Main topics: Web architecture, Client side scripting, Server side scripting, Component WEB programming, XML technologies. V 2+2+2 Web programming V 2+2+2 Outcomes: After the course a student knows to implement non-trivial Web application Requirements : Project, Exam. Literature: Lecture note, M. Stanković, D. Radulović, D. Ristić, Network Service World Wide Web, 1996, Faculty of Electronics, Nis. Technologies for e-business Prerequisites : Web programming Main topics: Intranet B2B application e-commerce applications Portals Electronic payment methods On-line ordering EDI Transaction security Digital currencies VII 2+2+2 Technologies for e-business VII 2+2+2 Outcomes: After the course a student should be familiar with technologies, architectures and development of e-business applications. Requirements : Project, Exam. Literature: Lecture note.