Presentation is loading. Please wait.

Presentation is loading. Please wait.

Graphical User Interface and Job Distribution Optimizer for a Virtual Pipeline Simulation Testbed Walamitien Oyenan October 8, 2003 MSE Presentation 1.

Similar presentations


Presentation on theme: "Graphical User Interface and Job Distribution Optimizer for a Virtual Pipeline Simulation Testbed Walamitien Oyenan October 8, 2003 MSE Presentation 1."— Presentation transcript:

1 Graphical User Interface and Job Distribution Optimizer for a Virtual Pipeline Simulation Testbed Walamitien Oyenan October 8, 2003 MSE Presentation 1

2 Presentation Outline Project Overview Project Overview Requirement Specifications Requirement Specifications Project Plan Project Plan Cost and Size Estimation Cost and Size Estimation Quality Assurance Quality Assurance Demonstration Demonstration

3 Project Overview Purpose: Simulate the pressure and the flow rate distribution of gas in a real pipeline system. Simulate the pressure and the flow rate distribution of gas in a real pipeline system.

4 Project Overview Goals: Design a GUI to create and manipulate the pipeline system. Design a GUI to create and manipulate the pipeline system. Implement an optimizer to efficiently distribute computation among several machines. Implement an optimizer to efficiently distribute computation among several machines. Integrate the GUI with a simulator that will simulate the behavior of each component of the real pipeline system. Integrate the GUI with a simulator that will simulate the behavior of each component of the real pipeline system.

5 Requirement Specifications- Overall Description User Interface The pipeline editor shall support drag and drop operations for drawing components (pipes, joints, and compressors). The pipeline editor shall support drag and drop operations for drawing components (pipes, joints, and compressors). The pipeline editor shall support standard editing functions (copy, cut, paste). The pipeline editor shall support standard editing functions (copy, cut, paste). The pipeline editor shall provide zoom functions. The pipeline editor shall provide zoom functions. The pipeline editor shall display the simulation results. The pipeline editor shall display the simulation results.

6 Requirement Specifications- Overall Description User Interface, cont. The user shall be able to store/retrieve a previously drawn pipeline system and connect it with some new groups or components. The user shall be able to store/retrieve a previously drawn pipeline system and connect it with some new groups or components. The user shall be able to move components inside the editor to have a better positioning. The user shall be able to move components inside the editor to have a better positioning. The user shall be able to edit the characteristic of each component displayed. The user shall be able to edit the characteristic of each component displayed.

7 Requirement Specifications- Overall Description Software Interfaces The cluster computers shall run under the Linux operating system. The cluster computers shall run under the Linux operating system. Each computer shall have the Java Virtual Machine installed (version 1.4 or later). Each computer shall have the Java Virtual Machine installed (version 1.4 or later). Each computer shall have the JGraph 3.0 package installed. Each computer shall have the JGraph 3.0 package installed.

8 Requirement Specifications- Overall Description User Characteristics: Users of the system should be experienced pipeline design engineers who have a good understanding of a pipeline system. Users of the system should be experienced pipeline design engineers who have a good understanding of a pipeline system. Users should be able to understand and manipulate pipeline characteristics. Users should be able to understand and manipulate pipeline characteristics. No particular training should be necessary to use the software. No particular training should be necessary to use the software.

9 Requirement Specifications- Functional Requirements

10 : Pipeline Editor : Optimizer : Simulator : User Drag component Optimize () Optimize (Graph) BuildJobGraph(graph) Optimize(JobGraph) WriteFile(jobsLists) Simulate() Simulate(JobsFilename) ReadFileJobsFilename() simulate() Send(SimulationData) Display component Display Data

11

12 Requirement Specifications- Functional Requirements Pipeline Editor Components: Pipes, split, station, driver, compressor, orifice… Components: Pipes, split, station, driver, compressor, orifice… Draw, Edit, Delete, Move Draw, Edit, Delete, Move Undo, Redo Undo, Redo Copy, Cut, Paste Copy, Cut, Paste Zoom In, Zoom out Zoom In, Zoom out Optimize Optimize Simulate Simulate

13 Requirement Specifications- Functional Requirements Optimizer Problem: Produce an optimal job allocation that balances the load of each processor (=minimizes the load differences among cluster machines assigned to the simulation). Problem: Produce an optimal job allocation that balances the load of each processor (=minimizes the load differences among cluster machines assigned to the simulation). The jobs are the pipelines components (pipes, joints, compressors …). The jobs are the pipelines components (pipes, joints, compressors …). Each job has a computation time and a communication time that depend on the characteristic of the component it represents. Each job has a computation time and a communication time that depend on the characteristic of the component it represents. Solution: Branch and Bound Algorithm Solution: Branch and Bound Algorithm

14 Requirement Specifications For more details, see the Software Requirement Specification (SRS) document. For more details, see the Software Requirement Specification (SRS) document.

15 Project Plan Phases Phases Phase 1 Phase 2 Phase 3 JulAugSepOctNovDecJan

16 Cost Estimation Effort = 3.2 EAF (Size)^1.05; Effort = 3.2 EAF (Size)^1.05; Time = 2.5 (Effort)^0.38; Time = 2.5 (Effort)^0.38;Where: Effort = number of staff-months Effort = number of staff-months EAF = Effort Adjustment Factor (cf. Table) EAF = Effort Adjustment Factor (cf. Table) Size = number of delivered source instructions (in thousands of lines of code) Size = number of delivered source instructions (in thousands of lines of code)

17 Cost Estimation Cost Driver DescriptionRating Very Low LowNomi nal HighVery High Extra High Product RELYRequired software reliability0.750.881.001.151.40- DATADatabase size-0.941.001.081.16- CPLXProduct complexity0.700.851.001.151.301.65 Computer TIMEExecution time constraint--1.001.111.301.66 STORMain storage constraint--1.001.061.211.56 VIRTVirtual machine volatility-0.871.001.151.30- TURNComputer turnaround time-0.871.001.071.15- Software Development Effort Multipliers (EAF)

18 Cost Estimation (cont.) Personne l ACAPAnalyst capability1.461.191.000.860.71- AEXPApplications experience1.291.131.000.910.82- PCAPProgrammer capability1.421.171.000.860.70- VEXPVirtual machine experience1.211.101.000.90-- LEXPLanguage experience1.141.071.000.95-- Project MODPModern programming practices 1.241.101.000.910.82- TOOLSoftware Tools1.241.101.000.910.83- SCEDDevelopment Schedule1.231.081.001.041.10-

19 Cost Estimation (cont.) EAF = 1.00 x 1.00 x 1.00 x 1.11 x 1.00 x 1.00 x 1.00 x 1.00 x 1.00 x 1.00 x 1.00 x 1.07 x 0.91 x 1.10 x 1.10 = 1.31 EAF = 1.00 x 1.00 x 1.00 x 1.11 x 1.00 x 1.00 x 1.00 x 1.00 x 1.00 x 1.00 x 1.00 x 1.07 x 0.91 x 1.10 x 1.10 = 1.31 KLOC = 2 (2,000 SLOC) (Estimation) KLOC = 2 (2,000 SLOC) (Estimation) E = 3.2 x 1.31 x 2^1.05 = 8.67 staff- months E = 3.2 x 1.31 x 2^1.05 = 8.67 staff- months Time = 2.5 x 8.67^0.38 = 5.68 months Time = 2.5 x 8.67^0.38 = 5.68 months

20 Software Quality Assurance Plan Organization Committee of 3 professors to supervise the project: Dr. Virgil Wallentine, Dr. Daniel Andresen, Dr. Masaaki Mizuno Committee of 3 professors to supervise the project: Dr. Virgil Wallentine, Dr. Daniel Andresen, Dr. Masaaki Mizuno Approve design and requirements. Approve design and requirements. Responsible for monitoring implementation progress. Responsible for monitoring implementation progress.

21 Software Quality Assurance Plan Standards, conventions, and tools The documentation will be based upon IEEE Software Engineering Standards. The documentation will be based upon IEEE Software Engineering Standards. JGraph3.0 and Swing libraries will be used to build the Pipeline Editor (GUI). JGraph3.0 and Swing libraries will be used to build the Pipeline Editor (GUI). Rational Rose will be used to visually design the software being developed. Rational Rose will be used to visually design the software being developed. Java Path Finder (JPF) will be used as a verification tool. Java Path Finder (JPF) will be used as a verification tool.

22 Demonstration Demonstration of the GUI prototype Demonstration of the GUI prototype

23 THE END. Questions Questions Comments Comments Suggestions Suggestions


Download ppt "Graphical User Interface and Job Distribution Optimizer for a Virtual Pipeline Simulation Testbed Walamitien Oyenan October 8, 2003 MSE Presentation 1."

Similar presentations


Ads by Google