Brochure Contents
A Message from the Undergraduate Coordinator
University Core/General Education Requirements
Major Requirements
The Computer Science Project Sequence
B. Supporting Courses in Science and Mathematics
C. Additional Writing Requirement
D. Science Elective / Quantitative Elective Courses
Descriptions of Courses
A Message from the Undergraduate Coordinator
Welcome to the Computer Science Department of the University of Massachusetts Lowell. We aim to offer the best undergraduate program in Computer Science in the region. We are working to achieve this goal in the following ways:
We realize the importance of excellent classroom teaching
to our students.
Our faculty includes experts in important cutting-edge
technologies such as multimedia, graphics, scientific visualization, database systems,
data communications, robotics, human factors, and software-development methodologies.
We have an excellent record for placing students in a
competitive job market.
Because many computer scientists pursue graduate studies,
we prepare our undergraduates with the fundamentals needed for graduate work.
Every computer science major has a faculty advisor. Feel free to see him or her or me should you need advice or assistance during your stay with us. I wish you many successes in your career at Lowell.
Jesse M. Heines, Undergraduate Coordinator
Computer science is the study of the design and use of computer systems. One goal of the Computer Science Department is to provide the student with the tools to identify those problems that are best solved by means of a computer and to design and implement effective, economical, and creative solutions.
The curriculum's required courses give the student a strong foundation in both the software and hardware aspects of computing, as well as the mathematics and science that underlie the discipline. The electives in the later years allow the student to study more deeply some particular area of computer science.
Graduates of the Department of Computer Science are well trained in systems software design and implementation and have found ready employment in local companies. The Departments courses and programs continue to respond to changing requirements for professional employment in computer science.
It is the responsibility of the student to understand and fulfill University, College, and Department requirements. These requirements are described in the University catalog and other documents.
University General Education Requirements
A. Old General Education Requirements (pre-2000)
Computer science majors automatically satisfy the Mathematics and Sciences parts of the pre-2000 General Education Requirement. The remaining requirements are as follows:
| College Writing | 6 credits |
| Literature | 3 credits |
| Historical Studies | 3 credits |
| Aesthetics | 3 credits |
| Behavioral and Social Sciences | 6 credits |
| Values, Concepts, and Choice | 3 credits |
In the course grid, the College Writing credits appear in the freshman year. The remaining 18 credits in the General Education Requirement are denoted "GER course."
B. General Education 2000 Requirements
For a general description of the current General Education requirement, please see
For a list of courses that currently satisfy the General Education requirements, please see
Computer science majors typically satisfy the new Gen Ed requirements by
| 91.101 | Computing I | 4 |
| 91.102 | Computing II | 4 |
| 91.201 | Computing III | 4 |
| 91.203 | Computer Organization & Assembly Language | 4 |
| 91.204 | Computing IV | 3 |
| 91.301 | Organization of Programming Languages | 3 |
| 91.304 | Foundations of Computer Science | 3 |
| 91.305 | Computer Architecture | 3 |
| 91.308 | Introduction to Operating Systems | 3 |
| 91.404 | Analysis of Algorithms | 3 |
| Computer Science Project Sequence | 6 | |
| Computer Science Elective | 3 |
All Computer Science majors must take a one- or two-semester project course from an approved department list. Students who take an approved one-semester project course such as Compiler Writing must take two Computer Science electives; otherwise, one is needed. Students may not elect more than a total of 6 credits from any combination of the following: 91.401, 91.402, 91.460, and 91.490. Current project course sequences include
| 91.309 | Database I |
| 91.310 | Database II |
| 91.401 | Software Project Lab I |
| 91.402 | Software Project Lab II |
| 91.406 | Introduction to Compiler Writing |
| Computer Science Elective |
| 91.411 | Software Engineering I |
| 91.412 | Software Engineering II |
| 91.413 | Data Communications I |
| 91.414 | Data Communications II |
| 91.413 | Data Communications I |
| 91.561 | Computer Security I |
| 91.420 | Artificial Intelligence |
| 91.421 | Machine Learning and Data Mining |
| 91.427 | Graphics I |
| 91.428 | Graphics II |
| 91.450 | Robotics I |
| 91.451 | Robotics II |
| 91.461 | GUI Programming I |
| 91.462 | GUI Programming II |
| 91.561 | Computer Security I |
| 91.562 | Computer Security II |
Because this list is subject to revision, students should check with their advisors for the latest information.
Some project sequences are not offered every school year. Thus, you should take the second course of a project sequence the semester after you take the first course of that sequence.
Computer science electives appear in the "Computer Science Electives" section of this brochure. Most 500-level computer science courses can also be used as computer science electives. For example, undergraduate computer science majors are often qualified to take 91.502, 91.515, 91.521, 91.522, 91.538, 91.539, 91.540, 91.541, 91.543, or 91.546.
B. Supporting Courses in Science and Mathematics
| 92.131 | Calculus I | 4 |
| 92.132 | Calculus II | 4 |
| 95.141 | Physics I & Lab | 4 |
| 95.144 | Physics II & Lab | 4 |
| 92.231 | Calculus III | 4 |
| 92.321 | Discrete Structures I | 3 |
| 92.322 | Discrete Structures II | 3 |
| 92.386 | Probability and Statistics I | 3 |
| 16.265 | Logic Design | 3 |
C. Additional Writing Requirement
If you satisfy the writing requirement in the spring of 1998 or later, you do so with the course 42.220, Communications for Software Developers
Before spring of 1998, the writing requirement could be satisfied by other courses; for details see the Computer Science Dept. Policy Statement "The Writing Requirement."
D. Science Elective / Quantitative Elective Courses
Each student who became a computer science major before September 2005 must take two 3-credit courses in quantitative areas outside of Computer Science or Pure Mathematics. Courses in Applied Mathematics, Engineering, the Sciences and other areas of an advanced quantitative content satisfy this requirement. In the social sciences, courses that have calculus or mathematical statistics as prerequisites satisfy this requirement.
More information about this requirement can be found in the Computer Science Dept. Policy Statement "The Quantitative Elective."
Students who become computer science majors in September 2005 and later must instead satisfy a requirement for additional credits in the natural sciences. The details of this requirement can be found in the Computer Science Dept. Policy Statement "Science Electives."
For a complete description of the Ethics Requirement, please see the document The Ethics Requirement.
Courses from any academic department are acceptable as general electives. However, science, mathematics, and engineering courses, and courses with a computing component, if taken after Computing I has been taken, must be at a level higher than that of courses required by the Computer Science program.
For students entering the computer science major in September of 2005 and later, at least one of the general electives must be in a non-technical area, that is, not in the sciences, mathematics, engineering, computer science, and similar technical disciplines.
More information about allowed general electives can be found in the Computer Science Department Policy Statement "General Electives."
G. Total Credits Required for the Degree
Students must take an appropriate course for each slot of the appropriate suggested curriculum. Each course can fill only one slot. Most students accumulate at least 120 credits by filling the required slots. In any case, the University requires 120 credits. (See the document "How Many General Electives Must I Take?")
Beginning with the first semester of the sophomore year, and every semester thereafter, each computer science major must maintain
a cumulative grade point average (GPA) of at least 2.5 in all computer science courses,
including project courses and electives.
a cumulative GPA of at least 2.3 in all courses.
Students who fail to satisfy these requirements are considered to be on probation in the computer science major. Any student on probation will have his or her records reviewed by his or her advisor and may be dropped from the computer science major. Thus, students on probation should meet with their advisors.
The Computer Science Department has a BS/MS degree program. Two advantages of the program are (1) the ability in some cases to count computer science courses for both your BS program and your MS program and (2) being accepted into the MS program without taking the Graduate Record Examination.
To be accepted in this program, you must have good grades and apply in your junior year. There are many rules governing eligibility for the program. Applicable Graduate School rules appear in the 1993-1996 Graduate School Catalog, on page 16. A copy of this catalog may be examined in the CS Office.
There are advantages and disadvantages to getting your Masters degree at the same place you got your BS. If you are interested in the BS/MS program, please discuss it with your academic advisor or other faculty member.
For more information on the BS/MS program, please see the document "The BS/MS Program at Lowell." Policy concerning the BS/MS program is managed by the Graduate School (934-3010) and the CS Graduate Coordinator (not the Undergraduate Coordinator).
How can I become a
computer science major?
See the document "Changing majors."
Who is my advisor?
See the document "Faculty Advisors."
How do I get cleared
for graduation?
You must fill out a Declaration-of-Intent-to-Graduate (DIG) Form and file it with the Undergraduate Coordinator by deadlines published in the University calendar. The calendar is typically at the back of each semesters schedule book. By the time you are a junior, you should periodically check this calendar for due dates for DIG forms.
Can I take computer
science courses offered by Continuing Education?
Not always. See the document "Can I Take Computer Science Courses through Continuing Education?"
Is there a computer
science minor?
Yes. See the document "The Computer Science Minor."
91.101 COMPUTING I 4 credits
Introduction to computing environments; introduction to an integrated development environment; C, C++, or a similar language. Linear data structures; arrays, records, and linked lists. Abstract data types, stacks, and queues. Simple sorting via exchange, selection, and insertion. Basic file I/O. Programming style, documentation, and testing. Ethical and social issues. This course includes extensive laboratory work.
91.102 COMPUTING II 4 credits
Pointers. Lists, stacks, and queues. Binary trees, AVL trees, n-ary trees. Advanced sorting via quicksort, heapsort, etc. Sets and hashing. Characters and strings. Graphs. Advanced file techniques. Recursion. Programming style, documentation, and testing. Ethical and social issues. This course includes extensive laboratory work.
Prerequisite: 91.101.
91.201 COMPUTING III 4 credits
Object-oriented programming. Classes, methods, polymorphism, inheritance. Object-oriented design. C++. UNIX. Ethical and social issues.
Prerequisite: 91.102.
91.203 COMPUTER ORGANIZATION AND ASSEMBLY LANGUAGE 4 credits
The organization and operation of a conventional computer, including principal instruction types, data representation, addressing modes, program control, and I/O. Assembly language programming, including instruction mnemonics, symbolic addresses, assembler directives, system calls, and macros. The usage of text editors, symbolic debuggers, and loaders. The use of pseudocode in guiding structured assembly language programming.
Prerequisite: 91.102.
91.204 COMPUTING IV 3 credits
Development of large software projects. Software engineering principles and practice. Object-oriented analysis and design.. CASE productivity aids. Development techniques for program-translation software, web software, and database systems.
Prerequisite: 91.201
91.301 ORGANIZATION OF PROGRAMMING LANGUAGES 3 credits
Analytical approach to the study of programming languages. Description of the salient features of the imperative, functional, logical, and object-oriented programming paradigms in a suitable meta-language such as Scheme. Topics include iteration, recursion, higher-order functions, types, inheritance, unification, message passing, orders of evaluation, and scope rules. Elementary syntactic and semantic descriptions. Implementation of simple interpreters.
Prerequisites: 91.204.
91.304 FOUNDATIONS OF COMPUTER SCIENCE 3 credits
A survey of the mathematical foundations of Computer Science. Finite automata and regular languages. Stack Acceptors and Context-Free Languages. Turing Machines, recursive and recursively enumerable sets. Decidability. This course involves no computer programming.
Prerequisite: 92.322
91.305 COMPUTER ARCHITECTURE 3 credits
An examination of the basic functional components of a computer system including the CPU, memory systems, and I/O systems. Each of these three areas will be developed in detail with a focus on the system design and component integration. Topics will include CPU control and ALU operation, computer timing, data address and I/O bus activity, addressing model, programmed and DMA I/O, and instruction sets and microcode.
Prerequisites: 91.203, 16.265, 91.102.
91.308 INTRODUCTION TO OPERATING SYSTEMS 3 credits
An introduction to major operating systems and their components. Topics include processes, concurrency and synchronization, deadlock, processor allocation, memory management, I/O devices and file management, and distributed processing. Techniques in operating system design, implementation, and evaluation.
Prerequisite: 91.305.
91.404 ANALYSIS OF ALGORITHMS 3 credits
This course distinguishes between an abstract data type (such as a list, stack, queue, tree, or hash table) and a data structure that represents how the abstract data type is represented and stored in the computer’s memory. Algorithms are studied for manipulating information in a variety of fundamental abstract data types and data structures. Information tasks such as searching, retrieving, inserting, updating, sorting and deleting arise frequently in Computer Science problems that are central to many computer applications. The course focuses on algorithms to correctly and efficiently accomplish these types of core tasks. Algorithms are described using high-level pseudocode. Running time and storage requirements are quantified using asymptotic analysis.
Prerequisites: 91.201, 92.322.
91.309 DATABASE I 3 credits
This course surveys topics in database management systems. Topics include access methods, data models (relational, semantic, object-oriented, object-relational), query languages, database design, query optimization, concurrency control, recovery, security, integrity, client-server architecture, and distributed database systems. A database application project and a systems project will be assigned.
Prerequisite: 91.204
91.310 DATABASE II 3 credits
Advanced topics in database systems, including distributed database systems, query optimization, concurrency control, deductive database systems, object-oriented database systems, and web databases. Additional topics may include scientific databases, genetic databases and parallelism. Software engineering principles will be applied to the development of components of a database management system.
Prerequisite: 91.309
91.321 NETWORK AND SYSTEMS MANAGEMENT 3 credits
This course will cover technical aspects of UNIX and VMS, and will prepare the student to manage a complex, heterogeneous computing environment. Students should expect substantial amounts of experience with all activities related to the management of the Computer Science Department network.
91.330 SYMBOLIC LOGIC 3 creditsPropositional logic and first-order predicate logic. Natural deduction and other proof systems. Semantics. Applications to natural and artificial languages.
91.350 - 91.354 SELECTED TOPICS variable credit 1-3
Depends on faculty interest, student demand, and developments in the field. May include file management, software tools.
Prerequisite: Junior status
91.401 SOFTWARE PROJECT LAB I 3 credits
Specification, design, and implementation of a one- or two-semester software project proposed to a directing faculty member. Projects may be proposed as a one- or two-semester effort based on faculty approval. A two-semester effort requires subsequent registration for 91.402.
Prerequisite: Students must submit a proposal to the directing faculty member, obtain his/her signed approval, and forward a copy of the signed proposal to department chairperson.
91.402 SOFTWARE PROJECT LAB II 3 credits
A continuation of 91.401. Students must submit a proposal to the directing faculty member, obtain his/her signed approval, and forward a copy of the signed proposal to the department chairperson.
Prerequisite: 91.401
91.403 OPERATING SYSTEMS PRACTICUM 3 credits
Construction of real operating systems. Topics will include case studies of systems such as UNIX, MULTICS, and CP/M; structured design; and performance techniques. Group projects will be employed to design, build, and evaluate various operating systems modules.
Prerequisites: 91.308 and permission of instructor
91.405 PARALLEL PROCESSING 3 credits
A study of parallel architectures and parallel algorithms, including classification of architectures, characterization of performance, design of parallel algorithms, evaluation of parallel software, and languages for parallel processing. Students will write and execute programs for several different parallel machines.
Prerequisite: 91.308
91.406 INTRODUCTION TO COMPILER WRITING 3 credits
Includes both theory and practice. A study of grammarsspecification and classes; the translation pipelinelexical analysis, parsing, semantic analysis, code generation and optimization; and syntax-directed translation. Use of automatic generation tools in the production of a complete compiler for some language.
Prerequisites: 91.204
91.411 Software Engineering (formerly 91.412) 3 credits
Software Engineering is an essential discipline for any computer science major, as in this class you will learn skills that will help you design and build software projects for advanced CS classes. This course provides an introduction to systematic techniques for development of software, i.e., "the Engineering of Software." Topics to be discussed include software life-cycle, group coordination, requirement specification, software design, software testing, and software maintenance. Emphasis is given to the development of one complex software system and the system documentation necessary for such a complete software product. The students will mock the software cycle via a medium-to-large semester-long project.
Prerequisite: 91.204
91.412 Software Engineering II 3 credits
A continuation of Software Engineering I
Prerequisite: 91.411
91.413 DATA COMMUNICATIONS I 3 credits
Techniques of data transmission over analog lines. Properties of communication channels. Error control techniques. Line-, message-, and packet-switching techniques. Communication software architectures.
Prerequisites: 91.203, 91.308
91.414 DATA COMMUNICATIONS II 3 credits
Continuation of 91.413 with selected topics of current interest. Topics will include: SNMP, Network design, Multimedia Communications, Multicast Routing, Security and Privacy and detailed analysis of specific routing protocols. A laboratory with Network Management and packet analysis software will be used to support some of the projects.
Prerequisites: 91.413
91.420 ARTIFICIAL INTELLIGENCE 3 credits
Topics to be covered include tree and graph searching algorithms (breadth first, depth first, uniform cost, A*), heuristic search methods, games (min-max, alpha-beta pruning), first-order logic, Bayesian networks, neural networks, reinforcement learning and genetic algorithms.
Prerequisite: 91.301
91.421 Machine Learning and Data Mining 3 credits
Prerequisite: 91.420
91.422 COMPUTER VISION 3 credits
An introductory course in computer vision. This course covers all the recognized computational aspects of vision. It presents computational techniques whenever possible, formulae, algorithms, and programs. Psychological theories are covered only to the extent that they have clear computational implications.
Prerequisite: Permission of instructor
91.423 KNOWLEDGE-BASED SYSTEMS 3 credits
Other topics in artificial intelligence not covered in 91.420, such as computer vision, speech recognition, robotics, expert systems, computer art, computer music.
Prerequisites: 91.420 and permission of instructor
91.427 COMPUTER GRAPHICS I 3 credits
Introduction to graphics systems and concepts. History of graphics. Introduction to hardware, software, and mathematical tools. GKS, CGI, and other graphics languages. Graphics data structures and modeling. 2D mathematical tools for modeling and viewing. Input, archiving, and display architectures. 2D graphical algorithms and data structures. 3D mathematical tools (algorithms and data structures) for modeling and viewing. Introduction to hidden line and hidden surface removal.
Prerequisites: 91.201, 92.231
91.428 COMPUTER GRAPHICS II 3 credits
An advanced course in computer graphics for students familiar with basic issues in computer graphics. Details on hidden line and surface removal. PHIGS and other modeling languages. Data structures for 3D modeling. 2D and 3D curve and surface generation. Rendering, illumination, and color models. Realism through precision (ray tracing) and imprecision (fractals). Windowing and user interface management systems. Modern hardware architectures. Animation and simulation systems.
Prerequisite: 91.427
91.430 SEMANTICS OF PROGRAMMING LANGUAGES 3 credits
Introduction to the Semantics of Programming Languages. Axiomatic, operational, denotational, and translational semantics. Program specification. Program proofs using the techniques of Floyd and Hoare.
Prerequisites: 91.301 and 91.304
91.431 COMPUTATIONAL LOGIC 3 creditsSemidecision procedures for first-order logic and their correctness. Tableaus, unification, and resolution. Horn clauses and logic programming. Selected topics in areas such as nonstandard logics and architectures.
Prerequisites: 91.301 and 91.33091.450 ROBOTICS I 3 credits
An introduction to robotics, including laboratory. In the lab, students build and program robots. Topics to be covered include sensors, locomotion, deliberative architectures, reactive architectures, and hybrid architectures.
Prerequisites: 91.201, 91.308, 92.322
91.451 ROBOTICS II 3 credits
Advanced topics in robotics, including laboratory. Topics to be covered include map making, path planning, computer vision, and learning. Research-level robots are used in the laboratories.
Prerequisite: 91.450
91.452 DIAGNOSTIC AND TEST SOFTWARE DESIGN 3 credits
Virtually all major hardware products include the design and implementation of diagnostic and verification software as part of the product life-cycle. This course will examine the details of such test software and the diagnostic software for various hardware devices such as disk and tape subsystems.
Prerequisite: 91.201, 91.204, 91.305
91.453 REAL-TIME PROGRAMMING 3 credits
A survey of the programming techniques needed for applications in which a computer monitors or controls a process whose logical sequence is asynchronous to that of the computer. Topics covered include polling, single and multiple interrupts, masked and vectored interrupts, synchronization mechanisms, critical sections, hardware interfaces, sampled-data systems, and feedback and control. Students will implement several microprocessor-based applications.
Prerequisites: 91.308, 16.265
91.455 Object-Oriented Design 3 credits
This course introduces the philosophy and methodology of object-oriented software design and the techniques of object-oriented programming. It discusses the design and implementation of individual classes and the tradeoffs in designing collections of classes. The latter part of the course focuses on design patterns. The students will apply object-oriented design to several medium sized projects.
Prerequisite: 91.411
91.456 SPEECH RECOGNITION AND SYNTHESIS 3 credits
This course surveys the techniques by which computer systems can generate and recognize human speech. Students will be introduced to all aspects of this interdisciplinary field (including computer science, artificial intelligence, acoustics, linguistics, psychology, physiology, physics, and signal processing). Working in teams, students will implement parts of a modern speech system and explore the capabilities and limitations of present day technology.
Prerequisite: permission of instructor.
91.457 COMPUTER SECURITY
This course has been replaced by graduate course 91.561, which is open to undergraduate computer science majors who have met its prerequisites.
91.458 COMPUTER PERFORMANCE EVALUATION 3 credits
The objectives of this course are (1) to provide both analytic and simulation skills useful in evaluating a computer system, and (2) to study available techniques of modeling a given system so that meaningful statistics (such as response times) can easily be obtained. The course will cover the following major areas: (1) review of probability theory and statistics; (2) queuing theory; (3) performance evaluations of time-sharing, batch, or mixed computer systems; (4) performance evaluations of distributed systems. Other topics such as performance measurement techniques, and data analysis will also be covered.
Prerequisites: 91.308, 92.386
91.459 HUMAN FACTORS IN THE DESIGN OF INTERACTIVE SYSTEMS 3 credits
This course sensitizes students to the factors one must consider in designing interactive systems. It gives them experience in developing interactive software for use by people other than themselves, and discusses tools and techniques for evaluating the effectiveness of interactive software. Course work consists of readings, class discussions, the researching and writing of a term paper, and the design and implementation of an interactive programming project.
Prerequisite: 91.201
91.460 SELECTED TOPICS Variable credit 1-3
Depends on faculty interest, student demand, and developments in the field. May include: computability, formal languages, automata, VLSI design, computer aided design (CAD), computer aided instruction (CAI), semantics of programming languages.
Prerequisites: Senior status, permission of instructor.
91.461 GUI PROGRAMMING I 3 credits
This is a first course in the design and implementation of graphical user interfaces (GUIs) for windowing environments. The course involves numerous programming projects that are evaluated on design and layout of the user interface, coding style, and comprehensiveness of documentation. The course may be taken on its own, but is intended to be followed by 91.461 to complete a two-course CS project sequence.
Prerequisites: 91.201
Web page:
http://teaching.cs.uml.edu/~heines/91.461/
91.462 GUI PROGRAMMING II (formerly 91.461) 3 credits
This is a second course in the design and implementation of graphical user interfaces (GUIs) for windowing environments. This course may only be taken as a follow-up to 91.461 to complete a two-course computer science project sequence. The culminating activity in the course is completion and presentation of a large project that uses the concepts and techniques explored in 91.461 and 91.462.
Prerequisite: 91.461
Web page:
http://teaching.cs.uml.edu/~heines/91.462/
HONORS PROJECT I 3 credits
This course provides an undergraduate research experience for Computer Science majors enrolled in the Honors Program. Each student develops a project idea in consultation with the instructor. The student writes a proposal for the project, reads the relevant literature, performs the project, writes a project report or thesis, and makes an oral presentation about the project.
Prerequisites: Junior or senior standing and permission of the instructor. Enrollment is limited to Computer Science majors enrolled in the Honors Program.
91.481 Honors Project II 3 credits
In this course, students continue and complete the project started in 91.480 Honors Project I.
Pre- or Co-requisites: 91.480 and permission of instructor.
91.490 DIRECTED STUDIES IN COMPUTER SCIENCE 3 credits
Individual study for a student desiring more advanced or more specialized work. This course may not be taken more than twice and may not be substituted for scheduled offerings.
Prerequisite: Students must submit a proposal to the directing faculty member, obtain his/her signed approval, and forward a copy of the signed proposal to the department chairperson.
These courses do not count as computer science major courses. You may receive general-elective credit for them. However, you may not receive credit for any of these courses after you have taken Computing I. In addition, Continuing Education offers many courses with Computer Science course numbers (91.xxx) that are not open to computer science majors.
91.111 EVERYDAY COMPUTING 3 credits
A non-technical introduction to computer science. The historical development of computational aids and their use in various cultures and societies. Modern examples of computational aids, including integrated word processing/spreadsheet/database environments.
91.113 EXPLORING THE INTERNET 3 credits
This course covers the tools needed to navigate the Internet: e-mail, telnet, and ftp; listservs and Usenet news; and archie, WAIS, Gopher, the World-Wide Web, and Mosaic. This course also gives students basic computer programming skills and sufficient knowledge of UNIX to use Internet tools confidently and efficiently.
91.114 ADVANCED INTERNET 3 credits
A continuation of 91.113. Advanced topics for experienced Internet users, including setting up Internet connections, creating Web pages that incorporate images and sound, building your own Internet information site, and using the advanced features of the standard Internet tools. Students will learn and use the full capabilities of HTML (hypertext Markup Language). Each student will carry out a substantial final project.
Prerequisite: 91.113
91.115 DEVELOPING DATABASE APPLICATIONS 3 credits
How to design and implement a complete database application using a modern relational database system. Relations, queries, forms, and reports. Objects and properties. Data design and software design. Rapid application development tools.
Prerequisite: experience using Microsoft Windows
91.211 COMPUTER SCIENCE FOR SRT APPLICATIONS 3 creditsThis course is an introduction to C programming, with applications in sound recording technology. Students will write and execute several programs that perform operations pertinent to SRT, including manipulating MIDI codes, performing simple signal processing functions, processing sampled data, and synthesizing sound algorithmically.
91.250 DATA STRUCTURES, ALGORITHMS, AND C 4 credits
A survey of data structures and algorithms. Includes an intensive introduction to the programming language C.
Prerequisite: some programming experience
91.263 FORTRAN PROGRAMMING 3 credits
An introduction to computer programming using FORTRAN 90/95. Programming arithmetic, decisions, repetition, and input/output. Arrays and array processing, including simple algorithms for searching and sorting. The edit-compile-test cycle.
Please direct questions to Prof. Jesse M. Heines, UML CS Undergraduate Coordinator, heines@cs.uml.edu