Slot Course SOEN691A
Topics in Software Engineering
(Service Computing: Foundations, Designs, and Implementations)
Course Outline
INSTRUCTORS and LECTURE TIME
Section |
Lecture Time and Place |
Instructor |
Contact |
Office |
NN |
Friday 17:45-20:15 H-529 |
Yuhong Yan |
yuhong@cse.concordia.ca Tel: ext 8715 |
EV3.227 (Office hour: Wed, Fri, 15:00-17:00) |
Tut |
Wednesday 19:15-20:15 H817 |
Serguei Mokhov |
mokhov@cs.concordia.ca |
|
Marker |
|
Min Chen |
minchen2008halifax@yahoo.com |
|
Course Objectives:
This course covers the science and technology that underlie business services and IT services in the Internet era. This course will introduce the following foundational concepts and techniques:
Though this course, the students meet the following CEAB graduate attributes:
Prerequisites:
The following are not official prerequisite because you are supposed to have taken all these undergraduate courses. For students from difficult background, you are assumed to have equivalent knowledge.
COMP248 and COMP249 (Java Programming), COMP353 Database; COMP 354 Software Engineering or SOEN 341 Software Process, SOEN287 Web programming, and SOEN387 Web-based Enterprise Application Design. Or equivalent courses.
Additional notes for the prerequisites:
1. Java is the only working programming language in this course. The assignments and the course project do require advanced skills on java programming, Web application development and software engineering.
2. This course may provide tutorials at J2EE level or Web application development if necessary. No tutorial for basic java programming will be provided.
3. You are supposed to know the basic knowledge about Web programming, such as JavaScript, CSS, XHTML, and HTTP protocol. The assignments and the course project need to practice this.
3. The lectures of this course do not follow tightly the textbook. Attending lectures is required.
4. This is a graduate course. Normally I use the latest programming techniques and introduce the latest research results. Some “experiments” are expected. The new software may (or surely) contain bugs, as from my experiences.
5. You may find this course does not meet your expectation by reading through the above statements.
Computing Facilities
Students will be encouraged to set up their own environment with the prepared installation guide.
Web Page
Many resources for the course (slides, assignments, example programs) will be available on the Moodle Web site available through the MyConcordia portal www.myconcordia.ca.
Textbook
M. Papazoglou, Web Services: Principles and Technology, Prentice Hall, 2008.
Reference book:
1. Mark Endrei, Jenny Ang, Ali Arsanjani, et.al., Patterns: Service-Oriented Architecture and Web Services, a IBM Red Book, downloadable at http://www.redbooks.ibm.com/abstracts/sg246303.html.
2. Yinong Chen and Wei-Tek Tsai, Service-Oriented Computing and Web Data Management, from Principle to Development, second edition, Kendall Hunt Publishing Company, 2008.
3. Munindar P. Singh and Michael N. Huhns, Service-Oriented Computing: Semantics, Processes, Agents, John Wiley & Sons, Ltd, West Sussex, England, 2005.
Marking Scheme:
3 assignments: 15% (5%*3, individual)
1 course project: 5% (in group)
1 research report (individual): 20%, read at least 5 research papers,
1 midterm: 20%
1 final exam: 40%.
Weekly Schedule of Topics
Week of |
Chapter |
Topics |
Notes and Events |
#1-Jan 7 |
1 & 3
|
Theory: Web services basic Programming: XML Tutorial: none |
|
#2-Jan 14 |
2 & 4 & 5 |
Theory: Distributed computer infrastructure Programming: SOAP & WSDL Tutorial: XML |
Jan 16: DNE (full refund) or Register |
#3-Jan 21 |
2&4&5 |
Theory: Distributed computer infrastructure Programming: SOAP Web Service Tutorial: SOAP Web service |
|
#4-Jan 28 |
4 & 5 |
Theory: Service Computing Programming: SOAP Web Service Tutorial: SOAP Web service |
|
#5-Feb 4 |
|
Theory: Service Computing Programming: Restful Web service Tutorial: SOAP Web services |
Assignment 1 due
|
#6-Feb 11 |
6
|
Theory: Registering and discover Web services Programming: Restful Web service Tutorial: Restful Web service |
|
#7-Feb 18 |
|
Mid-term exam
|
|
#8-Feb 25 |
|
Break |
Assignment 2 due |
#9-Mar 4 |
9 |
Theory: Business process management and workflow Programming: BPEL standard Tutorial: TBD (may cancel) |
Mar 5: DISC (academic withdraw) |
#10-Mar 11 |
9 |
Theory: Formal modeling of business processes Programming: system integration with BPEL Tutorial: BPEL |
|
#11-Mar 18 |
9 |
Theory: Automated service composition Programming: System integration with BPEL, SaaS Tutorial: BPEL |
|
#12-Mar 25 |
9 |
Theory: Automated service composition and programming Tutorial: BPEL |
Assignment 3 due |
#13- Apr 1 |
10 & 7 |
Theory and programming: non-functional aspects of services (Service policies, addressing and agreements, Web service security) Tutorial: non-functional aspect |
|
#14 – Apr 6 |
|
Make-up class (if necessary) |
Project due Research report due |