Download SYLLABUS COMPUTER PROGRAMMING ENGINEERING

Survey
yes no Was this document useful for you?
   Thank you for your participation!

* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project

Document related concepts

Distributed operating system wikipedia , lookup

CP/M wikipedia , lookup

Transcript
SYLLABUS
COMPUTER PROGRAMMING
ENGINEERING FACULTY
MAJOR: INFORMATION TECHNOLOGY
Year of study: I
Semester I
A. COURSE OBJECTIVES
This module covers many of the features and techniques needed for computer
programming. The first half of the module is structured so that the necessary components
of procedural programming are introduced. The concepts covered are applicable to a
whole host of different programming languages. Emphasis is placed on writing correct,
efficient and maintainable programs. The second half of the module develops on the
earlier techniques but with particular application to object oriented programming. The
construction of well-designed interfaces, and program encapsulation and abstraction are
discussed. The module is based on a number of example programs and emphasis is
placed on coursework with the aim of ensuring that the theory covered in lectures is
reinforced by practical programming exercises.
Learning Outcomes
At the end of the module, a student will:
¾ design, implement, test, debug and document web based computer programs
using a variety of current tools and technologies.
¾ design, implement, test, debug and document at least one other type of computer
program such as: game program, database program, object oriented program.
¾ understand the relationship between computer programs and organizational
processes.
¾ interpret the mathematical concepts of a programming related problem-solving
task and translate them into programming logic and expressions.
¾ identify and predict a program behaviour favoured by a certain microarchitecture
of a processor
B. COURSE CONTENT
1. Introduction to programming:
ƒ Programming paradigms;
ƒ From Specification through Algorithms to Implementation;
ƒ Program compilation and testing.
2. Building Elements:
ƒ Preconditions and post conditions;
3.
4.
5.
6.
ƒ
ƒ
ƒ
7.
8.
9.
ƒ Basic data types;
ƒ Variables, identifiers and scope.
Control structures:
ƒ Conditionals;
ƒ Case statements and loops;
ƒ Correctness issues when programming with loops.
Methods:
ƒ Comparison between iteration and recursion.
Programming with objects and classes:
ƒ Complex data types:
ƒ Parameter passing by reference and by value;
ƒ Encapsulation.
Arrays and strings
Dynamic binding;
Multiple inheritance;
Interfaces and abstract classes.
Program specifications
Error handling
Methods of testing
C. LABORATORY
1. Applications with articles and crowd.
2. Develop a program menu.
3. Transmission parameters of functions and procedures.
4. Applications of the method breakdowns in successive steps
5. Recursive procedure and functions.
6. Simple linked lists, specific operations
7. Double-linked list
8. Greedy method: connecting steps with minimal cost
9. Buck tracking
10. Files
11. Graphics
D. BIBLIOGRAPHY
1. Slavici Titus, „Limbaje de programare. Tehnici de laborator si proiect”, Ed.
Fundaţiei Ioan Slavici, Timişoara, 2009
2. Mihai Anton Cerghizan, “EXCEL 7.0 pentru Windows 95”, Ed. Tehnică, Bucureşti,
2006.
3. Dumitru Dragomir, Ovidiu Ionaş, Leonard Domnişoru, Ionel Gavrilescu, – Lucrăi de
tehnici de calcul numeric în ingineria asistată de calculator, Editura EVRIKA, Brăila,
2001.
4. Ciocârlie H. - "Introducere în ştiinţa sistemelor şi a calculatoarelor" ,curs litografiat,
2003
5. Cohen, D.I.A., Introduction to Computer Theory, John Wiley and Sons, 1997.
E. ASSESSMENT
Type of assessment: exam at the end of semester
Written work to end the app. I Laboratory tests I a computer quiz.
K1 = 40% work during semester laboratory
K2 = 60% practical exam
F. INTERNATIONAL COOPERATION
1. Technical University of Munich
2. University of Trento (Italy)
SYLLABUS
DIGITAL ELECTRONICS
ENGINEERING FACULTY
FIELD / Specialization: INFORMATION TECHNOLOGY
Year of study: I
Semester II
A. COURSE OBJECTIVES
Digital Electronics Technology is a course of study in applied digital logic that
encompasses the design and application of nelectronic circuits and devices found in video
games, watches, calculators, digital cameras, and thousands of other devices. Instruction
includes the application of engineering and scientific principles as well as the use of
Boolean algebra to solve design problems. Using computer software that reflects current
industry standards, activities should provide opportunities for students to design
construct, test, and analyze simple and complex digital circuits.
Learning outcomes
On successful completing this module, students will be able to :
¾ analyse simple combinational logic circuits, using standard logic gates;
¾ use Boolean algebra and related techniques to simplify logical expressions;
¾ Use the binary number system to carry out basic arithmetic operations, and to
implement these operations using digital circuits;
¾ Develop solutions to specified requirements using processor systems
B. COURSE CONTENT
1.Boolean algebra elements:
Axioms and rules of calculation of Boole algebra
ƒ Algebraic expression and representation of Boolean functions.
ƒ Minimize Boolean functions
2. Analysis of stochastic processes:
Probability theory, random variables
ƒ Sums and limits of random variable sequences
ƒ Time and frequency domain, modeling of continuous and discrete random signals,
least-squares estimation
3.High-Speed Electronic Devices
ƒ Compound semiconductors, heterojunctions and their application to electronic
ƒ Opto-electronic devices such as HBTs, MODFETs, resonant tunnel transistors,
injection lasers, detectors and modulators
4. Combinational logic circuits.
ƒ Decoding.
ƒ Memory ROM, PROM, REPROM. Extensions.
5. Sequential logic circuits.
ƒ CBB-SR asynchronous, synchronous and Master-Slave
ƒ Latch's addressable.
ƒ RAM.
ƒ CBB-D Master-Slave. Registers. CBB-T.
ƒ CBB-J asynchronous, synchronous and Master-Slave. Count.
6. Advanced topics in semiconductor devices
C. LABORATORY:
1.Basic logic gates
2. Encoder and decoder study
3.Topics of current interest in the field of solid state electron devices
4. Boolean Algebra Applications
5.CBB-D asynchronous and synchronous
6. Counters study
7. Applications
BIBLIOGRAPHY
1. R. J. Tocci, DIGITAL SYSTEMS. Principles and Applications; Prentice Hall, 2002
2. J. F. Wakerly, DIGITAL DESIGN. Principles and Practices; Prentice Hall, 2000
3. Stefan, Gh., “Circuite integrate digitale”, Editura DENIX, Bucuresti, 1993;
4. Sztojanov, I., s.a., “De la poarta TTL la microprocesor”, Seria "Electronica aplicata",
Ed. Tehnica, Buc., 1987;
5. Maican, S., “Sisteme numerice cu circuite integrate - culegere de probleme, Ed.
Tehnica, Buc., 1980;
6. Charles H. Roth. “Fundamentals of Logic Design”, Thomson Publication Company,
2003.
ASSESSMENT
Written examination with three subjects: two of theory and a problem.
The final mark consists of the exam mark ratio of 2 / 3 and note from the laboratory to
the share of one third of the final mark.
F. INTERNATIONAL COOPERATION
1.University of
Massachusetts: Digital Logic Design;
2. Dublin City University: Digital Electronics;
3. University of Salford: Digital Electronics and Computer Science.
SYLLABUS
COMPUTER SYSTEMS ARCHITECTURE
ENGINEERING FACULTY
FIELD / Specialization: INFORMATION TECHNOLOGY
Year of study: I
Semester II
A. COURSE OBJECTIVES
The course seeks acquisition by students of the mechanisms of functioning and
structure of the architecture of computing components. It also aims at highlighting the
performance gap between functional parts of the computer to search for optimum use.
Learning outcomes
At the end of the course, students will be able to:
¾ Explain and demonstrate the concept of top down approach
¾ Make a summary on basic operation and state the significant components in
computer.
¾ Explain and demonstrate the basic concept of computer organization and
computer architecture.
B. COURSE CONTENT
1. The computer system
ƒ Computer Components:
ƒ Computer function, Interconnection Structures Interconnection, PCI.
ƒ Internal Memory: Computer Memory System Overview, Semiconductor Main
memory,Cache Memory, Advanced DRAM Organization.
ƒ Input / Output: External Devices, I/O Modules, Programmed I/ODirect Memory
Access, I/O Channels and Producers, The External Interface.
2. Summary devices and subtraction
3. Summary devices binary multiplication
ƒ Characteristics of the computer implementation of binary multiplication
operation
ƒ Summary of device sequential multiplication of numbers represented in signmagnitude binary
ƒ
Summary of device sequential multiplication of numbers represented in binary
complement method J. Robertson
ƒ Summary of sequential device propagating complement binary numbers
represented in two after the procedure A. Booth
ƒ Combinational array structures for binary multiplication
4. Synthesis of binary devices division
ƒ Characteristics of implementation in computer binary division operation.
Fundamental procedures for binary division
ƒ Summary of device sharing sequence binary integers without restoring the
balance method
ƒ Combinational array structure for the division 4.4. Dividing binary iterative
procedures
ƒ Speeding up the operation of binary division
5. Organization of data processing units
ƒ Organization units in fixed-point arithmetic and logic
ƒ Organizing the floating point arithmetic units
ƒ CPU Arithmetic
C. LABORATORY
1. Representation of information in computer. Sign-magnitude binary Assembly, a
complement, supplement
2. Representation in binary floating point numbers in IEEE 754 formats and IBM S 360 /
370
3. VHDL simulation of a binary adder with serial transmission.
4. VHDL simulation of a binary adder-low
5. VHDL simulation of a Carry Lookahead adder
6. VHDL simulation of a Carry Skip adder
7. VHDL simulation of an adder Carry Select
8. VHDL simulation of a BCD adder
9. VHDL simulation of a combinationa l device binary multiplication
10. VHDL simulation of a binary control units for multiplying by the "paper and pencil"
technique summarized by the delay element "
11. VHDL simulation of a binary control units for multiplying by the "paper and pencil"
technique synthesized using "sequence counter"
12. VHDL simulation of a binary control units for multiplying by Booth's algorithm,
synthesized using the technique "member boards"
13. VHDL simulation of a device sharing binary matrix
D. BIBLIOGRAPHY
1. HENNESSY J., PATTERSON D. - Computer Architecture: A Quantitative Approach,
Morgan Kaufmann, 2 - nd Edition, 2006
2. PATTERSON D., HENNESSY J. - Computer Organization and Design, The
Hardware/ Software Interface, Morgan Kaufmann Publishers, 2 - nd Edition, 2003
3. DUBOIS M., THAKKAR S. – Cache and Interconnect Architectures in
Multiprocessors, Kluwer Academic Publishers, 2004
4. STONE H. - High Performance Computer Architecture, Addison Wesley, 2005
E. PROCEDURE FOR ASSESSMENT
Type of assessment: Final exam
K1 = 70% written examination
K2 = 30% lab work during semester
F. F. INTERNATIONAL COOPERATION
1. Politecnico di Torino, Facolta di Ingegneria (Ingegneria dell'Informazione): Processing
systems of Microprocessors;
2. Technische Universität Hamburg-Harburg: Microsystem Design;
3. University of Michigan: Design of Microprocessor Based Systems.
SYLLABUS
ARTIFICIAL INTELLIGENCE
ENGINEERING FACULTY
FIELD / Specialization: INFORMATION TECHNOLOGY
Year of study: II
Semester II
A. COURSE OBJECTIVES
Artificial Intelligence aims at developing computer applications, which
encompasses perception, reasoning and learning and to provide an in-depth
understanding of major techniques used to simulate intelligence.This course covers
methods for allowing computer based systems (agents) to sense their environment, learn
from experience, plan future actions, and infer new facts from their existing knowledge
Learning Outcomes
The student will develop:an understanding of the scope and methodology of
artificial intelligence through the idea of an intelligent agent.
They will learn how to design an intelligent agent, giving it (the agent) the skills to sense,
act, plan, learn, and reason classification of problem types and recognition of logical
structures.A student will be able to:
¾ Demonstrate understanding of the nature of AI tasks and solutions;
¾ Recognize and apply suitable knowledge representation schemes and AI methods
appropriate to particular problem areas
COURSE CONTENT
1.Intelligent Agents :
ƒ Agents and environments :
ƒ Good behavior
ƒ The nature of environments – structure of agents
2. Learning from observations :
ƒ Knowledge in learning
ƒ Logical formulation of learning − Explanation based
learning − Learning using relevant information − Inductive logic programming −
Statistical learning- Learning with hidden variable − EM algorithm Instance based
learning
3. Communicating, perceiving, acting- uniformed search strategies
4. Problem Solving
ƒ problem solving agents
ƒ example problems
ƒ searching for solutions
5. Neural networks
ƒ Reinforcement learning
ƒ Passive reinforcement learning
ƒ Active reinforcement learning
B. LABORATORY
1. Fuzzy logic:
ƒ Definition of fuzzy set
ƒ Membership function
ƒ Notation of fuzzy set
ƒ Operations of fuzzy set
ƒ Fuzzy number and operations
ƒ Extension principle
ƒ Fuzzy rule
ƒ Fuzzy control
2.Production system
ƒ Production system
Inference engine
ƒ Knowledge base
ƒ Pattern matching
ƒ Forward inference
3. Machine translation
4. Working memory
5.Conflict resolution
BIBLIOGRAPHY
1. Toth-Taşcău M., Cinematica şi dinamica roboţilor inteligenţi, Editura Politehnica
Timişoara, 2001
2. D.Drăgulescu, M.Toth-Taşcău, Planificarea şi generarea mişcării roboţilor, Ed.
Orizonturi Universitare, Timişoara, 2002, ISBN 973-8391-27-X
3. D.Drăgulescu, Dan Iosif, M.Toth-Taşcău, Planificarea mişcării roboţilor prin vedere
artificială, Ed. Tehnică, 2003, Bucureşti, ISBN 973-31-2133-9
4. Slavici, Inteligenta Artificiala, Editura Fundatiei Ioan Slavici,Timisoara 2009
E. ASSESSMENT
K1 = 70% final examination, two written topics and a case study
K2 = 30% class participation
F. INTERNATIONAL COOPERATION
1. Politecnico di Torino, Facolta di Ingegneria (Ingegneria dell'Informazione):
Processing systems of Microprocessors
2. Technische Universität Hamburg-Harburg: Microsystem Design;
3. University of Michigan: Design of Microprocessor Based Systems.
SYLLABUS
OPERATING SYSTEMS
ENGINEERING FACULTY
FIELD / Specialization: INFORMATION TECHNOLOGY
Year of study: IV
Semester I
COURSE GOAL
Theoretical understanding of operating systems, knowledge of the role and
functions which have components operating systems Understanding interactions between
user and operating system and the operating system and hardware, the theoretical
illustration in current operating systems (Linux , Windows XP/2003).
Using the Linux operating system and Windows XP/2003, implementation of operating
system components and implementations obtained using algorithms to assess the diverse
use ,development of applications using system calls.
Learning outcomes:
Upon successful completion of this course, the student shall be able to:
¾ exhibit familiarity with the fundamental concepts of operating systems;
¾ exhibit competence in recognizing operating systems features and issues; and
¾ apply a mature understanding of operating system design and how it impacts
application systems design and performance.
CONTENT
1. Systems- general view
ƒ Mainframe Systems -Multiprocessor Systems
ƒ Distributed Systems – Clustered Systems - Real Time Systems
ƒ Hardware Protection – System Components – Handheld Systems
ƒ Operating System Services – System Calls – System Programs
2. Visual Machines - System Design and Implementation
3. System Model
ƒ Deadlock Characterization – Methods for handling Deadlocks –Deadlock
ƒ Prevention – Deadlock avoidance
ƒ Threading issues
5.CPU Scheduling
ƒ Basic Concepts – Scheduling Criteria – Scheduling Algorithms
ƒ Processor Scheduling – Real Time Scheduling
ƒ The Critical-Section Problem – Synchronization Hardware
ƒ Semaphores – Classic problems of Synchronization – Critical regions
ƒ Monito
B. LABORATORY
1. Mass Storage Structure
ƒ Physical characteristics & performance determinants of disk Technology
ƒ Connecting disks and processors
ƒ Disk scheduling
ƒ Different algorithms with their pros & cons
ƒ Overcoming disk failures by the use of RAID-technology
ƒ General idea
ƒ Different levels of protection
2. I/O Systems
ƒ Transforming application-level commands into device operations
ƒ Analyze the steps necessary & point out major OS tasks
ƒ Many details on OS implementation of I/O interface
ƒ Ports, polling, interrupts, DMA, device drivers, kernel I/OStructure
ƒ Show how interrupt handling is done in the OS!
ƒ Why several levels (priorities), masking, etc.?
ƒ Blocking vs. non-blocking vs. asynchronous I/O
ƒ Give an example, show principal steps of interaction between
user process and OS components
3. Memory management
ƒ Memory partitioning
ƒ Swapping
ƒ paging
ƒ segmentation
ƒ virtual memory - Concepts, Overlays, Demand paging, Performance of demand
paging
ƒ Allocation algorithms
BIOGRAPHY
1. Chirilă B., „Îndrumător de laborator. Structuri de date şi algoritmi de operare”, Ed.
Fundaţiei „Ioan Slavici”, Timişoara, 2009
2. A. S. Tanenbaum: Modern Operating Systems - Prentice Hali, 2006.
3. U. Vahalia: Unix Internals. The New frontiers - Prentice Hali, 2004.
4. I. A. Silberschatz, J. Peterson, P. Galvin: Operating System Concepts - Addison Wesley,
2005.
5. W.Stallings:”Operating Systems”, ed.4, Prentice Hall, 2004.
ASSESSMENT
Type of assessment: exam at the end of semester
K1 = 70% final exam
K2 = 30% activity during the year
F. INTERNATIONAL COOPERATION
Stanford University
University of Cambridge
University of Massachusetts
SYLLABUS
SOFTWARE ENGINEERING
ENGINEERING FACULTY
FIELD / Specialization: INFORMATION TECHNOLOGY
Year of study: IV
Semester II
COURSE OBJECTIVES
To cover Requirements Analysis, including use cases, traditional requirements gathering
techniques, and user interface prototypes as a tool for obtaining.
Experience the application of formal specifications, software modeling and development
tools, in a collaborative team environment, toward large-scale software development.
Learning Outcomes:
At the end of the course, the student is able to:
¾ Describe principles, concepts and practice of software engineering.
¾ Explain the methods and processes of constructing the different types of software
systems.
¾ Apply techniques and tools of software engineering within the context of
systematic construction of quality software
B. COURSE CONTENT
1. Introduction to Software Engineering
2. Software Processes
3. Defining requirements for a software product
4. Source Code Management
5. Specification requirements: formal and informal methods
6. Elements of algebraic specifications
7. Software Design: Object-oriented design.
8. Competing systems design, distributed and real time.
9. Modeling the system architecture
C. LABORATORY
1.User interface design.
2. Programming techniques for large systems.
3. Verification and validation software.
4. Information strategy planning, business area analysis
5. Emergent system properties
6. Software Management: the software lifecycle, functional specification
7.Desining a project using the information provided by the course support
D. BIBLIOGRAPHY
1. Mnerie A., Molnar-Matei F., „Indrumator de laborator.Retele. Sisteme de intrareiesire. Achizitii de date. Calculatoare-echipamente. Hard. Introducere in internet.
Matematici discrete”, Ed. Fundatiei „Ioan Slavici”, Timisoara, 2008
2. A. I. Sommerville: Software Engineering - Addison Wesley, 2003
3. R. S. Pressman: Software Engineering . A Practitimer's Approach, Mc Graw Hill,
2008
4. Bruegge, B&Dutoit, A. (2004), “Object-Oriented Software Engineering Using
UML, Patterns and Java,” Pearson Education International E. ASSESSMENT
E. ASSESMENT
Type of assessment: Exam at end of semester
K1 = 70% written examination
K2 = 30% lab work
F. INTERNATIONAL COOPERATION
Stanford University, University of Cambridge, University of Massachusetts