The Bachelor of Science in Computer Science provides students with a thorough grounding in a set of core courses in computer science (CS) and other related areas, followed by the opportunity to hone their CS education in certain areas of specialization. The mandatory core covers essential courses in Programming, Web Technology, Computer Architecture, Mathematics, Data Structures & Algorithms, and Management. The specializations cover dominant areas of CS such as Software Engineering, Computer Networking, Web Development, Information Systems, and Computational Mathematics.
The anticipated end result is a set of graduates who are adequately prepared for their chosen vocation, be it graduate school, or employment.
What is Computer Science?
Computer science (CS) is the study of algorithms, including their formal and mathematical properties, hardware realizations and constraints, linguistic realizations, and applications. An algorithm is simply a procedure for solving a problem in a finite number of steps. The computer scientist designs, develops, implements, and analyzes algorithms to solve important human problems.
In short, when you study CS, you learn to analyze human problems, and develop algorithmic systems that others will use to solve these problems. This makes it a most fascinating and rewarding field.
How Computer Science Compares to Other Professional Disciplines
Relative to other professional disciplines, CS is young, being in existence for just over 6 decades. The CS discipline has roots in mathematics, philosophical logic, physics, and chemistry. However, in this short space of time, we have succeeded in transforming the world by producing technologies and software systems that people today accept as part of normal life. The application of CS to other professional disciplines has resulted in the improvement of the quality of life for all. There is not a single discipline that has not been impacted by CS in a positive way. Here are a few examples of areas impacted by CS: telephone and power supply systems, scientific research, air traffic control systems, the world-wide web, international satellite systems, engineering systems, biomedical systems, statistics and mathematical modeling, financial management, etc.
Whether it is programming, software engineering, networking management and forensics, web development, database administration, or our newer forays into mobile computing programming, social media, or bioinformatics, CS touches all others. We solve real problems for real people.
KSC Computer Science Program Objectives
The objectives of our CS program are as follows:
- To ensure that students obtain a solid grounding in mathematics and/or management, as an interim step in becoming good computer scientists.
- To ensure that students obtain a solid grounding in fundamental computer science concepts, principles, and methodologies.
- To help students gain mastery in one to three computer science areas of specialization.
The learning outcomes of the CS program are as follows:
- Students will demonstrate software development skills in at least one computer programming language through the commonly accepted level of data structures.
- Students will demonstrate understanding of fundamental data structures and algorithms.
- Students will demonstrate an introductory understanding of computer architecture and/or operating systems other than Microsoft Windows (currently Linux, Unix, or iSeries).
- Students will demonstrate understanding in fundamental mathematical concepts in order to be competent computer scientists
- Students will demonstrate technical skills in completing mathematical processes.
- Students will demonstrate software development skills in at least one other computer programming language not taught in item 1 above.
- Students will demonstrate competency at the intermediate-to-advanced level in at least one specialized area of CS
KSC Computer Science Areas of Specialization
As a student, you may choose one to three specializations from the following:
Software Engineering: This specialization enables students to hone critical skills in the investigation, analysis, design, construction, implementation, and management of software systems. Competently spearheaded by Dr. Elvis Foster, the emphasis is on constructing and managing software systems of the highest quality. KSC boasts partnerships with Oracle Corporation, Microsoft, Apple, and IBM; we also have collaboration agreements with leading industries in the Keene area that have a need for high competence software engineers. These alliances enable us to offer courses that emphasize the critical skills required in industry. In addition, several courses explore the Linux and open source databases (such as MySQL), allowing students to enrich their knowledge base with a wide range of needed skills.
Systems and Networking: This specialization allows students to learn and develop critical skills in the area of computer networks and network forensics. Dr. Wei Lu competently leads the charge in this specialization. Analyzing the behavior of those who attack networks and being able to defend against such attacks is a sought after skill in all industries and organizations. Students have participated in undergraduate research projects involving network forensics and have presented papers at several Academic Excellence Conferences (AECs).
Web Development: Our Web Development course sequence acquaints students with recent advances in web design, including content management systems (CMS). Our Service-Learning Initiative allows students to participate in a real life web development projects. Recently, the Monadnock United Way, headquartered in Keene, adopted the work of the CS340 Internet Programming students. Visit the site at http://muw.org. Our ecommerce course is a project-based course that allows students to build skill in interfacing the web with databases using current technology. Dr. Mike Hanrahan skillfully spearheads this specialization.
Information Systems: This specialization provides students with the opportunity to hone their skills in becoming competent information systems (IS) or information technology (IT) professionals. Students are prepared to provide mission critical information infrastructure support for various organizations. This specialization benefits from the committed and focused leadership of Dr. Shari Bemis.
Computational Mathematics: For high-end software engineering in complex scenarios, competence in mathematics is an imperative. This specialization provides the opportunity for students with acceptable mathematics background and aptitude to develop the competencies necessary for operation in these scenarios. This specialization benefits from the committed and focused leadership of Dr. Elvis Foster.
General Computer Science: If as a student, you are not sure what specialization(s) to choose, then you may choose to simply remain in the general CS specialization. This will be the case for many first and second year students. Once you get started in pursuing CS courses, our experienced faculty members will be able to help you identify the area(s) of CS that best suit your aptitude and passion. Dr. Shari Bemis provides leadership for this specialization.
Other KSC Computer Science Initiatives
Mobile Computing and Game Programming: Keene State was one of the first colleges to develop courses in Mobile Computer Programming. We offer courses in both Android and Apple application development. Students have gone on to successful careers after taking our Java core programming courses coupled with our Game Programming course and Mobile Computer Programming courses.
Artificial Intelligence and Robotics: Artificial Intelligence (AI) and Robotics continue to be rapidly expanding areas of CS. Our recent introduction of an AI & Robotics course allows upper level students to apply their develop interest and critical skills in this burgeoning field.
Internships: Many students have had successful internships at surrounding local businesses, allowing them to apply their classroom knowledge in a real world setting. Students have worked with local companies such as C&S Wholesale Grocers, Moore Nanotech Systems, Liberty Mutual Insurance, DYN, Vision Financial, Software Artistry, Markem-Imaje, to name a few.
Bioinformatics: Our recent Bioinformatics initiative with the Biology Department is providing students with undergraduate research opportunities in this growing field. Using a Linux cluster and cloud storage developed by CS faculty, students are researching how to read and write files containing DNA sequences.