COURSE: SW Engineering of Web-Based Systems
"Web Technologies A Computer Science Perspective",
by. J. Jackson, Prentice Hall, 2007, ISBN 0-13-185603-0
"Programming Google App Engine: Build and Run Scalable Web Apps on Google's Infrastructure", 2nd Edition, by. Dan Sanderson, 2012, ISBN: 978-1-4493-9826-2 (electronic version may be only available). Purchase directly from ORieilly publishers http://oreilly.com/
REFERENCE TEXT BOOKs: (not required)
Web Development with MongoDB and NodeJS - Second Edition 2nd Edition,by Mithun Satheesh (Author), Bruno Joseph D'mello (Author), Jason Krol (Author),
Page Numbers Source ISBN: 1785287524
Publisher: Packt Publishing; 2 edition (October 30, 2015)
Programming Google App Engine with Java: Build & Run Scalable Java Applications on Google's Infrastructure 1st Edition
by Dan Sanderson
Publisher: O'Reilly Media; 1 edition (July 17, 2015)
" Building Your Next BigThing with Google CloudPlatform: A Guide for Developers and Enterprise Architects ", currently free on safari, By: S .P. T. Krishnan; Jose L. Ugia Gonzalez,Publisher: Apress,Publication Date: 29-MAY-2015
" Google Compute Engine", By: Marc Cohen; Kathryn Hurley; Paul Newson,Publisher: O'Reilly Media, Inc., December 25, 2014, ISBN-13: 978-1-4493-6088-7 (currently available on safari)
"Instant Google Compute Engine" By: Alexander Papaspyrou; Packt Publishing , September 25, 2013, ISBN-13: 978-1-84969-700-2 (possibly available on safari
OFFICE HOURS: By appointment Tuesday in SS247 9:55- 11:55 am, Thursday SF551 10-11am, Via phone by appointment or other.
DESCRIPTION: See Catalog: Current practices
and trends in software design, development, and deployment of
web-based systems, with particular emphasis on e-commerce. Projects
include the latest technologies and techniques used by the Internet
community. You will be working heavily in Java.
OUTCOMES: Below are some of the outcomes
of this course:
- Understand broad areas of Internet Technology
- Be able to create Java Servelets.
- Extend your knowledge and capabilities in Internet Programming
- Understand software and hardward architectures for Internet
- Understand how to interface to a database from a web-interface.
- Explore security issues.
- Review a number of Internet and E-Commerce related special
- Changing (what if any of these outcomes are addressed depends on course offering and instructor decisions) Outcomes related to Current Web Trends: Example Cloud Computing, Distributed Data, etc.)
- PLO 2 (developed): employ current techniques, skills, tools, and coding practices necessary for application and system development
- PLO 4(developed): demonstrate communication skills in both written and oral form, and work in a team environment
- The open computer lab (library commons) in the Library will have Java and some IDES as well as for C/C++ installed on them.
- You have been given server accounts in an email sent to you by Richard Uhler. If you did not recieve this you must email me right away with your horizon email address and netid and full name AND course number you are taking with me in the body of the email message.
- You are expected to get any additional accounts (like Google, Amazon and Facebook accounts) and computer access as discussed in class. You will have to do work outside of class and without a personal computer or laptop it will most likely not be possible for you to complete the work
- You must bring your laptop with you to class.
COMPUTERS, SKILLS AND PRE-REQUISITES: The
students will be asked to work on projects that require computer
access outside of class time. See catalog for pre-requisites include
CS 3520, CS 3340 and you should consider yourself a good Java
Programmer and have skills in web-site development, cgi-scripting,
and basic communication tools of email, ftp, telnet/ssh, and usage
of mutliple operating systems including Windows and Unix. All
Projects either turned in AS DIRECTED ON THE project statement.
This may be electronically or in print-- you must follow the directions on the project/work statements. You may be asked to post
YouTube VIDEO SUBMISSIONS Youtube videos that you share with me demonstrating your work -- the easiest way to do this is via a smart phone (most Android and iOS devices have the ability to upload the video directly to Youtube). It is your responsibilty to get a Youtube account and to understand how to post videos so that they are private only shared with people you directly invite. You can only post videos if you already have a YouTube account.
Public versus Unlisted versus Private:
- I prefer Public or Unlisted -- -that way I and others in the class can easily get to it without an invitation (and I don't have to be logged in)
- If you insist on private (then everytime you submit a URL via blackboard you must tell me this ) + you must send me an invite to my gmail (not csueastbay) account
Why Private needs invite to gmail not csueastbay account
Note the email address given to you by campus to my knowledge does not allow you YouTube access so you will have to use a gmail account to get the youtube account. Similarly, my campus email does NOT give me YouTube access. PRIVATE videos can only be viewed by others with Youtube accounts that you share the video with. My email address with YouTube account for sharing is firstname.lastname@example.org. NOTE: university email accounts do NOT have use of YouTube You MUST ALSO send me an email at email@example.com to tell me you have sent me an invite at firstname.lastname@example.org as I do not actively check that account.
remember: : when you "upload" a video to your YouTube - you should set the type to Public (if you make it unlisted you need to make sure you invite me). I prefer you to not make it private but, if you do when you currently publish this way from an iphone it gives you the option to then "Tell a Friend" At this point you can type in my email address (email@example.com)
YouTube How to Share From In YouTube Account: This is how to do this as of the time of editing this document, for recent changes search on "YouTube share private video" or go to YouTube.com to look for help.
Step 1) Log into your YouTube Account
Step 2) after you have uploaded the video and set it to Public/Unlisted, go to the Video and hit the "Edit" button.
Step 3) Type in Name of Video to reflect desired name (if it is not already setup that way when you uploaded it)
Step 4) Type is description that says the status of the Video work you are demonstrating (if you are demonstrating some work tell me what works and what doesn't---be detailed)
Step 5 (NOT Recommended )) IF YOU made it private: Invite me under the Private button by typing in my email firstname.lastname@example.org
GENERAL GUIDELINES: Projects either turned
in AS DIRECTED ON THE project statement. SEE LATE
POLICY BELOW. As a graduate level course, you will
be expected to maintain a high degree of responsibility and preparedness
includingreading material beyond what is covered in the lectures
and participating actively in class discussions. I will be available
during office hours if you have any questions or concerns. Please
try to visit to me during office hours.
The Assessment(s) will be in-class unless otherwise stated, what material is covered and the format and what you can bring to an Assessment will be announced by instructor.
GRADING: The assignment of a grade is based
on the following (tentative) formula: 70% CourseWork (projects,etc), 25% Assessment (1 assessment given in person-no makeups without accepted, valid, documented excuse...do NOT miss it!!)
and 5% Class Participation. Note this formula is for guidance
only. The instructor is to use her best judgment in assigning
final course grades.
EXERCISES: Any exercises assigned are meant for you to learn the material. You are welcome to get help from me and others (but, you MUST DO BY YOURSELF) but, the work must be ONLY yours (unless it explicitly says group work in the description). The exercise must be fully working to recieve full points, otherwise you get 0 on that exercise.
ACCOMODATIONS: If you need disability-related
accommodations in this class, please email, call, or visit me.
The Student Disability Resource Center(SDRC) is the campus office
responsible for verifying that students have disability-related
needs for academic accommodations, and for planning appropriate
accommodations in cooperation with the students themselves and
their instructors. The Student Disability Resource Center (SDRC)
is located in Library Complex 2400 and can be reached by phone
at (510)-885-3868. The Contra Costa SDRC can be reached by phone
at (925) 602-6716.
LATE POLICY: Projects are due as announced
in class. No late work will be accepted except for a documented
illness. As this course is project-based, and fast-paced you
must keep up with the work and this policy will be strictly
adhered to. Students may take part in the evaluations of others
in addition to instructor evaluations.
COURSE LEARNING MODULES: Each week you will
be going through different modules in the
outline of our web-based materials. For each numbered module
you will find materials including on-line lecture materials, reading
assignments, links to online resources, exercises to be completed,
as well as related projects. Projects ofcourse will utilize information
learned in earlier modules but, are placed in a module indicating
that at the completion of this module you will have the skills
to complete the project. Exercises are important as they can help
you complete a project. Sometimes exercises have solutions and
at other times, they do not.
IN PERSON MEETINGS REQUIRED:
Every class day and a final is scheduled during the quarter unless instructor informs you differently
BLACKBOARD COURSE SITE ORGANIZATION
For the classes Q&A Discussion Board, to post your projects,
take assessments, get announcements, get fellow students email
addresses, check your current scores, you MUST REGULARLY log onto
our blackboard website.
On the left hand side of the blackboard site is our course menu
where you find the links to this website as well as the discussion
board, projects drop box, announcements, email, and tools.
DISCISSION BOARD: Our class's Blackboard
Discussion Board Q&A is where we post our questions
from the class. Here is where you ask questions and interact with
me and other students. You are to post your questions here unless
they are of a personal nature. I check the online discussion at
least two times every week. If you can answer someone else's questions
before I can, please do so. We'll all learn from one another.
COMMUNICATION: I may use blackboard announcements to notify
you of some new information. Whenever I post an announcement,
it appears at the top of the page as well as on your blackboard
site. I may instead email your horizon address information.
EMAIL: The blackboard email area is where you go to find
my address or the horizon address of others in the course. For
class related questions, you can post first to the discussion
SCORES: The blackboard tools area is where you will find