Boston CollegeWebsiteAcademic Catalog
Computer ScienceDepartment Website
BS Degree in Computer Sciencesource 1source 2source 3
CS Courses
- Computer Science ICSCI1101 (3)introCSCI1101: Computer Science I
This course is an introduction to the art and science of computer programming and to some of the fundamental concepts of computer science. Students will write programs in the Python programming language. Good program design methodology will be stressed throughout. There will also be a study of some of the basic notions of computer science, including computer systems organization, files and some algorithms of fundamental importance.
- Computer Science IICSCI1102 (3)introCSCI1102: Computer Science II
In this course, the student will write programs that employ more sophisticated and efficient means of representing and manipulating information. Part of the course is devoted to a continued study of programming. The principal emphasis, however, is on the study of the fundamental data structures of computer science (lists, stacks, queues, trees, etc.). Both their abstract properties and their implementations in computer programs and the study of the fundamental algorithms for manipulating these structures. Students will use Java for programming.
- Logic and ComputationCSCI2243 (3)mathCSCI2243: Logic and Computation
A course in the mathematical foundations of Computer Science, illustrated throughout with applications such as sets and functions, propositional and predicate logic, induction and recursion, basic number theory, and mathematical models of computation such as formal languages, finite state machines, and Turing machines.
- Randomness and ComputationCSCI2244 (3)mathCSCI2244: Randomness and Computation
This course presents the mathematical and computational tools needed to solve problems that involve randomness. For example, an understanding of random variables allows us to efficiently generate the enormous prime numbers needed for information security, and to quantify the expected performance of a machine learning algorithm beyond a small data sample. An understanding of covariance allows high quality compression of audio and video. Topics include combinatorics and counting, random experiments and probability, random variables and distributions, computational modeling of randomness, Bayes' rule, laws of large numbers, vectors and matrices, covariance and principal axes, and Markov chains.
- Computer SystemsCSCI2271 (3)sysCSCI2271: Computer Systems
This course is about how computing machines implement the human-friendly abstractions we express in our programs. It reveals the internal representations of data and instructions, as well as the management of data storage in memory, the coordination of processes, and the interactions between operating systems and the programs being executed. Computer Systems explores system behavior and operations in considerable detail. This greater detail is essential for optimizing program performance, for working within the finite memory and word size constraints of computers, for effective debugging, and for systems-level programming. This hands-on course introduces you to the C programming language and techniques of systems programming through extensive coding exercises
- Computer Organization and LabCSCI2272 (4)sysCSCI2272: Computer Organization and Lab
This course studies the internal organization of computers and the processing of machine instructions. Topics include computer representation of numbers, combinational circuit design (decoders, multiplexers), sequential circuit design and analysis, memory design (registers and main memory), and simple processors including datapaths, instruction formats, and control units. In the laboratory-based portion of course students design and build digital circuits related to lecture. Exercises include hardware description languages, combinational and sequential circuits, arithmetic and logic units, and simple datapath and control units.
- AlgorithmsCSCI3383 (3)algsCSCI3383: Algorithms
This course is a study of algorithms for, among other things, sorting, searching, pattern matching, and manipulation of graphs and trees. Emphasis is placed on the mathematical analysis of the time and memory requirements of such algorithms and on general techniques for improving their performance.
- Social and Ethical IssuesMedia Ethics in the Digital AgeorCSCI2261 (3)communicationCSCI2261: Media Ethics in the Digital Age
This course may be used to satisfy one of four electives required within the Communication major.This course gives students an understanding of the ethical dimensions of communication in an accelerating digital world. Drawing on philosophical principles that resonate with Jesuit values, students will learn to identify, evaluate, and where possible interpret moral conflicts in the media and communication environment, in the media industry, and between the industry and the public. Rather than look at ethical conflicts strictly from a Western lens, the course introduces the students to a variety of philosophical and cultural models. Using a case study approach, the course addresses various contemporary ethical concerns, such as social media and mental health, misinformation, hate speech, extremist content, documentaries, alternative business models for journalism, international and cross-cultural issues, commodity activism, guerilla marketing, entertainment, privacy, doxing, and copyright.
Tech Tools for Playful LearningorCSCI2265 (3)humansCSCI2265: Tech Tools for Playful LearningThis course explores the design and use of new technologies for learning and engages students in current debates around educational technologies, computational thinking, coding and robotics. Students will learn how to develop, implement, and evaluate technology-rich curriculum and will design their own computational meaningful projects. They will visit K-2 classrooms to implement technology-rich curricula, will learn how to use video to document their experiences and will become researchers to assess the thinking and learning fostered by the different tools.
Technology and CultureCSCI2267 (3)impactCSCI2267: Technology and CultureThis interdisciplinary course will first investigate the social, political, psychological, ethical, and spiritual aspects of the Western cultural development with a special emphasis on scientific and technological metaphors and narratives. We will then focus on the contemporary world, examining the impact of our various technological creations on cultural directions, democratic process, the world of work, quality of life, and especially on the emergent meanings for the terms 'citizen' and 'ethics' in contemporary society. Students will explore technologies in four broad and interrelated domains: (1) computer, media, communications, and information technologies, (2) biotechnology, (3) globalization, and (4) environmental issues.
Math/Stat Courses
- Calculus I for Math and Science MajorsMATH1102 (4)mathMATH1102: Calculus I for Math and Science Majors
MATH 1102 is a first course in the calculus of one variable intended for Chemistry, Computer Science, Geology/Geophysics, Mathematics, and Physics majors. It is open to others who are qualified and desire a more rigorous calculus course than MATH 1100. Topics covered include the algebraic and analytic properties of the real number system, functions, limits, derivatives, and an introduction to integration.
- Multivariable CalculusMATH2202 (4)mathMATH2202: Multivariable Calculus
Topics include vectors in two and three dimensions, analytic geometry of three dimensions, parametric curves, partial derivatives, the gradient, optimization in several variables, multiple integration with change of variables across different coordinate systems, line integrals, and Green's Theorem.
- Linear AlgebraMATH2210 (3)mathMATH2210: Linear Algebra
This course is an introduction to the techniques of linear algebra in Euclidean space. Topics covered include matrices, determinants, systems of linear equations, vectors in n-dimensional space, complex numbers, and eigenvalues. The course is required of mathematics majors and minors, but is also suitable for students in the social sciences, natural sciences, and management.
- Math Elective (3000+)
Science Courses
Other Courses
- 7 × Free Elective
History of the Major
2024 | |
2023 | |
2022 | |
2021 | |
2020 | |
2019 | Replace CSCI 3372 (Computer Architecture and Lab) → CS Elective. |
2018 | |
2017 | Replace Math Elective → MATH 2210 (Linear Algebra). |