CS 305 SyllabusWeb TechnologiesFall 2017CIS DepartmentSaint Vincent CollegeGeneral Information
DescriptionThis course concerns itself with web technologies used for ecommerce. This involves web applications that access a database, especially web apps that are online stores with the usual shopping cart, check out process, etc. The course begins by looking at simple web pages created with Visual Studio 2015 (and ASP.NET 4.5). Although Visual Studio allows coding to be done in either C# or VB, this course uses VB. For the database, we will use SQL Server 2016. During the course, we will learn how to maintain session state information in a web application, how to validate user input and other techniques to reduce the possibility of successful hacking techniques against the website, how to use modern ways to access data from a database (such as the Entity Framework and LINQ), etc. The main goal of the course is to have each student create a fairly complete, but small, online store application. Why Take This Course?This is an elective course for CIS majors. The course is also open to non-majors with sufficient background. It is intended to provide students with the ability to create basic ecommerce applications that are implemented using recent versions of ASP.NET. In the process of doing this, students will learn a fair amount of VB coding as well as the basics of using a database in SQL Server. ASP.NET skills are in demand in the job market, so this is a good item to be able to put on one's resume. The PrerequisiteCS 205 provides a good background for this course since it gives the students basic skills in the creation of web pages and in object-oriented programming (especially with JavaScript). Although this course will use ASP.NET and VB, the CS 205 background should be sufficient to handle what you will encounter in CS 305. CS 111 is an alternate way to meet the prerequisites for the course. Since CS 111 covers a fair amount of object-oriented programming in C++, those with this background should not have much difficulty in learning object-oriented programming in VB. It is true that CS 111 does not provide any background on the creation of web pages, but web pages are familiar to most students, so this is not a huge disadvantage. No prior knowledge of ASP.NET is assumed in this course. The Required TextYou will be asked to read certain sections of the text. It is also a valuable resource when you need to know how to do something in ASP.NET. You will also use Br. David's ASP.NET 4.5 Web Applications tutorials. Core GoalsThis course contributes especially toward the following core curriculum goals, listed in order of emphasis. The communications skills addressed are those involved in making a project presentation to the class, while the information literacy skills are those involved in finding good sources of information on topics in the course or on ways to solve specific problems that might be encountered in developing ASP.NET web applications.
CIS Department Student OutcomesThis course contributes mainly to the following desired departmental student outcomes in order of emphasis.
These goals will be assessed through in-class activities, quizzes, homework assignments/projects, and student presentations of final projects. The homework and projects will generally involve programming and application development using the technologies outlined above. Informal discussions with students provide additional feedback. Course Goals and Means of Assessment
These goals will be assessed through the same means used for the student outcomes, as the specific course goals flesh out the student outcomes and make them more concrete. Methods Used to Reach These GoalsLecture, class activities, and class discussion are used to assist students in mastering the course material. Homework assignments (including programming projects) and various hands-on activities are designed to allow students to grow in their understanding of the topic. Quizzes provide an opportunity for students to demonstrate what they have learned. The presentations of the final projects give students practice with making presentations and allow them to show the special features of their projects. Sequence of Course MaterialThe course will begin with introductory material and move on into more advanced and newer topics. At the start of the course, the basics or working with Visual Studio, ASP.NET 4.5, and VB will be discussed, examples will be provided, and programming assignments will be given that reinforce what was learned on these topics. Then methods of getting data from or to a database will be discussed. These methods included SQL, stored procedures, and LINQ with the Entity Framework. Once again, a series of examples will be used to illustrate these methods and assignments will be given that provide practice on these. Additional topics to be covered, in much the same fashion, include master pages, handling user input on a form, validating that data, maintaining session state, providing login protection, and other security concerns. The last part of the course will be devoted almost exclusively to the development of an online store. A fairly complete example will be provided. Each students' final project will involve creating a very similar online store, but one using somewhat different products and data, and using the Entity Framework and LINQ to access the data. Students will be asked to make improvements to the online store such as providing better navigation through the store, using styles or themes to make cosmetic adjustments to the web site easier to carry out, using AJAX calls to improve performance, etc. Grading and Course Policies
Most homework assignments are to be posted on our Windows IIS web server and will be graded. Letter grades will be assigned according to the scheme found in the current College Bulletin. Quizzes could be given at any time and will be closed book/closed notes in nature unless otherwise specified. Cell phones, laptops, PCs, and other devices should be turned off and put away during quizzes. The use of calculators is allowed, but calculators are not to be shared among students during a quiz. Both the instructor and students are expected to do their best to produce a good class and to treat each other with respect. This includes many factors, such as listening when someone else is speaking, trying to understand what others are saying, being of assistance to others, etc. It definitely does NOT include making fun of others. On a practical level, do your best to improve your grade: read the course materials, attend class, do the homework and projects, ask questions, and try to answer questions in class! Computer science requires active participation and repeated practice. If you begin to feel lost, consult one of the tutors, see the instructor, or work through the difficulties with the help of another student in the course. Do not let yourself get behind. In fact, one key to academic success is to start early on homework and other tasks. Last-minute miracles seldom work, particularly with software development! Note in particular that attendance is expected. Student performance is bound to deteriorate when classes are missed. In order to emphasize the importance of attendance, the policies outlined after this paragraph will be used.
For an excused absence from a class with a quiz, see the instructor. Either a makeup quiz will be given or you will be excused from that quiz. Students participating in sports teams are required to notify the instructor in advance of games that might conflict with class. Quizzes will ask critical thinking questions that require careful analysis, explanation, and conclusions. For example, you might be asked to explain which way to code a certain task would be best in a certain situation. That requires you to understand the methods and the trade-offs involved. Other questions will ask you to fill in sections of code so that it carries out a particular action or to explain what a section of code does. There may be other types of questions as well. The homework will generally be web programming assignments. Although you will usually know from the textbook and class the general approach to take, it may well take several attempts to get the details right so that the web app or website works correctly. You will need to plan your time to allow these several attempts to take place. In other words, do these attempts over the course of several days, not the evening before the due date. These assignments are expected to be posted, in working order, on the departmental Windows IIS web server. Versions of the code placed elsewhere will not be graded. Thus part of each assignment is to get it to work on our live web server. Exceptions to homework deadlines are only granted for serious reasons and normally require written documentation of the reasons. Every homework assignment should list all significant sources that contributed to the solution. You can omit the textbook and the instructor's own examples, as it is understood that you will be using these a lot. For sure, give your name as the main author of the assignment. Many homework assignments will have no significant sources to mention. However, on some assignments, you may have other sources of information such as a tutor that was consulted, a reference book, a web site, etc. List those after your own name. List another student if that person clarifies what the homework assignment is asking. Do NOT ask another student to provide a section of code for you or look at another student's code for the project, as that gets you into the realm of program plagiarism. The best person to consult on the way to design or code a solution is the instructor. Assignments in this course are expected to be individual assignments. However, if there is sufficient interest in a small group assignment, ask the instructor and this will be considered. Intellectual honesty is important at Saint Vincent College. Attempts to pass off the work of another as one's own, or group work as one's individual work, etc. will result in action appropriate to the seriousness of the situation. If there is some doubt as to whether you solved a homework assignment yourself, you may be asked to explain the solution. If you can do so, that provides good evidence that you did do the assignment yourself. All cases of apparent intellectual dishonesty will be referred to the administration. If the administration does not say what to do about the grades in a case where plagiarism occurred, the first offense will involve a significant grade penalty (such as a grade of zero on the assignment), while a second offense may result in failure of the course. In this course, students are expected to do entirely their own work on quizzes, assignments, and the project (as further discussed in the previous paragraph). Be sure to read and follow the CIS Department Policies, available under the CIS Department web site. (This statement covers especially the proper use of departmental computing facilities, policies concerning your web pages, etc.) Be sure to read the Regulations section of the College Bulletin (which covers such things as grading, academic honesty, etc.) and the Student Handbook (which covers academic honesty, classroom etiquette, etc.). Students with disabilities who may be eligible for academic accommodations and support services should contact Ms. Marisa Carlson, Director of Academic Accommodations and Academic Advisor, by phone (724-805-2828), email (marisa.carlson@stvincent.edu) or by appointment (Academic Affairs-Headmasters Hall). Reasonable accommodations do not alter the essential elements of any course, program or activity. The Notification of Approved Academic Accommodations form indicates the effective date of all approved academic accommodations and is not retroactive. If the instructor needs to cancel class, every effort will be made to send an email message to students' Saint Vincent email accounts. |