Software Development for the Web: 'NET Curriculum Workshop - PowerPoint PPT Presentation

1 / 29
About This Presentation
Title:

Software Development for the Web: 'NET Curriculum Workshop

Description:

... an existing system, make modifications. Study a well architected ... Made good use of academic alliance program. Students can work on assignment using own PCs ... – PowerPoint PPT presentation

Number of Views:54
Avg rating:3.0/5.0
Slides: 30
Provided by: jati8
Category:

less

Transcript and Presenter's Notes

Title: Software Development for the Web: 'NET Curriculum Workshop


1
Software Development for the Web.NET Curriculum
Workshop
  • Paul Roe
  • QUT, Australia
  • p.roe_at_qut.edu.au

2
QUT
  • Queensland University of Technology (QUT)
  • One of largest universities in Australia 30,000
    students (u/g, p/g, 10 international)
  • Applied emphasis, strong links with industry e.g.
    Microsoft

3
My Background
  • Academic at QUT for 10 years
  • Spent last 3 years utilising Microsoft .NET in
    teaching and research
  • Initially Project 7
  • Subsequently other projects and teaching
  • I am a computer scientist interested in
  • Programming languages
  • Distributed computing
  • Practical / applied emphasis
  • Disclaimer these are my views, not Microsofts,
    not QUTs

4
Why use .NET in Teaching?
  • State of the art languages, runtime, libraries
  • Industry strength technology
  • Simple sophisticated
  • Excellent support for internationalisation
  • Useful
  • Increasingly in demand
  • Students love it
  • Add balance to degree (like most degrees, lot of
    Java Linux in subjects)

5
Academic Reality CheckWhat should you really be
concerned about in order to teach a subject with
a new technology like .NET ?
  • Resources, resources and resources!
  • Documentation
  • Textbooks
  • Reference material
  • Tutorials
  • Courseware?
  • People (with necessary skills)
  • Teaching assistants
  • Instructors
  • Students
  • Systems administrators
  • Software availability, cost, resource
    implications (need lab upgrade?, can students run
    s/w on their PCs?)
  • Labs set-up and administration, systems admins,

6
Software Development for Web Overview
  • Subject about theory and practice of developing
    web applications e.g. eStores, web portals, etc.
  • A capstone elective subject of 3 year Bachelor of
    IT degree
  • Run twice 2002 and 2003
  • Serious programming subject
  • Uses .NET, in particular ASP.NET
  • ASP.NET very sophisticated framework for web
    applications, more so than e.g. ASP, JSP

7
What is ASP.NET?
  • Consider three tier web application architecture

Web server
Client (web browser)
ASP.NET Presentation
Business Logic
ADO.NET Data Access
HTML over HTTP
Database
8
Student Learning Objectives
  • Understand issues of s/w development for web
  • Different from PC s/w development
  • Client server
  • State management
  • Architecture and design n-tier architecture,
    data access
  • Security, scalability, performance, etc.
  • Know some standard technology e.g. HTTP, HTML,
    XML, web services
  • Gain programming experience with .NET,
    particularly ASP.NET

9
Prerequisites
  • Java
  • Intermediate level object oriented programming
  • Basic HTML
  • Basic databases / SQL

10
Subject Structure
  • 2-3 hour lecture 1 hour prac X 13 weeks
  • (¼ full time student load one semester)
  • Assessment 35 assignment, 65 exam
  • Some guest lectures by Microsoft
  • ASP.NET overview and demos
  • Real world issues - deployment, project
    management, legacy code, etc.

11
Documentation
  • Good overview Understanding .NET A Tutorial
    and Analysis David Chappell, Addison Wesley 2002
  • Visual Studio and SDK excellent documentation
  • Walk throughs e.g. Creating a web app (local,
    web)
  • Tutorials e.g. C Tutorials (local, web)
  • Reference e.g. SqlConnection Class (local, web)
  • Quickstarts http//localhost/quickstart/ASPPlus/,
    http//www.asp.net/tutorials/quickstart.aspx
  • Web, particularly for generic technology HTTP,
    HTML, XML
  • MSDN Academic Alliance notes (http//www.msdnaa.ne
    t/)

12
Lectures
  • Topics
  • Web basics, HTTP, HTML, CGI, ActiveX, ASP/JSP
    (evolutionary perspective)
  • .NET basics CLR, C / VB.NET, VS.NET
  • ASP.NET
  • ADO.NET, N-tier architecture
  • Security
  • XML, web services
  • Real world issues deployment, teamwork,
    debugging, performance etc.
  • New developments P2P, business integration
    servers (Biztalk), etc.
  • Most lectures mix of
  • Concepts, design, architecture
  • Standards (e.g. HTTP, XML, web services)
  • .NET practice inc. demos
  • Also tutorials covering practical aspects of
    .NET

13
Lab Setup and Software
  • Students developed and tested code on individual
    machines
  • Run web server and database on each PC
  • Labs set up to run a boot loader (Rembo)
  • Multiple images, can force re-image if necessary
  • Students have admin permission
  • Machine configuration
  • Windows XP Professional
  • Internet Explorer 6
  • Visual Studio.NET Professional
  • IIS (optional Windows XP Professional component)
  • SQL Server Developer Edition
  • Alternative to Visual Studio, Web Matrix
    smaller, simpler, free http//www.asp.net/WebMatr
    ix/

14
Lab Setup and Software
  • But this all costs lots of ?!
  • No - MSDN AA to the rescue http//www.msdnaa.net/
  • Can install MS development s/w in labs (cheaply)
  • Students can legally install same configuration
    on home PC for free!

15
Assignment (Project)
  • Tried two different approaches
  • Construct system from scratch (first semester
    2002)
  • Modify an existing system (first semester 2003)
  • Both cases
  • Students work in pairs
  • Serious programming assignment
  • Use SQL Server, Visual Studio.NET, ASP.NET,
    VB.NET/C

16
Assignment Construct System from Scratch
  • Pizza ordering system for work group
  • Heres one I made earlier
  • Incorporate some web services and other issues
  • Required ASP.NET, ADO.NET, data base, C
  • Use at least one custom web control
  • Use code behind and minimal inline program code
  • Emphasized simple and elegant design

17
Assignment Construct system from scratch Issues
  • Most students did a good job, weaker students
    struggled, no guiding design
  • Lots of variation in designs, user interfaces
    etc. making grading difficult
  • Also lots of installation issues difficult
    grading

18
Best Assignment
19
Best Assignment
20
Best Assignment
21
Assignment Modify an Existing System
  • Give an existing system, make modifications
  • Study a well architected system
  • Easier marking
  • No need to bake one ourselves
  • Realistic dont start from scratch
  • Students write less code, spend more time
    understanding existing well designed system
  • Can constrain system e.g. give them database
  • Have server to deploy final system easier
    grading (xcopy deployment!)

22
Example System gasTix
  • gasTix example event ticketing system like
    Ticketek
  • http//www.gastix.net
  • Example system
  • Best practice
  • Well architected
  • Uses C and 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)

23
Extending gasTix
  • Gave them a database with some new tables
  • Force them to use that database, only access via
    stored procedures!
  • 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

24
Demo
  • Original http//www.gastix.com/home.aspx
  • One students solution http//localhost/gasTIX/
    (added customer registration, multiple countries)

25
Alternatives to gasTix
  • MS Duwamish books example well documented,
    exemplar design
  • NET Architectural Sample Applications
    http//msdn.microsoft.com/library/default.asp?url
    /library/en-us/dnbda/html/bdadotnetsamp0.asp
  • IBuySpy (simpler) http//www.asp.net/Default.aspx?
    tabindex5tabid42

26
Results
  • Lots of interest from students 200, 230
    students (02,03)
  • Lot of material to cover
  • Made good use of academic alliance program
  • Students can work on assignment using own PCs
  • Couldnt run the subject without this!
  • Assignments
  • Generally very good, extending an existing system
    works well
  • Used postgraduate students for staffing tutorials
    grading assignments
  • Prizes for best assignments, inc. opportunity to
    help out at MS TechEd!
  • Grading very time consuming for start from
    scratch assignments, modification ones better
  • Good support from Microsoft
  • Guest lectures went really well
  • Better student behaviour and participation than
    for academics!

27
Where to from here?
  • Investigate and sign-up for MSDN Academic
    Alliance http//www.msdnaa.net/
  • Contact local MS rep for support, ask about
    content and curriculum project
  • Start small, build knowledge and confidence
  • E.g. undergraduate projects good starting point
  • Build team (if got large classes) e.g. post grad
    students for TA
  • Speak to book reps good .NET text books
  • Pay attention to labs sys admin issues
    http//msruniv.corp.bcentral.com/

28
Thank you
  • Questions?
  • (Please feel free to email me if you have any
    questions which arise later p.roe_at_qut.edu.au)

29
Other Courses at QUT using .NET
  • Component technology
  • Intro programming
  • Compilers
  • Web services
  • Web applications development
  • Internationalisation
Write a Comment
User Comments (0)
About PowerShow.com