CSE 544 Special Topics in Software Engineering

walkingceilInternet και Εφαρμογές Web

22 Οκτ 2013 (πριν από 3 χρόνια και 10 μήνες)

71 εμφανίσεις

CSE

5
44

Special Topics in Software Engineering

The course will cover
selected
topics in the following tracks. Students will
participate in presentations,
applications and exercises in various topics.

Theoretical Track

(2 classes


6

hrs)

1.

Basics of
Theory
of Computation

Essential
set theory,
propositional
,

first
-
order

,

higher order

and temporal

logic
s. Formal
theorem
pro
ving
. Finite automat
a and

Turing machines.
C
omputability and complexity,

P
-

and

NP
-
completeness
.

Practical applications.


2.

Advanced Alg
orithms


Heuristics:
Divide
-
and
-
conquer algorithms.
Hill
-
climbing,
g
reedy algorithms.
Travelling
salesman problem. Tree
-
search algorithms: Top
-
down, left
-
to
-
right, pre
-

and post
-
pruning.
Sorting algorithms.
Linear programming
and non
-
linear programming.



3.

Formal Methods in Software Verification and Validation


Propositional, predicate, and temporal
calculus
. Formal systems
, p
rogram verification and
validation. Basics of theorem proving. Resolution,

deduction, and equality reasoning. Formal
specification

environments and applications. Case studies.


Software Development Track

(3 classes


9 hrs)


4.

Programming Language Paradigms

Procedural
, functional, object
-
oriented, declarative programming paradigms.
List and string
-
processing languages. Compiled, inter
preted and virtual machine based execution. Libraries.
Design patterns;
Architectural patterns;
Single
-
thread and multi
-
thread computation styles.



5.

Software
Security
,

Reliability
, Availability, Serviceability

Security concepts in software.
Security hierar
chies
.
Basic

cryptography, hash codes,
public/private keys,
digital signatures.

Secure Socket Layer (SSL)
concepts
.
Database security.
System and application recovery. Transaction processing
, rollback and error recovery in
distributed systems
.
System rel
iability, availability and serviceability measurement and
evaluation.


6.

System Performance Measurement
, Analysis

and Modelling



7.

Multi
-
Core Programming

(MCP)

Introduction. to hyper
-
threading technology and multi
-
core architectures. Parallel processing
conc
epts. System overview of threading.
Examples of MCP
systems
.

Tools for debugging and

performance analysis.



8.

Game Software Development


Introduction and history.
Types of games.
Design theory, designing
and implementing

computer game
s
. Game

development pla
tforms. Developing a simple 2D game in
Java.



9.

Object Oriented 3D Graphics

Requirements for 3D graphics systems software development. Object oriented 3D graphics
design and

implementation using

Java
. Basic concepts and mathematical preliminaries

for 3D
C
omputer Graphics. Introduction to OpenGL programming environment.


10.

Introduction to Robotic
s

Software


General purpose robotics, functional and non
-
functional requirements specification, senses
and
models of
perception, reasoning, decision making, executio
n, testing. Special purpose
robotics software and robotics languages.


Software Development Process Management Track

(2 classes 6 hrs)


11.

Software Development Process Management

Process models, personal and team
software development
processes, process manage
ment,
process maturity models
.


12.

Software Development Standards


13.

Software
Quality
Management



Introduction and history of
quality
measurement in software engineering.
Software quality
management (SQA).
Metrology, measurement theory and basic concepts. IS
O/IEC 15939
schema. ISO/IEC 9126 quality model.


Software
Productivity
Measurement

14.



Productivity model
s
,
development load
estimation model
s
, quality model
s
, benchmarking,
outsourcing, balance score card, implementation of a
productivity
measurement prog
ram
.



Web Applications Track

(1 class


3 hrs)


Advanced Web Application Development


15.

Computer networks for the world wide web, HTTP, HTML. Trends in web application

development. REST application architecture.

XML,

Web services
,

DOM
,
Javascript. Ajax.

Mo
bile and embedded systems.
Semantic web. Pervasive computing.


16.

Web Services


Service
-
oriented architecture

(SOA)
; Standards for Web service description; Web Service
Description language (WSDL); Discovery techniques; Universal Description Discovery and
Int
egration (UDDI); Simple Object Access Protocol (SOAP); Ontologies
,

Web Ontology
Language (OWL)
,

RDF,
Applications of Web services