Title: Mid of Semester Presentation 06222004
1Mid of Semester Presentation06-22-2004
- Team Dumbledore
- Heng Chen
- Myung-Joo Ko
- Neel Mullick
- Paulo Merson
2Agenda
- Team Dumbledore
- Process
- Progress Report
- Risks
- Demo
3Team Dumbledore
- Team
- Henry Configuration support Integration
Manager - Neel Architect, Requirements Manager,
Development Manager - Myung Client Manager QA Manager
- Paulo Team lead Process Manager
- All Developers Unit testers
- Contractors
- Alex developer (MSIT practicum)
- Mentors
- Tony
- Ipek
- Clients (also architects/developers of ArchE
core) - Mark Klein
- Len Bass
- Felix Bachmann
4Agenda
- Team Dumbledore
- Process
- Progress Report
- Risks
- Demo
5Process (1)ACDM
Functional rqmts/constraintsPaper prototypes
Discover quality attribs.Create utility tree 1
UI detailedstories
Prioritized utility treeInitial project plan
Create notionalarchitecture 2
Architecture viewsUpdated project plan
Review architectureAnalyze scenarios 3
Risks, tradeoffs
Discuss UI functions w/clients 3
Ready to design code?
No
Evaluate risks/tradeoffs Create experiment plan
4
Yes
Experiment planUpdated project plan
Create design Write test code/ write code/ review
code 6
Legend
Artifact Activity Decision Next step Produces
Execute experimentsRevisit architecture 5
Detailed designTest codeSource code
Refined architectureUpdated project plan
Deploy/integrateor iterate 7
6Process (2) Iterative model
7Process (3) Design
- Design artifacts
- UML class diagrams
- UML sequence diagrams
- Excel sheets for transformation definitions
- ArchE1
- Reference design for initial classes
- Design review team walkthrough
- ArchE23
- Create design for all work assignments
- Individual reviews
8Process (4) - Details
- Estimate
- Individual estimates for all phases
- Time and LOC
- Automated tests (JUnit)
- For all non-UI functionalities
- For UI Plug-in
- Reflection website
- Code
- Code conventions
9Process (5) QA
- Code Review
- ArchE1
- Important classes reviewed
- Individual reviews
- Team walkthrough of review findings
- Pre post review submission into repository
- ArchE23 all classes to be reviewed
- System testing bug tracking
- ArchE1
- Team members log bugs on Bugzilla
- ArchE23
- Clients use ArchE1 and give feedback and log bugs
on Bugzilla - System tester role created
10Agenda
- Team Dumbledore
- Process
- Progress Report
- Risks
- Demo
11Progress report (1)
- High level functional requirements
- CRUD scenarios
- CRUD functions
- CRUD responsibilities
- CRUD relationships
- Display model
- Export design
- Work allocations in WBS
- ArchE1 67 (DONE 6/22/04)
- ArchE2 87 (Due on 7/12/04)
12Progress report (2)
13Progress LOC
14Testing
- Automated tests (JUnit)
- JUnit tests of 26 non-UI classes
- JUnit plug-in tests of all UI views
- Performance tests
- Get data from Jess and refresh views
- Two architecture alternatives
15Alternative 1 Observer/Observable
16Alternative 2 Refreshable UI
17Performance Tests
- Issue found
- Jess uses too much memory
- Could not test w/ 10000 elements
18Code Review
- 18 classes (1578 LOC) reviewed for ArchE1
- Findings
- 47 defects
- 149 improvements
- Review rate 351 LOC/hour
- Average defect/KLOC 30
- Review impact
- Total of 50 classes changed (5349 LOC)
- Refactoring of view classes into 7 base classes
19Agenda
- Team Dumbledore
- Process
- Progress Report
- Risks
- Demo
20Top Risks
21Agenda
- Team Dumbledore
- Process
- Progress Report
- Risks
- Demo
22Questions to Mentors
- Our estimates are still very high-level
- We have different technical aspects
- Writing an Eclipse view
- Writing a transaction to access Jess
- Create a UML sequence diagram
- Should all developers work a little with each one
(maximizing learning) or not (maximizing
productivity) - How to avoid problems when integrating changes
other people made to the code base?
23Backup Slides
24The ArchE System (1)
25ArchitectureCC
26ArchitectureModule Uses
27ArchitectureImplementation Style (Eclipse
Plug-ins)
28UML Class Diagram Value Objects(vo Package)
29UML Sequence Diagram Add Responsibility
30Experiments Status
- HenryRMA model solver
- Client had a working version delivered to them
- Myungexport to Rational Rose
- Code base in place
- Design to be reviewed and implemented in ArchE2
- Neelinteraction with Jess using Java
- Architecture, designed implemented in ArchE1
- Paulo Eclipse plug-in development
- Experiment metamorphosed into code for ArchE1
31Progress Source Files