King Fahd University of Petroleum & Minerals
College of Computer Sciences and Engineering
SWE 444: Internet and Web Applications Development (3-0-3)
Fall Semester 2008-2009 (081)
N.B. All course material and related resources are made available
through WebCT and will be added here soon.
I. Course Information
<< download the syllabus in pdf >>
Instructor:
Dr. El-Sayed El-Alfy
Office: 22-108,
Phone: 03-860-1930,
E-mail: alfy@kfupm.edu.sa,
URL: http:faculty.kfupm.edu.sa/ics/alfy
Office Hours: SMW@10:00-11:00AM or by appointment
Class Time & Venue: SMW @ 8:00-8:50AM, Room: 22-132
Course Description:
Web Engineering fundamentals: requirements, analysis modeling, design modeling, testing.
Internet basics for web applications. Technologies and tools for developing web applications:
markup languages, styling, data description and transformation, client and server side
programming. Web services. Advances in web engineering.
Pre-requisites: Senior standing.
Objectives
To provide students with conceptual and practical knowledge, and skills required to develop web applications and web services.
Learning Outcomes
Upon completion of the course, you should be able to:
1. Perform analysis modeling and design modeling for web applications.
2. Identify candidate tools and technologies for developing web applications.
3. Develop user-interfaces for web applications.
4. Describe and transform data using XML and its related technologies.
5. Develop web applications and web services.
Required Material
No official textbook but the lecture slides provides a good start in addition to several web sites that will be made available through the course website
Recommended References
H. M. Deitel, P. J. Deitel, and A. B. Goldberg, Internet and World Wide Web How to Program, 4/e, Pearson Education Inc., 2008.
H. M. Deitel, et al., XML How to Program, First Edition, Pearson Education Inc., 2001.
Roger Pressman, Software Engineering: A Practitioner's Approach, 6/e, McGraw-Hill Higher Education, 2005. Chapters 16-20
Roger Pressman, Web Engineering: A Practitioner's Approach, McGraw-Hill Higher Education, 2008.
G. Kappel, B. Pröll, S. Reich, and W. Retschitzegger (eds), Web Engineering - The Discipline of Systematic Development of Web Applications, John Wiley & Sons, 2006. http://eu.wiley.com/WileyCDA/WileyTitle/productCd-0470015543,descCd-tableOfContents.html and http://www.web-engineering.at/eng/
Grading Policy
Assignments & Quizzes |
10 % |
Major Exam 1: (Date: Nov. 19, 2008@7:00-9:00PM & Room: TBA) |
15 % |
Major Exam 2: (Date: Dec. 31, 2008@7:00-9:00PM & Room: TBA) |
20 % |
Final Exam: (semi-comprehensive) [Date: as announced by the registrar] |
25 % |
Term Project (Group of 3 or 2): Download Guidelines. |
30 % |
Tentative Topics
M1. Web Engineering Fundamentals [~3 Lectures]
a. Introduction to web applications & web engineering
b. Requirements gathering & planning for web engineering
c. Analysis modeling for web Applications
d. Design modeling for web applications (quality dimensions, architectural design)
e. Design modeling for web applications (interface design, content design)
f. Testing web applications
M2. Internet Basics for Web Applications [~4 Lectures]
a. Introduction to the Internet
b. Client-server basics
c. HTTP
d. Web security
e. Search engines
M3. Markup Languages and Styling [~6 Lectures]
a. HTML
b. XHTML
c. CSS (Cascading Style Sheets)
M4. Client-Side Scripting (JavaScript) [~3 Lectures]
M5. Data Description and Transformation (XML, XSL, XSLT, DTD, DOM, XSD) [~8 Lectures]
M6. Server-Side Programming [7 Lectures]
M7. Web Services, Web Servers (Hosting) [~4 Lectures]
M8. Advances in Web Engineering [~4 Lectures]
Detailed Schedule of Lectures, Assignments, Quizzes & Exams (Tentative)
Note: Material will be updated as necessary.
Week |
Lect. |
Date |
Lecture Topics |
Assignments, Quizzes & Exams |
Additional Readings |
Additional Activities |
1 | 1 | Oct 11 | Getting Started | |||
2 | Oct 13 | Internet Basics for Web Developers (1) | ||||
3 | Oct 15 | Internet Basics for Web Developers (2) | ||||
2 | 4 | Oct 18 | Internet Basics for Web Developers (3) | Howstuffworks How Web Servers Work | ||
5 | Oct 20 | Markup Languages & HTML |
|
Howstuffworks How Web Pages
Work
HTML Tutorial ***
download:
HTML Quiz from w3schools
|
||
6 | Oct 22 | Markup Languages & HTML (cont.) |
design your website using HTML (have your personal account at http://student.kfupm.edu.sa/) see also: |
Student Pres.: [Opera] [IE7] | ||
3 | 7 | Oct 25 | Markup Languages & HTML (2) | |||
8 | Oct 27 | XHTML | XHTML XHTML Quiz from w3schools |
|||
9 | Oct 29 | CSS (part 1) |
hw1 due |
CSS
Tutorial Introduction - CSS tutorial ***
Examples: more: CSS tips & tricks
|
||
4 | 10 | Nov 1 | CSS (part 2) | Student Pres.: [Google
Chrome] See also: Google Chrome Comic Book |
||
11 | Nov 3 | CSS (part 3) | Download and try this CSS editor [TopStyle] | |||
12 | Nov 5 | CSS (part 4) |
hw2
re-design your personal website using XHTML & CSS |
|||
5 | 13 | Nov 8 | Scripting Languages | Quiz1 on lectures 1-8 (in class) |
JavaScript Tutorial -
EchoEcho.Com *** JavaScript tutorials, scripts, answers and much more JavaScript |
|
14 | Nov 10 | Cont. | Howstuffworks How Internet Cookies Work |
|
||
15 | Nov 12 | Cont. | WDVL Authoring JavaScript | |||
6 | 16 | Nov 15 | DOM
|
|
HTML DOM
Tutorial
|
Student Pres.:
Expression Web
Tools:
|
17 | Nov 17 | Form Object and Input Validation Using Regular Expressions | ||||
18 | Nov 19 | XML (Part1) |
Major 1 at 7:00-9:00PM, Room: 24-112 Material from Lectures 1 - 15
|
|||
7 | 19 | Nov 22 | XML (Part2) | hw2 due
through webct |
XML Tutorial | |
20 | Nov 24 | XSL & XSLT | project proposal due
|
W3Schools' tutorial | ||
21 | Nov 26 | cont. | Student Pres:
Adobe Flex
|
|||
8 | 22 | Nov 29 | XPath | XPath Tutorial | ||
23 | Dec 1 | No class. One time off for major1. | ||||
School Break (Dec. 3 to Dec. 13) -- No Classes Read this book |
||||||
9 | ||||||
10 | 24 | Dec 15 | Document Type Definitions (DTDs) | DTD Tutorial | XML Validator: SOAtest | |
25 | Dec 17 | XML Schema Definition (XSD) | XML Schema Tutorial | |||
26 | Dec 18 | XML DOM | XML DOM Tutorial | |||
11 | 27 | Dec 20 | XForms | XForms Tutorial | ||
28 | Dec 22 | XLink, XPointer & XQuery | XLink and XPointer Tutorial | |||
29 | Dec 24 | Server-Side Programming (part 1) [2spp], [4spp] | ASP Tutorial | |||
12 | 30 | Dec 27 | Server-Side Programming (part 2) [2spp], [4spp] | ASP Tutorial | Student Pres. | |
31 | Dec 29 | Server-Side Programming (part 3) [2spp], [4spp] | ASP Tutorial | |||
32 | Dec 31 | Server-Side Programming (part 4) [2spp], [4spp] |
Major 2 at 7:00-9:00PM, Room: 22-119 Material: JavaScript, XML, XSL/XSLT, XPath, DTD, XSD, DOM, XForms |
|||
13 | 33 | Jan 3 | Server-Side Programming (part 5) [2spp] [4spp] | ASP Tutorial | ||
34 | Jan 5 | Server-Side Programming (part 6) [2spp], [4spp] |
ASP Tutorial http://msdn.microsoft.com/net/aspnet/default.asp
ASP.NET 3.5 Unleashed Book |
|||
35 | Jan 7 | Web Engineering (part 1): Introduction [2spp], [4spp] |
Roger Pressman,
Software Engineering: A Practitioner's Approach, 6/e,
McGraw-Hill Higher Education, 2005. Chapters 16-20
UML-based Web Engineering (UWE) |
|||
14 | 36 | Jan 10 | Web Engineering (part 2): Requirements Engineering [2spp], [4spp] | |||
37 | Jan 12 | Web Engineering (part 3): Analysis and Modeling [2spp], [4spp] | ||||
38 | Jan 14 | Web Engineering (part 4): Design and Architecture [2spp], [4spp] | ||||
15 | 39 | Jan 17 | Web Engineering (part 5): Usability and Accessibility [2spp], [4spp] | hw3 assigned |
Usability and accessibility- best friends or worst enemies- Usability, Accessibility and Markup Web Design Tips + Web Usability & Accessibility
Most Important Web Usability Issues
|
|
40 | Jan 19 | AJAX | Gentle Reminder about Course Evaluation |
Ajax and XMLHttpRequest Tutorial
Ajax (programming) - Wikipedia
Open Directory - Computers Programming Languages JavaScript AJAX
|
||
41 | Jan 21 | ASP.NET AJAX
|
AJAX
The Official Microsoft ASP.NET Site
|
Student Pres.:
UWE
|
||
16 | 42 | Jan 24 | Introduction to Web Services | hw3 due (through WebCT) |
Web
Services Tutorial
|
Student Pres.:
PHP
Related Resources: A Course on PHP (ppt slides) *** Deitel PHP Resource Center Remembering Users with Cookies and Sessions (pdf)
|
43 | Jan 26 | Developing, Testing and Consuming Web Services with ASP.NET | ||||
44 | Jan 28 | e-commerce and Web Security |
Gentle
Reminder: Learning Outcomes Survey (on WebCT)
Quiz 2: on ASP.NET |
Web Security | ||
17 | 45 | Jan 31 |
Jan 30 before 10pm: Submit a softcopy of the report through WebCT Jan 31: Project Presentations and Discussions & Hand-in a CD that has the final report, ppt presentation, all software modules, other resources. The final report must include a description of the project objectives, motivations, requirements, use cases, system and content architecture, navigation model, UI, implementation hints (explaining important fragments only), suggestions for further improvements, citation of the resources and general information about the team members and their role in the project. You may include any other information that you think is needed to your report. The report should not include a full list of the code. The softcopy of the code should have proper comments to enhance its readability. Publish the website for the project on your account before the presentation and make sure it is functioning properly (you should test it and fix all errors early enough before coming to the class)
|
|||
18 | Feb 9 |
Final Exam at 7:00PM-9:00PM, Room:
TBA by the registrar << sample exams >>
|
Additional Notes
Course Website & Participation: Students are required to periodically check the course website and download course material as needed. Several resources will be posted through the website as well. Keys to quizzes and exams are generally discussed during class as time permits but solutions will not be posted. WebCT will be used for communication and interaction, posting and submitting assignments, posting grades, posting sample exams, etc. Also it is expected that you get benefit of the discussion board by raising questions or answering questions put by others (up to 5% bonus will be granted based on your active participation and the usefulness of the material you post).
Attendance: Regular attendance is a university requirement; hence attendance will be checked at the beginning of each class. Two late attendances will be considered as one absence. Missing more than 9 lectures will result in a DN grade without prior warning. To avoid being considered as absent, an official excuse must be shown no later than one week of returning to classes.
No make up quizzes or exams will be given.
Re-grading policy: If you have a complaint about any of your grades, discuss it with the instructor no later than a week of distributing the grades (except for the final). Only legitimate concerns on grading should be discussed.
Office Hours: Students are encouraged to use the office hours to clarify any part of the material that is not clear; however the instructor will only provide hints if it is an assigned task but not solve it.
Term Project: Form groups of three or two students (but three is more preferable), pick up a relevant and non-trivial web application, discuss it with your instructor, then go through all different phases of software development; innovative ideas are highly encouraged. All group members are expected to know all the details about the project. (More information about deliverables on WebCT).
Academic Honesty: Students are expected to abide by all the university regulations on academic honesty. Cheating will be reported to the Department Chairman and will be severely penalized. Although collaboration and sharing knowledge is highly encouraged, copying others’ work without proper citation, either in part or full, is considered plagiarism. Whenever in doubt, review the university guidelines or consult the instructor.
Courtesy: Students are expected to be courteous toward the instructor and their classmates throughout the duration of this course. Talking while someone else is speaking will not be tolerated. Furthermore, all cell phones must be turned off during class. In addition, students are expected to be in class on time. Late arrivals will disrupt the class session. If you are 15 minutes late, you will be marked as absent and will not be permitted to enter the class. More importantly, you are not allowed to leave the class unless it is an urgent matter. To contact your instructor, please use email through WebCT whenever possible and avoid using phone calls or written notes. When necessary to send an email through the university email system, please indicate SWE444-081 in the "Subject" field of your email, e.g. SWE444-081: Question about chapter 1.
888 Best of luck!! 888
II. Some Useful Resources on the Web
Creation Of The Web, History
Programming languages used on the Internet and the World Wide Web (WWW)
Microsoft FrontPage 2003 pdf file -- a quick place to start creating authoring websites using MS Frontpage
more will be added soon ........................................