CS6320:  SW Engineering of Web Based Systems



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)

Web Development with Node and Express: Leveraging the JavaScript Stack1st Edition

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)
Language: English
ISBN-10: 1491900202
ISBN-13: 978-1491900208

" 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: ,Publisher: O'Reilly Media, Inc., ISBN-13: 978-1-4493-6088-7 (currently available on safari)

"Instant Google Compute Engine" By: Alexander Papaspyrou; Packt Publishing , , 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 using Java.
  • Understand software and hardward architectures for Internet Systems.
  • Understand how to interface to a database from a web-interface.
  • Explore security issues.
  • Review a number of Internet and E-Commerce related special topics.
  • 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 llgrewe@gmail.com. NOTE: university email accounts do NOT have use of YouTube You MUST ALSO send me an email at lynne.grewe@csueastbay.edu to tell me you have sent me an invite at llgrewe@gmail.com 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 (llgrewe@gmail.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 llgrewe@gmail.com

syllabus- setting to invite for private YouTube video



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.




Every class day and a final is scheduled during the quarter unless instructor informs you differently



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.

: 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 board.

SCORES: The blackboard tools area is where you will find your grades.

© Lynne Grewe