faculty of engineering technology & researchfetr.ac.in/wp-content/uploads/2017/06/sem-8.pdf ·...
TRANSCRIPT
FACULTY OF ENGINEERING TECHNOLOGY & RESEARCH
ISROLI, BARDOLI
COMPUTER SCIENCE & ENGINEERING DEPARTMENT
STUDENT TERM PLANNER
BE- VIII (SEM-8)
(TERM’162: 19/12/2016 TO 20/04/2017)
SR
NTIME
TH. PR.
0 644 84 24 24 216 78
PRINCIPAL
Mr. K. P. Bhatt 1. Mr. J. M. Patel
2. Ms. A. N. Bodhit
3. Ms. H. R. Rana
Prof. B. R. Bhatt
AI
CS-34
(HJS)
L 8
Convener: Members:
BDA
(BRB)
L3
IOT
(HRR)
A-206
BDA
CSE-32
(VCJ)
L3
PRJ-II
(DRC)
L8
PRJ-II
(HRR)
L8
PRJ-I
(DRC)
L8
(BGP)
L7
PRJ-I
(HRR)
L8
PRJ-II
(HJS)
L8
BDA
(BRB)
L3
ANDROID
(DJR)
L4
IOT
(HRR)
A-206
AI
CS-31
(DRC)
L 7
AI
CS-32
HJS
L 8
PRJ-II
(BRB)
L8
PRJ-II
(VCJ)
L8
(NDP)
L7
PRJ-II
Dept. Head
2180709 IOT AND APPLICATIONSBIG DATA ANALYTICS2180710
MR. NIKUNJ Y. KANSARA
VCJ MR. VIVEK C. JOSHINVJ MR. NARENDRA V. JAGTAP
Total Hours
FACULTY OF ENGINEERING TECHNOLOGY & RESEARCH, ISROLI-AFWACOMPUTER SCIENCE & ENGINEERING DEPARTMENT
TIME-TABLE
CLASS : COMP '13 (Room No. A - 206) TERM :162 (Dec '16 to Apr '17)
SATURDAY
110:2
5
TO
*** ****
MONDAY TUESDAY WEDNESDAY THURSDAY FRIDAY
ANDROID
(DJR)
L4
DATE:07/01/2017
BDA
(VCJ)
L3
IOT
(NDP)
A-206
PRJ-IIPRJ-II
(NYK)
L8
RECESS
312:2
0
TO
AI
(DRC)
11:2
5
TO
AI
(HJS)
PRJ-II
(DJR)
L8
ANDROID
(JMP)
L4(ADP)
L8
(ADP)
L8
PRJ-II
(NDP)
L7(KPB)
PRJ-II
(HRR)
L7
BDA
(VCJ)
L3
IOT
(NDP)
A-206
PRAYER
ANDROID
(JMP)
L4
2AI
(DRC)
PRJ-II
(DRC)
L7
PRJ-II
(ANB)
L7
PRJ-II PRJ-II AI
(HJS)
PRJ-IIPRJ-II
(KPB)
L7
***
***
(ANB)
L7
***
PRJ-II
(BRB)
L8
***
SUBJECT
CODE
SUBJECT
NAME
RECESS
***
PRJ-II
(NVJ)
L7
FACULTY NAME
41:40
TO
2:35 PRJ-II
(BGP)
L7
TPS
TPS
PRJ-II
(HJS)
L7
IOT
CSE-31
(NDP)
L5
PRJ-II
(DJR)
L7
PRJ-II
(NYK)
L8
PRJ-I
(DJR)
L8
L8
PRJ-II
(BGP)
L8
PRJ-I
(VCJ)
L8
AI
CS-33
(DRC)
L 7
FACULTY
INITIALS
DJRHJS
JMP
21807062180703
2180715
PROJECT IIARTIFICIAL INTELLIGENCE
ANDROID PROGRAMMING
DRC MRS. DHARMISTHA R. CHAUDHARI
NDP MS. NIYANTA D. PANCHALHRR MS. HENITA R. RANABGP MISS. BHAGYASRI G. PATELKPB MR. KARAN P. BHATT
MR. HEMANG J. SHAH
MR. JATIN M. PATEL
ADPMS. ANGIRA N. BODHITMR. ANKIT D. PRAJAPATI
NYK
52:35
TO
3:30
ANB
74:35
TO
5:30
***
PRJ-II
(NYK)
L8
63:40
TO
4:35
PRJ-II
(NVJ)
L7
PRJ-II PRJ-II
(VCJ)
L8
ANDROID
CSE-33
(DJR)
L4
PRJ-II
(JMP)
L8
MISS. BHAVINI R. BHATT
MR. DHAVAL J. RANA
BRB
PRJ-II
(JMP)
L7
***
***
Date: 06-12-2016
Sr.
NoCourse Sem/Year Term Starting Date Term End
Tentative Exam
Date
1 BE/PDDC II Even 06-02-2017 18-05-2017 25-05-2017
2 BE/PDDC IV Even 16-01-2017 18-05-2017 25-05-2017
3 BE/PDDC VI Even 19-12-2016 20-04-2017 27-04-2017
4 BE/PDDC VIII Even 19-12-2016 20-04-2017 27-04-2017
5 B.Pharm II Even 06-02-2017 27-05-2017 01-06-2017
6 B.Pharm IV Even 22-12-2016 12-04-2017 20-04-2017
7 B.Pharm VI Even 22-12-2016 12-04-2017 20-04-2017
8 B.Pharm VIII Even 22-12-2016 12-04-2017 20-04-2017
9 M.Pharm II Even 16-01-2017 18-05-2017 25-05-2017
10 M.Pharm IV Even 08-12-2016 07-04-2017 10-04-2017
11 D.Pharm P-I Yearly 01-08-2016 08-05-2017 11-05-2017
12 D.Pharm P-II Yearly 20-06-2016 13-04-2017 17-04-2017
13 DE II Even 16-01-2017 26-05-2017 01-06-2017
14 DE IV Even 19-12-2016 20-04-2017 27-04-2017
15 DE VI Even 19-12-2016 20-04-2017 27-04-2017
16 DE VIII Even 19-12-2016 20-04-2017 27-04-2017
17 M.E. II Even 16-01-2017 18-05-2017 25-05-2017
18 M.E. IV Even 08-12-2016 07-04-2017 10-04-2017
19 MCA II Even 16-01-2017 18-05-2017 25-05-2017
20 MCA IV Even 23-01-2017 25-05-2017 30-05-2017
21 MCA VI Even 08-12-2016 07-04-2017 10-04-2017
22 MBA II Even 16-01-2017 18-05-2017 25-05-2017
23 MBA IV Even 16-01-2017 18-05-2017 25-05-2017
24 MAM II Even 22-12-2016 12-04-2017 27-04-2017
25 MAM IV Even 22-12-2016 12-04-2017 27-04-2017
26 MAM VI Even 08-12-2016 07-04-2017 10-04-2017
27 MAM VIII Even 22-12-2016 12-04-2017 20-04-2017
28 MAM X Even 26-12-2016 18-04-2017 27-04-2017
29 MTM IV Even 16-01-2017 18-05-2017 25-05-2017
30 MTM VI Even 19-12-2016 20-04-2017 27-04-2017
31 MTM VIII Even 19-12-2016 20-04-2017 27-04-2017
32 MTM X Even 08-12-2016 07-04-2017 10-04-2017
33 MPM IV Even 22-12-2016 12-04-2017 20-04-2017
34 MPM VI Even 22-12-2016 12-04-2017 20-04-2017
35 MPM VIII Even 22-12-2016 12-04-2017 20-04-2017
36 MPM X Even 22-12-2016 12-04-2017 20-04-2017
37 B Arch II Even 16-01-2017 18-05-2017 25-05-2017
38 B Arch IV Even 22-12-2016 24-04-2017 27-04-2017
39 B Arch VI Even 22-12-2016 24-04-2017 27-04-2017
40 B Arch VIII Even 08-12-2016 07-04-2017 10-04-2017
41 B Arch X Even 08-12-2016 07-04-2017 10-04-2017
42 B HMCT II Even 16-01-2017 18-05-2017 25-05-2017
43 B HMCT IV Even 08-12-2016 07-04-2017 10-04-2017
GUJARAT TECHNOLOGICAL UNIVERSITY
No. GTU/AC/even-term/2016/9318
Academic Calendar – 2016-17 (Even Term)
44 B HMCT VI Even 08-12-2016 07-04-2017 10-04-2017
45 B HMCT VIII Even 08-12-2016 07-04-2017 10-04-2017
46 B Plan II Even 16-01-2017 18-05-2017 25-05-2017
47 B Plan IV Even 22-12-2016 12-04-2017 20-04-2017
48 B Plan VI Even 22-12-2016 12-04-2017 20-04-2017
49 B Plan VIII Even 22-12-2016 12-04-2017 20-04-2017
50 MCA Integrated II Even 16-01-2017 18-05-2017 25-05-2017
51 MCA Integrated IV Even 19-12-2016 20-04-2017 27-04-2017
52 MCA Integrated VI Even 08-12-2016 07-04-2017 10-04-2017
53 MCA Integrated VIII Even 08-12-2016 07-04-2017 10-04-2017
54 Pharm D P-I Yearly 01-08-2016 08-05-2017 11-05-2017
9th Feb to 17th Feb, 2017
28-02-2017
01-05-2017
24th April & 25th April 2017
18-05-2017
24th April & 25th April 2017
10-06-2017
25th May 2017
20-06-2017
1st June 2017
From 10-06-2017 onwards
1st May 2017 to 17th June 2017
sd-
I/c Registrar
Copy to:
Commissioner, Commissionerate of Technical Education, 2nd Floor, Block No.2,
Dr. Jivraj Mehta Bhavan, Gandhinagar – 382 010 for information
M.E. -IV Thesis Submission:
M.Pharm.-IV Thesis Submission:
M.E. -IV Dissertation Phase-II:
M. Pharm. -IV Dissertation Phase II:
M. E.-IV Extended Thesis Submission:
Research Week for M.Pharm:
Research Week for M.E:
Extended Dissertation Phase-II (M. E.-IV):
Extended Dissertation Phase-II (M. Pharm.-IV):
Viva for GCSR/CP:
Summer Vacation:
M. Pharm.-IV Extended Thesis Submission:
FACULTY OF ENGINEERING TECHNOLOGY AND RESEARCH COMPUTER SCIENCE & ENGINEERING DEPARTMENT
B.E III (8th Semester) Course Content Subject Name: ARTIFICIAL INTELLIGENCE (2180703) Type of course: Regular Prerequisite: Data Structures, Mathematics Rationale: With the usage of Internet and World Wide Web increasing day by day, the field of AI and Its techniques are being used in many areas which directly affect human life. Various techniques for encoding knowledge in computer systems such as Predicate Logic, Production rules, Semantic networks find application in real world problems. The fields of AI such as Game Playing, Natural Language Processing, and Connectionist Models are also important. Student should know some programming language for AI. Course Outcome: After studying this course students will be able to 1. Explain search methods. 2. Evaluate knowledge representation methods using predicate logic and rules. 3. Use Symbolic and Statistical reasoning techniques. 4. Explain weak and strong filler structures. 5. Use Game Playing techniques. 6. Perform Natural language processing. 7. Model AI problems using Connectionist methods 8. Evaluate predicate logic using Prolog Programming language.
Sr. No. Content Total
Hrs %
Weightage 1 What is AI?:The AI Problems, The Underlying Assumption, What Is An AI Techniques,
The Level Of The Model, Criteria For Success, Some General References, One final Word
02 04
2 Problems, State Space Search & Heuristic Search Techniques: Defining The Problems As A State Space Search, Production Systems, Production Characteristics, Production System Characteristics, And Issues In The Design Of Search Programs, Additional Problems. Generate-And-Test, Hill Climbing, Best-First Search, Problem Reduction, Constraint Satisfaction, Means-Ends Analysis.
05 10
3 Knowledge Representation Issues: Representations And Mappings, Approaches To Knowledge Representation.
03 05
4 Using Predicate Logic: Representation Simple Facts In Logic, Representing Instance And Isa Relationships, Computable Functions And Predicates, Resolution.
04 08
5 Representing Knowledge Using Rules : Procedural Versus Declarative Knowledge, Logic Programming, Forward Versus Backward Reasoning.
04 08
6 Symbolic Reasoning Under Uncertainty: Introduction To Non- monotonic Reasoning, Logics For Non-monotonic Reasoning.
04 08
7 Statistical Reasoning: Probability And Bays’ Theorem, Certainty Factors And Rule-Base Systems, Bayesian Networks, Dempster- Shafer Theory, Fuzzy Logic.
03 05
8 Weak Slot-and-Filler Structures: Semantic Nets, Frames. 03 05
9 Strong Slot-and-Filler Structures: Conceptual Dependency, Scripts, CYC. 03 05
10 Game Playing: Overview, And Example Domain: Overview, Mini Max, Alpha-Beta Cut-off, Refinements, Iterative deepening, The Blocks World, Components Of A Planning System, Goal Stack Planning, Nonlinear Planning Using Constraint Posting, Hierarchical Planning, Reactive Systems, Other Planning Techniques.
06 12
11 Understanding: What is understanding?,What makes it hard?,As constraint satisfaction. 02 04
12 Natural Language Processing: Introduction, Syntactic Processing, Semantic Analysis, Semantic Analysis, Discourse And Pragmatic Processing, Spell Checking
05 08
13 Connectionist Models: Introduction: Hopfield Network, Learning In Neural Network, Application Of Neural Networks, Recurrent Networks, Distributed Representations, Connectionist AI And Symbolic AI.
04 06
14 Introduction to Prolog: Introduction To Prolog: Syntax and Numeric Function, Basic List Manipulation Functions In Prolog, Functions, Predicates and Conditional, Input, Output and Local Variables, Iteration and Recursion, Property Lists and Arrays, Miscellaneous Topics, LISP and Other AI Programming Languages.
08 12
Reference Books: 1. “Artificial Intelligence”-By Elaine Rich And Kevin Knight (2nd Edition) Tata McGraw-Hill 2. “Artificial Intelligence: A Modern Approach” -By Stuart Russel, Peter Norvig, PHI 3. “Introduction to Prolog Programming”- By Carl Townsend. 4. “PROLOG Programming For Artificial Intelligence”-By Ivan Bratko (Addison-Wesley) 5. “Programming with PROLOG”–By Klocksin and Mellish. List of Experiments: 1. Write a program to implement Tic-Tac-Toe game problem. 2. Write a program to implement BFS(for8 puzzle problem or Water Jug problem or any AI search problem) 3. Write a program to implement DFS(for8 puzzle problem or WaterJug problem or any AI searchproblem) 4. Write a program to implement Single Player Game (Using Heuristic Function) 5. Write a program to Implement A* Algorithm. 6. Write a program to solve N-Queens problem using Prolog. 7. Write a program to solve 8puzzle problem using Prolog. 8. Write a program to solve travelling salesman problem using Prolog. 9. Convert following Prolog predicates into Semantic Net cat(tom). cat(cat1). mat(mat1). sat_on(cat1,mat1). bird(bird1). caught(tom,bird1). like(X,cream):–cat(X). mammal(X):–cat(X). has(X,fur):– mammal(X). animal(X):– mammal(X). animal(X):– bird(X). owns(john,tom). is_coloured(tom,ginger). 10. Write the Conceptual Dependency for following statements. (a) John gives Marya book (b) John gave Mary the book yesterday Design based Problems (DP)/Open Ended Problem: 1. Describe major subfields and paradigms of AI. 2. What are the major challenges in the field of AI? 3. How AI can be used to develop a better search Engine? Major Equipment: Computer/ Prolog Language List of Open Source Software/learning website: 1. https://www.journals.elsevier.com/artificial-intelligence/ 2. https://www.technologyreview.com/s/534871/our-fear-of-artificial-intelligence/ 3. http://www.sanfoundry.com/artificial-intelligence-mcqs-inductive-logic-unification-lifting-1/ Active Learning Assignments: Preparation of power-point slides, which include videos, animations, pictures, graphics for better understanding theory and practical work – The faculty will allocate chapters/ parts of chapters to groups of students so that the entire syllabus to be covered. The power-point slides should be put up on the web-site of the College/ Institute, along with the names of the students of the group, the name of the faculty, Department and College on the first slide. The best three works should submit to GTU.
FACULTY OF ENGINEERING TECHNOLOGY AND RESEARCH
COMPUTER SCIENCE & ENGINEERING DEPARTMENT
B.E IV (8th
semester) Course Content Subject Name: IOT AND APPLICATIONS (2180709)
Type of course: Bachelor of Engineering
Prerequisite: Fundamentals of computer network, wireless sensor network, communication & internet technology, web
technology, information security.
Course Outcomes:
After studying this course student will able to
1. Knowledge of IoT from a global context and its application.
2. Determine the Market perspective of IoT.
3. Knowledge of Devices, Gateways and Data Management in IoT.
4. Building state of the art architecture in IoT.
5. Application of IoT in Industrial and Commercial Building Automation and Real World Design Constraints.
6. Security issues, Privacy issues & Trust in IoT -Data-Platforms.
7. Knowledge of Eclipse IOT Projects
8. Knowledge of different parts of IOT Toolkit (Rasberry Pi ) with existing System components.
9. Determine working of an HTTP- to –CoAP semantic mapping proxy in IOT Toolkit.
10.Knowledge of Zetta.
Sr.
No.
Content Total Hrs
1. IoT & Web Technology The Internet of Things Today, Time for Convergence, Towards the IoT Universe, Internet of Things
Vision, IoT Strategic Research and Innovation Directions, IoT Applications, Future Internet
Technologies, Infrastructure, Networks and Communication, Processes, Data Management, Security,
Privacy & Trust, Device Level Energy Issues, IoT Related Standardization, Recommendations on
Research Topics.
08
2. M2M to IoT – A Basic Perspective– Introduction, Some Definitions, M2M Value Chains, IoT Value
Chains, An emerging industrial structure for IoT, The international driven global value chain and
global information monopolies.
M2M to IoT-An Architectural Overview– Building an architecture, Main design principles and
needed capabilities, An IoT architecture outline, standards considerations
10
3. IoT Architecture -State of the Art – Introduction, State of the art, Architecture Reference Model-
Introduction, Reference Model and architecture, IoT reference Model, IoT Reference Architecture-
Introduction, Functional View, Information View, Deployment and Operational View, Other Relevant
architectural views.
10
4. IoT Applications for Value Creations Introduction, IoT applications for industry: Future Factory Concepts, Brownfield IoT, Smart Objects,
Smart Applications, Four Aspects in your Business to Master IoT, Value Creation from Big Data and
Serialization, IoT for Retailing Industry, IoT For Oil and Gas Industry, Opinions on IoT Application
and Value for Industry, Home Management, eHealth
08
5. Internet of Things Privacy, Security and Governance Introduction, Overview of Governance, Privacy and Security Issues, Contribution from FP7 Projects,
Security, Privacy and Trust in IoT-Data-Platforms for Smart Cities, First Steps Towards a Secure
Platform, Smartie Approach. Data Aggregation for the IoT in Smart Cities, Security 5
08
Reference Books: 1. Vijay Madisetti and Arshdeep Bahga, “Internet of Things (A Hands-on-Approach)”, 1st Edition, VPT, 2014
2. Francis daCosta, “Rethinking the Internet of Things: A Scalable Approach to Connecting Everything”, 1st
Edition, Apress Publications, 2013
3. Cuno Pfister, Getting Started with the Internet of Things, O‟Reilly Media, 2011, ISBN: 978-1-4493-9357-1
List of Experiments: 1. Define and Explain Eclipse IoT Project.
2. List and summarize few Eclipse IoT Projects.
3. Sketch the architecture of IoT Toolkit and explain each entity in brief.
4. Demonstrate a smart object API gateway service reference implementation in IoT toolkit.
5. Write and explain working of an HTTP- to-CoAP semantic mapping proxy in IoT toolkit.
6. Describe gateway-as-a-service deployment in IoT toolkit.
7. Explain application framework and embedded software agents for IoT toolkit.
8. Explain working of Raspberry Pi.
9. Connect Raspberry Pi with your existing system components.
10. Give overview of Zetta
Design based Problems (DP)/Open Ended Problem: 1. How do you connect and display your Raspberry Pi on a Monitor Or TV?
2. Create any circuitry project using Arduino.
Major Equipment: Raspberry pi, Arduino
List of Open Source Software/learning website: 1. https://github.com/connectIOT/iottoolkit
2. https://www.arduino.cc/
3. http://www.zettajs.org/
4. Contiki (Open source IoT operating system)
5. Arduino (open source IoT project)
6. IoT Toolkit (smart object API gateway service reference implementation)
7. Zetta (Based on Node.js, Zetta can create IoT servers that link to various devices and sensors)
Active Learning Assignments:
Preparation of power-point slides, which include videos, animations, pictures, graphics for better understanding theory
and practical work – The faculty will allocate chapters/ parts of chapters to groups of students so that the entire syllabus to
be covered. The power-point slides should be put up on the web-site of the College/ Institute, along with the names of the
students of the group, the name of the faculty, Department and College on the first slide. The best three works should
submit to GTU.
FACULTY OF ENGINEERING TECHNOLOGY AND RESEARCH
COMPUTER SCIENCE & ENGINEERING DEPARTMENT
B.E. IV (8TH
SEMESTER) Course Content
Subject: ANDROID PROGRAMMING (2180715)
Type of course: Bachelor of Engineering
Prerequisite: Java programming and Object-oriented programming, Knowledge of RDBMS and OLTP
Course Outcomes:
After completion of the course students will be able to
1. Understand the existing state of mobile app development via researching existing apps, meeting with industry
professionals, and formulating new ideas.
2. Display proficiency in coding on a mobile programming platform.
3. Understand the limitations and features of developing for mobile devices.
4. Create a complete Mobile app with a significant programming component, involving the sensors and hardware features of
the phone.
5. Understand the economics and features of the app marketplace by offering the app for download.
Sr. No Content Total
Hrs
%
Weightage
1
The Basics:
● Hello World: Intro to Android, Why develop apps for Android?, Flavors of
Android operating systems, Challenges of developing for Android (multiple
OS, need backwards compatibility, need to consider performance and offline
capability)
● Concept: Create Your First Android App: Overview of the development
process - Java, Android Studio , Project layout in Android Studio, Target and
minimumSDKs, Android Virtual Device (AVD) Monitor, Viewing logs in
logcat and AVD, Android manifest file, App Architecture: An app consists of
one or moreactivities. For an activity, write Java code and layout xml, and
hook them together, and register the activity in the manifest file.
● Concept: Layouts, Views and Resources: Layout elements can be viewed
and edited in Layout Editor and XML, Introduction to the range of UI
elements, Resources (layouts, strings, styles, themes), Identifying resources
with IDs, Programmatically referencing resources using resource IDs, on Click
attribute, Getting user input from a view, Programmatically changing UI
elements, Layout Managers, Defining layouts for Activities, inflating the
layout.
● Concept: Scrolling Views: How to make activities scrollable: compare
ScrollView, ListView, RecyclerView , Getting the resource ID for a UI
element by inflating a layout (needed for RecyclerView) , How to implement
RecyclerView (requires layout managers and ViewHolders) , Performance
impications of different kinds of scrolling UI elements
● Concept: Resources to Help You Learn:
Resources to help you learn: Samples that ship with the SDK, Templates for
projects, developer.android.com, Android developer blog , Android developer
YouTube channel, Source code and samples in github, Stack overflow, Google
search!
● Activities and Intents :About activities, Defining Activities , Activity
Lifecycle , Activity navigation , About intents ,Explicit vs Implicit intents
,Passing info to new activity ,Returning data from activity
● The Activity Lifecycle and Managing State: Activity lifecycle , Activity
lifecycle callback methods , Activity instance state
● Starting Activities with Implicit Intents: Starting activities by sending
implicit intents, Intent filters and enabling your activities to receive intents,
ShareCompat
10 23
● Testing and Debugging, and Backwards Compatibility: Debugging your
apps, Testing your app, Support libraries
2 User Interface: ● User Input Controls: Getting user input , Changing keyboards ,Buttons
,Dialogsand pickers ,Spinners, checkboxes, and radio buttons , Gestures ,
Speech recognition (not done), Sensors (not done)
● Menus: Options menu, contextual menus (floating and action bar), and
popup menu, Adding menu items. Handlingon Clicks frommenus.
● Screen Navigation: Terminology, Different ways a user can navigate
through an app, Action bar, Settings menu, Navigation drawer, Directed
workflow(funnels), Best practices for navigation
● Themes and Styles: Best practices for themes and styles, Performance
benefits for themes, When and how to use drawables, best practices for
drawable, When and how to use nine-patches, best practices for nine-patches,
Tools for creating drawables
● Material Design: What is material design? Material design best practices.
Material Design guidelines, Implementing Material Design look and feel, with
compatibility with previous versions, Support library for Material Design,
Transitions and Animations
● Adapt layouts for multiple devices and orientations: Why we need to
consider different screen sizes and orientations, Screen density (dipordp), How
to create adaptive layouts using resources folders, Different ways to create
images that scale nicely, Images and image formats and how they affect
performance(download speeds).
● Accessibility: Why accessibility matters, Accessibility considerations: Color
blindness, poor vision, poor hearing, physical limitations, Accessibility
guidelines, Testing for accessibility ,Screen readers, Making your app more
accessible: Color and Contrast, button size-->Material Design guidelines,
considerate layout sand navigation
● Localization: How top rep your app for localization, LTR and
RTL(egArabic)text.
● Testing the User Interface: Automated testing of UIs, User testing your UI
with real users, Using the Espresso and UI Automat or frameworks for testing
UIs
10 22
3 Background Tasks: ● Connect to the Internet: Background Tasks, Synchronous versus
async tasks, What is the UI thread and when should you use it?, Example of a
background task—retrieving data over the internet, Creating background tasks.
(Schedule, send data, etc.) ,Implementing AsyncTask (do In
Background(),callbacks) ,Limitations of AsyncTask , Passing info to
background tasks, Initiating background tasks, Scheduling background tasks
(intro only, more later).
● Connecting to the Internet: Permissions, Building URIs, Opening and
closing Internet connections, Parsing JSON in Android.(Because it’s
common.),Sending requests and parsing response.
● AsyncTask Loader: Intro to AsyncTaskLoader, loadIn
Background() , AsyncTaskLoader callbacks, Benefits of loaders
● Broadcast Receivers: What is a Broadcast Receiver and a BroadcastIntent?
,Broadcast Receiver Security and Lifecycle
●Services: What is a service? Long running task without a UI, Difference
between Activity and Service, Start and stop services, Lifecycle methods,
Foreground services, Intent Service class, App priority (critical, high, low),
How to create a new Service.
● Notifications: What is a Notification? , Notification Design Guidelines.
● Triggering, Scheduling, and Optimizing Background Tasks: Alarm Manager
● Transferring Data Efficiently: Less data, less often! Cell radio life cycle,
Job Scheduler. Why to use Job Scheduler instead of
SyncManager/SyncAdapter, Difference between alarms and job schedulers.
10 23
4 Data -- Saving, Retrieving, Loading ● Storing Data in your app: Internal versus external storage, Privacy, sharing,
security, encryption of your data , Shared Preferences: Store private primitive
data in key-value pairs , SQLite Databases: Store structured data in a private
database , Store data on the web with your own network server, Firebase for
storing and sharing data in the cloud,Concept: Preferences , What are Settings
and Preferences? , Settings best practices (harder to take away settings than to
add, for usability reasons, Storing and retrievingpreferences as key/value pairs
using Shared Preference, Different Settings types, Settings menu, Using
Activity and Preference Fragments to allow users to set preferences
● Store data using SQLite database: Overview of SQLite, Open Helper
Android class , Querying (dev) Searching (user) databases , Best practices for
using databases inAndroid , Best practices for testing your database
● Using Content Resolvers to access data: Content Providers and Content
Resolvers work together, what is a content provider? , What is a content
resolver? , How dothey work together? , How to implement and use Content
Resolvers
● Content Providers: When to implement content providers , How to
implement content providers (overview), Content URIs , Uri Matcher, Content
Provider authorities , requiredmethods on Content Provider (query, insert,
delete, update) , MIME types , Contracts , Making content provider data
accessible to other apps by modifying manifest, andprotecting data with
permissions.
● Using Loaders to Load and Display Data: Using loaders to asynchronously
load data into an activity or fragment, Benefits of Loaders -- why use them? ,
Loader states (started, stopped, reset) , Loader Manager , Methods &callbacks
to implement in.
10 22
5 Polish and Publish ● Permissions: The permissions model
● Libraries: Using libraries
● Widgets: What are widgets? When to use them and how to implement them.
● Publishing your App: Different ways to monetize your app (overview only)
● Making and publishing APKs: Guidelines for publishing in Google Play ,
Make and sign the APK, Beta test your app , Publish your app to Google Play
5 10
List of Experiments:
1. Install Android Studio, Hello World, Logging
● Install Android Studio
● Create and Run Hello World on emulator and device.
● Explore project layout.
● Generate and view log statements.
● Explore manifest file.
2. Practical: Make Your First Interactive UI
● Add Views and UI elements in Layout Editor to the app's home screen.
● Edit layout XML.
● Add click behaviour to a button (show a toast).
● Change the UI through a button click
● Write a method to use string resource to define a message to appear in the UI.
● Experiment with using different layouts.
● Explore other UI Elements in the Layout Manager.
3. Practical: Working with TextView Elements
● Use a scroll view for text with minor HTML formatting
4. Practical: Learning Resources
● Get answers from android.developer.com.
● Create new projects with different templates.
● Create a new project based on a sample in the SDK.
● Find out how to add a launcher icon for your app.
● Find out the most popular Android OS in India.
5. Practical: Create and Start Activities
● Create a new activity and layout
● Start the new activity from an existing activity with an explicit intent
● Pass user-entered information from one activity to the other
● Pass information back to the main activity
6. Practical: Lifecycle and State Callbacks
● Add Lifecycle callbacks
● Save and restore instance state
7. Practical: Start Activities with Implicit Intents
● Send an implicit intent to start an activity (open web site)
● Send an implicit intent to start an activity (open location)
● Use an intent filter to allow other apps to start an activity in your app
● Use ShareCompact.IntentBuilder
8. Practical: Using the Debugger
9. Practical: Testing your code
10. Practical: Use support library
11. Practical: Use Keyboards, Input Controls, Alerts, and Pickers
● Experiment in your app with different keyboards for user input, spelling sugg and auto-capitalization.
● Add a spinner input control for selecting one value out of a set of values.
● Create new app to show an alert, and record the user's selection (OK or Cancel).MOVE TO CONCEPT.
● Update app to show date and time pickers and record the user's selections.
12. Practical: Use an Options Menu and Radio Buttons
● Set up an options menu and overflow menu
● Add items to the option (overflow) menu.
● Add radio buttons for user selection.
● Add Up navigation to the app bar.
13. Practical: Create a Recycler View
● Create an activity that displays data in a RecyclerView.
● Make the items in the list clickable
● Add a floating action button to add items to the list
14. Practical: Theme, Custom Styles, Drawables
● Define and use a theme
● Define and use a custom style that uses a drawable
15. Practical: Add a FAB and Cards
● Create an app that uses a Floating Action Button (FAB)
● Add an activity that uses cards. Optionally, style the cards.
● Customize your app's theme and styles to use Material Design styles and colors.
16. Practical: Put yourself in the Users shoes
● Test your app for accessibility, using Talkback and Explore by Touch. Switch to monochrome color space
● Put in earplugs, can you still use your app?
● Wear the darkest glasses you can find, can you still use your gloves?
● Put on gloves, can you still use your app?
● How would you make one of the apps you have written so far more accessible?
17. Practical: Implement Localized Strings
● Create localized strings in your app
● Test by changing default language
18. Practical: Use Espresso to test your UI
● Use Espresso to Test Your UI
19. Practical: Create an AsyncTask
● Create a simple AsyncTask to do work in the background
20. Practical: Google APIs Explorer, JSON, Books API
● Use the Books API in the Google APIs Explorer to investigate request formatand JSON response format
Create a new app that uses the Books API and AsyncTask to search for the author of abook.
● Write the code to parse the response and extract and display the relevant information
● Debug errors when the Internet permission is missing
● Add the missing permission to the Android Manifest.
● Verify your fix by running and testing your app.
21. Practical: Use AsyncTaskLoader
● Use AsyncTaskLoader instead of AsyncTask to show book search results in aRecyclerView
22. Practical: BroadcastReceiver
● Create an app with a BroadcastReceiver
23. Practical: Notifications
● Trigger a Notification
● Add Actions to your Notification
24. Practical: Alarm Manager
● Implement an alarm manager
25. Practical: Job Scheduler
● Use JobScheduler to do background updates
26. Practical: Firebase Job Dispatcher
27. Practical: Get and Save User Preferences
● Implement Settings menu to allow users to enter preferences.
● Implement code to retrieve and user user preferences
28. Practical: Save user data in a database
● Create an app that allows users to enter notes
● Save the notes in a SQLite database
● Create an app that stores data in an SQL database.
● Display the data in a RecyclerView.
● Allow users to add, delete, and edit data items.
29. Practical: Querying and Searching a Database
30. Practical: Implement a Content Provider
● Add a content provider for your SQLite database
31. Practical: Use a ContentResolver to query your data
● Use a content resolver to query the database
● Display the results of the query
● Use the content resolver to add data to the database
32. Practical: Implement a Loader
● Implement a loader
● Register a Listener for the Loader
● Test the loader by checking that the Items in the UI update when the data generated by the loader changes
● register a Listener for the Loader
● Test the loader by checking that the Items in the UI update when the underlying data changes
33. Practical: Beta testing your app
● running a beta test on Google Play
FACULTY OF ENGINEERING TECHNOLOGY AND RESEARCH
COMPUTER SCIENCE & ENGINEERING DEPARTMENT
B.E III (8th
Semester) Course Content
Subject Name: BIG DATA ANALYTICS (2180710)
Type of course: Elective Prerequisite: NA
Rationale: NA
Course Outcome: After studying this course students will be able to
1. Build and maintain reliable, scalable, distributed systems with Apache Hadoop.
2. Use Tools like Pig, Hive, HiveQL, HBase and Zookeeper.
3. write Map-Reduce based Applications using Hadoop and Spark.
4. Design and build MongoDB based Big Data Applications and MongoDB query language.
5. Understand difference between conventional SQL query language and NoSQL basic concepts.
6. Employ tools and technologies to analyze Big Data.
Sr.
No.
Content Total
Hrs
%
Weightage
1 Introduction to Big Data : Introduction– distributed file system–Big Data and its
importance, Four Vs, Drivers for Big data, Big data analytics, Big data applications.
Algorithms using map reduce
06 13%
2 Introduction to Hadoop And Hadoop Architecture: Big Data – Apache Hadoop &
Hadoop EcoSystem, Moving Data in and out of Hadoop – Understanding inputs and
outputs of MapReduce - Data Serialization
12 25%
3 HDFS, HIVE And HiveQL, HBase : HDFS-Overview, Installation and Shell, Java API;
Hive Architecture and Installation, Comparison with Traditional Database, HiveQL
Querying Data, Sorting And Aggregating, Map Reduce Scripts, Joins & Sub queries,
HBase concepts, Advanced Usage, Schema Design, Advance Indexing, PIG, Zookeeper ,
how it helps in monitoring a cluster, HBase uses Zookeeper and how to Build
Applications with Zookeeper
08 15%
4 Spark : Introduction to Data Analysis with Spark, Downloading Spark and Getting
Started, Programming with RDDs, Machine Learning with MLlib
12 20%
5 NoSQL : What is it?, Where It is Used Types of NoSQL databases, Why NoSQL?,
Advantages of NoSQL, Use of NoSQL in Industry, SQL vs NoSQL, NewSQL
05 12%
6 Database for the Modern Web: Introduction to MongoDB key features, Core Server
tools, MongoDB through the JavaScript’s Shell, Creating and Querying through Indexes,
Document-Oriented, principles of schema design, Constructing queries on Databases,
collections and Documents , MongoDB Query Language
08 15%
Reference Books: 1. Boris lublinsky, Kevin t. Smith, AlexeyYakubovich, “Professional Hadoop Solutions”, Wiley, ISBN: 9788126551071,
2015
2. Chris Eaton,Dirk derooset al. , “Understanding Big data ”, McGraw Hill, 2012
3. BIG Data and Analytics , Sima Acharya, Subhashini Chhellappan, Willey
4. MongoDB in Action, Kyle Banker,Piter Bakkum , Shaun Verch, Dream tech Press
5. Tom White, “HADOOP: The definitive Guide”, O Reilly 2012
6. VigneshPrajapati, “Big Data Analyticswith R and Haoop”, Packet Publishing 2013
7. http://www.bigdatauniversity.com/
8. Learning Spark: Lightning-Fast Big Data Analysis Paperback by Holden Karau
List of Experiments: 1. (i) Implement the following Data structures in Java
a)Linked Lists b) Stacks c) Queues d) Set e) Map f) List.
Remark: Store the basic information about students such as roll no, name, date of birth, and address of student
(ii) To understand the overall programming architecture using Map Reduce API
2. (i) Perform setting up and Installing Hadoop in its three operating modes: Standalone,
(ii) Use web based tools to monitor your Hadoop setup.
3. Implement the following file management tasks in Hadoop (Hadoop Commands):
Adding files and directories
Retrieving files Deleting files
Hint: A typical Hadoop workflow creates data files (such as log files) elsewhere and copies them into HDFS using one
of the above command line utilities.
4. Run a basic Word Count Map Reduce program to understand Map Reduce Paradigm.
Assignment Problem: Write a Map Reduce program that mines weather data. Weather sensors collecting data every hour at many locations across the globe gather a large volume of log data, which is a good candidate for analysis with MapReduce, since it is semi structured and record-oriented. 5. Implement Matrix Multiplication with Hadoop Map Reduce.
6. Install and Run Pig then write Pig Latin scripts to sort, group, join, project, and filter your data.
7. Install and Run Hive then use Hive to create, alter, and drop databases, tables, views, Join, functions, and indexes.
8. Install and work with MongoDB. (CRUD Operations).
Assignment Problem: Develop any management application using backend as Mongo DB.
9. (i) Build an Application using Zookeeper (use concept of HBase).
(ii) Run a basic Word Count program using SPARK and Python/Java. (Installation is Pre-required).
Design based Problems (DP)/Open Ended Problem: 1. Create a system which can use of Web search, web crawlers and web information retrieval.
2. Analyze and implement a system with Web graph mining.
3. Implement and Subscribe RSS News feeds to get latest news in India.
Major Equipment: XMLSpy, RSS Feed, RSS Reader
List of Open Source Software/learning website: 1. http://in.reuters.com/tools/rss
2. http://www.altova.com/xmlspy.html
3. https://www.w3.org/RDF/
Active Learning Assignments:
Preparation of power-point slides, which include videos, animations, pictures, graphics for better understanding theory
and practical work – The faculty will allocate chapters/ parts of chapters to groups of students so that the entire syllabus
to be covered. The power-point slides should be put up on the web-site of the College/ Institute, along with the names of
the students of the group, the name of the faculty, Department and College on the first slide. The best three works should
submit to GTU.