BA in Computer Science
The BA in Computer Science prepares students for professional employment in the fields of computer science and computer programming fields. Students receive a thorough grounding in modern practices and methodologies needed to solve complex problems with computers. The curriculum begins with a yearlong introduction to the art and science of computer programming, using the Java language. This introduces concepts of object-oriented programming and the study of efficient data structures. The student’s intermediate years involve the nature and development of programming languages, development and analysis of algorithms, and principles of software design. Experience is gained using procedural, functional, logic, and object-oriented programming languages to solve problems of increasing complexity. Students select five computer science electives to tailor their program. The student’s final year is devoted to using this foundation to specify, design and implement major software project.
In addition to a strong computing base, the BA provides students significant flexibility to pursue minors or a second major outside the computing field. While intended as the entry degree, a prepared student should be able to complete the major by transferring into the program beginning their second year.
As with the BS, the BA enables graduates to anticipate and to respond effectively to the uncertainties of a changing technological, social, political and economic world. The BA degree is not accredited by ABET, a nonprofit, non-governmental organization that accredits programs in the disciplines of applied and natural science, computing, engineering and engineering technology at the associate, bachelor and master degree levels.
Students wishing to pursue the BA as a second major should meet with a Computer Science Faculty Member as some electives may require prerequisites.
Program Educational Objectives
During the first few years after graduation, we expect our graduates to:
- Apply disciplinary knowledge and skill to analyze, design, implement, and test solutions to applied problems individually and in diverse teams. Present solutions using the variety of media that best promotes understanding.
- Continue to grow intellectually and professionally in the computing sciences and appreciate the continuous pursuit of knowledge in other areas of interest.
- Use knowledge and draw on experiences relevant to current and emerging needs in computing sciences and recognize the social, ethical, and cultural impact of technology in a global setting.
- Serve as an exemplar and ambassador of the RWU Computer Science program, strengthening its tradition of excellence, by becoming active in professional societies and organizations and by volunteering within your community.