Java Programming (3-0-3)
(Semester VI)
Evaluation:
Theor Practical Total
L ional |__30. [20 a
Final 0. z 0
Total 0 20. 100.
Course Objectiv
To enable the students to understand the core principles of the Java Language.
To use visual tools to produce well designed, effective applications and applets.
Unit
To enable students to learn to produce well designed, effective standalone applications.
To enable students to do socket programming, database handling using JDBC
Topic
Introduction to Core Java
1.1 History of java, platform independency
1.2 Introduction to JVM architecture
1.3 Object Oriented features with respect to Java
1.4 Class and Object
1,5 Operators, data types, arrays
1.6 Inheritance, Interfaces, Packages
1,7 Exception Handling
Applet As Java Applications
2.1 Introduction to application
2.2 Lifecycle of Applets
2.3 Applets and its methods
2.4 Applet Vs Applications
Multithreading
3.1 Introduction to thread
3.2 Multithreading concepts
3.3 Thread Life cycle
3.4 Creating multithreaded application
3.5 Thread priorities
3.6 Thread synchronization
Java Input Output
4.1 Java lO package
4.2 Byte/Character Stream
4.3 Buffered reader / writer
4.4 File reader / writer
4.5 Print writer
4.6 File Sequential / Random
Java GUI Components
5.1 Containers, Frames and Panels
5.2 Layout manager
Hours
105.3 Introduction to Netbeans IDE
5.4 Event delegation Model, Event source and handler, Event categories,
Listeners, interfaces, adaptor classes
5.5 Swing Libraries, Model view Controller design pattem Different layout
and All swing components
6 Networking with Java
6.1 Networking basics 6
6.1.1 Sockets, port
6.1.2 Proxy servers
6.1.3 Internet addressing URL
6.2 java.net ~ Networking classes and Interfaces
6.3 Implementing TCP/IP based Server and Client
6.4 Datagrams ~ Datagram packet, Datagram server and client
6.5 URL connections
7 JDBC
7.1 Java database connectivity, Types of JDBC drivers 6
7.2 Writing first JDBC applications
7.3 Types of statement objects (Statement, PreparedStatement and
CallableStatement)
7A Types of resultset, ResultSetMetadata
7.5 CRUD operations in database
7.6 IDBC and AWT
7.7 Comnection pooling
8 Generics 6
8.1 Introduction to generies
8.2 Generics class with parameters
8.3 General form of a generic class
8.4 Creating a generic method, constructors, interfaces
8.5 Polymorphism in generies
Laboratory
Boe NAR AY
Demonstrate uses of arrays, operators.
Write a java code to demonstrate inheritance, multilevel inheritance, multiple inheritance
using interfaces, creation and use of own packages.
Demonstrate exception handling (try-catch-finally, throws ete).
Create an Applet and embedded it in HTML page.
Demonstrate multi-threading
Demonstrate sequential and random reading and writing of files
Design AWT/Swing form with all swing controls.
Demonstrate TCP and UDP based client server connection.
Demonstrate CRUD operations of database with help of AWT/Swing controls
0. Disenavate ike of genetic method, constr and intertaossText Book
1, Herbert Schildt, Java The Complete Reference, Tata McGraw Hill Edition
Reference Books
Kogent, Java 6 Programming Black Book, Dreamtech Publication
Cay $ Horstmann, Fary Corel! Core Java 2 Volume —I, Sun Microsystem press
Cay S Horstmann, Fary Cornell Core Java 2 Volume ~II, Sun Microsystem press
E.Balguruswami Programming with Java, A Primer, Tata MeGraw Hill Edition
BeppeComputer Architecture (3-1-1
1)
Evaluation:
Theory Practical Total]
| Sessional 30 20 30
[Final 50 : 50
[Total 0 20 100
Course Objectives:
+ To acquaint the students with the fundamentals of computer systems.
+ To apprise the students with the architectural and associated components of computer
4hrs
2hrs
systems.
+ To aware the students about the architecture of the computer systems available in the
market.
Course Contents:
1 Introduction
1.1. Computer Organization and Computer Architecture
1.2. Review of Evolution of Computer System
1.3. Basic Structure of Computer System
14, Examples of Computer Families
1.5, Future ‘Trends in Computer
1.6. Review of Instruction Sets, Addressing Modes and Instruction
Formats
2. Register Transfer and Micro Operations
2.1. Register Transfer
Micro operations
and RTL
Data Transfer Micro operations
Arithmetic and Logical Micro operations
Shift Micro operations
Introduction to HDL and VHDL
a Central Processing Unit
3
3
3.3. Instruction Cycle
3.4. Arithmeti
3
CPU Organization/Structure
Register Organization and Data Paths
and Logical Unit
.5. Design Principles for Modern Systems
4, Computer Arithmetic
4.1, Integer Representation
4.2, Integer Arithmetic
4.3, Unsigned Binary Addition and Subtraction
4.4, Unsigned Binary Multiplication Algorithm
ae
&
Pree
..
ah
&
hrs45,
4.6.
47.
48.
49,
al
5.2.
34.
55:
5.6.
61
62,
63,
64,
65.
ua
72.
78.
74.
Booth’s Algorithm
Unsigned Binary Division Algorithm
Floating Point Representation
BCD Arithmetic Unit
* BCD Adder
Arithmetic Pipelining
Control Unit 6 hes
Control of the Processor
Hardwired Control Unit
Control Unit Inputs
* Control Unit Logic
Micro programmed Control Unit
* Micro Instructions and Its Types
* Architecture of Micro programmed Control Unit
Micro Iastruetion Sequencing
Micro Instruction Execution
Applications of Hardwired and Micro programmed Control Units
Memory Organization 6 hrs
Memory Hierarchy
Main Memory
* RAMand ROM
Auxiliary Memory
* Magnetic Disks and Tapes
© Optical Disks
* Flash Drives
© Review of RAID
Associative Memory
«Hardware Organization
* Address Matching Logic
© Read/Write Operations
Cache Memory
© Cache initialization
© Mapping Cache Memory
© Direct, Associative and Set Associative Memory
Mapping
© Write Policy
© Replacement Algorithms
Input Output Organization 4 hes
External Devices
VO Module Structure
Review of Programmed /O and Interrupt Driven 1/0
Review of DMA, I/O Channels and /0 Processors7.5, External Interfaces
& Reduced Instruction Set Computers Shrs
8.1. RISC VS. CISC
82. RISC Pipelining
8.3. Instruction Pipelining
8.4. Conilicts in Instruction Pipelining and their Solutions
8.5. Introduction to Register Windows and Register Renaming
os Introduction to Parallel Processing hrs
9.1. Parallelism in Uniprocessor System
9.2. Multiprocessor Systems and their Characteristics
93, Flynn's Classification
9.4. Interconnection Structures in Multiprocessors
9.3. Cache Coherence
9.6, Introduction to Vector Processing and Array Processors
9.7. Introduction to Multithreaded Arehitecture
10. Multicore Computers 3hrs
10.1, Hardware Performance Issues
+ Increase in Parallelism
¢ Alternative Chip Organizations
© Power Consumption
10.2. Software Performance Issues
* Software on Multicore
10.3. Multicore Organization
10.4. Dual Core and Quad Core Processors
10.5. Power efficient Processors
Laboratory
‘The individual student should develop a project or perform a case study on Computer
Architecture. The topic could be either initiated by the student or selected from a list
provided by the instructor. An oral presentation with a demonstration in case of project
should be part of the laboratory. Reports must be prepared.
‘Text Books:
1. Stallings. W., “Computer Organization and Architecture”, Eighth Edition, 2011, Pearson.
2. Mano, M. M., “Computer Systems Architecture”, Third Edition, 2011, Pearson.
References:
1. Tanenbaum, A.S., “Structured Computer Organization”, Fourth Edition, 2003, Pearson
Educaition. -
Carpinelli, J.D., “Computer Systems Organization and Architecture”, 2012, Pearson.
Rajaraman, V. et all, “Computer Organization and Architecture”, 2011, PHI.
Sima, D. et all, “Advanced Computer Architecture”, 2000, Addison Wesley.
i ar
£?
BRNMathematical Foundation of Computer Sci
Evaluation: ;
Theory Practical Total
[Sessional 50 - 50.
_ Final 50. = == 50
Total | 100 z 100
Course Objectives:
1. The main objective of this course is to build up the mathematical foundation for the study
of computational science and computer technology.
2. This course introduces the student to discrete mathematics and finite state automata
through an algorithmie approach and focuses on various problems solving technique.
3. It helps the target student in gaining fundamental and conceptual clarity in the area of
Logic Reasoning. Algorithms, Recurrence relation. Graph Theory, and Theory of
Automata.
Course Contents:
1, Graph Theory (13 hrs)
1.1 Definitions
1.2 Directed and Undirected Graphs
1.3 Walk, Path, Circuits,
1.4 Connected Components. Connected Component Algorithm
1.5 Shortest -Path Algorithms
1,6 Computer representation a graph (Static Representation only, like
Adjacency Matrix, Incidence Matrix, Path Matrix)
1.7 Bi-partite graphs
1.8 Regular graphs
1.9 Planar graphs
1.10 Euler graph
1.1] Hamilton graph and their properties and characterization.
1.12 Application of graph theory in computer science (with example).
2. Logie and Induction (8 hrs)
2.1 Propositions and Truth functions
2.2 Predicates and Quantification
2.3 Propositional and Predicate Logic
2.4 Expressing statement in the language of Logic
2.5 Deduction in Predicate Logic
2.6 Elementary Step-wise Induction and Complete Induction.
3. Introduction to Mathematical Reasoning (7hrs)
3.1 Formal Languages and Inductive Definitions: Axioms,
3.2 Rules of Inference and Proofs
ae
wy
PeoReferences:
ie
2
3.3 Direct Proof and Indirect Proof
3.4 Formal Proof and Informal Proof,
Recurrence Relations (hrs)
4.1 Recursive Definition of Sequences
42 Differencing and Summation
4.3 Solution of Linear Recursive Relation
4.4 Solution of Non-linear Recurrence Relation.
Finite State Automata hrs)
5.1 Alphabets and Language
5.2 Notioa of a State
5.3 State Machine (FSM and DFA)
5.4 Regular Expression
5.5 Equivalence Relation,
Richard Johnsonbaugh, Discrete Mathematics, Fifth Edit
Education Asia (LPE), ISBN: 81-780-82799, 2000
Mott, Joe L.. Kandel Abraham and Baker, Theodoe P., Discrete Mathematics for
Computer Scientists and Mathematicians, Second Edition, Prentice-Hall, ISBN: 81-203-
1502-2
Liu, C.L., Elements of Discrete Mathematics, TMH, 2000, ISBN: 0-07-043476-X
‘Trus, J., Discrete Mathematics for Computer Scientists, Second Edition, Addision
‘Wesley ISBN: 0-201-36061,1999
mn, Addison Wesley, PearsonSoftware Engineering
Evaluation:
‘Theory Practical Total
[Sessional 30 20 30
Final 50 E 50
Total QT ar 20 100
Course Objectives:
To provide required knowledge on planning, design, development, implementation, and
maintenance of software,
Course Contents:
1 Introduetion thes
1.1 History of software engineering
1.2 Introduction
1.3 Role of software engineering,
1.3 Software Development and Sofware Engineering
1.4 Attribute of good software
1.5 Different between software engineering and system Engineering
1.6 Some challenges of software Engineering.
1.? Software Engineering Ethies
2, Software Specification 4hrs
2.1 The Uses of Specification: A statement of User requirement, A statement of the
interface between the machine and the control environment, A statement of the
requirement for the implementation, A reference point during product maintenance
2.2 Specification Qual
2.3 Classification of Specification styles
2.4 Verification of specifications,
2.5 Types of Specification: Operational and descriptive specifications
2.6 Operational specifications: DFD UML diagrams for specifying Behaviors,
State Mechine
43. Software Testing Techniques and Strategies Thes
3.1 Software Testing Fundamentals
3.1.1 Testing objectives
3.1.2 How test information flows
3.1.3 Testing lifecycle
3.1.4 Test Cases (What it is?)
3.2 Levels of Testing
3.2.1 Unit Testing
3.2.2 Integration Testing
3.2.3 System Testing
3.2.4 Acceptance Testing
3.2.5 Alpha testing & Beta testing
Static vs. Dynamic testing
3.2.7 Manual vs, Automatic‘ testing
3.2.8 Testers workbench
2.9 1 -steps of testing process (Only steps should be covered)
3.3 Different types of Testing
§
§
‘“
sen
Peo3.3.1 Installation Test
3.3.2 Usability testing
3.3.3 Regression t
3.3.4 Performance Testing
3.3.5 Load Testing
3.3.6 Stress testing
3.3.7 Security testing
34 Black Box & White Box Testing (Test Case Design Techniques)
3.4.1 Functional Testing (Black Box)
3.4.2 Structural Testing (White Box)
3.4.3 Domain Testing
3.4.4 Non funotional testing techniques
3.4.5 Validation testing Activities (Low level testing, high level testing)
3.4.6 Black box vs. White Box
4, Software Qualities and Software Quality Assurance 10 brs
4.1 Software quality and quality assurance
4.2 Software quality factors
43° Software quality assurance
44° SQA activates
45° Software quality standards: SEI, ISO
4.6 Software reviews
4.7, Cost impact of software defects
4.8 Defect amplification and removal
4.9 Formal technical reviews
4.10 The review meeting
4.11 Review reporting and record keeping
4.12 Review guidelines
4.13 A review checklist
4.14 Formal approaches to SQA
4.15 Proof of correctness
4.16 Statistical quality assurance
4.17 The clean room process
5. Software Reliability Ghrs
5.1 Measures of reliability and availability
5.2 Software reliability models
5.3 Software safety
6, Management of Software Engineering 7 hes
6.1 Responsibilities of a software project manager
6.1.1 Job responsibilities of a software project manager
6.1.2 Skills necessary for software project management
6.2 Project Planning,
6.2.1 The SPMP document
6.3 Metries for project size estimation
6.3.1 Line of code (LOC)
6.3.2 Function point metric
6.4 Project estimation techniques
6.4.1 Empirical estimation techniques
6.4.1.1 Expert judgment technique
6.4.1.2 Delphi cost estimation.
64.2 Heuristic techniques A6.4.2.1 Basic COCOMO model
6.4.3 Analytical estimation techniques
6.5 Scheduli
6.6 Organization and team structure
6.6.1 Organization structure
6.6.2 Team structure
6.7 Staffing
6.7.1 Quality of software engineer
6.8 Risk Management
6.8.1 Risk Identification
6.8.2 Risk assessment
6.8.3 Risk containment
6.9 Software configuration management
6.9.1 Necessity of software configuration management
6.9.2 Configuration management activities
6.9.3 Source code control system (SCCS) and RCS
7. Object-Oriented Concepts and Principles 4 hrs
7.1 Object-Oriented Paradigm
7.2 Object-Oriented Concepts
7.3 Identifying the Elements of an Object Model
74 Management of Object-Oriented Software Projects
8. Emerging Trends hrs
8.1 Client server software
8.2 CORBA
8.3 COM/DCOM
8.4 Service oriented architecture (SOA)
8.5 Software as a service (SaaS)
Case Stud
An individual case study should be given to each student on software project. 10% of
sessional marks should be allocated for evaluation
Text Books:
1. Pressman. R. S. Software Engineering a practitioners Approach. McGraw Hill
2, Mall, R.: Fundamentals of Software Engineering. PHI.
References:
1. C. Ghezzi, M. Jazayeri, and D, Mandi
Prentice Hall of India, Lid.
Sommerville. I: Software Engineering, Pearson
Bali-Bali: Software Engineering, S.K. Kataria & Sons
Pankaj Jalote’s: Software Engineering- A precise Approach Wiley India
Richard Fairley: Software Engineering Concepts, Tata MeGraw-Hill Edition
Eve Adersson, Philip Greenspun, Andrew Grumet; Software Engineering or
Internet Applications, PHI
Fundaments of Software Engineering,
auewnWeb Technologies I
Evaluation:
Theory Practical Total
Sessional 30 20 | 30.
Final | 30 ~ 50
Total | 80 20 aioe =|
Course Objectives:
|. To focus on the phenomenon known as World Wide Web (WWW) and Domain name
hierarchy.
‘To impart the new concepts in Web Technologies.
‘To identify, evaluate and apply appropriate technologies for web development.
To develop understanding about the diferent technologies used in World Wide Web
including the concept of HTML, CSS, Java script, XML and jQuery.
Parr
Learning Outcome
1. This course enables students to understand web page site planning and management.
2. Students will be able to develop advanced HTML pages with help of frames, scripting
languages and evolving technologies like CSS, jQuery and XML.
‘Course Contents:
Internet and WWW 4 hes
1.1 Introduction to internet and its applications, Internet service _ providers, domain
name server, internet address;
1.2 Protocols used in intemet (HTTP, HTTPS, FTP, SMTP, TCP, IP, UDP);
1.3 World Wide Web and its evolution, uniform resource locator (URL), web server and
browsers;
1.4 search engine, meta search engine;
1.5 Domain name and its hierarchy, Issues related with domain name registration, DNS.
concept;
1.6 Client server architecture, cross browser communication
HTML and Graphies 10 hrs
2.1 Introduction to HTML,, Creating basie HTML file, core elements and
attributes, comment,
;
2.2 HTML basis
2.2.1 Basic text formatting, Phrase elements, lists, ordered lists, unordered lists,
nesting of lists, Using character entities for special character,
element and
attributes;
2.2.2 Grouping elements
2.3 Links and Navigation
-1 Linking to other web pages, linking to email address, Understanding
lirectories end directories structure, Understanding URLs, Absolute and relative
URIs, Advanced email links;
2.4 Images, Audio and Video
2.4.1 Adding images, images as link, Image maps, Client side and server side image
maps:
2.4.2 Choosing the right image format, Gif images, animated gif, jpeg, png, keeping
file size small;2.4.3 Working with multimedia, Exploring audio and video file formats, describing
multimedia elements,