may 2005 greg giacovelli – nick mancuso – shaun newsum – jean-paul pietraru – nick stroh

18
May 2005 iacovelli – Nick Mancuso – Shaun Newsum – Jean-Paul Pietraru – Nick

Post on 20-Dec-2015

223 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: May 2005 Greg Giacovelli – Nick Mancuso – Shaun Newsum – Jean-Paul Pietraru – Nick Stroh

May 2005

Greg Giacovelli – Nick Mancuso – Shaun Newsum – Jean-Paul Pietraru – Nick Stroh

Page 2: May 2005 Greg Giacovelli – Nick Mancuso – Shaun Newsum – Jean-Paul Pietraru – Nick Stroh

2

Agenda • Background• Motivation• Requirements• Schedule• Metrics• Architecture• Tier Design• Domain experience

Page 3: May 2005 Greg Giacovelli – Nick Mancuso – Shaun Newsum – Jean-Paul Pietraru – Nick Stroh

3

Background• Replace the “try” system

– Compiles, tests, and saves students submissions

– Provides immediate feedback to the student

– Collection of scripts written in the early 1990’s

– Issues:• Steep learning curve• Performance issues at peak hours

Page 4: May 2005 Greg Giacovelli – Nick Mancuso – Shaun Newsum – Jean-Paul Pietraru – Nick Stroh

4

Motivation

• New Features– Cross platform support– Small learning curve– A solid framework

• Provide clear ports for adding future customizations & expansions

• Separate concerns to ease maintenance• Distribute CPU load

Page 5: May 2005 Greg Giacovelli – Nick Mancuso – Shaun Newsum – Jean-Paul Pietraru – Nick Stroh

5

Requirements• Gathered from:

– Project sponsor– Personal experience with old system– Sample try lab configuration

• Tested against:– Project sponsor– try manuals

• SRS is thorough & will be useful to future developers

Page 6: May 2005 Greg Giacovelli – Nick Mancuso – Shaun Newsum – Jean-Paul Pietraru – Nick Stroh

6

ScheduleDue Date Delivered Name Description

12-26-04 12-26-04 Project Plan Plan and schedule

01-06-05 01-26-05 SRS Defines the system requirements

01-25-05 02-18-05 Design Describes the system design

01-20-05 01-20-05 Test Plan Defines the testing approach

01-29-05 02-18-05 M1 Milestone #1 – The Framework

02-17-05 02-17-05 Progress report Midpoint project presentation

02-28-05 03-24-05 M2 Milestone #2 – Submit

03-31-05 05-02-05 M3 Milestone #3 – Compile and Test

04-28-05 04-28-05 Project poster Product presentation poster

04-30-05 N/A M4 Milestone #4 – Code complete

05-16-05 05-16-05 Conference Paper End of term paper

05-20-05 N/A M5 Milestone #5 – Gold

Page 7: May 2005 Greg Giacovelli – Nick Mancuso – Shaun Newsum – Jean-Paul Pietraru – Nick Stroh

7

MetricsLOC per Component

0

2000

4000

6000

8000

10000

12000

Component

LO

C Man Hours (Est.) 660

LOC 23550

LOC / Man Hour 35.6

Page 8: May 2005 Greg Giacovelli – Nick Mancuso – Shaun Newsum – Jean-Paul Pietraru – Nick Stroh

8

MetricsDefects per Component

0

5

10

15

20

25

30

35

Business Tier Web Tier Middle Tier Data Tier Design / Docs

Component

Def

ects

Page 9: May 2005 Greg Giacovelli – Nick Mancuso – Shaun Newsum – Jean-Paul Pietraru – Nick Stroh

9

Solution• Architectural framework

– May be easily extended to meet all requirements– Runs in any J2EE-compliant application server.– Scalable by distributing amongst multiple hosts

• Distributed submission processing– Compile & testing is completed by an array of

clients– Increases system performance– Scales up by adding more client machines

Page 10: May 2005 Greg Giacovelli – Nick Mancuso – Shaun Newsum – Jean-Paul Pietraru – Nick Stroh

10

Solution

• Model-View-Controller– Decouples

• UI from business logic• Business logic from data

• Web services– Interface to the business logic– Custom UI’s & scripts may be written

Page 11: May 2005 Greg Giacovelli – Nick Mancuso – Shaun Newsum – Jean-Paul Pietraru – Nick Stroh

11

Architecture

Page 12: May 2005 Greg Giacovelli – Nick Mancuso – Shaun Newsum – Jean-Paul Pietraru – Nick Stroh

12

Web Tier

Page 13: May 2005 Greg Giacovelli – Nick Mancuso – Shaun Newsum – Jean-Paul Pietraru – Nick Stroh

13

Business Tier

Page 14: May 2005 Greg Giacovelli – Nick Mancuso – Shaun Newsum – Jean-Paul Pietraru – Nick Stroh

14

Data Tier

Page 15: May 2005 Greg Giacovelli – Nick Mancuso – Shaun Newsum – Jean-Paul Pietraru – Nick Stroh

15

Middle Tier

Page 16: May 2005 Greg Giacovelli – Nick Mancuso – Shaun Newsum – Jean-Paul Pietraru – Nick Stroh

16

Problems we encountered

• Configuration issues– jBoss

• Integration tests• J2EE complexity• Learning curve

Page 17: May 2005 Greg Giacovelli – Nick Mancuso – Shaun Newsum – Jean-Paul Pietraru – Nick Stroh

17

Post Mortem

• What went well:– Solid documentation throughout.– Proof-of-concept or better code for each

major component of the system.

• What we learned from:– Too much wind-up time– Should have dropped JBoss early

Page 18: May 2005 Greg Giacovelli – Nick Mancuso – Shaun Newsum – Jean-Paul Pietraru – Nick Stroh

questions?

comments?

concerns?