Computing

The undergraduate computing programs in the Applied Engineering and Sciences Department at UNH Manchester prepare students for successful careers in computer science and information technology and further education in computing-related graduate studies. In our computing programs, students learn computing principles and computational practices to understand how computing machineries, including networks and clouds, work; design and build efficient systems; and apply computations and tools to develop and operate next generation of computing applications.

Computing Technology (COMP)

COMP 405 - Introduction to Web Design and Development

Credits: 4

Students learn the fundamentals of how the Internet works, gain practice with foundational technologies that power websites and learn how to solve problems like a programmer. A significant portion of he course covers web front-end design and development; students create a website using HTML/CSS, and are introduced to JavaScript language and responsive web design techniques. Topics include Internet history and structure, legal and ethical issues. No prior programming experience is required.

Attributes: Environment,TechSociety(Disc)

Equivalent(s): IT 403

Grade Mode: Letter Grading

COMP 415 - Mobile Computing First and For Most

Credits: 4

This course examines how mobile computing is transforming our everyday lives and the society and environment in which we live. In this course the students will engage the mobile ecosystem by inventing apps and solving problems of personal, social, and environmental relevance. Students will learn computational thinking skills and create mobile apps using AppInventor, a free and open source visual blocks-based programming environment. Students will share their creative apps with peers and communities. They will also exercise inclusion, civic engagement, and peer learning in the context of innovating with free and open source software that empower individuals and communities.

Attributes: Environment,TechSociety(Disc)

Grade Mode: Letter Grading

COMP 424 - Applied Computing 1: Foundations of Programming

Credits: 4

Integrates three essential computing competencies: Problem solving, data analysis, and programming. Problems are chosen from data-driven real-world examples such as astronomy, cryptography, environmental simulation, image processing, and video games. Emphasis is on formulating problems, thinking creatively about how computations can solve problems, and expressing solutions clearly and accurately. Using Python, students learn design, implementation, testing, and analysis of algorithms and programs.

Equivalent(s): CS 410, CS #414, CS 415

Grade Mode: Letter Grading

COMP 430 - Systems Fundamentals

Credits: 4

The underlying hardware and software infrastructure upon which applications are constructed is collectively described by the term "computer systems." Computer systems broadly span the subdisciplines of operating systems, parallel and distributed systems, communications networks, and computer architecture. The class will present an integrative view of these fundamental concepts in a unified albeit simplified fashion, providing a common foundation for the different specialized mechanisms and policies appropriate to the particular domain area.

Grade Mode: Letter Grading

COMP 500 - Discrete Structures

Credits: 4

This course prepares students for understanding computational complexity; i.e., what makes a given task/problem hard and how hardness is measured. It accomplishes this through the study of algorithms, permutations, combinations, probability, graph theory, and trees.

Grade Mode: Letter Grading

COMP 520 - Database Design and Development

Credits: 4

An introduction to developing database applications with business users. Topics include fundamentals of the relational model, structured query language, data modeling and database design and implementation. Students use a variety of database management system tools to model, code, debug, document, and test database applications. Students complete real-world team projects.

Grade Mode: Letter Grading

COMP 525 - Data Structures Fundamentals

Credits: 4

Data structures and algorithms are fundamental to developing solutions for computational problems. In this course students design and implement data and functional abstractions; analyze and select appropriate data structures to solve computational problems; practice programming and software development techniques to implement computational solutions.

Prerequisite(s): COMP 424 with a minimum grade of D- or COMP 425 with a minimum grade of D-.

Equivalent(s): CS 416, CS 417

Grade Mode: Letter Grading

COMP 530 - Machine and Network Architecture

Credits: 4

Examines the following topics. Machine organization: program and data representation; registers, instructions, and addressing modes; assemblers and linkers. Impact of hardware on software and software on hardware. Introduces the Internet protocol suite and network tools and programming and discusses various networking technologies.

Prerequisite(s): COMP 430 with a minimum grade of D-.

Grade Mode: Letter Grading

COMP 550 - Networking Concepts

Credits: 4

Explores the fundamentals of data communications and networking requirements for an organization, including the standard layers of network organization; network technologies; and protocols for LANs, WANs, wireless networks, and switched and routed networks. Includes issues of security, topology, management, and future developments.

Grade Mode: Letter Grading

COMP 560 - Ethics and the Law in the Digital Age

Credits: 4

Examines classical and ethical and legal constructs as they pertain to current and topical issues. Students develop and articulate a personal point of view on a broad range of issues based on sound ethical principles and consider the impact of such views on co-workers, employers, and society in general. Topics also include: major social issues involving intellectual property, privacy, current U.S. and international relations relevant to ethical theories. The interplay between ethics and law is explored through current case studies and students formulate and support conclusions based on ethical constructs presented in class. Case study analysis is a major component in course delivery.

Attributes: Humanities(Disc); Writing Intensive Course

Grade Mode: Letter Grading

COMP 570 - Statistics in Computing and Engineering

Credits: 4

An introduction to tools from probability and statistics that are needed by computing and engineering professionals. Exploratory data analysis including graphic data analysis. discrete and continuous probability distributions, inference, linear regression, and analysis of variance, with applications from artificial intelligence, machine learning, data mining, and related topics. Project work and use of statistical software are an integral part of the course.

Prerequisite(s): MATH 425 with a minimum grade of D-.

Grade Mode: Letter Grading

COMP #574 - Applied Computing 2: Foundations of Machine Learning

Credits: 4

Introduction to making informed, data-based decisions with machine learning, data representation and analysis tools, and programming. Emphasis is on the importance of gathering, cleaning, normalizing, visualizing and analyzing data to drive informed decision-making in any field of study. Students learn to use tools and techniques to work on real-world datasets using procedural and basic machine learning algorithms. Students also learn to ask good, exploratory questions and develop metrics to come up with a well-thought-out analysis.

Prerequisite(s): COMP 424 with a minimum grade of D-.

Grade Mode: Letter Grading

COMP 625 - Data Structures and Algorithms

Credits: 4

An introduction to object-oriented design, analysis, and implementation of data structures and algorithms. Students apply concepts and techniques to develop information processing applications. Best programming practices of editing, debugging, documentation, testing, and code review are stressed. Familiarity with an object-oriented programming language and experience with application development are required.

Prerequisite(s): COMP 425 with a minimum grade of D-.

Equivalent(s): CS 515

Grade Mode: Letter Grading

COMP 630 - Systems Software

Credits: 4

Today's organizations need to deliver applications and services by automating processes that develop and deploy software and manage scalable computing infrastructures. Students will learn how to integrate development, operations, and cloud computing and gain experience with design approaches, version control, continuous integration, cloud-based APIs, and monitoring metrics. Key to systems software tools and automation processes are increased communication and collaboration practiced in the course team projects. Students who took COMP #698 Sp/Topic Systems Software cannot repeat for credit.

Prerequisite(s): COMP 530 with a minimum grade of D-.

Grade Mode: Letter Grading

COMP 650 - Network Administration and Maintenance

Credits: 4

Advances the understanding of networks through practical application of administering and maintaining and intranet and its servers. Students use a modern server operating system and network management tools. Routine tasks include: install and configure servers, setup directory services and access privileges, tune network services, understand and implement network security, perform routine maintenance, and practice troubleshooting techniques.

Prerequisite(s): COMP 550 with a minimum grade of D-.

Grade Mode: Letter Grading

COMP 690 - Internship Experience

Credits: 4

The internship provides field-based learning experience through placement in a computing field. Students gain practical computing experience in a business, non-profit, or government organization. Under the direction of a faculty advisor, the student is expected to contribute to the information technology products, processes, or services of the organization. Majors only. May be repeated but no more than 4 credits may fill major requirements.

Prerequisite(s): UMST 582 with a minimum grade of D-.

Repeat Rule: May be repeated for a maximum of 8 credits.

Grade Mode: Letter Grading

COMP #698 - Special Topics

Credits: 1-4

Course topics not offered in other courses. Topics covered vary depending on contemporary computing topics, programmatic need, and availability and expertise of faculty. Barring duplication of subject, may be repeated for credit.

Repeat Rule: May be repeated for a maximum of 8 credits.

Grade Mode: Letter Grading

COMP 705 - Full Stack Development

Credits: 4

Students work in teams and implement, test, document, demonstrate, and deploy web systems that solve organizational needs expressed by real clients. Emphasis is on advanced server-side and client-side programming and integration of web application with database and web server applications. Free and open source development and communication tools are used to carry out the course project.

Grade Mode: Letter Grading

COMP 715 - Information Security

Credits: 4

Topics include general security principles and practices, network and system security, access control methodology, and cryptography. Students develop a simple cryptographic system based on sound mathematical principals, work to improve it, and find ways to attack it. Some programming required.

Grade Mode: Letter Grading

COMP 720 - Database Systems and Technologies

Credits: 4

This is a project course that provides practical experience with developing a storage subsystem of a computer information system. Topics include data modeling, database design, system implementation, and integration with a target application. Emphasis is on implementation activities, database application development artifacts, project communication, and supporting system development and project management tools.

Grade Mode: Letter Grading

COMP 721 - Big Data for Data Engineers

Credits: 4

In this course students gain practical experience developing data-oriented applications in modern infrastructure frameworks, also known as the cloud data solutions. Guided by what a data scientist profile is, students become familiar with the use cases of data oriented applications. They will apply key data modeling and data design concepts to meet business requirements. Students will also apply modern software development to iteratively construct solutions using established reference architectures. Project work will be based in Google Cloud Platform and Amazon Web Services.

Grade Mode: Letter Grading

Special Fee: Yes

COMP 725 - Programming Languages

Credits: 4

Explores the main features of modern, high-level, general purpose programming languages from the user point of view. Provides students with an opportunity to use non-imperative programming paradigms, such as object-oriented, functional, and visual, and to learn how specific features of such languages can be used efficiently in solving problems. The purpose is to gain knowledge regarding the languages studied as well as providing the basis to conduct analysis related to comparisons and divergence in capabilities.

Grade Mode: Letter Grading

COMP 730 - Software Development

Credits: 4

Presents an iterative methodology for developing software systems. Development activities include requirements elicitation and analysis, system and object design, implementation and testing, project and configuration management, infrastructure maintenance, and system deployment to end user. Students work in teams, assume developer roles, build models of a real-world system, and deliver a proof-of-concept or prototype.

Attributes: Writing Intensive Course

Prerequisite(s): COMP 525 with a minimum grade of D-.

Grade Mode: Letter Grading

COMP 740 - Machine Learning Applications and Tools

Credits: 4

Introduces students to practical approaches of machine learning. The course is an exploration of creative applications of artificial intelligence using modern machine learning components and tools. Different application domains are considered, such as computer vision, natural language processing, and cyber security. Students learn to evaluate machine learning systems as well as their potential prediction problems. Cannot receive credit if credit earned for COMP 780 AdvTop/ML Tools & Appl.

Grade Mode: Letter Grading

COMP 741 - Practical Artificial Intelligence

Credits: 4

Balancing the science of AI with its engineering applications, the course focuses on AI foundations and principles for building intelligent computational systems. Reasoning, planning, learning, explaining, and acting with certainty and uncertainty are AI areas in which students will practice how to build AI systems that solve real-world problems. Particular attention is given to the impact of AI applications on our society and related ethical, privacy, security, and safety implications.

Prerequisite(s): COMP 525 with a minimum grade of D-.

Grade Mode: Letter Grading

COMP 742 - Fundamentals of Computer Vision

Credits: 4

This course provides a comprehensive introduction to computer vision with topics covering both the theoretical and practical skills needed to pursue a career in computer vision, pattern recognition, image processing, and signal processing. Students will learn basic concepts as well as hands on experience to solve various real-life problems in image processing, feature extraction, object recognition, and image understanding. Not offered for credit if credit is received for COMP780/COMP 880 Computer Vision.

Grade Mode: Letter Grading

COMP #750 - Neural Networks

Credits: 4

Artificial neural networks power the recent advances in computer vision, speech recognition, and machine translation. This is a first course on neural networks with a focus on applications in computer vision and natural language processing. Topics will include generic feedforward neural networks, convolutional neural networks for computer vision tasks and recurrent neural networks with application to natural language processing, with other topics to be selected based on the interests of the instructor and the class.

Equivalent(s): DATA #750

Grade Mode: Letter Grading

COMP 755 - Digital Forensics

Credits: 4

This course studies cyber-attack prevention, planning, detection, response, and investigation with the goals of counteracting cybercrimes. The topics covered in this course include fundamentals of digital forensics, forensic duplication and analysis, network surveillance, intrusion detection and response, incident response, anti-forensics techniques, anonymity and pseudonymity, computer security policies and guidelines, and methods and standards for extraction and preservation of digital evidence.

Prerequisite(s): COMP 525 with a minimum grade of D-.

Grade Mode: Letter Grading

COMP 760 - Data Visualization & Communication

Credits: 4

Through hands-on experience with a leading data visualization tool, the course introduces the concepts of data visualization to allow students to communicate and analyze data effectively using visual techniques.

Grade Mode: Letter Grading

COMP 765 - Secure Software Principles

Credits: 4

This course will explore the fundamentals of software security, covering important software vulnerabilities and attacks that exploit them. This includes, but not limited to, such topics as buffer overflows, SQL injection, session hijacking and considers defenses that prevent or mitigate these attacks, including advanced testing and program analysis techniques. Will look at techniques at each phase of the development cycle that can be used to strengthen the security of software systems.

Prerequisite(s): COMP 525 with a minimum grade of D-.

Grade Mode: Letter Grading

View Course Learning Outcomes

  1. Learn Software Design strategies.
  2. Recommendations for coding, testing, and debugging best practices.
  3. Learn Key Strategies to prepare for, respond to, and recover from incidents.
  4. Learn Culturally best practices that help teams across your organization collaborate\\neffectively.

View Course Learning Outcomes

COMP 780 - Advanced Topics in Computing

Credits: 1-4

The course includes advanced topics and emerging areas in computing. Barring duplication of subject, the course may be repeated for credit.

Grade Mode: Letter Grading

COMP 785 - Applied Cryptography

Credits: 4

This course aims to give students an overview of cryptographic concepts and methods, a good knowledge of some commonly used cryptographic primitives and protocols, a sound understanding of theory and implementation, as well as limitations and vulnerabilities, and an appreciation of the engineering difficulties involved in employing cryptographic tools to build secure systems. Some programming required.

Prerequisite(s): COMP 525 with a minimum grade of D-.

Grade Mode: Letter Grading

COMP 790 - Capstone Project

Credits: 4

This course requires the development of a real world project that responds to an IT organizational need. The project is undertaken by a team of students. An iterative approach is used to incrementally address the project requirements while constructing a prototype of the IT solution to the original problem.

Attributes: Writing Intensive Course

Prerequisite(s): COMP 690 with a minimum grade of D- and CIS 610 with a minimum grade of D-.

Grade Mode: Letter Grading

COMP 791 - Senior Thesis

Credits: 4

This course requires the development of a real world project representative of the computing discipline of their major. An iterative approach is used to incrementally address the project requirements while constructing a prototype of the solution to the original problem. A thesis, describing the work, will be the final product, submitted at the end of the course and presented to a committee of faculty.

Prerequisite(s): COMP 690 with a minimum grade of D-.

Equivalent(s): COMP 790

Grade Mode: Letter Grading

COMP 795 - Independent Study

Credits: 1-4

Advanced individual study under the direction of a faculty mentor. Content area to be determined in consultation with faculty mentor. May be repeated.

Grade Mode: Letter Grading