Your password has been successfully changed!
The entire University of Scranton Course Catalog is available on the University of Scranton website
Looking for a printer friendly version? Click here
Prerequisites: | None |
---|---|
Corequisites: | None |
Credits: | 3cr |
This course introduces students to the concepts, methods, and principles employed by Computer Scientists in problem solving and solution development. This body of knowledge has been successfully adopted by a wide variety of disciplines enabling significant advances in those disciplines. Students will be introduced to this body of knowledge through the analysis of relevant problems and also learn to apply it through the development of computer programs.
Prerequisites: | None |
---|---|
Corequisites: | None |
Credits: | 3cr |
This course presents foundational concepts and surveys the past, present and future of computing and information technology with an emphasis on the seminal ideas, concepts, inventions and innovations that fuel the Digital Revolution. The sub-disciplines of computing are identified and discussed relative to each other. This course is designed to foster knowledge and abilities needed for gathering, evaluating and disseminating information with an emphasis on digital technology and oral communication. (Credits may not be earned for both CMPS 112 and IT 112.)
Prerequisites: | None |
---|---|
Corequisites: | CMPS 134L |
Credits: | 3cr |
An introduction to programming concepts and methodology using an object-oriented programming language (currently Java). Topics include problem analysis, abstraction, modularization, the development and use of algorithms, reuse, and the use of programming constructs including data types, classes, control structures, and methods.
Prerequisites: | CMPS 134 (with departmental permission) |
---|---|
Corequisites: | CMPS 134 |
Credits: | 1cr |
Programming-related activities are undertaken that apply essential concepts from CMPS 134, including problem decomposition, modularization, flow of control, scoping, object-orientation, and algorithm development.
Prerequisites: | CMPS 134 |
---|---|
Corequisites: | None |
Credits: | 3cr |
For non-computing majors who want more object-oriented programming experience. Includes data structures, file processing, graphical user interfaces and event-driven programming. May not be used to satisfy the requirements of CMPS or CIS. May not be taken by a student who has credit for CMPS 144.
Prerequisites: | CMPS 134, CMPS 134L, and either MATH 114 or MATH 142 |
---|---|
Corequisites: | CMPS 144L |
Credits: | 3cr |
This course emphasizes object-oriented software development, addressing both software engineering and programming. Topics include modularization, abstraction, encapsulation/information hiding, software reuse, software testing, classic data abstractions (e.g., lists, trees) and algorithms (e.g., sorting, searching), recursion, program correctness, and basic algorithm analysis.
Prerequisites: | CMPS 134 and CMPS 134L |
---|---|
Corequisites: | CMPS 144 is required as a co-requisite, or as a prerequisite with departmental permission. |
Credits: | 1cr |
Activities are undertaken that apply programming concepts form CMPS 144, including object-orientation, inheritance, polymorphism, iterators, generics, algorithms involving various container structures (e.g., stacks, queues, lists, trees, graphs), analysis of algorithms, and concurrency.
Prerequisites: | C/IL 102/102L or its equivalent |
---|---|
Corequisites: | None |
Credits: | 3cr |
An introduction to the field of computer forensics emphasizing the collection and analysis of both persistent and volatile data from computer systems, networks, and storage media in a manner that is admissible in a court of law. May not be used as a major elective for any major in the Computing Sciences Department.
Prerequisites: | None |
---|---|
Corequisites: | CMPS 134 |
Credits: | 0.5cr |
CMPS 213 is offered each Fall Semester. Each semester a minimum of five meetings are held where important, emerging, or interesting topics in computing are presented and discussed. The material comes from a variety of sources including, but not limited to, faculty, alumni, invited speakers, students, and professional webinars and videos.
Prerequisites: | None |
---|---|
Corequisites: | CMPS 134 |
Credits: | 0.5cr |
CMPS 214 is offered each Spring Semester. Each semester a minimum of five meetings are held where important, emerging, or interesting topics in computing are presented and discussed. The material comes from a variety of sources including, but not limited to, faculty, alumni, invited speakers, students, and professional webinars and videos.
Prerequisites: | CMPS 144 |
---|---|
Corequisites: | None |
Credits: | 3cr |
An examination of the issues of data representation, algorithm structure, and encapsulation as they pertain to the development of object-oriented software. Abstract data types studied include stacks, queues, binary trees, n-ary trees, and graphs. Various representation alternatives are analyzed and compared, trade-offs frequently encountered by software developers are discussed.
Prerequisites: | CMPS 144 |
---|---|
Corequisites: | None |
Credits: | 3cr |
An introductory study of the organization and architecture of computers through an exploration of various virtual machines. Programming at the assembly-language level and interfacing with software components (primarily written in C). Topics include representation of data and instructions, computer arithmetic, memory hierarchies, instruction sets, addressing modes, digital logic, microprogramming, pipelining, and parallel processing.
Prerequisites: | CMPS 240 |
---|---|
Corequisites: | None |
Credits: | 3cr |
An examination of the fundamental models and concepts of computation – automata, formal languages, and grammars – and how they are related. Church-Turing thesis; recursive and recursively enumerable sets; unsolvable problems; complexity of algorithms; Chomsky hierarchy.
Prerequisites: | C/IL 102/102L or equivalent, COMM 329, IT 354 |
---|---|
Corequisites: | None |
Credits: | 3cr |
This course covers the fundamental aspects of developing and maintaining Web sites. It provides a thorough coverage of the structure and elements of HTML and JavaScript necessary to create commercial-quality Web sites. Brief coverage will also be given to graphic design and multimedia content. Emphasis will be placed on client-side development although server-side issues will be considered. May not be used as part of any major in the Computing Sciences Department. Cannot be taken by a student who has credit for IT 120 or CMPS 356.
Prerequisites: | None |
---|---|
Corequisites: | CMPS 213 |
Credits: | 0.5cr |
CMPS 313 is offered each Fall Semester. Each semester a minimum of five meetings are held where important, emerging, or interesting topics in computing are presented and discussed. The material comes from a variety of sources including, but not limited to, faculty, alumni, invited speakers, students, and professional webinars and videos.
Prerequisites: | None |
---|---|
Corequisites: | CMPS 214 |
Credits: | 0.5cr |
CMPS 314 is offered each Spring Semester. Each semester a minimum of five meetings are held where important, emerging, or interesting topics in computing are presented and discussed. The material comes from a variety of sources including, but not limited to, faculty, alumni, invited speakers, students, and professional webinars and videos.
Prerequisites: | C/IL 102/102L/C/IL 104 or CMPS 134 |
---|---|
Corequisites: | None |
Credits: | 3cr |
Introduction to concepts and practices of information processing. Computerized system requirements and techniques in providing appropriate decision-making information to management.
Prerequisites: | CMPS 330 |
---|---|
Corequisites: | None |
Credits: | 3cr |
A study of system-development methodology and the role played by the systems analyst in developing user-accepted information systems.
Prerequisites: | CMPS 144 required, CMPS 240 recommended |
---|---|
Corequisites: | None |
Credits: | 3cr |
File structures concepts and file processing applications. Topics include file maintenance and storage management; file searching, sorting, and merging; consequential processing; index structures; B-trees; hash tables; indexed sequential files; database concepts.
Prerequisites: | CMPS 340 required, CMPS 240 recommended |
---|---|
Corequisites: | None |
Credits: | 3cr |
An introduction to database management systems with an emphasis on relational database design and applications. It uses an appropriate database package such as ORACLE or PostgreSQL.
Prerequisites: | CMPS 240 |
---|---|
Corequisites: | None |
Credits: | 3cr |
A study of programming languages from both the theoretical and practical perspectives. A survey of major and developing paradigms and languages is undertaken which includes use of specific languages to broaden the student’s experience. Implementation is studied through an introduction to language translation along with a study of run-time models and interfaces with virtual machines.
Prerequisites: | CMPS 250 |
---|---|
Corequisites: | None |
Credits: | 3cr |
A study of the logical structure of computer-system organization including a survey of logic and design with an emphasis on functional components. Topics include instruction sets, hard-wired and microprogrammed control-unit designs, memory systems (caches and virtual memory), I/O systems (interrupts, DMA, and channels). Overview and examples of alternative and advanced computer architectures (pipeline, array processors, multiprocessors).
Prerequisites: | CMPS 240, CMPS 250 |
---|---|
Corequisites: | None |
Credits: | 3cr |
An introduction to the principles of operating systems. Topics include operating system structure, process management, scheduling and dispatching, process synchronization and interprocess communication, memory management, virtual memory, device management, I/O, and file systems.
Prerequisites: | CMPS 352 |
---|---|
Corequisites: | None |
Credits: | 3cr |
A study of data communication and networking concepts, including distributed-system architectures, electronic interfaces, data-transmission, data link protocols, terminal networks, computer communication, public-data networks, and local-area networks.
Prerequisites: | CMPS 352 |
---|---|
Corequisites: | None |
Credits: | 3cr |
This course deals with the development of software for mobile devices such as smartphones and tablets. Topics include, but are not limited to, graphical user interface design, event-driven software model, resource management, interfacing with sensors, concurrency, database access, and networking.
Prerequisites: | CMPS 240, HTML experience to the level where the students are capable of developing their own Web page |
---|---|
Corequisites: | None |
Credits: | 3cr |
This course covers all aspects of programming on the World Wide Web. This includes the presentation of HTML, Java, JavaScript and CGI. Topics include advanced HTML (maps, forms, etc.) client-server programming basics as they relate to the Web, Java machine concepts, Java/JavaScript similarities and differences, server-side programming, GIF animations, Web programming resources and environments. (Students may not earn credit for CMPS 356 and IT 356.)
Prerequisites: | CMPS 352 |
---|---|
Corequisites: | None |
Credits: | 3cr |
A study of issues related to systems that interface with the physical world and must meet the timing constraints imposed on them. Topics include: real-time hardware architecture, real-time operating systems, invoking and managing threads and processes, interprocess communications and synchronization, manipulating process priority, concurrent programming, exception handling, software safety, reliability, and fault tolerance.
Prerequisites: | CMPS 240 |
---|---|
Corequisites: | None |
Credits: | 3cr |
A survey of methods for designing and analyzing algorithms. Classic algorithms from graph theory, combinatorics and text processing are examined, as are traditional design strategies such as divide-and-conquer, backtracking and dynamic programming. Other topics include NP-completeness and parallel algorithms.
Prerequisites: | CMPS 134, MATH 222 |
---|---|
Corequisites: | None |
Credits: | 3cr |
A survey of numerical methods for solving equations, integration, differentiation, interpolation, differential equations, and linear algebra, and the analysis of error.
Prerequisites: | CMPS 260 |
---|---|
Corequisites: | None |
Credits: | 3cr |
The development of a theoretical notion of computability and its relationship to Turing computability and recursive functions; the study of the relationships between automata, formal languages and grammars.
Prerequisites: | CMPS 240 |
---|---|
Corequisites: | CMPS 250 |
Credits: | 3cr |
An introduction to the hardware, software and techniques used to generate graphical representations by computer. Two and three dimensional concepts, algorithms and architectures are studied. An essential aspect of the course involves the development of programs utilizing appropriate APIs (currently OpenGL is emphasized) as a means of developing expertise. Advanced topics may be pursued as appropriate.
Prerequisites: | CMPS 240 |
---|---|
Corequisites: | None |
Credits: | 3cr |
Problem solving using expert systems, heuristic programming techniques, tree speed-up techniques, and learning mechanisms.
Prerequisites: | CMPS 240 |
---|---|
Corequisites: | None |
Credits: | 3cr |
An introduction to the concepts of Software Engineering. Stress is placed upon formal models for the design and development of high-quality software. Topics include: project planning, requirements analysis, system design, program design, program implementation, program testing, system testing, system delivery, and maintenance. A group project will be included.
Prerequisites: | CMPS 136 or CMPS 144 |
---|---|
Corequisites: | None |
Credits: | 3cr |
Some common applications using a database with a visual interface (perhaps Web based) can be successfully treated using Rapid Prototyping (a.k.a. Rapid Application Development). This course will cover the synergy of combining a visual language and a relational database employing rigorous design techniques.
Prerequisites: | As published |
---|---|
Corequisites: | None |
Credits: | 3cr |
Some recent courses have covered Rapid Prototyping, Real-Time Systems, and Parallel Computing. A syllabus including prerequisites is published prior to the registration period for the course.
Prerequisites: | Departmental permission |
---|---|
Corequisites: | None |
Credits: | 3cr |
A research project carried out by a student under the direction of a faculty member in the department. The results will be prepared in a form suitable for publication. Reader fee.
Prerequisites: | None |
---|---|
Corequisites: | CMPS 313 |
Credits: | 0.5cr |
CMPS 413 is offered each Fall Semester. Each semester a minimum of five meetings are held where important, emerging, or interesting topics in computing are presented and discussed. The material comes from a variety of sources including, but not limited to, faculty, alumni, invited speakers, students, and professional webinars and videos.
Prerequisites: | None |
---|---|
Corequisites: | CMPS 314 |
Credits: | 0.5cr |
CMPS 414 is offered each Spring Semester. Each semester a minimum of five meetings are held where important, emerging, or interesting topics in computing are presented and discussed. The material comes from a variety of sources including, but not limited to, faculty, alumni, invited speakers, students, and professional webinars and videos.
Prerequisites: | CMPS 344 |
---|---|
Corequisites: | None |
Credits: | 3cr |
Study of techniques and problems involved in constructing compilers. Lexical analysis, syntax analysis, semantic analysis, symbol-table management, code generation, code optimization.
Prerequisites: | Departmental permission |
---|---|
Corequisites: | None |
Credits: | 3cr |
An extensive job experience in computing which carries academic credit. Prior approval is required; information is available on the department Web site.
Prerequisites: | Senior standing, departmental permission |
---|---|
Corequisites: | None |
Credits: | 3cr |
In this course, students prepare and present individual computer projects to be evaluated by the instructor and their fellow students.
The entire University of Scranton Course Catalog is available on the University of Scranton website.
Pre-requisites: | CMPS 134 (with departmental permission) |
---|---|
Co-requisites: | CMPS 134 |
Credits: | 1cr |
Pre-requisites: | CMPS 134, CMPS 134L, and either MATH 114 or MATH 142 |
---|---|
Co-requisites: | CMPS 144L |
Credits: | 3cr |
Pre-requisites: | CMPS 134 and CMPS 134L |
---|---|
Co-requisites: | CMPS 144 is required as a co-requisite, or as a prerequisite with departmental permission. |
Credits: | 1cr |
Pre-requisites: | C/IL 102/102L or equivalent, COMM 329, IT 354 |
---|---|
Co-requisites: | None |
Credits: | 3cr |
Pre-requisites: | C/IL 102/102L/C/IL 104 or CMPS 134 |
---|---|
Co-requisites: | None |
Credits: | 3cr |
Pre-requisites: | CMPS 144 required, CMPS 240 recommended |
---|---|
Co-requisites: | None |
Credits: | 3cr |
Pre-requisites: | CMPS 340 required, CMPS 240 recommended |
---|---|
Co-requisites: | None |
Credits: | 3cr |
Pre-requisites: | CMPS 240, HTML experience to the level where the students are capable of developing their own Web page |
---|---|
Co-requisites: | None |
Credits: | 3cr |
Pre-requisites: | Senior standing, departmental permission |
---|---|
Co-requisites: | None |
Credits: | 3cr |