Course Code |
Course Name |
Load
Distribution (L T P C) |
TCS 602 |
Mobile Application Development |
2 1 0 3 |
After Completing this course students will be
able to learn:
1.
Setup and install environment for development of android based mobile applications
2.
Develop native apps for android
based devices.
3.
Implement user interaction logic
using android application components
4.
Create advanced UI for android applications and implement event handling
5. Build android based applications that generate and use
persistent data using a client side database like SQLite.
UNIT – I 10Hours
Mobile technology : Overview of Mobile operating systems and platforms, Android- Installation and setting up of Android application development environment using Android Studio and SDK tools, debugging tools, Android Project components.
Android Architecture: Linux Kernel, Libraries, Android Runtime, Application Framework, Android Startup and Zygote, Android Permission model, Android Manifest File.
Android Application Components : Android application components:- Activity- Life cycle, Creating activities, Broadcast Receivers- Generating broadcasts and handling types of broadcasts, Services- Life cycle and using Started services, Local bounded services, Messenger based services, Intent Services and Asyn Tasks, Intents and pending Intents, System Services.
UI Design And Navigation: UI Layouts and Layout properties( linear, relative, constraint etc), Fundamental Android UI Design, Drawable Resources, Images, Graphics, Audio, Video, Styles, Thems, Views( texts, buttons, spinners etc), view groups( Adapter, Grid, Recycler etc), Material design, animation and Transitions.
Event based Programming: Event handling, Threads in Android using Executor framework, Swipes, Menus, Dialogs, Toasts, Notifications in Android, Lists& Adapters, Fragments. Sending requests and receiving responses from remote server( Rest api) using high end libraries.
Working with Database: Android Persistent data: preference files, working with internal and external files and directories, using Content providers to access and share data across applications ,database connectivity using SQLite.
1.
Professional Android fourth edition, Reto Meier, Ian Lake Wiley India Pvt Ltd.
2.
Android Programming: The Big Nerd Ranch Guide (3rd Edition) by Bill Phillips.
1.
Android Studio Development
Essentials by Neil Smyth
2.
Android
Application Development Cookbook: 93 Recipes for Building Winning Apps by Wei-Meng Lee.
Course Code |
Course Name |
Load
Distribution (LT P C) |
TCS-603 |
Cloud Computing |
3 0 0
3 |
After Completing this course students will be
able to learn:
1.
Understand Cloud Computing,
Cloud Service Model, etc.
2.
Designing of Virtual Servers,
Private Cloud.
3.
Apply various techniques for the development of Public Cloud.
4.
Development of various Security
models for the cloud.
5. Implementation of various techniques and
tools for development
of enterprise application
for business.
Unit I 7 Hours
Overview of Cloud Computing: Brief history and evolution – History of Cloud Computing, Evolution of Cloud Computing, Traditional vs. Cloud Computing. Why Cloud Computing, Cloud service models (IaaS, PaaS & SaaS). Cloud deployment models (Public, Private, Hybrid and Community Cloud), Benefits and Challenges of Cloud Computing.
Working with Private Cloud: Basics of virtualization, Virtualization technologies, cServer virtualization, VM migration techniques, Role of virtualization in Cloud Computing. Business cases for the need of Cloud computing environment, Private Cloud Definition, Characteristics of Private Cloud, Private Cloud deployment models, Private Cloud Vendors, Private Cloud Building blocks namely Physical Layer, Virtualization Layer, Cloud Management Layer, Challenges to private Cloud, Virtual Private Cloud. Implementing private cloud (one out of CloudStack, OpenStack, Eucalyptus, IBM or Microsoft)
Working with Public Clouds: What is Public Cloud, Why Public Cloud, When to opt for Public Cloud, Public Cloud Service Models, and Public Cloud Players. Infrastructure as a Service Offerings, IaaS Vendors, PaaS offerings, PaaS vendors, Software as a Service. Implementing public cloud (one out of AWS, Windows Azure, IBM or Rackspace)
Overview of Cloud Security and Multi-Cloud Management Systems: Explain the security concerns in Traditional IT, Introduce challenges in Cloud Computing in terms of Application Security, Server Security, and Network Security. Security reference model, Abuse and Nefarious Use of Cloud Computing, Insecure Interfaces and APIs, Malicious Insiders, Shared Technology Issues, Data Loss or Leakage, Account or Service Hijacking, Unknown Risk Profile, Introduce the different vendors offering Cloud Security for public and private clouds.
Explain concept of multi-cloud management, Challenges in managing heterogeneous clouds, benefits and advantages of multi-cloud management systems. Implementing Multi-Cloud Management System (e.g. RightScale Cloud Management System)
Business Clouds and Future directions in Cloud Computing: Cloud Computing in Business, Various Biz Clouds focused on industry domains (Retail, Banking and Financial sector, Life Sciences, Social networking, Telecom, Education). Cloud Enablers (Business Intelligence on cloud, Big Data Analytics on Cloud)
Future technology trends in Cloud Computing with a focus on Cloud service models, deployment models, cloud applications, and cloud security. Migration paths for cloud, Selection criteria for cloud deployment. Current issues in cloud computing leading to future research directions.
1. Cloud Computing: Principles and paradigms By Raj Kumar Buyya, James Broberg, AndrezeiM.Goscinski, 2011
2. Cloud Computing for dummies, By Judith Hurwitz, Robin Bllor, Marcia Kaufman, Fern Halper, 2009.
3. Cloud Computing: A Practical Approach, By Anthony T. Velte, Toby J. Velte, and Robert Elsenpeter, McGraw Hill,
2010.
4. Handbook of Cloud Computing, By BorkoFurht,
Armando Escalante (Editors), Springer, 2010.
1.
Cloud
computing: Implementation, management and security By Rittinghouse,
John, W. Cloud Computing Bible, By Barrie Sosinsky, Wiley, 2011.
2.
Cloud Computing Architected: Solution Design Handbook by Rhoton, John.
3. Cloud Security, A comprehensive Guide to Secure Cloud
Computing by Krutz, Ronald L.; Vines, Russell Dean
Course
Code |
Course
Name |
Load
Distribution (L T P C) |
TCS
604 |
Network and Cyber Security |
3 0 0
3 |
After Completing this course students will be
able to learn:
1.
Classify
several techniques to encrypt and decrypt data. DES for encrypting electronic
data and use of ciphers to make data more authenticated and authorized.
2.
Extend the
encryption algorithms from security perspective. Principles using keys for
encryption will be covered by using several key based algorithms.
3.
Determine the
techniques for mapping the data of arbitrary size to the fixed size. User
authentication, authentication-via-secret and session management techniques are
also applied.
4.
Classify
security mechanism, security policies, security components (such
as firewalls),
port security and protection to secure networks
based on type of network
used.
5.
Develop
relevant mechanism to prevent from several attacks, ethical considerations, and
understanding of security issues applied while
designing.
Information Security: Introduction To Security: Attacks, Services & Mechanisms, Security Requirements, Classical Encryption Techniques: Substitution & Transposition techniques, Cryptanalysis, Steganography. Data Encryptions Standard: Simplified-DES, DES, Double DES, Meet-in-the-Middle attack, Triples DES, Cryptanalysis, Block Ciphers, Block Cipher Modes Of Operations, Stream Ciphers. Introduction to AES.
Encryption Algorithm: Diffie-Hallman Algorithm. Public Key Encryption: Principal Of Public-Key Crypto-systems, RSA Algorithm, RSA Cryptosystem, Key Management, Fermat’s & Euler’s Theorem. Overview of IPSec – Modes of IPSec, IP and IPv6-Authentication Header- Encapsulation Security Payload (ESP)- Internet Key Exchange (Phases of IKE, ISAKMP/IKE Encoding).
Message Authentication & Hash Functions: Authentication Requirements, Message Authentication Codes, Hash Functions, Message Digest Algorithm, Secure Hash Algorithm, Digital Signatures, Authentication Protocol, Digital Signature Standard.
Network, Web
& System Security: Directory Authentication Service, Electronic Mail Security,
Pretty Good Privacy (PGP), S / MIME. Web Security: Secure Socket Layer & Transport Layer Security, Secure Electronic
Transaction. System
Security: IDS, Firewall: Definitions,
Construction and WorkingPrinciples.
Cyber Security and Cyber Law: E-Governance and IT Act 2000,Legal
recognition of electronic records, Legal recognition of digital signature. Different kinds of buffer
overflow attacks:
Stack overflows, string overflows, Heap and Integer overflows. Internal Attacks: Emails, Mobile Phones, Instant Messengers, FTP Uploads, Dumpster Diving, Shoulder Surfing. DOS Attacks :Ping of Death, Teardrop, SYN flooding , Land Attacks, Smurf Attacks, UDP flooding, Hybrid DOS Attacks, Application Specific, Distributed Dos Attacks.
1.
Behrouz A Forouzan,
Debdeep Mukhopadhyay “Cryptography and Network Security”
3rd Ed. McGrow Hill, New Delhi
2.
William Stallings, “Cryptography
and Network Security: Principles and Practice”,
4thEd.,Prentice Hall, New Jersey.
1.
Johannes A. Buchmann,
“Introduction to Cryptography”, Springer- Verlag.
2.
Bruce Schneier,
“Practical Cryptography”, Wiley DreamTech India
Course Code |
Course Name |
Load
Distribution (L T P C) |
TCS 605 |
Advance
Java Programming |
3 0 0
3 |
Learning Outcome:
After Completing this course students will be able to
learn:
1.
Illustrate the concepts of Object Oriented Programming approach using Java.
2.
Designing dynamic web based application .
3.
Development of
application and web site that involves storage and retrieval of data using different databases.
4. Generate enterprise web based application.
5.
Creation of Real time projects
UNIT – I 6 Hours
Java Networking: Exploring java.net package, Networking basics: Socket, Client server, reserved Sockets, Internet addressing, TCP sockets, UDP sockets, creating a server that sends data, Creating a client that receives data, two way communication between server and client.
Java Database Connectivity (JDBC): JDBC-ODBC Bridge; The connectivity model; the driver manager; navigating the result set Object contents; java.sql Package; The JDBC exception classes, accessing a database from a JSP page, Application-specific Database Action, Developing Java Beans in a JSP page, introduction to Struts framework. Connecting to Remote database.
JSP: Introduction to JSP, JSP processing, JSP Application Design, Tomcat Server, Implicit JSP objects, Conditional Processing, Declaring variables and methods, Error Handling and Debugging, Sharing data between JSP pages-Sharing Session and Application Data.
Servlet: Introduction to Servlets, Lifecycle, JSDK, Servlet API, Brief origin and advantages over CGI, J2EE Servlet 2.x Specification, Writing small Servlet Programs, Servlet Packages: HTTP package, Working with Http request and response, Security Issues., Deployment Descriptor, Inter Servlet Collaboration, Session: Definition, State on web, Different ways to track sessions.
Enterprise Java Beans EJB, benefits, EJB Architecture, EJB Roles, Types of EJB, Building small session bean application, Home Interface, Remote Interface, Session bean: stateless, stateful session beans Struts 2: MVC, Struts Architecture, Benefits of struts, control flow, struts.xml, Filter Dispatcher, Action Support, Building a small Struts 2 application.
1. Elliotte Rusty Harold, “ Java Network Programming”, O’Reilly
publishers, 2000
2. Ed Roman, “Mastering Enterprise Java Beans”, John Wiley & Sons Inc., 1999.
3. Hortsmann& Cornell,
“Core Java 2 Advanced Features,
Vol II”, Pearson Education, 2002.
1.
Web reference: http://java.sun.com.
2. Patrick Naughton, “COMPLETE REFERENCE: JAVA2”, Tata McGraw-Hill, 2003