Using ASP.NET and Web Services in Courses

Download Report

Transcript Using ASP.NET and Web Services in Courses

Using ASP.NET and Web Services
in Courses
Paul Roe
Queensland University of Technology
[email protected]
Discuss Two Courses
• Software Development for the Web
– Run twice, focus on ASP.NET
– Some web services
– IT Degree, third year elective subject
– (¼ full time student load × one semester)
• Web Services
– New course, to commence Feb 2004
– Postgraduate elective subject
– (¼ full time student load × one semester)
© Paul Roe 2003
2
Software Development for Web:
Objectives
•
Understand issues of s/w dev for web
–
–
–
–
–
•
•
Different from PC s/w dev.
Client server
State management
N-tier architecture, data access
Security, performance, web UI etc.
Teach standard technology e.g. HTTP, HTML,
XML, web services
Give students experience with ASP.NET
– Why? State of the art, easier than Java, useful, sexy…
© Paul Roe 2003
3
New Strategy for this Year
• Give students an existing system, ask
them to make modifications
– Study a well architected system
– Easier marking
– No need to bake one ourselves (to gauge
complexity)
– More realistic – don’t start from scratch
© Paul Roe 2003
4
Example System: gasTix
• gasTix example event ticketing
system like Ticketek
• http://www.gastix.net
• Example system
– best practice
– well architected
– Uses C#, VB.NET, database,
security, ASP.NET, web services
– Comes with all source code
• Described in: G. Sullivan, “NET
e-Business Architecture”, SAMS,
2002 (ISBN: 0672322196)
• Other possibilities on MSDN:
IBuySpy, …
© Paul Roe 2003
5
Other Reference Material
• Visual Studio and SDK doco
– Walk throughs
– Tutorials
– Reference
• Web, particularly for generic technology:
HTTP, HTML, XML
• MSDN Academic Alliance notes
© Paul Roe 2003
6
Course Structure
•
Prerequisites
– Java
– Intermediate level object oriented
programming
– Basic HTML
– Basic databases / SQL
•
•
•
2-3 hour lecture & 1 hour prac X 13 weeks
Some guest lectures
Assessment: 35% assignment, 65% exam
© Paul Roe 2003
7
Lectures
• Topics:
– Web basics, HTTP, HTML, CGI, ActiveX, ASP/JSP (evolutionary
perspective)
– .NET basics: CLR, C#, VS.NET
– ASP.NET, form lifecycle
– ADO.NET, N-tier architecture
– Security
– XML, web services
– Real world issues: deployment, testing, team management etc.
– New developments: UDDI, GXA, P2P
• Most lectures mix of:
–
–
–
–
Concepts, design, architecture
standards (e.g. HTTP, XML, web services)
.NET: practice inc. demos
Guest lectures
© Paul Roe 2003
8
Assignment
• Work in pairs
• Extend the gasTix system
• Gave them a database with some new tables
– Force them to use that database, only access via
stored procs!
• Additional features
– Customer registration
– Support different counties
– Web services address validator
• Assignment required them to understand
existing code, but less coding for them to do
© Paul Roe 2003
9
Lab Setup
• Students developed and tested code on
individual machines
– run web server and database on each PC
• Machine configuration
–
–
–
–
–
Windows 2000 Professional
Internet Explorer
Visual Studio.NET Professional
IIS (optional Windows Professional component)
SQL Server
• Deploy final system on a server to make grading
easier (xcopy deployment!)
© Paul Roe 2003
10
Ok so what happened? (2003)
• Lots of interest from students
• Got 230 students, and most stayed the duration despite
it being on a Friday evening!
• Lot of material to cover
• Made good use of academic alliance program
– Students can work on assignment at home
– couldn’t run the unit without this!
• Assignments
– Initial results good (being graded now!)
– Marked by tutors (research students, finding staff with expertise
is difficult)
• Guest lectures went really well
– Better student behaviour and participation than for academics!
© Paul Roe 2003
11
Web Service Unit
• New, never run, this is the plan…
• Postgraduate elective
• Content
– Why, big picture, business reasons
– Core technology: SOAP, WSDL, UDDI
– Case studies
– New developments
• Use Java and .NET, WS are about interop!
© Paul Roe 2003
12
Environment
• Run on single machines
• Windows XP
• Run IIS and Tomcat – two web servers
– .NET web services
– Java web services: Apache Axis / IBM / Sun
• Also program against some existing web
services such as Amazon, Google, Terraserver,
UDDI test servers
• Perhaps use Windows server 2003 for UDDI
© Paul Roe 2003
13
Teaching
• Subject will be taken by CS and IS
students
• Want to support specialisation, hence:
– First Half: intense lecture series
– Second half (specialisation): group projects,
associated readings
• Books? Probably won’t use one
© Paul Roe 2003
14
Lectures
• Teach how web services can and are being used –
business case, case studies(?)
• Web service architecture – where they fit in
• Basic web service technology
– XML, Schema, SOAP, WSDL, UDDI
– .NET and Java implementations
• Teach how to design web services, web service
evolution, versioning, reusing WSDL, schema
• Generic web services: .NET Passport, Alerts etc.
• How to secure web services
• New technologies: WS-Security, WS-Coordination,
BPEL4WS – some projects using these
© Paul Roe 2003
15
Software Development for the
Web: Assignment: 2002
•
•
•
•
•
•
[Students built a system from scratch]
Pizza ordering system for work group
“Here’s one I made earlier”
Incorporate some web services and other
issues
Required: ASP.NET, ADO.NET, data base
Emphasized simple and elegant design
© Paul Roe 2003
16
Assignment Constraints
•
•
•
•
•
Work in pairs
Only use ASP.NET and C#
Use at least one custom web control
Use code behind and minimal inline
program code
Start from scratch
© Paul Roe 2003
17
Best Assignment
© Paul Roe 2003
18
Best Assignment
© Paul Roe 2003
19
Best Assignment
© Paul Roe 2003
20