The Bachelor of Computer Science or Bachelor of Science in Computer Science (abbreviated BCompSc or BCS or BS CS or B.Sc. CS) is a type of bachelor's degree, usually awarded after three or four years of collegiate study in computer science, but possibly awarded in fewer years depending on factors such as an institution's course requirements and academic calendar. In some cases it can be awarded in five years. In general, computer science degree programs emphasize the mathematical and theoretical foundations of computing.[1]
The same core curriculum may, depending on the school, result in other degrees, including:
- Bachelor of Arts (BA) in Computer Science
- Bachelor of Applied Science (BASc) in Computer Science
- Bachelor of Technology in Computer Science and Engineering (B.Tech)
- Bachelor of Science in Information Technology
- Bachelor of Mathematics in Computer Science
- Bachelor of Engineering (BEng or BE) in Computer Science
- Bachelor of Computing in Computer Science
- Bachelor of Science in Engineering (Computer Science) - BSE (CS)
- Bachelor of Computer Security in Computer Science
- Bachelor of Science (BSc or BS) in Computer Science (BSc CS or BSCS or BSc (Comp)
In many post-secondary institutions, an Honors Bachelor of Computer Science degree has been introduced as an upgrade to the regular bachelor's program and usually requires at least one additional year of study.
Contents
Studying Computer Engineering
Basic skills of a Computer Engineering student [2][3]
Computer engineering is mainly based on theories and principles of computation, physics, mathematics and engineering. These principles are applied to the resolution of technical problems which require the creation and development of software, hardware and network architectures.
Computer Engineering studies are intended for people with a vocation oriented towards the scientific aspects that are found under the development and evolution of computer science and with high capabilities to lead the development of computer-related projects, as well as a great adaptability to fast and continuously evolving environments.
The general educational objectives pursued by the degree of Computer Engineering are:
- Providing the general skills to cover the areas of Computer Science as well as the sciences and technologies in which it is based.
- Offering a wide range of subjects, enabling subsequent specialization in the various professional areas of the Information and Communication Technologies (ICT) sector.
- Keeping a balance between theoretical and applied knowledge.
- Maintaining a high degree of flexibility to embrace the continuous and rapid evolution of modern computer systems.
- Helping students to become professionals and researchers who can carry out their functions effectively.
- Providing an adequate basis for graduates to continue their education throughout their lives, either on their own or through postgraduate studies.
The specific skills that are proposed in the B.S of Computer Engineering are the following:
- Ability to conceive, write, organize, plan, develop and sign projects in the field of computer engineering whose purpose is the development or exploitation of computer systems, services and applications.
- Ability to direct the activities that are the object of the projects in the field of information technology.
- Ability to design, develop, evaluate and ensure the accessibility, ergonomics, usability and security of computer systems, services and applications, as well as the information they manage.
- Ability to define, evaluate and select hardware and software platforms for the development and execution of computer systems, services and applications.
- Ability to conceive, develop and maintain computer systems, services and applications using software engineering methods as a tool for quality assurance.
- Ability to design and develop centralized or distributed computing systems or architectures integrating hardware, software and networks.
- Ability to know, understand and apply the necessary legislation during the development of the profession of Technical Engineer in Computer Science and handle specifications, regulations and standards of obligatory compliance.
- Knowledge of the basic subjects and technologies, that qualify for the learning and development of new methods and technologies.
- Ability to solve problems with initiative, decision making, autonomy and creativity. Ability to communicate and transmit the knowledge, skills and abilities of the profession of B.S. in Computer Science.
- Knowledge for carrying out measurements, calculations, valuations, valuations, appraisals, expert appraisals, studies, reports, task planning and other similar computer-related work.
- Ability to analyze and assess the social and environmental impact of technical solutions, including the ethical and professional responsibility of the activity of the Technical Engineer in Computer Science.
- Knowledge and application of basic elements of economics and human resources management, project organization and planning, as well as legislation, regulation and standardization in the field of computer projects.
- To provide the skills to analyses a computer problem by studying its viability, calculating its computational complexity and applying algorithmic solutions that ensure the greatest efficiency.
- Acquire in-depth knowledge of the fundamental principles of computing and know how to apply them in both classical and emerging paradigms.
- To achieve the student's commitment to self-learning as an instrument of professional development and responsibility.
Basic expertise [2][3]
- Foundation of programming languages and associated lexical, syntactic and semantic processing techniques.
- Ability to evaluate the computational complexity of a problem and to know algorithmic strategies that can lead to its resolution.
- Computational learning techniques and automatic extraction of information from large volumes of data.
- Ability to understand an organization's environment and its ICT needs.
- Security in computer systems.
- Management of projects, services and computer systems in all areas, leading their implementation and continuous improvement and assessing their economic and social impact.
- Administration and maintenance of computer systems, services and applications.
- Algorithmic procedures of information technologies to design solutions to problems, analysing the suitability and complexity of the proposed algorithms.
- Data Types and Data structures suitable to the resolution of a problem.
- Operating Systems.
- Design of Internet-based applications.
- Design, analysis and implementation of applications based on databases.
- Parallel, concurrent, distributed and real time programming.
- Principles, methodologies and life cycles of software engineering.
Concentrations:
Through the website of computer science and engineering department in University of Connecticut, there are several different concentrations of Computer Science Study.
- Theory and algorithms: Theoretical computer science asks the most fundamental questions about computing. It's about the theory and requires a strong background and comfort level with math.
- Systems and Networks: The Systems and Networks concentration focuses on the system aspects of computer science.This concentration equips students with both theory and practice on how computer systems
- Cybersecurity: Cybersecurity is concerned with security in a computing environment. The concentration equips students with skill sets that blend theory and practice and serves a population intent on becoming cybersecurity professionals.
- Bioinformatics: Bioinformatics is an important and growing engineering field that focuses on the design and development of new algorithms, computational methods, and tools for the analysis of complex biological data.
- Software Design and Development: The software design and development concentration is concerned with the study of methods, tools, and techniques used to design and develop software systems.
- Computational Data Analytics: We live in an era of big data. In every domain of science and engineering voluminous data gets generated. Processing these datasets is a big challenge.[4]
Through the Computer science part in Brown University's website, it shows similar concentrations of Computer Science Study.
- Design: studies the design, construction, and analysis of processes at the interface between humans and systems.
- Computational Biology: studies the foundations and applications of algorithms for analyzing biological data and processes.
- Computer Architecture: studies the design, construction, and analysis of computer architecture and hardware.
- Visual Computing: studies the creation, interaction, and analysis of images and visual information, including animation and games.
- Security: studies the design, construction, analysis, and defense of techniques to protect systems, data, and communications.
- Theory: students the foundations of models and algorithms for computing in various contexts.
- Artificial intelligence / Machine learning: studies the theory and application of algorithms for making decisions and inferences from rules and data.
- Data: Studies the management and use of large data collections.
- Software principles: studies the design, construction, and analysis of modern software systems.
- Systems: studies the design, construction, and analysis of modern, multi-faceted computing systems.[5]
Different universities have different concentrations in Computer Science Major, but no matter in which university, concentrations like theory, systems, security, data analysis and management are always exist. It means these concentrations are very necessary for contemporary society, they are more the foundation of Computer Science major, other parts are extended from the foundation.
Education:
Computer science is known by its near synonyms, like Information Technology (IT) and Computing. At the beginning, only a few students can get computer science education, but as time passes, it’s popular in ordinary people. In UK, in 1981, only A level students can get it, but in 2014, even common pupils can study it.[6]
Through a 2010 report by the Association for Computing Machinery (ACM) and Computer Science Teachers Association (CSTA), significant education standards added for high school services in 14 states.[7]
Gender gap in computer science education still exist in some areas. In 2012 of United States, only 20 percent of computer science degrees were awarded to women. [8]
Statistics:
Through the data shown in pictures, jobs about software developers and applications are most welcome and have highest revenue. Even in the prediction for the next decade, it's still most popular.
In the survey of payments from 1999 to 2010, statistics shows that computer science major students' work have obviously higher salaries than most majors' students' jobs.[9]
Professional qualifications after finishing the degree
The required skills and qualifications for working as a Computer or Software Engineer comprise a large number of theoretical aspects within the areas of Computer Science and Electronics. The following list shows a classification according to the professional profiles that are currently demanded:[4]
- Knowledge of, at least, one programming language (currently in use) or a specific technology in depth.
- Being able to read English, since most of the documents relating to the areas of work as a computer engineer are written in this language.
- Handling of version control systems. Although this is not mandatory, most companies employing computer engineers make use of version control systems.
- Knowledge related to Information Theory and Telecommunications, enabling optimised and legally-compliant designs and facilitating self-control and audits if required.
- Computability Theory to calculate the viability of the problem to be solved.
- Efficiency awareness for industrial mechanization of information (scalability, reliability, etc ...).
- Automata Theory and Algorithm Design Theory to design suitable automation solutions in information processing.
- Software Engineering understanding to evaluate the best techniques of design, development and maintenance of software, subject to calculations of quality constraints, time, cost, etc..
- Artificial Intelligence or Knowledge Engineering such as pattern recognition or neural networks to calculate and design knowledge production systems as an industrial competitive advantage in information management.
- Electronics to calculate and design communication and control interfaces between computers and various mechanical and electrical devices, such as data acquisition systems.
- Industrial and business organization understanding needed for planning, management and control of computer projects and, management of ICT departments.
- Hardware knowledge to analyze and design solutions in the field of microprocessor architecture.
Typical requirements
Because computer science is a wide field, courses required to earn a bachelor of computer science degree vary. A typical list of course requirements includes topics such as:[10]
- Computer programming
- Programming paradigms
- Algorithms
- Data structures
- Logic & Computation
- Computer architecture
Some schools may place more emphasis on mathematics and require additional courses such as:[11]
- Linear algebra
- Calculus
- Probability theory and statistics
- Combinatorics and discrete mathematics
- Differential calculus and mathematics
Beyond the basic set of computer science courses, students can typically choose additional courses from a variety of different fields, such as:[12]
- Theory of computation
- Operating systems
- Numerical computation
- Compilers, compiler design
- Real-time computing
- Distributed systems
- Computer networking
- Data communication
- Computer graphics
- Artificial intelligence
- Human-computer interaction
- Information theory
- Software testing
- Information assurance
Some schools allow students to specialize in a certain area of computer science.[13][14][15]
Related degrees
- Bachelor of Software Engineering
- Bachelor of Science in Information Technology
- Bachelor of Computing
- Bachelor of Information Technology
- Bachelor of Computer Information Systems
- Bachelor in computer design
References
- ^ "Bachelor of Computer Science (BCOMPSC) Degree". University of Wollongong in Dubai.
- ^ a b "Dónde estudiar Ingeniería en Informática | Y Ahora Qué". yaq.es. Retrieved 2018-12-15.
- ^ a b informatica.ucm.es (PDF) https://informatica.ucm.es/data/cont/docs/titulaciones/49.pdf. Retrieved 2018-12-15. Missing or empty
|title=
(help) - ^ "Computer Science and Engineering Department".
- ^ "University Bulletin".
- ^ Jones, Michael (October 1915). "Developing a Computer Science Curriculum in England: Exploring Approaches in the USA" (PDF).
- ^ Wilson, Cameron; Sudol, Leigh Ann; Stephenson, Chris; Stehlik, Mark (2010). "Running On Empty: The Failure to Teach K–12 Computer Science in the Digital Age" (PDF).CS1 maint: Multiple names: authors list (link)
- ^ Olson, Randy (June 14, 2014). "Percentage of Bachelor's degrees conferred to women, by major (1970-2012)".
- ^ "Computer Science Jobs and Career Outlook".
- ^ [1] Course description of the Bachelor of Computer Science at Monash University, Melbourne, Australia
- ^ [2] Archived 2010-11-16 at the Wayback Machine Bachelor of Computer Science at Purdue University, West Lafayette, Indiana, U.S.
- ^ [3] Classes available through Purdue University's Computer Science Department
- ^ "Computer Science concentrations offered by Stevens Institute". Stevens Institute of Technology. Archived from the original on 2011-08-10. Retrieved 2011-12-01.
- ^ "Saint Leo University program description offering Information assurance specialization". Saint Leo University. Archived from the original on 2011-11-23. Retrieved 2011-12-01.
- ^ "B.S. Computer Science - Cybersecurity Concentration". Fairleigh Dickinson University.