CPET 565 Mobile Computing Systems
CPET/ ITC 499 Mobile Computing

Spring  2017

A Special Course
for
Purdue University's Master of Science in Technology Gradute Program:
IT/Advanced Computer Applications Track

Lecture/Activities Schedule

Meeting No
Topics/Activities
1,2
Jan. 10, 2017
a) Overview of the course, activities, grading policy
b) Lecture 1: An Overview Mobile Computing Systems and Applications
c) Students are asked to watch and learn: Mobile World Congress, 22-25 Feb 2016, Barcelona, https://www.mobileworldcongress.com/ , “MWC16 Keynotes recorded videos: (and will need to answer the hw assignment posted on hw page)
Mobile is Innovation - Keynotes:
[1] Jon Reynolds, Co-Founder, Swiftkey, [13 min], http://www.mobileworldlive.com/mwc16-videos/mwc16-keynote-swiftkey/ 
[2] Philip McAleese, CEO, See.Sense, [11:28 min], http://www.mobileworldlive.com/mwc16-videos/mwc16-keynote-see-sense/ 
[3] Ed Rex, Founder & CEO, Jukedeck, [11:37 min], http://www.mobileworldlive.com/mwc16-videos/mwc16-keynote-jukedeck/ 
[4] David Peto, Founder & CEO, Aframe, [12:52 min], http://www.mobileworldlive.com/mwc16-videos/mwc16-keynote-aframe/
[5] Xavier Carrillo Costa, Founder & CEO, Digital Legends Entertainment, [11:53 min], http://www.mobileworldlive.com/mwc16-videos/mwc16-keynote-digital-legends-entertainment/
[6] Professor Kostya Novoselov, University of Manchester, [12 min], http://www.mobileworldlive.com/mwc16-videos/mwc16-keynote-university-of-manchester/
[7] Guo Ping, Deputy Chairman & Rotating CEO, Huawei, [16 min], http://www.mobileworldlive.com/mwc16-videos/mwc16-keynote-huawei/ 
Mobile is Connecting Everything - Keynotes:
[8] Ann Cairns, President, International Markets, Master Card, [16:42 min], http://www.mobileworldlive.com/mwc16-videos/mwc16-keynote-mastercard/
[9] Dan Schulman, President & CEO, PayPal, [20:55 min], http://www.mobileworldlive.com/mwc16-videos/mwc16-keynote-paypal/ 
Mobile is Commerce – Keynotes:
[10] Sir Martin Sorrel, Chief Executive, WPP, and Dawn Airey, CEO, Getty Images, Join Ina Fried, Senior Editor, Re/code, in a discussion, [13:11 min], http://www.mobileworldlive.com/mwc16-videos/mwc16-keynote-panel-mobile-is-commerce/ 
Mobile is Transforming Industries – keynotes
[11] Chuck Robbins, CEO, Cisco, http://www.mobileworldlive.com/mwc16-videos/mwc16-keynote-cisco/ 

Other Mobile Conferences and Exhibition:
* Mobile World Congress, Barcelona, Feb. 27 - March 3, 2017, https://www.mobileworldcongress.com/
* Mobile Innovation Submmit, March 21-23, 2017, https://theinnovationenterprise.com/summits/mobile-innovation-summit-new-york-2017

Jan. 12, 2017
a) Android IDE Download, Installation & Hello World App, Lecture note: PDF file, HTML file
b) Lecture 1: An Overview Mobile Computing Systems and Applications, continue
c) Lecture 2: Mobile Networking Communication Infrastructures and Technology
3,4 Jan. 17, 2017
a) Lab 1 assignment, due 1/24 before noon
b) Lecture 1: An Overview Mobile Computing Systems and Applications, continue
c) Lecture 2: Mobile Networking Communication Infrastructures and Technology

Jan. 19, 2017
a) Lab 1 Demo
b) Lab 1 Discussion
c) Lecture 2: Mobile Networking Communication Infrastructures and Technology

e-Book "Java Programming Language cor C/C++ Programmers," by Prof. Paul I. Lin
http://www.etcs.ipfw.edu/~lin/Spring02/JavaLectureNotesIndex.html
** For those students who did not have a course on Java, please study Ch. 1 Java Programming Basics & Ch. 2 Java Programming Concepts and Strucrures
5,6 Jan. 24, 2017
a) "Hello Goodbye" Demo, see pp. 17-55, text book
c) Lecture 2: Mobile Networking Communication Infrastructures and Technology, continue

Jan. 26, 2017
a) Android Model-View-Controller Design Architecture
b) Lecture 3 (PDF file): Smartphones, OSs, Android Application Framework (HTML file)
7,8 Jan. 31, 2017
a) "Hello Goodby" Demo Java code, see pp. 17-55 of the text book
b) "Tap Button Counter" App, pp. 70-81 of the text book; All xml and Java codes: TapButtonCounter.txt
c) Hw 1 assignment for CPET 565 posted, due 2/7

Feb. 2, 2017
a) Advanced Tap Button Counter App - Lab 3 Assignment (Discussion)
b) Lecture note on "Android User Interface, Layout, The View Class, Text Input and Output, Soft Keyboards" (Ch 2. pp. 89-100)
9,10 Feb. 7, 2017
a) Lecture on "Android UI, layout, the View Class, Text input and Output, Softkeyboard" & Lab 2-1 Shipping Calculator app Design, pp. 89-118
b) Lab 2-1 Shipping Calculator app, pp. 106-118, all XML and Java classes, image resource
c) Lecture (pp. 118-124)
** "Widgets for UI: RadioButton, CheckBox, ToggleButton, Switch, ProgressBar, SeekBar, RatingBar"
** "Unique ID, The ViewGroup"
** "RadioGroup Example"

Feb. 9, 2017
Lecture (Android UI - part 2)
a) Lab Example 2-2: Burger Calorie Calculator, pp. 127-142, all XML files and Java classes, plus image resource

Lecture (Android UI - part 3)
b) Adaptive Design Design Concepts -- Screens and Orientation
c) Lab Example 2-3: Shipping Cost calculator II -- Adaptive Design, pp. 144-153
d) Table Layout and TableRow
e) Lab Example 2-4: Simple Calculator App and the TableLayout, pp. 155-170, all XML files and Java classes, image resource file
f) Container Views
g) Using an Adapter
h) Lab Example 2-5: Renaissance Painting App, pp. 173-183, all XML files and Java classes, image resource file
11,12 Feb. 14, 2017
Lecture Ch 3-1 of 5 (Ch 3. Android Activities and Intents, pp. 185-202)
* Lab Example 3-1 Activity Cylce App, all XML files and Java classes
Lecture Ch 3-2 of 5 (Multiple Activities and Intent Class; Soft keyboard visibility setup: pp. 202-223)
* Lab Example 3-2 Activity Cylce App, all XML files and Java classes, image resources
Feb. 16, 2017 - Exam 1
13,14 Feb. 21, 2017
a) Passing Data between Activities using Intent Object, pp. 223-243
Lab Example 3-3 Automotive Calculator App, all XML files and Java classes, image resources
b) Basic Transition between Activities, pp. 243-258
Lab Example 3-4 Flip Cards with Animated Activity Transitions, all XML files and Java classes, image resources
c) Scene Transitions, TransitionManager, pp. 258-276
Lab Example 3-5 Pieces of Painting - The Painting Scene App, all XML files and Java classes, image resources

Feb. 23, 2017
Ch 4. Fragments, ACtionBar and Menus
a) Android Fragments: The Fragment Lifecycle, ActionBar, Lecture Note 1 of 5
Lab Example 4-1: Fragments and the ActionBar: Menu Experiment, pp. 285-298, all XML files and Java classes (deprecated methods), image resources
b) ActionBar Configuration: Overflow and Action Bar, Adding an Action View, Note 2 of 5
Lab Example 4-2: Unit Conversion Calculator App, pp. 305-318, all XML files and Java classes
15,16 Feb. 28, 2017
* Mobile World Congress – Barcelona, Feb. 27 – Mar. 2, 2017, https://www.mobileworldcongress.com/
* Mobile Strategy and IoT/IIoT Technologies, Lecture note, html file format
* Advanced Android Programming Topics:
*** File Storage, Shared Preferences, and SQLite, Lecture note, HTML file format
*** Sensors and Cameras of Mobile Devices, Lecture note, HTML file format

Mar. 2, 2017 - Directed selfstudy & Hw1 questions (NO LIVE CLASS)
Webinars: watch 2016 Mobile World Congress Keynotes, Feb. 22-25, 2016, and then prepare a Report which gives your answer for posted questions; for CPET 499/ITC 499 Students only Hw 1; Hw 1 in html file format.
  March 7 & 9, 2017, Spring Break
17,18 March 14 & 16, 2017
Ch4. Fragments, ActionBar, and Menus
Lecture 4-1: Fragmentation and Android Fragments, Fragment Lifecycle, Action Bar (Deprecated)
**Lab Example 4-1: Fragments and the ActionBar: Menu Experiment, pp. 285-298, source codes, zipped images
Lecture 4-2: ActionBar Configurations, Overflow and Action Bar, and Adding an Action View
**Lab Example 4-2: Unit Calculator App, pp. 305-318, source codes
Lecture 4-3: Responsive Design with Fragments
**Lab Example 4-3: Shades App: A Fragment Experiment, pp. 321-338, source codes
Lecture 4-4: Animation in Fragment Transaction
**Lab Example 4-4: Recipes-Fragments with Transition Animation, pp. 339-382, source codes, zipped images
Lecture 4-5: ListViews and Adaptors
Lab Example 4-5: Redlands Music Events App – Adapters and ListViews. 353-371, source codes, zipped images
19, 20 March 21
** Lecture 5-1: Graphics in Android, Drawing and the Canvas Class
Lab Example 5-1: Fibonacci Flower App, pp. 377-397, source code, zipped images
** Lecture 5-2: Adding and Manipulating ImageViews
Lab Example 5-2: Drawing Experiment 1: Bull’s Eye Drawing App, pp. 396-402, source code
** Lecture 5-3: Recursive Drawing
Lab Example 5-3: C-Curve Recursive Drawing App, pp. 403-415, source code

March 23, (Prerecorded Lecture)
** Ch. 4 Java Arrays and Strings, e-Book: Java Applications for C/C++ Programmers, by Paul Lin, http://www.etcs.ipfw.edu/~lin/Spring02/Lectures/4_ArraysStings.pdf

** Pre-recorded Lecture 1, covering Ch. 5 Graphics, Drawing, and Audio
https://echo360.org/media/561c4092bd7dce82e8cc9259881ba2c2ddd6f7c40532e78dfde5eb74b985ddef3ea6c37ed702b99c/public
** Part 1 of 4 PPT slide, Grapphics in Android: Adding and Manipulating ImageView
** Saving Mobile Data 
** Part 2 of 4 PPT slide, Drawing and the Canvas Class; Recursive Drawing
** Lab 5-3 Curve Recursive Drawing App, pp. 403-415
** Lab 5-4 Animated Maze Chase App, pp. 419-436
** Lab 5-5 Gears Churning Basic Rotating Animation, pp. 438-446
** Lab 5-6 Simple Jukebox Sound Effects, pp. 450-458

** Pre-recorded Lecture 2, https://echo360.org/media/627624aa603eceec6b55332e328c6a59038f00644ab792cff41f513f7f8b52cfd695da8e5c332a7b/public
Covering
CPET 565/499 Mobile App for Enterprise Application Projects
* SNAP Enterprise Mobile App, Robert Tilbury and Luis D. Morales
* Mobile App: Sales Executive Dashboard, James Fracica and Chris Frey
* Mobile Business Intelligent for Pharmaceuticals , Heidi Prussing and Sayed Nayab Hassan
* Mobile Customer Support System, MengWei and Stephen C. Obioma
* Just-in-Time Inventory Tracking , Samson Amede and Michael McNair
* Mobile Inventory System, Muhammad Mansur and Joel Bauer

21,22 March 28
Frame-by-Frame and Film Loop Animations
*Lab Example 5-4: Animated Maze Chase, pp. 419-437, all source files, zipped images
Animation Library
* Lab Example 5-5: Gears Churning Basic Rotating Animation, pp. 439-445, all source files, zipped images
Audio in Android
* Lab Example 5-6: Redlands Jukebox Sounds Effects App. 450-458, all source files, zipped images

March 30,
* Processes and Threads, http://www.etcs.ipfw.edu/~lin/Spring02/Lectures/ProcessThreads.pdf
* Ch. 6 Java Multi-Threading, e-Book: Java Applications for C/C++ Programmers, by Paul Lin, http://www.etcs.ipfw.edu/~lin/Spring02/Lectures/6_JavaThread_1.pdf
** Lab Example 6-1: Background Thread and Handler – Counting, pp. 471-480, All source files
** Lab Example 6-2: Digital Stop Watch, pp. 480-490, All source files, zipped images
** Lab Example 6-3: Animated Dial Using a Simple View, pp. 491-499, All source files
** Lab Example 6-4: Ball Animation Using a SurfaceHolder, pp. 500-512, , All source files
** Lab Example 6-5: Art in Motion Application – Multiple Threads, pp. 514-528, All source files, zipped images
** Lab Example 6-6: Virtual Pet Fish – Animated ImageViews, pp. 528-541, All source files, zipped images
** Lab Example 6-7: SsynchTask to Read a File in the Background, pp. 544-552, All source files

23,24 April 4 & 6
** Exam 2 covers Chapters 3, 4, 5, and 6 (up to page 490), online through Balckboard Learning (from 2:00 PM, April 6, Ending 11 AM, April 7)  
** Final project (max two person per team), one page proposal due April 6
** Lecture 4/4, pre-recorded through Echo 360, https://echo360.org/media/67cbf6fb39f67e9b6ce45c9b2052110ca8fca4ecc7263608f304c2e7aef472bc230a425c7019ec93/public
** Lecture 4/6, pre-recorded through Echo 360, https://echo360.org/media/8cff0cb73623a1d9d0b040f7777bfa645327fb84a9ffeeb6a5f7f4891746e456c2794fa7009ce83c/public
 
Basic Camera, Lecture note
Android Storage Options, Shared Preferences and SQLite Database, Lecture Note

Chapter 8. Sensors and Camera
Lab Example 8-1: Experiment with Tilt Input – Roaming Ball, pp. 668-682, All codes, Zipped Images
Lab Example 8-2: Shake Experiment and Magic Answer App, pp. 683-693, All codes, Zipped Images
Lab Example 8-3: Geomagnetic Rotation – Compass, pp. 696-704, All codes, Zipped Images
Lab Example 8-4: Basic Camera, pp. 711-721, All codes
Lab Example 8-5: ASCII Camera Conversion Application, pp. 726-740, All codes

Chapter 9. File Storage, Shared Preferences, and SQLite
Lab Example 9-1: SQLite Database Experiment ToDo Today Application, pp. 755-769, All codes
Lab Example 9-2: ToDo Today – The Complete Application, pp. 769-784, All codes
Lab Example 9-3: Pet Contacts, pp. 785-806, All codes, Zipped Images
25, 26 April 11,
Final Project Discussion, all proposals

Special Topics on Embeded Computing, Mobile Computing, IoT, and 5G
** IoT + Big Data = Smart Cities, Embedded Computing Design, http://embedded-computing.com/26819-iot-big-data-smart-cities/ 
** NJIT Graduate Degree Programs, http://graduatedegrees.online.njit.edu/mscs-resources/mscs-infographics/big-data-and-the-iot-the-future-of-the-smart-city/ : Smart City: Smart Water, Smart Energy, Smart Buildings, Smart Transportation, Smart Traffic Management, Smart Public Safety

SmartPhone & IoT Topics,
** Is a Smartphone an Internet of Things Device, 3 min video, https://www.futurelearn.com/courses/internet-of-things/0/steps/8432 
**  Projects of Repurposing Smartphone for IoT Applications, https://www.postscapes.com/iot-smartphone-reuse/
Placemeter App (transforms your live videos into structured data), New York, http://www.placemeter.com/how-it-works
**** Zensor (video), http://www.zensors.com/ 
**** JanOS, Turn your phone into an IoT board, http://janos.io/ (Video, https://www.youtube.com/watch?v=Uy062kp-LM4 )
**** Windows Arduino Libraries, (Develop with Windows Remote Arduino), https://developer.microsoft.com/en-us/windows/iot/docs/WRA.htm 
**** Bemo (smart home and smart thermostat alternative and energy management brain center), http://www.bemo.io/ ; Video

April 13
* Lecture Topics on "Android File Storages"
* Lecture Topics on "Mobile App Development, Design, and Design Patterns"
* Lecture Topics on "Mobile App Data, Data Requirements, Data Modeling, Data Presentation, Business Process Modeling" 

27,28 April 18
Chapter 9. File Storage, Shared Preferences, and SQLite; Lecture Note
Lab Example 9-1: SQLite Database Experiment ToDo Today Application, pp. 755-769, All codes
Lab Example 9-2: ToDo Today – The Complete Application, pp. 769-784, All codes
Lab Example 9-3: Pet Contacts, pp. 785-806, All codes, Zipped Images

* Lecture Topics on "Mobile App Development, Design, and Design Patterns"
* Lecture Topics on "Mobile App Data, Data Requirements, Data Modeling, Data Presentation, Business Process Modeling" 

April 20
Lab Example 9-2: ToDo Today – The Complete Application, pp. 769-784, All codes
Lab Example 9-3: Pet Contacts, pp. 785-806, All codes, Zipped Images
* Lecture Topics on "Mobile App Development, Design, and Design Patterns"

* Final project report & PPT slide due 5/1 Monday
** Final Report Fomat & PPT slide guideline, posted 4/19
* Final Poject Presentation & Demo - All students (including online students) must present, May 2, from 12:00 noon-2PM.
29,30 4/25
Final Project: progress reports & status review
** Project proposals with desired functions, 4/11/2017
** 1st Progress Report /Briefing and discussion – April 25, before 12:00 noon
Progress report (format)
* Project Title, Name
* Summary
* Problems and Corrections
* Status of the Project (percentage completion)
* Supporting information
* System block diagram
* User Interface (diagram)
* Major classes (methods and attributes or variables)
* Some screen shots

4/27
Time allocated for students' mobile App coding, PPT slide and Final report preparation
31 May 1 - due items (softcopy)
* Android Final Project files (in zipped)
* Final project report
* Final project presentation slide
** CPET 499 Advanced Recipe and Instruction, Kyle Patterson, presented, 1:00 PM, May 1, in ET 205C
May 2  - Final Project Presentations & Demonstration (Room ET 346, all students must present his/her project in person),
1:00 noon - 3:00 PM, 10 minutes per project

CPET 499 Tile Layout Helper App, Miles Fredrick
CPET 499 Pick Your Pet, Max Lanning
CPET 499 Learning Guitar Chords, Kyle Murphy
CPET 499 Score Counter, Craig Romano
CPET 499 Budget Calculator App, Derrick Weaver
CPET 499 Attendance Management App, John Konchar
ITC 499 Rolling Dice Simulator, Logan Grannis
CPET 499 Eve Online Market Tracker, Ryan Johnson
CPET 499 Time of Travel Calculator, Trey Lohman & Garrett Leckrone