2002-2003 - The University of Scranton
2002-2003 - The University of Scranton
2002-2003 - The University of Scranton
You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
CMPS 340 Staff<br />
File Processing 4 credits<br />
(Prerequisites: CMPS 144 required, CMPS<br />
240 recommended.) File-structures concepts<br />
and file-processing applications<br />
using an appropriate programming language<br />
(currently COBOL). Topics include<br />
file maintenance and storage management;<br />
file searching, sorting, and merging; cosequential<br />
processing; index structures; Btrees;<br />
hash tables; indexed sequential files;<br />
database concepts.<br />
CMPS 341 Staff<br />
Database Systems 3 credits<br />
(Prerequisites: CMPS 340 required, CMPS<br />
240 recommended) An introduction to<br />
database management systems with an<br />
emphasis on relational database design<br />
and applications. It uses an appropriate<br />
database package such as ORACLE or<br />
PostgreSQL.<br />
CMPS 344 Staff<br />
Programming Languages 3 credits<br />
(Prerequisite: CMPS 240) A study <strong>of</strong> programming<br />
languages from both the theoretical<br />
and practical perspectives. <strong>The</strong> evolution<br />
<strong>of</strong> languages is reviewed in order to<br />
know the design considerations <strong>of</strong> the past<br />
and recognize those <strong>of</strong> the present. A survey<br />
<strong>of</strong> major and developing paradigms<br />
and languages is undertaken which<br />
includes use <strong>of</strong> specific languages to<br />
broaden the student’s experience.<br />
Implementation is studied through an<br />
introduction to language translation along<br />
with a study <strong>of</strong> run-time models and interfaces<br />
with virtual machines.<br />
CMPS 350 Staff<br />
Computer Architecture 3 credits<br />
(Prerequisite: CMPS 250) A study <strong>of</strong> the<br />
logical structure <strong>of</strong> computer-system organization<br />
including a survey <strong>of</strong> logic and<br />
design with an emphasis on functional<br />
components. Topics include instruction<br />
sets, hard-wired and micro-programmed<br />
control-unit designs, memory systems<br />
(caches and virtual memory), I/O systems<br />
(interrupts, DMA, and channels).<br />
Overview and examples <strong>of</strong> alternative and<br />
advanced computer architectures<br />
(pipeline, array processors, multiprocessors).<br />
CMPS 352 Staff<br />
Operating Systems 3 credits<br />
(Prerequisites: CMPS 240, CMPS 250) An<br />
introduction to the principles <strong>of</strong> operating<br />
systems. Topics include operating system<br />
structure, process management, scheduling<br />
113<br />
and dispatching, process synchronization<br />
and interprocess communication, memory<br />
management, virtual memory, device management,<br />
I/O, and file systems.<br />
CMPS 354 Staff<br />
Data Communications 3 credits<br />
and Networks<br />
(Prerequisite: CMPS 352) A study <strong>of</strong> data<br />
communication and networking concepts,<br />
including distributed-system architectures,<br />
electronic interfaces, data-transmission,<br />
data link protocols, terminal networks,<br />
computer communication, public-data networks,<br />
and local-area networks.<br />
CMPS 356 Staff<br />
Web Programming 3 credits<br />
(Prerequisites: CMPS 240, HTML experience<br />
to the level where the students are<br />
capable <strong>of</strong> developing their own web<br />
page) This course covers all aspects <strong>of</strong><br />
programming on the World Wide web.<br />
This includes the presentation <strong>of</strong> HTML,<br />
Java, JavaScript and CGI. Topics include<br />
advanced HTML (maps, forms, etc.)<br />
client-server programming basics as they<br />
relate to the web, Java machine concepts,<br />
Java/JavaScript similarities and differences,<br />
server-side programming, GIF animations,<br />
web programming resources and<br />
environments.<br />
CMPS 358 Staff<br />
Real-Tme Systems 3 credits<br />
(Prerequisite: CMPS 352) This course<br />
covers systems which must interface with<br />
the physical world in real-time and whose<br />
correctness depends on not only the logical<br />
computation but also the time at which<br />
the results are produced. Topics include:<br />
real-time hardware architectures, real-time<br />
operating systems, organization <strong>of</strong> realtime<br />
programs, invoking and managing<br />
tasks and processes, coordination and<br />
communications among real-time processes,<br />
manipulating task priority, concurrent<br />
programming, exception handling, s<strong>of</strong>tware<br />
safety, reliability, and fault tolerance.<br />
CMPS 360 Staff<br />
Analysis <strong>of</strong> Algorithms 3 credits<br />
(Prerequisite: CMPS 240) A survey <strong>of</strong><br />
methods for designing and analyzing algorithms.<br />
Classic algorithms from graph theory,<br />
combinatorics and text processing are<br />
examined, as are traditional design strategies<br />
such as divide-and-conquer, backtracking<br />
and dynamic programming. Other<br />
topics include NP-completeness and parallel<br />
algorithms.