net in a software engineering course: frameworks and fun stephen wong dung “zung” nguyen ryan...

Post on 13-Jan-2016

214 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

.NET in a Software Engineering Course: Frameworks and Fun

Stephen WongDung “Zung” Nguyen

Ryan AipperspachBryan Lipinski

James McDougallAli Ongun

Rice University Generously supported by

Acknowledgements

Microsoft MS .NET Academic Server VS .NET for the lab machines and students Wireless Pocket PCs for each student (with

matching fund from Rice) All the .NET books from Microsoft Press

IBM/Rational Rational XDE UML diagramming tool via

SEED

Comp 410: Software Construction Methodology Course Description

Study of software design for effective implementation and maintenance …

Prerequisites Data Structures & Algorithms OOP

13 students Sophomores, juniors and seniors Familiar with OOP/OOD, Design Patterns &

UML Unfamiliar with C#, .NET

Project-driven Learn by doing Students take ownership of the project and

the course

Real World Experience

DistributedPlatform-

independent Software

State-of-the art

Technologies

ProjectManageme

nt

CustomerInteractio

n

Team Programmi

ng

OOP &Design

Patterns

High level & vague specs

Capture Abstraction

Manage Complexity

C# & .NETPocket/Tablet

PC

An Object Oriented Project

Kristen Nygaard’s Restaurant of Objects

Shopping Mall Simulation Design Shopping Mall Mall stores may have

any kind of products Customer demographic

data of any kind can be entered

Simulate interactions between mall customers and stores

Dynamic participation of stores over the WEB

Mall

StoreStore

Initial Concept

Server

ClientClient

Project Management

Model Group

Designed system

architecture and algorithms

Advanced Research

Group

Researched and implemented .NE

T network technologies

User Interface

Group

Worked with the customer and designed the

interface

Communication Modes

IM

Listserv

DevHood

Journals

Class web site

Persiste

nce

Persiste

nceS

peed

Speed

Modeling Real Life

FactoryFactory

SpacesSpaces

EntitiesEntities

Input DataInput Data

Driving the System

Person

Interaction

Chair

Sit

Attributes

Coke

Drink

Attributes

Attributes

Attributes

Baseball

Throw

AttributesAttributes

Watch

Buy

AttributesAttributes

Buy

Watch

Buy

Attributes

Buy

ExamineExamine

Buy

Object Oriented Design

PeoplePeople ItemsItems

BehaviorsBehaviors

AttributesAttributes

EntitiesEntities

StoreStore MallMall

SpacesSpaces

Demo

Networking

Network

NetHub

Mall

Store

Store

Store

The Role of …

IntegratedDevelopmentEnvironment

New Programming Language (C#)

High Level Entry Points

Real-World Technology

Infrastructure for Distributed

Computing

Course Schedule

ProjectIntroduction

ProjectIntroduction

LeadershipEstablishmentLeadership

EstablishmentCommunicationDevelopment

CommunicationDevelopment

FinalizeRequirements

FinalizeRequirements

FormalDemonstration

FormalDemonstration

High-Level Architecture DesignHigh-Level Architecture Design

Scheduled MilestonesScheduled Milestones

Final Development and TestingFinal Development and Testing

It All Adds Up

Life-Size Project

Self-Driven Students

Level Playing Field

External Support

Summary

The hands off approach

from the professors

combined with access to

cutting-edge technology

allowed us to create a

meaningful application

while giving us real-world

experience.http://www.exciton.cs.rice.edu/comp410

Dr. Stephen Wong: swong@rice.eduDr. Dung Nguyen: dxnguyen@rice.edu

top related