IGNOU Bachelor of Computer Application: Bachelor of Computer Applications or BCA is a three-year undergraduate degree course in Computer application. The course is equivalent to a BE or B.Tech in Computer Science. BCA is the one of most popular course students opt for these days because of the rise in the IT technologies and companies.
IGNOU BCA course subjects demonstrate sound knowledge in key areas of computer science or industrial computing. The courses comprises of the subjects like database, networking, data structure, core programming languages like ‘C’ and ‘java and many more. With Bachelor in Computer Application Degree there is no obstruction in finding good job opportunities. One has a choice to choose from numerous career options in various fields like Software development,Technical Support Department of Banks, Educational institution, Government offices etc.
See: BCA Entrance Exam
IGNOU BCA Specialisations:
Some of the major highlights of the course are mentioned below
Bachelor of Computer Application is usually divided into 3 years or 6 semesters. The program is divided into two semesters per year. Each semester comprises of 6 months. BCA Students needs to study 6-7 subjects in each semester. Almost all of the universities/colleges have similar kind of subjects in BCA Course
Also See : BCA Full Form
Syllabus for BCA course is designed specially to impart basic knowledge of the course and enable students to have a basic understanding of computer science and its application. Almost all universities BCA Syllabus is more or less the same. same. So here we have provided you the Syllabus of IGNOU BCA Program.
The following is the syllabus of all the six semesters of BCA program.
Foundation Course in English -2 (4 Credits)
Business Organization (4 Credits)
This course consists of five blocks containing 18 units in all. After studying this course, you should be able to:
BLOCK 1 : Basic Concepts and Forms of Business Organisation
BLOCK 2 : Financing of Business
BLOCK 3: Marketing
BLOCK 4: Business Services
BLOCK 5: Government and Business
Computer Basics and PC Software (3 Credits)
BLOCK 1: Basics of Computer Hardware
A bit of history highlighting the concepts, Abacas, Difference Engine, Electromagnetic Computers, Discrete components, IC circuits, Current hardware Platforms, Description of current applications of computer highlighting role of computers, Limitations of Computers.
Components of a computer and their role, Number system, Codes ASCII Unicode. Concept of Instruction – a simple example, Role of ALU and CU with the help of an example.
Type of memories and their characteristics, What is the need of memory hierarchy? Memory Hierarchy with examples of each level, Current trends in memory.
I/O devices, Current trends in I/O
BLOCK 2 : Basics of Computer Software
Different type of software and its evolution, System and application software, Utility software, Perverse software, Open Source software.
Need and Functions, Type of OS starting from Batch, Multi-programming and real time Network and distributed OS, Web OS, Examples of OS and their features.
Some basic constructs, Editors, Compilers and interpreters, Assemblers.
Concepts of Open Source Software, Philosophy – licensing, copyright. Project Management Software, Timesheet system, Office Applications, Word Processing – Creating a Memo for a number of people, Spreadsheet – Creating a sheet of Income & deduction and calculation of IT Database – a small application with data records, a form, a query and a report. Email – Sending mail to a number of people in a group.
BLOCK 3 : Internet Technologies
Basic of Networking Concepts, Advantages of Networking, Basic model of Networks, Network Devices, TCP/IP, Web addresses, DNS, IP addresses.
Browsing, E-mail, Messenger/Chat
Blogging, E-Learning and wiki, Collaboration, Social Networking.
Basic Mathematics (4 Credits)
The primary objective of this course is to introduce students some of the mathematics through which they can develop some mathematical maturity, that is enhance their ability to understand and create mathematical arguments. The secondary objective of this course is to prepare students for mathematical oriented courses in computer science such as discrete mathematics, database theory, analysis of algorithms etc.
BLOCK-1: Algebra I
Determinants of order 2 and 3, properties of determinants; evaluation of determinants. Area of triangles using determinants, cramer’s rule.
Definition, equality, addition and multiplication of matrices. Adjoint and inverse of amatrix. Solution of a system of linear equations – homogeneous and nonhomogeneous.
Elementary row operations; rank of a matrix, reduction to normal form,Inverse of a matrix using elementary row operations.
Principle of mathematical induction 1 and 2.
BLOCK 2 : Algebra II
Definition of sequence and series; A.P, G.P, H.P and A.G.P. ?n, ?n2 and ?n3 ,Idea of limit of a sequence.
Complex number in the form of a+ib. Addition, multiplication, division of complex numbers. Conjugate and modulus of complex numbers. De Moivre’s Theorem.
Quadratic, cubic and biquadratic equations. Relationship between roots and co-efficient. Symmetric functions of roots.
Solution of linear and quadratic inequalities.
BLOCK 3: Calculus (Without Trigonometry)
Concept of limit and continuity; differentiation of the sum, difference, product and quotient of two functions, chain rule. Differentiation of parametric functions. 2nd order derivatives.
Rate of change; monotoncity-increasing and decreasing; maxima and minima.
Integration as an anti-derivative. Integration by substitution and by parts.
Finding area under a curve. Rectification.
BLOCK 4: Vectors and Three-Dimensional Geometry
Vectors and scalars, magnitude and direction of a vector. Direction cosines/ratio of vectors. Addition of two vectors. Multiplication of a vector by a scalar. Position vector of a point and section formula.
Scalar (Dot) product of vectors, Vector (Cross) product of vectors. Scalar triple product and vector triple product.
Introduction, Distance formula. Direction cosines/ratio of a line passing through two points. Equations of a line in different forms; angle between two lines; Coplanar and skew lines. Distance between skew lines.
Introduction, definition and related terminology such as constrains, objective function, optimization. Mathematical Formulation of LPP. Graphical method of solving LPP in two variables. Feasible and inferring solution (up to three non-trivial constraints).
Computer Basics and PC Software Lab (2 Credits)
The main objectives of PC Software Lab course are to familiarize with basic operations of:
Section 1 : Operating System
Section 2 : Word Processor (Open Office and MS Word)
Section 3 : Spread Sheet (Concept of Worksheet, Workbook and Cell)
Section 4 : PowerPoint
Section 5 : E-mail
Section 6 : Browsing and Discussion Forum
Accountancy-I (4 Credits)
This course consists of five blocks containing 22 units in all. This course introduces you to the basic accounting concepts and framework. It also covers the preparation of accounts of nontrading and those from incomplete records. After studying this course, you should be able to:
Appropriate special features of accounting fro consignments and joint ventures;
BLOCK 1: Accounting Fundamentals
BLOCK 2: Final Accounts
BLOCK 3: Consignment and Joint Ventures
BLOCK 4: Accounts from Incomplete Records
BLOCK 5: Accounts of Non-trading Concerns, Depreciation, Provisions and Reserves
Problem Solving and Programming (3 Credits)
The course is aimed to develop problem-solving strategies, techniques and skills that can be applied to computers and problems in other areas which give students an introduction to computer and analytical skills to use in their subsequent course work and professional development. Emphasis of this course is to act as an introduction to the thinking world of computers, to help students develop the logic, ability to solve the problems efficiently using C programming. Knowledge in a programming language is prerequisite to the study of most of computer science courses. This knowledge area consists of those skills and concepts that are essential to problem solving and programming practice independent of the underlying paradigm. The student will learn various concepts and techniques for problem solving and will implement those ideas using C programs.
BLOCK 1: An Introduction to C
Problems Solving Techniques, Steps for Problem – Solving, Using Computer as a Problem-Solving Tool, Design of Algorithms, Definition, Features of Algorithm, Criteria to be followed by an Algorithm, Top Down Design, Analysis of Algorithm Efficiency, Analysis of Algorithm Complexity, Flowcharts, Basic Symbols used in Flowchart Design.
What is a Program and what is a Programming Language? C Language, History of C, Salient Features of C, Structure of a C Program, A Simple C Program, Writing a C Program, Compiling a C Program, Link and Run the C Program, Run the C Program through the Menu, Run from an Executable File, Linker Errors, Logical and Runtime Errors, Diagrammatic Representation of Program, Execution Process.
Character Set, Identifiers and Keywords, Rules for Forming Identifiers, Keywords, Data Types and Storage, Data Type Qualifiers, Variables, Declaring Variables, Initialising Variables, Constants, Types of Constants.
Assignment Statements, Arithmetic Operators, Relational Operators, Logical Operators, Comma and Conditional Operators, Type Cast Operator, Size of Operator, C Shorthand, Priority of Operators.
BLOCK 2: Control Statements, Arrays and Functions
Decision Control Statements, The if Statement, The switch Statement, Loop Control Statements, The while Loop, The do-while Statement, The for Loop, The Nested Loop, The Go to Statement, The Break Statement, The Continue Statement.
Array Declaration, Syntax of Array Declaration, Size Specification , Array Initialization, Initialization of Array Elements in the Declaration, Character Array Initialization, Subscript, Processing the Arrays, Multi-Dimensional Arrays, Multi Dimensional Array Declaration, Initialization of Two-Dimensional Arrays
Declaration and Initialization of Strings, Display of Strings Using Different Formatting Techniques, Array of Strings, Built-in String Functions and Applications, Strlen Function, Strcpy Function, Strcmp Function, Strcat Function, Strlwr Function, Strrev Function, Strspn Function, Other String Functions.
Definition of a Function, Declaration of a Function, Function Prototypes, The Return Statement, Types of Variables and Storage Classes, Automatic Variables, External Variables, Static Variables, Register Variables, Types of Function Invoking, Call by Value, Recursion.
BLOCK 3: Structures, Pointers and File Handling
Declaration of Structures, Accessing the Members of a Structure, Initializing Structures, Structures as Function Arguments, Structures and Arrays, Unions, Initializing an Union, Accessing the Members of an Union.
Pointers and their Characteristics, Address and Indirection Operators, Pointer Type Declaration and Assignment, Pointer Arithmetic, Passing Pointers to Functions, A Function Returning More than One Value, Function Returning a Pointer, Arrays and Pointers, Array of Pointers, Pointers and Strings.
# define to Implement Constants, # define to Create Functional Macros, Reading from Other Files using # include ,Conditional Selection of Code using #ifdef, Using #ifdef for different computer types. Using #ifdef to temporarily remove program statements, Other Preprocessor Commands, Predefined Names Defined by Preprocessor, Macros Vs Functions.
File Handling in C Using File Pointers, Open a file using the function fopen ( ), Close a file using the function fclose ( ), Input and Output using file pointers, Character Input and Output in Files, String Input / Output Functions, Formatted Input / Output Functions, Block Input / Output Functions, Sequential Vs Random Access Files, Positioning the File Pointer, the Unbufferred I/O – The UNIX like File Routines.
Computer Organisation and Assembly Language Programming (4 Credits)
In the modern era, Computer system is used in most aspects of life. You may use many different types of software on a computer system for particular applications ranging from simple document creation to space data processing. But, how does the Software is executed by the Computer Hardware? The answer to this basic question is contained in this Course. This course presents an overview of the Computer Organisation. After going through this course, you will not only acquire the conceptual framework of Computer Organisation and Architecture but also would be able to use the concepts in the domain of Personal Computers. In specific, you will be able to design digital circuits; describe the functions of various components of computers and their construction; and write simple assembly programs.
BLOCK 1: Introduction to Digital Circuits
The von Neumann Architecture, Instruction Execution: An Example, Instruction Cycle Interrupts, Interrupts and Instruction Cycle, Computers: Then and Now, The Beginning, First Generation Computers, Second Generation Computers, Third Generation Computers, Later Generations.
Data Representation, Number Systems, Decimal Representation in Computers, Alphanumeric Representation, Data Representation for Computation, Error Detection and Correction Codes.
Logic Gates, Logic Circuits, Combinational Circuits, Canonical and Standard Forms, Minimization of Gates, Design of Combinational Circuits, Examples of Logic Combinational Circuits, Adders, Decoders, Multiplexer, Encoder, Programmable Logic Array, Read Only Memory ROM.
Sequential Circuits: The Definition, Flip Flops, Basic Flip-Flops, Excitation Tables, Master Slave Flip Flops, Edge Triggered Flip-flops, Sequential Circuit Design, Examples of Sequential Circuits, Registers, Counters – Asynchronous Counters, Synchronous Counters, RAM, Design of a Sample Counter.
BLOCK 2: Basic Computer Organisation
The Memory Hierarchy, RAM, ROM, DRAM, Flash Memory, Secondary Memory and Characteristics, Hard Disk Drives, Optical Memories, CCDs, Bubble Memories, RAID and its Levels, The Concepts of High Speed Memories, Cache Memory, Cache Organisation, Memory Interleaving, Associative Memory, Virtual Memory, the Memory System of Micro-Computer.
Input / Output Devices or External or Peripheral Devices, The Input Output Interface, the Device Controllers and its Structure, Device Drivers, Input Output Techniques, Programmed Input /Output, Interrupt-Driven Input /Output, Interrupt Processing, DMA (Direct Memory Access). Input Output Processors, External Communication Interfaces.
Secondary Storage Systems , Hard Drives & Its Characteristics, Partitioning & Formatting: FAT, Inode, Drive Cache , Hard Drive Interface: IDE, SCSI, EIDE, Ultra DMA & ATA/66, Removable Drives, Floppy Drives, CD-ROM & DVDROM, Removable Storage Options, Zip, Jaz & Other Cartridge Drives, Recordable CDs & DVDs, CD-R vs CD-RW, Tape Backup.
Keyboard, Mouse , Video Cards, Monitors, Liquid Crystal Displays (LCD), Digital Camera, Sound Cards, Printers , Classification of Printers, Modems, Scanners, Scanning Tips, Power Supply, SMPS (Switched Mode Power Supply).
BLOCK 3: The Central Processing Unit
Instruction Set Characteristics, Instruction Set Design Considerations, Operand Data Types, Types of Instructions, Number of Addresses in an Instruction, Addressing Schemes, Types of Addressing Schemes, Immediate Addressing, Direct Addressing, Indirect Addressing, Register Addressing, Register Indirect Addressing, Indexed Addressing Scheme, Base Register Addressing, Relative Addressing Scheme, Stack Addressing, Instruction Set and Format Design Issues, Instruction Length, Allocation of Bits Among Opcode and Operand, Variable Length of Instructions, Example of Instruction Format.
Basic CPU Structure, Register Organization, Programmer Visible Registers, Status and Control Registers, General Registers in a Processor, Micro-operation Concepts, Register Transfer Micro-operations, Arithmetic Micro-operations, Logic Microoperations, Shift Micro-operations, Instruction Execution and Micro-operations, Instruction Pipelining.
ALU Organisation, A Simple ALU Organization, A Sample ALU Design, Arithmetic Processors.
The Control Unit, The Hardwired Control, Wilkes Control, The Micro-Programmed Control, The Micro-Instructions, Types of Micro-Instructions, Control Memory Organisation, Micro-Instruction Formats, The Execution of Micro-Program.
Introduction to RISC, RISC Architecture, The Use of Large Register File, Comments on RISC, RISC Pipelining.
BLOCK 4: Assembly Language Programming
Microcomputer Architecture, Structure of 8086 CPU, Register Set of 8086, Instruction Set of 8086, Data Transfer Instructions, Arithmetic Instructions, Bit Manipulation Instructions, Program Execution Transfer Instructions, String Instructions, Processor Control Instructions, Addressing Modes, Register Addressing Mode, Immediate Addressing Mode, Direct Addressing Mode, Indirect Addressing Mode.
The Need and Use of the Assembly Language, Assembly Program Execution, An Assembly Program and its Components, The Program Annotation, Directives, Input Output in Assembly Program, Interrupts, DOS Function Calls (Using INT 21H), The Types of Assembly Programs, COM Programs, EXE Programs, How to Write Good Assembly Programs.
Simple Assembly Programs, Data Transfer, Simple Arithmetic Application, Application Using Shift Operations, Larger of the Two Numbers, Programming With Loops and Comparisons, Simple Program Loops, Find the Largest and the Smallest Array Values, Character Coded Data, Code Conversion, Programming for Arithmetic and String Operations, String Processing, Some More Arithmetic Problems.
Use of Arrays in Assembly, Modular Programming, The stack, FAR and NEAR Procedures, Parameter Passing in Procedures, External Procedures, Interfacing Assembly Language Routines to High Level Language, Programs, Simple Interfacing, Interfacing Subroutines With Parameter Passing, Interrupts, Device Drivers in Assembly.
Discrete Mathematics (2 Credits)
Discrete mathematics, sometimes called finite mathematics, is the study of mathematical structure that are fundamentally discrete, in the sense of not supporting notion of continuity. A study of discrete sets has become more and more necessary because of many application of Computer Science and various areas of engineering. Regarding computer science concept from discrete mathematics are useful to study or express objects or problems in computer algorithm and programming languages. For instance, to improve the efficiency of a computer programs, we need to study its logical structure, which involves a finite number of steps each requiring a certain amount of time. Using the theory of combinatory and graph theory, major areas of discrete mathematics, we can do this. Therefore, a study of these areas would complement and improve the understanding of courses based on algorithm and problem solving.
This course is designed to give basic concepts of propositions, predicates, Boolean algebra, logic circuit, sets, relations, functions, combinatorics, partitions and distributions.
BLOCK 1: Elementary Logic
Propositions, Logical Connectives, Disjunction, Conjunction, Negation, Conditional Connectives, Precedence Rule, Logical Equivalence, Logical Quantifiers.
What is a Proof? Different Methods of Proof, Direct Proof, Indirect Proofs, Counter Examples, Principle of Induction.
Boolean Algebras, Logic Circuits, Boolean Functions.
BLOCK 2: Basic Combinatorics
Introducing Sets, Operations on Sets, Basic Operations, Properties Common to Logic and Sets Relations, Cartesian Product, Relations and their types, Properties of Relations, Functions, Functions, Operations on Functions.
Multiplication and Addition Principles, Permutations, Permutations of Objects not Necessarily Distinct, Circular Permutations, Combinations, Binomial Coefficients, Combinatorial Probability.
Pigeonhole Principle, Inclusion-Exclusion Principle, Applications of Inclusion – Exclusion, Application to Surjective Functions, Application to Probability, Application to Derangements.
Integer Partitions, Distributions, Distinguishable Objects into Distinguishable Containers, Distinguishable Objects into Indistinguishable Containers, Indistinguishable Objects into Distinguishable Containers, Indistinguishable Objects into Indistinguishable Containers.
Communication Skills (2 Credits)
This course is aimed to develop the communication skills at the work place. In this course, we concentrate on English at the workplace. You are probably wondering whether business English (as it is also called) is a separate language to general English. Certainly not, business English is not a separate language. It is English used at the workplace using specific vocabulary, and in certain situations having a different discourse. Every profession uses a certain ‘jargon’ and the business context in no different. While Business English is firmly rooted in general English, nevertheless there are certain distinguishing features which are evident. In this course, you will learn some theoretical inputs into the process of communication, its different types, the difference between written and oral communication. We then concentrate on the structure of conversation – its characteristics and conventions, effectively speaking over the telephone, preparing Curriculum vitae for jobs and interviews, preparing and participating in the Group Discussions, presentation skills, making negotiations and many more.
BLOCK 1: Skills Needed at the Work Place-I
Introduction: What is Communication? The Process of Communication, Barriers to Communication, Different Types of Communication, Written vs. Oral Communication, Different Types of Face-to-Face Interactions, Characteristics and Conventions of Conversation, Conversational Problems of Second/Foreign Language Users, Difference between Conversation and Other Speech Events.
Warm Up, Speaking and Listening: Commonly Used Phrases in Telephone Conversations, Reading: Conference Calls, Vocabulary, Writing and Listening: Leaving a Message, Grammar and Usage: The Perfect Tenses, Pronunciation: Contracted Forms.
Warm up, Reading, Vocabulary: Apply for a Job, Curriculum Vitae, Language Focus: Some Useful Words, Study Skills: Preparing for an Interview, Listening, Speaking, Writing.
Reading, Writing Skills, Listening: How to be Successful in a Group Discussion, Study Skills, Language Focus, Vocabulary, Speaking, Grammar: Connectives, Pronunciation.
Warm Up: Ability to Influence and Lead, Reading: The Role of a Manager, Vocabulary: Leadership, Speaking and Listening, Language Focus: Degree of Probability, Grammar: Modals, Writing: Reports, Pronunciation.
Reading: A Successful Meeting, Speaking: One to One Meetings, Language Focus: Opening, Middle and Close, Study Skills: Editing, Listening: Criteria for Successful Meetings, Vocabulary, Grammar: Reporting Verbs, Writing: Memos, Pronunciation: Stress According to Part of Speech.
Taking Notes, The Note-taking Skill: The Essential Components, The Note-taking Skill: An Example Preparing Minutes, Format of Minutes, Language and Style of Minutes, Grammar: Using the Passive Voice.
Reading: Presentation Skills, Grammar: Verbs often required in Presentations,
Reading: Structure of Presentation, Study Skills: Visual Aids, Ending the Presentation. Language Focus: Talking about Increase and Decrease, Grammar: Prepositions, Listening: Podium Panic, Speaking, Pronunciation: Emphasizing the Important Words in Context.
Language Focus: Idiomatic Expressions, Study Skills: Process of Negotiations, Grammar: Phrasal Verbs, Listening: Effective Negotiations, Speaking, Writing.
C Language Programming Lab (Lab Course) (1 Credit)
This lab course is completely based on MCS-011 .The basic objective of the course is to provide the hands on experience on C Programming and improve the practical skill set. Also to apply all the concepts that has been covered in the theory course MCS-011. The learner will try to apply the alternate ways to provide the solution to a given problem. The learner will be able to develop the logic for the given problem, recognize and understand the syntax and construction of C code, gains experience of C , know the steps involved in compiling, linking and debugging C code, feel more confident about writing the C functions, write some complex programs.
Section 1 : C Programming Lab
Assembly Language Programming Lab (Lab Course) (1 Credit)
This lab course is completely based on MCS-012.The basic objective of the course is to provide the hands on experience on Assembly language programming and improve the practical skill set. Also to apply all the concepts that have been covered in the theory course MCS-012. The learner will try to apply the alternate ways to provide the solution to a given problem. The learner will be able to develop the logic for the given problem, recognize and understand the syntax and construction of Assembly language code, gains experience of Assembly language programming, know the steps involved in compiling, linking and debugging Assembly language Program.
Section 1: Digital Logic Circuits
Section 2 Assembly Language Programming
Systems Analysis and Design (3 Credits)
The objectives of the course include the enabling of learner to identify the Software projects in an organization after studying various functionalities in the organization. Also, they should be able to structure various requirements, do the design and select the best method to develop the system. They should be able to implement and maintain the system. The learners should also get acquainted with different quality standards as well as learn about Management Information Systems.
Syllabus BLOCK 1: Introduction to Systems Development
Fundamentals of System, Important Terms related to Systems, Classification of Systems, Real Life Business Subsystems, Real Time Systems, Distributed Systems, Development of a successful System, Various Approaches for development of Information Systems. Structured Analysis and Design Approach, Prototype, Joint Application Development.
Why do Businesses need Systems Analysts? Users, Analysts in various functional areas, Systems Analyst in Traditional Business, Systems Analyst in Modern Business, Role of a Systems Analyst Duties of a Systems Analyst, Qualifications of a Systems Analyst, Analytical Skills, Technical Skills, Management Skills, Interpersonal Skills.
Systems Development Life Cycle, Phases of SDLC, Project Identification and Selection, Project Initiation and planning, Analysis, Logical Design, Physical Design, Implementation, Maintenance, Product of SDLC Phases, Approaches to Development, Prototyping, Joint Application Design, Participatory Design, Case Study.
Concepts and process of Documentation, Types of Documentation, System Requirements Specification, System Design Specification, Test Design Document, User Manual, Different Standard for Documentation, Documentation and Quality of Software, Good Practices for Documentation.
BLOCK 2: Planning and Designing Systems
Fact finding Techniques, Interviews, Group Discussion, Site Visits, Presentations, Questionnaires, Issues involved in Feasibility Study, Technical Feasibility, Operational Feasibility, Economic Feasibility, Legal Feasibility, Cost Benefit Analysis, Preparing Schedule, Gathering Requirements of System, Joint Application Development, Prototyping.
Design Principles, Top Down Design, Bottom Up Design, Structure Charts, Modularity, Goals of Design, Coupling, Cohesion.
Logical and Physical Design, Process Modeling, Data Flow Diagrams, Data Modeling, E-R Diagrams, Process Specification Tools, Decision Tables, Decision Trees, Notation Structured English, Data Dictionary.
BLOCK 3: More Design Issues and CASE Tools
Forms, Importance of Forms, Reports, Importance of Reports, Differences between Forms and Reports, Process of Designing Forms and Reports, Deliverables and Outcomes, Design Specifications, Narrative Overviews, Sample Design, Testing and Usability Assessment, Types of Information, Internal Information, External Information, Turnaround Document, General Formatting Guidelines, Meaningful Titles, Meaningful Information, Balanced Layout, Easy Navigation, Guidelines for Displaying Contents, Highlight Information, Using Colour, Displaying Text, Designing Tables and Lists, Criteria for Form Design, Organization, Consistency, Completeness, Flexible Entry, Economy, Criteria for Report Design, Relevance, Accuracy, Clarity, Timeliness, Cost.
Introduction to Database design, Flat files vs. Database, Steps in Database Design, ER model to Database Design, Inputs to Physical Database Design, Guidelines for Database Design, Design of Data Base Fields, Types of Fields, Rules for Naming Tables and Fields, Design of Physical Records, Design of Physical Files, Types ofFiles, File Organization, Design of Database, Case Study.
Use of CASE tools by organizations, Definition of CASE Tools, Use of CASE tools by Organizations, Role of CASE Tools, Advantages of CASE Tools, Disadvantages of CASE Tools, Components of CASE, Types of CASE Tools, Classification of CASE Tools, Reverse and Forward Engineering, Visual and Emerging CASE tools, Traditional systems development and CASE based systems development, CASE environment, Emerging CASE Tools, Objected oriented CASE tools, Creating documentation and reports using CASE tools, Creating and executable prototype using Object Oriented CASE tools, Sequence Diagrams.
BLOCK 4: Implementation and Security of Systems & MIS
Implementation of Systems, Conducting System Tests, Preparing Conversion Plan, Installing Databases, Training the end users, Preparation of User Manual, Converting to the new System, Maintenance of Systems, Different Maintenance activities, Issues involved in Maintenance.
Definition of Audit, Objectives of Audit, Responsibility and Authority of the System Auditor, Confidentiality, Audit Planning, Audit of Transactions on Computer, Transaction Audit, Audit of Computer Security, Audit of Application, Benefits of Audit, Computer Assisted Audit Techniques, Audit Software, Test Data, Audit Expert Systems, Audit Trail, Computer System and Security issues, Analysis of Threats and Risks, Recovering from Disasters, Planning the contingencies, Viruses, Concurrent Audit Techniques, Need for Concurrent Audit, Techniques, An Integrated Test Facility, Techniques, The Snapshot Techniques, SCARF, Continuous and Intermittent, Simulation Technique.
Role of MIS in an organization, Different kinds of Information Systems, Transaction Processing System, Management Information System, Decision Support System, Expert System.
Data and File Structures (4 Credits)
The learner should be well versed with the fundamentals of Algorithms, learn various data structures, should be able to use them appropriately as per need during development of programs. Also, the learner should know different sorting and searching techniques so that correct Technique can be used in different programs so that the complexity of the program does not increase due the sorting/ search technique employed. The learner should have the knowledge about file structures and finally, s/he should also know the concepts of advanced data structures.
BLOCK 1: Introduction to Algorithms and Data Structures
Mathematical Background, Process of Analysis, Calculation of Storage Complexity, Calculation of Run Time Complexity.
Arrays and Pointers, Sparse Matrices, Polynomials, Representation of Arrays, Row Major Representation, Column Major Representation, Applications.
Abstract Data Type-List, Array Implementation of Lists, Linked ListsImplementation, Doubly Linked Lists-Implementation, Circularly Linked Lists Implementation, Applications.
BLOCK-2: Stacks, Queues and Trees
Abstract Data Type-Stack, Implementation of Stack, Implementation of Stack using Arrays, Implementation of Stack using Linked Lists, Algorithmic Implementation of Multiple Stacks, Applications.
Abstract Data Type-Queue, Implementation of Queue, Array Implementation, Linked List Implementation, Implementation of Multiple Queues, Implementation of Circular Queues, Array Implementation, Linked List Implementation of a circular queue, Implementation of DEQUEUE, Array Implementation of a dequeue, Linked List Implementation of a dequeue.
Abstract Data Type-Tree, Implementation of Tree, Tree Traversals, Binary Trees, Implementation of Binary Tree, Binary Tree Traversals, Recursive Implementation of Binary Tree Traversals, Non Recursive Implementations of Binary Tree Traversals, Applications.
BLOCK 3 : Graph Algorithms and Searching Techniques
Binary Search Trees, Traversing a Binary Search Trees, Insertion of a node into a Binary Search Tree, Deletion of a node from a Binary Search Tree, AVL Trees, Insertion of a node into an AVL Tree, Deletion of a node from and AVL Tree, AVL tree rotations, Applications of AVL Trees, B-Trees, Operations on B-Trees , Applications of B-Trees.
Definitions, Shortest Path Algorithms, Dijkstra’s Algorithm, Graphs with Negative Edge costs, Acyclic Graphs, All Pairs Shortest Paths Algorithm, Minimum cost Spanning Trees, Kruskal’s Algorithm, Prims’s Algorithm, Applications, Breadth First Search, Depth First Search, Finding Strongly Connected Components.
Linear Search, Binary Search, Applications.
BLOCK 4 : File Structures and Advanced Data Structures
Internal Sorting, Insertion Sort, Bubble Sort, Quick Sort, 2-way Merge Sot, Heap Sort, Sorting on Several Keys.
Splay Trees, Splaying steps, Splaying Algorithm, Red-Black trees, Properties of a Red Black tree, Insertion into a Red-Black tree, Deletion from a Red-Black tree, AATrees.
Terminology, File Organisation, Sequential Files, Structure, Operations, Disadvantages, Areas of use, Direct File Organisation, Indexed Sequential File Organisation.
Introduction to Database Management Systems (3 Credits)
Database systems are pervasive. They are present in every segment of commercial, academic and virtual world. They are required as the backbone of any information system, enterprise resource planning, research activities and other activity that require permanence of data storage. This course provides the basic introduction to database system technologies; and concurrency, security and recovery issues of database management systems.
This course also provides the basic conceptual background necessary to design and develop
simple database systems. The major focus in this course is the Relational database model; however, it also discusses about the ER model and distributed databases. This course enables you to write good queries using a standard query language called SQL.
BLOCK 1 : The Database Management System Concepts
Need for a Database Management System, The file based system, Limitations of file based system, The Database Approach, The Logical DBMS Architecture, Three level architecture of DBMS or logical DBMS architecture, Mappings between levels and data independence, The need for three level architecture, Physical DBMS Architecture, DML Precompiler, DDL Compiler, File Manager, Database Manager,Query Processor, Database Administrator, Data files indices and Data Dictionary, Commercial Database Architecture, Data Models.
The Relational Model, Domains, Attributes, Tuple and Relation, Super keys Candidate keys and Primary keys for the Relations, Relational Constraints, Domain Constraint, Key Constraint, Integrity Constraint, Update Operations and Dealing with Constraint Violations, Relational Algebra, Basic Set Operation, Cartesian Product, Relational Operations, Entity Relationship (ER) Model, Entities, Attributes, Relationships, More about Entities and Relationships, Defining Relationship for College Database, E-R Diagram, Conversion of E-R Diagram to Relational Database.
Relational Database Integrity, The Keys, Referential Integrity, Entity Integrity,Redundancy and Associated Problems, Single-Valued Dependencies, Single-Valued Normalisation, The First Normal Form, The Second Normal Form, The Third Normal Form, Boyce Codd Normal Form, Desirable Properties of Decomposition, Attribute Preservation, Lossless-join Decomposition, Dependency Preservation, Lack of redundancy, Rules of Data Normalisation, Eliminate Repeating Groups, Eliminate Redundant Data, Eliminate Columns Not Dependent on Key.
Physical Database Design Issues, Storage of Database on Hard Disks, File Organisation and Its Types, Heap files (Unordered files), Sequential File Organisation, Indexed (Indexed Sequential) File Organisation, Hashed File Organisation, Types of Indexes, Index and Tree Structure, Multi-key File Organisation, Need for Multiple Access Paths, Multi-list File Organisation, Inverted File Organisation, Importance of File Organisation in Databases..
BLOCK 2: Structured Query Language and Transaction Management
What is SQL? Data Definition Language, Data Manipulation Language, Data Control, Database Objects: Views, Sequences, Indexes and Synonyms, Table Handling, Nested Queries.
The Transactions, The Concurrent Transactions, The Locking Protocol, Serialisable Schedules, Locks. Two Phase Locking (2PL), Deadlock and its Prevention, Optimistic Concurrency Control.
What is Recovery? Kinds of failures, Failure controlling methods, Database errors, Recovery Techniques, Security & Integrity, Relationship between Security and Integrity, Difference between Operating System and Database Security, Authorization.
Need for Distributed Database Systems, Structure of Distributed Database, Advantages and Disadvantages of DDBMS, Advantages of Data Distribution, Disadvantages of Data Distribution, Design of Distributed Databases, Data Replication, Data Fragmentation, Client Server Databases, Emergence of Client Server Architecture, Need for Client Server Computing, Structure of Client Server Systems, Advantages of Client Server Systems.
BLOCK 3: Application Development: Development of a Hospital Management System
BLOCK 4: Study Centre Management System: A Case Study
Programming in C++ (3 Credits)
The object oriented programming paradigm is one of the popular programming paradigms of today. Due to its characteristics object orientation has added new dimensions in the software development process. In this course concept of Object Oriented Programming (OOP) is introduced and for this purpose C++ programming language is being used. C++ a very powerful general purpose programming language, which supports object oriented programming paradigm.
This course covers basics of C++ programming language which includes data types, variables, operators, and array and pointers. Also object oriented features such as class and objects, inheritance, polymorphism are covered in this course. Finally exceptions handling, I/O operations and STL are explained.
BLOCK 1: Basics of Object Oriented Programming & C++
Structured vs. Object Oriented Programming, Object Oriented Programming Concepts, Benefits of Object oriented programming, Object Oriented Languages.
Genesis of C++, Structure of a C++ program, Data Types, Operators and Control Structures.
Classification, Defining Classes, Encapsulation, Instantiating Objects, Member Functions, Accessibility labels, Static Members.
Purpose of Constructors, Default Constructor, Parameterized Constructors, Copy Constructor, Destructor, Memory Management.
BLOCK 2: Inheritance and Polymorphism in C++
Concept of Reusability, Types of Inheritance, Single and Multiple Inheritance, Multilevel Inheritance.
Function and Operator Overloading, Overloading Unary and Binary Operators.
Abstract Class, Function Overriding, Dynamic Binding, Pure Virtual Functions.
BLOCK 3: Advanced Features of C++
Stream Classes, Types of I/O, Formatting Outputs, File Pointers, Buffer.
Function and Class Templates, Use of Templates, Standard Template Library.
Exceptions in C++ Programs, Try and Catch Expressions, Exceptions with arguments.
A Case Study to implement a real world problem.
C++ Programming Lab (1 Credit)
Objective of this course is to provide hands on experience to the learners in C++ programming. Learners will write program in C++ based on concepts learned in C++ programming course. In this course programming to be done for implementation of OO features such as class, objects, inheritance, polymorphism.
Syllabus and Sessions Allocation:
Data and File Structures Lab (1 Credit)
This lab is based on the courses MCS-021. This lab course involves the development of the practical skills in Data structures using C programming, Theoretical aspects were already covered in the respective theory courses.This course is an attempt to upgrade and enhance your theoretical skills and provide the hands on experience. By the end of these practical sessions of this course, you will be able to write programs using basic data structures such as Arrays etc. as well as advanced data structures such as trees etc.
SECTION 1: Data and File Structures Lab Manual
DBMS Lab (1 Credit)
Objectives: This lab is based on the courses MCS-023,. This lab course involves the development of the practical skills in DBMS using MS-Access , Theoretical aspects were already covered in the respective theory courses. This course is an attempt to upgrade and enhance your theoretical skills and provide the hands on experience. By the end of these practical sessions of this course, you will be able to create databases and use DBMS Tools in the areas of Database applications.
SECTION 1: DBMS Lab
Statistical Techniques (4 Credits)
BLOCK 1: Statistics and Probability
Collecting Data, Kinds of Data, Frequency Distribution of a Variable, Graphical Representation of Frequency Distribution, Summarisation of Data, Measures of Central Tendency, Measures of Dispersion or Variability.
Preliminaries, Trials, Sample Space, Events, Algebra of Events, Probability Concepts, Probability of an Event, Probability of Compound Events, Conditional Probability and Independent Events.
Random Variable, Discrete Random Variable, Continuous Random Variable, Binomial Distribution, Poisson Distribution, Uniform Distribution, Normal Distribution.
BLOCK 2: Statistical Inference
Population and Samples, What is a Sampling Distribution, t-distribution, Chi-Square distribution F-distribution.
Point Estimation, Criteria For a Good Estimator, Interval Estimation, Confidence Interval for Mean with Known Variance, Confidence Interval for Mean with Known Variance, Confidence Interval for Proportion.
Some Basic Concepts, Tests About the Mean, Difference in the Means of Two Populations Test About the Variance.
Goodness-of-fit, Test of Independence.
BLOCK 3: Applies Statistical Methods
Analysis of Variance: Basic Concepts, Source of Variance, One-Way Classification Model for One-Way Classification, Test Procedure, Sums of Squares, Preparation of ANOVA Table, Pairwise Comparisons, Unbalanced Data, Random Effects Model.
Simple Linear Regression, Measures of Goodness of Fit, Multiple Linear Regression, Preliminaries, Regression with Two Independent Variables.
Forecasting, Time Series and Their Components, Long-term Trend, Seasonal Variations, Cyclic Variations, Random Variations/Irregular Fluctuations, Forecasting Models, the Additive Model, the Multiplicative Model, Forecasting Long-term Trends, The Methods of Least Squares, the Methods of Moving Averages, Exponential Smoothing.
Concept of Quality, Nature of Quality Control, Statistical Process Control, Concepts of Variation, Control Charts, Control Charts For Variables, Process Capability Analysis, Control Charts For Attributes, Acceptance Sampling, Sampling Plan Concepts, Single Sampling Plans.
BLOCK 4: Sampling
Object Oriented Technologies and Java Programming (3 Credits)
Today almost every branch of computer science is feeling presence of object- orientation. Object oriented technology is successfully incorporated in various fields of computer science. Since its arrival on the scene in 1995, the Java has been accepted as one of the primary programming language.
This course is designed to give you exposure to basic concepts of object-oriented technology. This course will help in learning to write programs in Java using object-oriented paradigm. Approach in this course is to take Java as a language that is used as a primary tool in many different areas of programming work.
BLOCK 1: Object Oriented Technology and Java
Paradigms of Programming Languages, Evolution of OO Methodology, Basic Concepts of OO Approach, Comparison of Object Oriented and Procedure Oriented Approaches, Benefits of OOPs, Introduction to Common OO Language, Applications of OOPs.
Classes and Objects, Abstraction and Encapsulation, Inheritance, Method Overriding and Polymorphism.
Introduction To Java, Basic Features, Java Virtual Machine Concepts, A Simple Java Program, Primitive Data Type And Variables, Java Keywords, Integer and Floating Point Data Type, Character and Boolean Types, Declaring and Initialization Variables, Java Operators.
Expressions, Statements, Control Statements, Selection Statements, Iterative Statements, Jump Statements, Arrays.
BLOCK 2: Object Oriented Concepts and Exceptions Handling
Class Fundamentals, Creating objects, Assigning object reference variables, Introducing Methods, Static methods, Constructors, Overloading constructors, This Keyword, Using Objects as Parameters, Argument passing, Returning objects, Method Overloading, Garbage Collection, The Finalize ( ) Method.
Inheritance Basics, Access Control, Multilevel Inheritance, Method Overriding, Abstract Classes, Polymorphism, Final Keyword.
Package, Defining Package, CLASSPATH, Package naming, Accessibility of Packages, Using Package Members, Interfaces, Implementing Interfaces, Interface and Abstract Classes, Extends and Implements Together.
Exception, Handling of Exception, Using try-catch, Catching Multiple Exceptions, Using finally clause, Types of Exceptions, Throwing Exceptions, Writing Exception Subclasses.
BLOCK 3: Multithreading, I/O and String Handling
Multithreading: An Introduction, The Main Thread, Java Thread Model, Thread Priorities, Synchronization in Java, Interthread Communication.
I/O Basics, Streams and Stream Classes, Byte Stream Classes, Character Stream Classes, The Predefined Streams, Reading from, and Writing to, Console, Reading and Writing Files, The Transient and Volatile Modifiers, Using Instance of Native Methods.
Fundamentals of Characters and Strings, The String Class, String Operations, Data Conversion using Value Of ( ) Methods, String Buffer Class and Methods.
Java I/O Classes and Interfaces, I/O Stream Classes, Input and Output Stream, Input Stream and Output Stream Hierarchy, Text Streams, Stream Tokenizer, Serialization, Buffered Stream, Print Stream, Random Access File.
BLOCK 4: Applets Programming and Advance Java Concepts
The Applet Class, Applet Architecture, An Applet Skeleton: Initialization and Termination, Handling Events, HTML Applet Tag.
Graphics Contexts and Graphics Objects, Color Control, Fonts, Coordinate System, User Interface Components, Building User Interface with AWT, Swing-based GUI, Layouts and Layout Manager, Container.
Socket Overview, Reserved Parts and Proxy Servers, Internet Addressing: Domain Naming Services (DNS), JAVA and the net: URL, TCP/IP Sockets, Datagrams.
Java Database Connectivity, Establishing A Connection, Transactions with Database, An Overview of RMI Applications, Remote Classes and Interfaces, RMI Architecture, RMI Object Hierarchy, Security, Java Servlets, Servlet Life Cycle, Get and Post Methods, Session Handling, Java Beans.
Fundamental of Computer Networks (4 Credits)
This course introduces the basics of data communication and networking. Students will develop an understanding of the general principles of data communication and networking as used in networks. It also includes an activity of setting up a small local area network. The goal of this course is that the student will develop an understanding of the structure of network, its elements and how these elements operate and communicate with each other.
BLOCK 1: Concepts of Communication and Networking
Concept of communication system, Analog and Digital Communication, Data communication modes, Synchronous and asynchronous transmission, Simplex, half duplex, full duplex communication, Networking Protocols and Standards, Layering, OSI reference model, encapsulation, End-to-end argument. Protocol design issues, Applications.
Analog Modulation (AM, FM, PM), AM Demodulation (one technique only), Advantages and Disadvantages of each., Analog to Digital (Digitization), Sampling, Quantization, Digital to Analog, Digital Modulation (ASK, FSK, PSK, QPSK).
Concept, FDM, TDM, SDM, Multiplexing Applications, Circuit and Packet Switching.
Digital data transmission, Serial and Parallel Transmission, Guided and Unguided mediums, Wireless Communication, Coaxial Cables, Twisted Pair Cables, Fiber Optic Cables, Connectors.
BLOCK 2: Networks and Devices
Network Concept, LAN overview, LAN Topologies, LAN access methods, Network Types based on size like PAN, LAN, MAN, WAN, Functional Classification of Networks, Peer to Peer, Client Server. Wide Area Network, WAN Topologies, WAN Access Methods.
Introduction of OSI Model, Need of such Models, Basic functions of each OSI layer, Introduction to TCP/IP, Comparisons with TCP/IP layers. (At the beginner’s level).
Error detection and correction, CRC, Framing, Retransmission strategies, Multiaccess communication, CSMA/CD, Ethernet, Addressing, ARP and RARP.
Network Interface Cards, Modems, Repeaters, Hubs, Bridges, Switch (L2 and L3 differences) and gateways.
BLOCK 3: Network, Transport and Application Layer
Circuit and packet switching, Routing, Congestion control, Routing protocols: distance vector vs link-state routing, DV problems, Network Addressing, Forwarding, Fragmentation, Error Messaging Services.
Addressing and multiplexing, Flow control, congestion control, data transport, Port numbers, service models, Intro to reliability, QoS.
DNS, Remote Logging, File transfer, Network Management, client-server applications, WWW, E-mail, MIME.
Internet Applications like emails, chatting, social networking, Rail Reservations, Information Sharing, e-governance, Online Processing and Collaborations, etc., Mobile Applications.
BLOCK 4: Network Design and Security
Examples of designing the developing small networks, Structure Cabling, Integrating home computers and devices, creating a small Networking.
X.25, Frame relay, Telephone network, ATM network, ISP, IPv4 and IPv6 overview
Introduction to wireless communication systems, modern wireless communication systems and generations, Introduction to cellular mobile systems, CDMA, cellular system design fundamentals.
Introduction to computer security, Security services, Authentication and Privacy, Block and Stream Ciphers, Public and Private key Cryptography, Introduction to RSA, MD5 and DES at the beginner’s level.
Analysis and Design of Algorithms (2 Credits)
To learn about properties of algorithm and how to design an algorithm, discuss asymptotic notations, Design and measure time complexity analysis of searching, sorting and Graph traversal algorithms. Make comparison of different type of algorithm likes Linear, Quadratic, Polynomial and Exponential, Describe how greedy approach facilitate solving the problem. Discuss Divide and Conquer approach for solving the problem.
BLOCK 1: Introduction to Algorithm
Definition and Example of an algorithm, Characteristics of an algorithm, Steps in Designing of Algorithms, Growth of function, Recurrence, Problem Formulation (Tower of Hanoi), Substitution Method, Iteration Method, Master Method.
Asymptotic Notations, Concept of efficiency of analysis of an algorithm Comparative efficiencies of algorithms: Linear, Quadratic, Polynomial and Exponential.
Euclid’s algorithm for GCD, Horner’s Rule for polynomial evaluation, Simple Matrix (n x n) Multiplication, Exponent evaluation e.g. an, Searching, Linear Search, Sorting, Bubble sort, Insertion Sort, Selection sort.
BLOCK 2: Design Techniques
Elements of Greedy strategy, Activity Selection Problem, Continuous Knapsack Problem, Coin changing Problem, More Examples.
General Issues in Divide and Conquer, Binary Search, Merge Sort, Quick Sort, Integer Multiplication, More Examples.
Representation of Graphs, Adjacency Matrix, Adjacency List, Depth First Search and Examples, Breadth First Search and Examples.
Internet Concepts and Web Design (Lab Course) (2 Credits)
The main objective of the course is to introduce the whole range of web technologies starting from HTML, DHTML, Java Script, VBScript, and Dreamweaver. It also gives a brief description on Internet. Through the various examples the course will describe how to design specific page, dynamic web page, forms and frames. It also focuses on the practical aspects of these technologies.
BLOCK 1: Scripting Languages
Classification of Networks, Networking Models, What is Packet Switching, Accessing the Internet, Internet Protocols, Internet Protocol (IP), Transmission Control Protocol (TCP), Internet Address, Structure of Internet Servers Address, Address Space, How does the Internet work, Intranet & Extranet, Internet Infrastructure, Protocols and Services on Internet, Domain Name System, SMTP and Electronic Mail, Http and World Wide Web, Usenet and Newgroups, FTP, Telnet, Internet Tools, Search Engines, Web Browser.
What is HTML, Basic Tags of HTML, HTML Tag, TITLE Tag, BODY Tag, Formatting of Text, Headers, Formatting Tags, PRE Tag, FONT Tag, Special Characters, Working with Images, META Tag.
Links, Anchor tag, Lists, Unordered Lists, Ordered Lists, Definition Lists, Tables, TABLE, TR and TD Tags, Cell Spacing and Cell Padding, Colspan and Rowspan, Frames, Frameset, FRAME Tag, NOFRAMES Tag, Forms, FORM and INPUT Tag, Text Box, Radio Button, Checkbox, SELECT Tag and Pull Down Lists, Hidden, Submit and Reset, Some Special Tags, COLGROUP, THREAD, TBODY, TFOOT, _blank, _self, _parent, _top, IFRAME, LABEL, Attribute for <SELECT>, TEXTAREA.
What is VBScript? Adding VBScript Code to an HTML Page, VB Script Basics, VBScript Data Types, VBScript Variables, VBScript Constants, VBScript Operators, Using Conditional Statements, Looping Through Code, VBScript Procedures, VBScript Coding Conventions, Dictionary Object in VBScript, Methods: VBScript Dictionary Object, VBScript Dictionary Object Properties, Err Object, Methods: VBScript Err Object, Properties: VBScript Err Object.
Using Dreamweaver, Create a Site Home Page, Design a Page in Layout View, Insert Images, Insert Text, Work in Standard View, View the Site Files, Link your Documents.
BLOCK 2: Lab Manual
Section 1: HTML (Hypertext Markup Language)
Section 2: Advanced HTML
Section 4: VBScript
Section 5: Dreamweaver
Java Programming Lab (1 Credit)
This lab is based on the course MCS-024. This lab course involves the development of the practical skills in Java Programming. Theoretical aspects were already covered in the respective theory courses. This course is an attempt to upgrade and enhance your theoretical skills and provide the hands on experience in Java programming. By the end of these practical sessions of this course, you will be able to write programs using java programming language.
SECTION 1: Java Programming Lab
Statistical Techniques Lab (1 Credit)
This course is based on Statistical Techniques course.
This lab course will provide opportunity to the learners to implement the concepts and techniques learned in Statistical Techniques course in C/C++ Language and/or in MS-Excel.
Session wise coverage:
Analysis and Design of Algorithms Lab (1 Credit)
This course will cover practical implementations of several algorithms covered in BCS-042 course.
Introduction to Software Engineering (3 Credits)
After studying the course, the student should:
BLOCK 1 : Development of SRS
Completeness, Unambiguity, Inconsistency, IEEE SRS.
DFD, ERD, Structure Chart, SRS, Data Dictionaries.
UML Introduction, Use Case Diagrams, Class Diagrams.
BLOCK 2 : Design and Testing
Constructing solution to problem, Identifying components and their interaction, Visualizing the solution, Characteristics of a good function oriented design (Coupling, Cohesion etc.).
Identification & Specification problem domain static objects, Working out the application logic objects, Identification of necessary utility objects, Methodology of identification of objects, Case Study.
Different testing techniques with examples.
Debugging, Testing tools & Environments, Types of test cases and test plans.
BLOCK 3 : Software Engineering Concepts
Program vs Software, Definition of Software Engineering, SDLC models.
Planning, Execution, Monitoring, Control of Software Projects, Software Metrics, Application of PERT and GANTT charts.
Software Configuration Management, Software Maintenance, Software Quality Assurance.
Network Programming and Administration (3 Credits)
BLOCK 1 : TCP/IP Protocols
Origin of TCP/IP and Internet, Communication ,Why do we Need the Internet, Need of Protocol on Communication, Problems in Computer Communication, Dealing with Incompatibility, A Brief History of the Internet, Architecture of the Internet, TCP/IP Layer and Protocols, Network Access Layer, Internet Layer, Need for IP Address, Classes of IP Address, Special Meanings, Who Decides the IP Addresses, Internet Protocol, Address Resolution Protocol (ARP),Reverse Address Resolution Protocol (RARP), Internet Control Message Protocol (ICMP), Transport Layer, Transmission Control Protocol, User Datagram Protocol (UDP), Application Layer, Electronic Mail, Domain Name System (DNS), How does the DNS Server Works? Simple Network Management Protocol (SNMP), Remote Login: TELNET, World Wide Web: HTTP, Networking Example.
Overview of Internet Protocol, IP Header, IP Address, IP Address Classes, Subnet Masks and CIDR Networks (Classless IP Addresses), Internet-Legal Versus Private Addressing, IP Routing, Routing Protocol, Routing Algorithms.
Overview of TCP, Transmission Control Protocol (TCP), TCP Header, TCP Connection Establishment and Termination, TCP Connection Establishment, TCP Connection Termination, User Datagram Protocol (UDP).
Domain Name System (DNS), Hierarchical Name Space, Domain Servers, How does DNS Work in Internet, Domain Name Resolution, Messages Used in DNS, Dynamic DNS (DDNS), Electronic Mail, Simple Mail Transfer Protocol (SMTP),Message Transfer Agent, User Agent, Post Office Protocol (POP), Internet Mail Access Protocol (IMAP),Multipurpose Internet Mail Extension (MIME), Telnet , File Transfer Protocol (FTP).
BLOCK 2: Fundamentals of TCP/IP Programming
Client Server Communication, Designing Client/Server Programs, Socket Concepts, IP Address and Ports, Byte Ordering, Sketch of Networking Connection, Active and Passive Sockets, Socket Fundamentals, Networking Example.
Elementary Socket System Calls, Socket System Call, Bind System Call, Connect System Call, Listen System Call, Accept System Call, Elementary Data Transfer Calls, Closing a Socket, TCP and UDP Architectures, Networking Example.
Advance System call, Data Transfer, Byte Operations and Addressing, SocketOptions, Select System Call Raw Socket, Multiple Recipients, Unicasting,Broadcasting, Multicasting, Quality of Service Issues.
BLOCK 3: Network Administration Using Linux
Role and responsibilities of Network Administrator, Linux and TCP/IP Internetworking concepts, Using Network Clients, Understanding System Initialization, Use Remote Administration Services and Tools.
Managing software packages and File systems, Managing users, System and kernel management, Basic Troubleshooting.
Configuring Networks, Dynamic Host Configuration Protocol, Domain Name System (DNS), Network File System (NFS), Web Server (Prefer Samba Server).
Networks and Security, User Security Management, Disk Security Management, Security Configuration and Analysis, Account Policies, Permissions and Restrictions, Configuring Network Settings, Advance Troubleshooting.
Web Programming (2 Credits)
After going through this course a student should be able to:
Use XHTML tags to create simple static web pages;
BLOCK 1: Client Side
What Is Web 2.0? Introduction to Web 2.0 terms: Search, Content Networks, Blogging, Social Networking, Social Media, Rich Internet Applications (RIAs), Web Services, Mashups, Widgets and Gadgets, Introduction to XHTML and WML, Syntactic Differences between HTML and XHTML, Standard XHTML Document Structure, An example of XHTML covering Basic Syntax, Images, Hypertext Links, Lists and Tables, Creation of an XHTML Form, Internal Linking and Meta Elements.
CSS: Inline Styles, Embedded Style Sheets, Linking External Style Sheets, Style Specification Formats Selector Forms, Colour, Property Value Forms, Font Properties, List Properties, Alignment of Text, The Box Model, Background Image ,The <span> and <div> Tags.
XML Basics, XML Document Structure, XML Namespaces, Document Type Definitions, XML Schemas, Displaying XML Documents.
WAP and WML Basics, WML formatting and links, WML input, WML tasks, WML timer, WML variables, Example.
BLOCK 2: Server Side
Server side scripting and its need ,Two-Tier, Three-Tier, N-Tier and Enterprise Architecture, Various Languages/ Technologies for server scripting ,HTTP Methods (such as GET, POST, HEAD, and so on) , Purpose ,Technical characteristics, Method selection, Use of request and response primitives, Web container – Tomcat.
Basic JSP Lifecycle, JSP Directives and Elements, Scriptlets, Expressions, Action Elements, Standard Actions, Comments and Template Data, JSP variables, The out Object, Request, response, sessions and application objects.
Exceptions and exception handling using JSP, Cookies and sessions, Managing Email using JSP Unit 4: JSP Application Development Example applications using JSP, What is JDBC? Need for JDBC, Database Drivers, Connection using JDBC API, Application development and deployment.
Computer Oriented Numerical Techniques (3 Credits)
Introduction and Objectives: In today’s world the practical problems are quite complex and it may not be possible to find their analytical solutions. Hence we have to resort to computer oriented numerical methods for solving them. Numerical analysis provides knowledge of various techniques to get mathematical entities involved in solving the problems.
BLOCK 1: Computer Arithmetic and Solution of Linear and Non-linear Equations
Floating–Point Arithmetic and Errors, Rounding and Chopping of a Number and Associated Errors, Floating Point Representation of Numbers, Truncation errors and Taylor’s Series.
Preliminaries, Direct Methods, Gauss Elimination Method (Basic), Gauss Elimination Method (Row Interchanges: Pivotal condensation),Iterative Methods, Gauss Jacobi Iterative Method, The Gauss-Seidel Iteration Method, Comparison of Direct and Iterative Methods.
Non Linear Equations, Solution of Non Linear Equations, Successive Substitution Method(Fixed point method), Bisection Method ,Newton-Raphson Method, Regulafalsi Method, Secant Method.
BLOCK 2: Interpolation
What is Interpolation, Some Operators and their Properties, Interrelation between operators, Applications of operators on some functions.
Difference Table, Interpolation Methods, Newton Forward Difference Formula, Newton Backward Difference Formula, Central Difference Formula, Stirling’s Formula, Bessle’s Formula.
Lagrange’s Method, Divided Difference Method, Divided Difference Table, Newton’s Divided Difference Method.
BLOCK 3: Differentiation, Integration and Differential Equations
Differentiation by Forward/Backward Difference Formula, Differentiation by Central Difference Formula.
Methodology’s of Numerical Integration, Rectangular Rule, Trapezoidal Rule, Simpsons (1/3) Rule.
Initial Value and Boundary Value Problem, Euler’s Method, Improved Euler’s Method, Runge Kutta (R-K) Methods (of Order 2 and 4).
Business Communication (2 Credits)
BLOCK 1: Business Social Skills & the Recruitment Process
Small talk, Corporate Entertainment.
Business Organisations, Jobs and Responsibilities
Preparing a Portfolio.
Writing a CV/Resume, Covering Letter, Accepting & Declining Job Offers.
BLOCK 2: Interviews
Preparing for Interviews,
How to face interviews
How to face interviews, Star Structure
Essential requirements for GD, How are GD different from Conversation and Debates.
BLOCK 3: Business Writing
Making a choice, In Company Communication: notices, notes, messages, memos, e mails etc.
Types of Letters, faxes, emails, Conventions & Practices.
Types of reports – Informative & analytical, Contents & Structures.
Basic Features, Types of proposals.
BLOCK 4: Cross Cultural Communication
Culture in Business Communication, Cultural Aspects of behavior at meetings in the US, Cultural Profile of India
Preparation for business travel, International travel, do’s and don’t of business travel, how to avoid travel related problems, travel itineraries, making arrangements
What are business events, the importance of business events, planning for business events, vocabulary associated with business events, polite expressions, writing an emil to expo organizers
Network Programming and Administration Lab (1 Credit)
Overview of Unix,Unix Commands.
Overview of Linux,Exploring Desktop,Using the Shell,Understanding users and file systems, Understanding text processing,Managing processes.
Introduction to C.
Web Programming Lab
This lab course is of 1Credit, based on course Web programming.
Session wise coverage:
Computer Oriented Numerical Techniques Lab (1 Credit)
This course is based on Computer Oriented Numerical Techniques.
This lab course will provide opportunity to the learners to implement the concepts and techniques learned in course Computer Oriented Numerical Techniques in C/C++ Language and/ or in MS Excel/Any Spread Sheet.
Session wise coverage:
E-Commerce (2 Credits)
The Objectives of the Course are:
1. To make the student aware about the basics of E-commerce, its processes and some of the services/products supporting these processes.
2. After studying this course, the students shall be able to understand the basic related business processes like B2B, C2B & B2C involved in the area of E-Commerce with an overview of the technical support for the processes.
BLOCK 1: E-Commerce Concept and Models
Definition and scope of E-Commerce and M-Commerce, E-Commerce trade cycle, Electronic Markets, Internet Commerce, Benefits and Impacts of E-Commerce.
Various elements, e-visibility, e-shops, Delivery of goods and services, Online payments, After – sales services, Internet E-Commerce security.
Introduction and definition of EDI, EDI layered Architecture, EDI technology and standards, EDI communications and transactions, Benefits and applications of EDI with example, Electronic Payment Systems: credit/debit/smart cards, e-credit accounts, e-money.
Inter-organization and intra-organization E-Commerce, E-Commerce Models: B2B, B2C, C2B, C2C, G2C, C2G.
BLOCK 2: Practices in E-Commerce
Introduction to Internet bookshops, Grocery Suppliers, Software Supplies and support, Electronic newspapers, Virtual auctions, Online share dealing, e-diversity.
Security concerns in E-Commerce, Privacy, integrity, authenticity, non-repudiation, confidentiality, SSL, Digital Signatures and fire walls, IT Act 2000,Cyber crimes and cyber laws.
Introduction to Mobile Commerce, Benefits of Mobile Commerce, Impediments of M-Commerce, M-Commerce framework, Emerging and future trends.
Operating System Concepts and Networking Management (4 Credits)
This course is intended to introduce the concepts, structure, features, trends and design mechanism of Operating system. The Operating System has seen consistent innovations and developments like other fields of computer science. In this course efforts have been to capture these changes. The trend is towards GUI based free, platform independent, secure and network-based operating system. Linux and Windows 2000 have got very wide coverage in the course. Security and network management, a part of modern Operating System design, have also been taken up.
BLOCK 1: Operating System Fundamentals Networking
What is Graphical User Interface, Evolution of Human and Machine Interaction, Common Graphical User Interfaces, Functionality of Graphical User Interface, GUI Design Consideration: psychological factors, GUI Design Consideration: standards, GUI Example, Microsoft Windows, Macintosh Toolbox, X-windows, NeXT.
What is an Operating System? Evolution of Operating System, Serial Processing, Batch Processing, Multiprogramming, Operating System Structure, Layered Structure Approach, Virtual Machine, Client-Server Model, Kernel Approach, Classification of Advanced Operating System, Architecture Driven Operating System, Application Driven Operating System, Characteristics of Modern Operating System, Microkernel Architecture, Multithreading, Symmetric Multiprocessing.
Why Computer Networks, The Topologies, Characteristics of the OSI Layers, OSI Models and Communication between Systems, Interaction between OSI Model Layers, Protocols Types of Networks, Local Area Network (LANs), Metropolitan Networks (MANs), Wide Area Network (WANs), Medium, Data Flow, Physical Connection, Transmission Media, Connecting Devices, Repeaters, Hubs, Bridges, Routers, Gateways.
Architecture and Protocols, History of internetworking, Packet Switching, Internetworking Concepts, Internet Addresses Object-Based Programming, Configuring IP Addresses, TCP/ IP, Additional TCP/ IP – Related Protocols, Application Layer Protocols, File Transfer Protocols, Trivial File Transfer Protocol (TFTP), TELNET, Remote login, Electronic Mail (Email),World Wide Web, Domain Name System, SNMP and UDP.
BLOCK 2: Linux Operating System
Features of Linux, Drawbacks of Linux, Components of Linux, Memory Management Subsystems, Linux Process and Thread Management, File Management System, Device Drivers.
Entering the Machine, User Names and Groups, Logging In, Correcting Typing Mistakes, Format of Linux Commands, Changing Your Password, Characters with Special Meanings, Linux Documentation, The File System, Current Directory, Looking at the Directory Contents, Absolute and Relative Pathnames, Some Linux Directories and Files.
Some Useful Commands, Permission Modes and Standard Files, Pipes, Filters and Redirection, Shell Scripts, Graphical User Interface, Editor.
System Administration, Installing Linux, Choosing an Installation Method, Choosing an Installation Class, Pre-installation checks, Installation, Booting the System, Maintaining User Accounts, File Systems and Special Files, Backups and Restoration.
BLOCK 3: Windows 2000
Windows 2000 Operating System Architecture, Peer-To-Peer Network, Domains, Network Protocols, File Services, Shared Folders, Distributed File System, Print Services, Using the Mapped Drive, Printing a Mapped Drive, Disconnecting a Mapped Drive, Viewing Directory Information, Creating a Shared Folder, Logging off a Client, A Few Important Facts About Windows 2000 Usages.
Using Windows 2000 and Client, Logging on to the Network, Browsing Network Resources 1, Accessing Network Resources Using My Network Places, Mapping a Folder.
Windows 2000 Domains, Workgroups & Trusted Relationships, Concept of Domains, Trust Relationships, Building Domains, User Administration, Remote Access.
Introduction to Windows XP Networking, TCP/IP Protocol Setting for Windows XP, To Select a Network Protocol, Virtual Private Networks and Remote Networking, Windows XP in File System, Sharing Network Resources in Windows XP, Sharing Files in Windows XP, Sharing Folders in Windows XP, Sharing Drives in Windows XP, Enabling Offline File Features.
BLOCK 4: Security and Management
Goals of Computer Security, Integrity, Confidentiality, Availability, Security Problem and Requirements, Identifying the Assets, Identifying the Threats, Identifying the Impact, Threat and Vulnerabilities, User Authentication, Security System and Facilities, System Access Control, Password Management, Privileged User Management, User Account Management, Data Resource Protection, Sensitive System Protection, Cryptography, Intrusion detection, Computer-Security Classifications.
Hardening Operating System and Application Code, Hardening File System Security, Hardening Local Security Policies, Hardening Services, Hardening Default Accounts, Hardening Network Activity, Malicious Code, Firewall, Fault Tolerant System, BACKUP and UPS.
Main Issues In Windows Security Management, Physical Security Management, Logon Security Management, Users and Groups Management, Managing Local and Global Groups, Managing User Accounts, Windows NT Domain Management, Domain Controller, The Primary Domain Controller (PDM), Backup Domain Controller (BDC), Windows Resources Management, Registry Management, Removing Registry Access, Managing Individual Keys, Audit Registry Access, Printer Management, Managing Windows 2000 Operating System, Active Directory, Logical Structure, Physical Structure, Windows 2000 DNS Management, Managing Group Policy.
User Authentication Management, Subsystems Component Management, Kerberos Management, User and Group Management, Configuring User Accounts, Creating Domain User Accounts, Managing Logon Hours, Managing Expiry Date for a User Account, Windows 2000 Groups Management, Default Group Types, Security Configuration Management Tool, Resource Management, Files and Folder Management, Files and Folder Permission, Inheritances and Propagation, Moving Data and Permission, Shared Resources Management, The NULL Session, Registry Management
Default Registry Configurations, Registry Backup Managements, Printer Security Management, Windows 2000 Network – Security and Management, NAT and ICS, RRAS, RADIUS and IAS, IPSec, Encrypting File System Management, Encrypting File System (EFS), EFS and Users Management, Data Recovery Management, EFS Cryptography Management.
Lab (Operating System concepts and Networking Management) (1 Credit)
This lab is based on the course MCS-022. This lab course involves the development of the practical skills in OS and Networking. Theoretical aspects were already covered in the respective theory courses. This course is an attempt to upgrade and enhance your theoretical skills and provide the hands on experience. By the end of these practical sessions of this course, you will be able use Unix and Linux OS commands, write scripting and Installation and Configuration of the networking services like TCP/IP, DNS, DHCP, FTP, SMTP etc.
SECTION 1: Operating Systems and Networking Lab
Project (8 Credits)
The objective of the BCA project work is to develop a quality software solution by following the software engineering principles and practices. During the development of the project the students should involve in all the stages of the software development life cycle (SDLC). The main
Objective of this project course is to provide learners a platform to demonstrate their practical and theoretical skills gained during five semesters of study in BCA Programme. During project development students are expected to define a project problem, do requirements analysis, systems design, software development, apply testing strategies and do documentation with an overall emphasis on the development of a robust, efficient and reliable software systems. The project development process has to be consistent and should follow standard.. For example database tables designed in the system should mach with the E-R Diagram. SRS documents to be created as per IEEE standards.
Students are encouraged to spend maximum time of the sixth semester working on a project preferably in a software industry or any research organization. Topics selected should be complex and large enough to justify as a BCA final semester project. The courses studied by the students during the BCA Programme provide them the comprehensive background knowledge on diverse subject areas in computer science such as computer programming, data structure, DBMS, Computer Organization, SAD, Software Engineering, Computer Networks etc., which will be helping students in doing project work. Student will receive Project Guidelines along with their 5th semester course material. Students may also download Project Guidelines from IGNOU Website. Students should strictly follow and adhere to the BCSP-064 project guidelines.