The mapping between Student Outcomes and the outcomes of required and elective courses in the BS Computer Science and BS Computer Science: Bioinformatics programs is summarized below.
Mapping between Student Outcomes and outcomes of required and elective courses
- Models & Abstractions: Covers Mathematics, theory and "abstract thinking." It's the first step from a real-world problem to some formulation in terms of sets, graphs, lists, mappings, etc.
- Algorithms: The steps needed to solve the problem as modeled, by using existing algorithms or by building new ones.
- Programming: The skills needed to cover the gap between an algorithm and an actual piece of code (including testing and debugging)
- System & hardware: The skills needed to cover the gap between code and an actual running system, including all the networking and hardware issues.
- Software Engineering: The methods and techniques needed to build software systems of varying complexitiy involving multiple stakeholders.
- Applications: Models, algorithms, programming, engineering and system aspects (1-5) as specific to particular domain, such as Graphics or AI.
- Self-learning: Self-learning skills, exposure to technologies new to the students, practice in understanding those technologies on their own.
- Communication & teamwork: Includes technical writing, web publishing, oral communications and all the group-based experiences.
- Technology & Society: Covers the ethical, legal and social issues of computing as it impacts society.
Course guidelines show prerequisite dependencies between courses and suggested CS course schedules: for students who took CS 415 before fall 2014 and for students who took CS 415 in fall 2014 or later.
At the time of graduation a student should be able to:
- Demonstrate an understanding of the basic principles of the programming process,
- Demonstrate an understanding of the web and related delivery systems,
- Demonstrate knowledge of underlying technologies such as computer organization and operating systems,
- Demonstrate an understanding of networking principles,
- Demonstrate an understanding of how to administer and utilize databases,
- Demonstrate an understanding of the role of security in all aspects of IT,
- Apply mathematical and scientific principles to the systematic solution of problems,
- Participate effectively in the development of a project plan,
- Function effectively as a member of a team,
- Communicate in both written and oral form on technical topics with a range of both technical and nontechnical individuals,
- Understand how to integrate a range of both hardware and software components in the solution of a problem,
- Understand the core principles of and how to function within a least one domain area outside of IT,
- Understand basic ethical and legal issues in the profession,
- Understand the role of best practices in the profession and the importance of continuous professional development, and
- Demonstrate a broad background in the liberal arts.