A comprehensive plan is required to pursue B.Tech in CSE successfully. Different strategies are required to be adopted for theory subjects and practical based subjects. While the focus in theory subjects is on getting the fundamentals right, the focus in the lab sessions should be on application of these fundamental working principles and experience how the theory works in practice.
a) Preparation Plan for Mathematics subjects: A CSE student studies the following Mathematics Subjects
i. Mathematics – I : All the students of Engineering study this subject in their first year of study. In general, knowledge acquired in Intermediate course is good to start with, but the depth of application of those concepts is high. Hence the student needs to put extra efforts to learn this subject. While all the units are important from examination point of view,, CSE student needs to give special focus on Sequence Series, Functions of Single Variables, and Applications of Single Variables, as good understanding of these topics helps formal representation of many theoretical concepts and formulation of of algorithms for animations, software testing strategies etc.
ii. Mathematical Methods: This branch of Mathematics is of special importance to the Computer Scince Engineers as this forms the first subject that exposes the students to the concept of algorithmic approach to problem solving. All the units of this subject are very important to the CSE students, particularly those who intend to pursue research work in computer science domain. It’s not just enough to pass the subject, but needs to be remembered well. Special emphasis need to be laid on Linear Transformations, Solutions of Non-linear Systems, Curve Fitting & Numerical Integrations. At a higher level of learning i.e., PG and Research levels, knowledge of Fourier Series, Lagrange, and Legendre Polynomials is very essential.
iii. Mathematical Foundations of Computer Science (MFCS): This subject is offered to CSE and IT branches and any other combination of specializations that are combined with Computer Science. This subject forms basis for those who want to make their career in Languages Development and Compilers Design. MFCS gives all the inputs necessary for a CSE students to easily understand any subject that deals with programming like C, C++, JAVA. CSE Students should not forget that they cannot discount any single topic in this subject. Some Universities offer this course with the title “Discrete Mathematics.” Two text books that must be referred to are a) Discrete Mathematics for Computer Scientists & Mathematicians” by J L Mott, A Kendal, TP Baker published by Prentice Hall of India and b) Discrete Mathematics by Trembley & Manohar.
iv. Probability & Statistics: This is another Mathematics based subject which very important for a CSE student. The student should bear in mind that the Computer itself is a machine that works based on probability theory. Knowledge of Baye’s theorem, Samplings and Distributions, Queuing Theory, are very important concepts to understand Data Communication and Computer Networks subjects and other subjects that require knowledge of these two subjects. Emphasis should be given to these topics in this subject.
b) Skill Based Subjects: A CSE student shall have to study the following skill teaching subject during B.Tech
I. C Programming in the first year together with its lab course,
II. IT Workshop (only Lab practice and no corresponding theory is offered.
III. C++ in second year first semester together with its lab course
IV. JAVA in Second Year second Semester together with its lab course
V. Web Technologies in third year second semester together with its lab course.
It must be borne in mind that all the above subjects help the student practice in the labs sessions. Some sample exercises covering very basic concepts are given in the syllabus. Student should inculcate the culture of developing programs for problems in the core subjects as well.
Basic requirements for practicing and mastering these subjects are to develop the skill of logical thinking and reasoning, and development of step-wise solution to the problem at hand. Student needs to practice problem solving techniques.
It is important to note that these subjects are languages and mere memorizing the words of a language do not make one good at using the language. It must be understood clearly that one must know both syntax and semantics of a language. A language helps us communicate properly. Computer languages are no exception. They also help us to translate a problem to a solution through a set of logically flowing sequence of statements. It is always a preferred way of learning that the order of learning these subjects be preserved. The fundamental trick for mastering these subjects is by comparing a feature in one language with the corresponding feature available in tha already learnt subject. This “differential learning” has the twin advantage of fast learning as well as comparative learning. An additional benefit of this approach is revision of the subject learnt in the previous semester/year.
c) Core Subjects: Subjects that are critical for understanding the engineering aspects of Computer Science domain are called as core subjects. Most of these subjects are studied by CSE students only. The following table gives the details of various core subjects and their interdependence a CSE student should study during B.Tech course.
d) Management Subjects: In addition, a CSE student is required to study subjects related to management. Their use is immediately not found in the beginning of the career. But knowledge of these subjects is useful at the managerial level.
e) Electronics Related Subjects: A CSE student has to study Electronic circuits & Devices, Digital Logic Design, Microprocessors, and Embedded systems subjects belonging to ECE branches. These subjects help in understanding the hardware details of CSE subjects like CO and also to make a career in interdisciplinary areas like embedded systems, systems programming and assembly level programming.