May 2005 Greg Giacovelli – Nick Mancuso – Shaun Newsum – Jean-Paul Pietraru – Nick Stroh.
-
date post
20-Dec-2015 -
Category
Documents
-
view
222 -
download
0
Transcript of May 2005 Greg Giacovelli – Nick Mancuso – Shaun Newsum – Jean-Paul Pietraru – Nick Stroh.
![Page 1: May 2005 Greg Giacovelli – Nick Mancuso – Shaun Newsum – Jean-Paul Pietraru – Nick Stroh.](https://reader036.fdocuments.us/reader036/viewer/2022062516/56649d455503460f94a21f9d/html5/thumbnails/1.jpg)
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.](https://reader036.fdocuments.us/reader036/viewer/2022062516/56649d455503460f94a21f9d/html5/thumbnails/2.jpg)
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.](https://reader036.fdocuments.us/reader036/viewer/2022062516/56649d455503460f94a21f9d/html5/thumbnails/3.jpg)
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.](https://reader036.fdocuments.us/reader036/viewer/2022062516/56649d455503460f94a21f9d/html5/thumbnails/4.jpg)
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.](https://reader036.fdocuments.us/reader036/viewer/2022062516/56649d455503460f94a21f9d/html5/thumbnails/5.jpg)
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.](https://reader036.fdocuments.us/reader036/viewer/2022062516/56649d455503460f94a21f9d/html5/thumbnails/6.jpg)
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.](https://reader036.fdocuments.us/reader036/viewer/2022062516/56649d455503460f94a21f9d/html5/thumbnails/7.jpg)
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.](https://reader036.fdocuments.us/reader036/viewer/2022062516/56649d455503460f94a21f9d/html5/thumbnails/8.jpg)
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.](https://reader036.fdocuments.us/reader036/viewer/2022062516/56649d455503460f94a21f9d/html5/thumbnails/9.jpg)
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.](https://reader036.fdocuments.us/reader036/viewer/2022062516/56649d455503460f94a21f9d/html5/thumbnails/10.jpg)
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.](https://reader036.fdocuments.us/reader036/viewer/2022062516/56649d455503460f94a21f9d/html5/thumbnails/11.jpg)
11
Architecture
![Page 12: May 2005 Greg Giacovelli – Nick Mancuso – Shaun Newsum – Jean-Paul Pietraru – Nick Stroh.](https://reader036.fdocuments.us/reader036/viewer/2022062516/56649d455503460f94a21f9d/html5/thumbnails/12.jpg)
12
Web Tier
![Page 13: May 2005 Greg Giacovelli – Nick Mancuso – Shaun Newsum – Jean-Paul Pietraru – Nick Stroh.](https://reader036.fdocuments.us/reader036/viewer/2022062516/56649d455503460f94a21f9d/html5/thumbnails/13.jpg)
13
Business Tier
![Page 14: May 2005 Greg Giacovelli – Nick Mancuso – Shaun Newsum – Jean-Paul Pietraru – Nick Stroh.](https://reader036.fdocuments.us/reader036/viewer/2022062516/56649d455503460f94a21f9d/html5/thumbnails/14.jpg)
14
Data Tier
![Page 15: May 2005 Greg Giacovelli – Nick Mancuso – Shaun Newsum – Jean-Paul Pietraru – Nick Stroh.](https://reader036.fdocuments.us/reader036/viewer/2022062516/56649d455503460f94a21f9d/html5/thumbnails/15.jpg)
15
Middle Tier
![Page 16: May 2005 Greg Giacovelli – Nick Mancuso – Shaun Newsum – Jean-Paul Pietraru – Nick Stroh.](https://reader036.fdocuments.us/reader036/viewer/2022062516/56649d455503460f94a21f9d/html5/thumbnails/16.jpg)
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.](https://reader036.fdocuments.us/reader036/viewer/2022062516/56649d455503460f94a21f9d/html5/thumbnails/17.jpg)
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.](https://reader036.fdocuments.us/reader036/viewer/2022062516/56649d455503460f94a21f9d/html5/thumbnails/18.jpg)
questions?
comments?
concerns?