defect, problem and progress tracking system john biddle

29
Defect, Problem and Progress Tracking System John Biddle

Upload: allyson-stephens

Post on 04-Jan-2016

233 views

Category:

Documents


2 download

TRANSCRIPT

Page 1: Defect, Problem and Progress Tracking System John Biddle

Defect, Problem and Progress Tracking

System

John Biddle

Page 2: Defect, Problem and Progress Tracking System John Biddle

SDSG

Systems Development and Support GroupMagnet Test FacilityTest Conventional and Super Conducting

Magnets

Maintain control, data acquisition, and monitoring systemsEx. Chisox, EMS, Unix Support, etc.

Page 3: Defect, Problem and Progress Tracking System John Biddle

Motivation for DPPTS

Efficient Maintenance of various SystemsRequire Knowledge of any Problems or

DefectsUnderstanding of Systems’ behaviorMechanism to improve functionality, if

needed

Page 4: Defect, Problem and Progress Tracking System John Biddle

Motivation for DPPTS (cont.)

MTF = Large Collaborative EnvironmentDifficult to keep track of old, new, and

updated defects.

Need for specialized system to track defects

DPPTS is implemented for this purpose

Page 5: Defect, Problem and Progress Tracking System John Biddle

The Basic Idea

Defect Database

Remote Nodes

DPPTS Applet

Page 6: Defect, Problem and Progress Tracking System John Biddle

Defect Database

Page 7: Defect, Problem and Progress Tracking System John Biddle

Interface v1.5.2

Page 8: Defect, Problem and Progress Tracking System John Biddle

Interface (cont.)

Page 9: Defect, Problem and Progress Tracking System John Biddle

Interface (cont.)

Page 10: Defect, Problem and Progress Tracking System John Biddle

Interface (cont.)

Page 11: Defect, Problem and Progress Tracking System John Biddle

Possible Improvements

Search options are rather limitedKeyword Search?Date Search?Allow more specific queries?

How about Printing?

Page 12: Defect, Problem and Progress Tracking System John Biddle

Upgrading DPPTS

Make changes to source code?Source code generated by PowerJCode is very obscure, difficult to make

changesCode dependent on non-standard PowerJ

classesPowerJ is no longer continued

Start all over from scratch!

Page 13: Defect, Problem and Progress Tracking System John Biddle

Crash Course in Java -- OOP

Object Oriented Programming

Objects do all the work Methods – similar to functions Data members (ints, booleans, or other objects)

Methods and data members defined in Classes Objects are particular “instances” of Classes

Page 14: Defect, Problem and Progress Tracking System John Biddle

Objects and Classes Ex.class Clubs { int cover() {}}

Clubs DragonRoom; …..DragonRoom.cover();

Clubs ClubO; ….ClubO.cover();

Page 15: Defect, Problem and Progress Tracking System John Biddle

Objects Passed as Arguments

class Bartender{ Drink mix(Drink drink1, Drink drink2){}}

class Drink {}

Drink koolAid, vodka;….Bartender charlie;….Drink bruceJuice = charlie.mix(koolAid, vodka);

Page 16: Defect, Problem and Progress Tracking System John Biddle

Inheritance

Allows creation of subclasses

Subclasses inherits methods and data members from superclass

Instance of subclass is also instance of superclass

Tree class

OakTree class PineTree class

Page 17: Defect, Problem and Progress Tracking System John Biddle

Design of New Applet

Use same specs as previous version

Use another frame for extra search options

Include a printing function

Page 18: Defect, Problem and Progress Tracking System John Biddle

Design (cont.)

Make a class for everythingAdvantage – component details are hidden

from others (ADT)Disadvantage – a ton of classesDisadvantage – communication between

components?

Page 19: Defect, Problem and Progress Tracking System John Biddle

Design (cont.)

Create classes for panels and frames.Almost each class will need to access databaseCreate classes to hide details of database from visual componentsDbAccessor – establish connectionDataManager – handle requests to/from

database (SQL)

Page 20: Defect, Problem and Progress Tracking System John Biddle

Design (cont.) -- Panel Classes

Construct Panels with the same JTable object

Submit

Advanced

QueryPanel

ActionPanel

ViewPanel

MessagePanel

New Update History Print

SearchFrame

EnterDataFrame HistoryFrame

StringPrinter

JTable

Page 21: Defect, Problem and Progress Tracking System John Biddle

Frame Classes

EnterDataFrameNew and Update Entry FramesConstructor requires data for update frame Sends email to coordinator and assigned

(Emailer).

HistoryFrameRequire table data in constructor (Vectors)Creates Description Frame

Page 22: Defect, Problem and Progress Tracking System John Biddle

Frame classes (cont.)

SearchFrameMore Query Options (keyword, date, etc)Should also house same instance of

JTable

DescriptionFrameDisplays text informationConstructor requires string (text)Email dialog (Emailer class)

Page 23: Defect, Problem and Progress Tracking System John Biddle

Other Classes

DataTableModelCreates a table model used to change

information in JTables

EmailerSends email

StringPrinterSends a string to a printer

Page 24: Defect, Problem and Progress Tracking System John Biddle

Other Classes (cont.)

AppletFrameDisplays an applet in a frameAllows applet to run as an application

DbAccessorConnects to Database

DataManagerSQL statements

Page 25: Defect, Problem and Progress Tracking System John Biddle

Version 2.0

Page 26: Defect, Problem and Progress Tracking System John Biddle

New or Updated Entries

Page 27: Defect, Problem and Progress Tracking System John Biddle

Test Drive

Page 28: Defect, Problem and Progress Tracking System John Biddle

Another Test Drive

Page 29: Defect, Problem and Progress Tracking System John Biddle

Conclusions

The program may run as either an application or an applet.

Runs in Java Runtime Environment 1.3 or better.

Most importantly, It works!The project was successful.