Download presentation
Presentation is loading. Please wait.
Published bySharon Lane Modified over 8 years ago
1
Design 3: Classes, Packaging, Remaining Issues CS406 Tivoli 1
2
Overview Prototype Member Responsibilities Progress Problems Questions
3
Prototype Functionality No Changes from last week DB2, Oracle, SQL Server Script Converters Will not implement Sybase Informix DB2 Mainframe
4
Member Responsibilities Project Broken up into 3 major sections XML parser Mark and Mike will set up the parser Will also implement symbol table and Script Generator Class Intermediate Script Representation Dave and Ruel will implement various inner classes Component Generator as well as error reports
5
Member Responsibilities Script Converters Todd and Travis will implement the three script converters These responsibilities will most likely change as implementation takes place
6
Progress so far….. Design is finalized…….again. Research Completed for Database information Research Completed for Third Party Parser NanoXML Parser XML Configuration Completed Member Responsibilities Delegated
7
XML File Changes XML File split into 2 files File 1: Describes Tables, Indexes, Views File 2: Describes actions to be performed on tables Drop and Create 2 instantiations of XML Parser
8
XML Data Description Example Test Case decimal Case_ID Case_ID Plants
9
XML Action File Example Test Case
10
XML File Changes (Process) Parser reads data from XML definition file Database schema will be stored into symbol table for later retrieval
11
XML File Changes (Process) Parser reads data from XML action file Components are then generated If necessary symbol table is consulted Process resumes as stated previously
12
System Behavior: XML Parsing setDBSchema(fileName) :ScriptGenerator SetFile(fileName) sch:XMLParser
13
System Behavior: XML Parsing setDBAction(fileName) :ScriptGenerator SetFile(fileName) act:XMLParser
14
System Behavior: Specify Database Platforms SpecifyPlatforms (platforms:text) :ScriptGenerator 1:Create(dbType:text) :ScriptConverter
15
:ScriptGenerator System Behavior: XML Parser sch:XMLParser 2*block:=[for each block]getBlock() :SymbolTable 1: createTable()
16
:ScriptGenerator:SymbolTable System Behavior: XML Parser :Component Generator 2.1a: ste:=generateSTEntry(block) 2.1b: addEntry(ste)
17
System Behavior: Internal Script Build :ScriptGenerator :Component :Script act:XMLParser :ScriptConverter 3 addBlock(block) 2 create() 2.1 create() 2.1.1 create() :Component :Component Generator 3.1*comp:=generateComponent(block) 1*block:=[for each block]getBlock()
18
System Behavior: Internal Script Build :Component :Component Generator 3.1*comp:=generateComponent(block) 3.1.1 create() :SymbolTable 3.1.1.1 if [needed] ste:=lookup(symbolname) ste:TableEntry
19
System Behavior: Internal Script Build :ScriptGenerator :Component :Script act:XMLParser :ScriptConverter 3 addBlock(block) 2 create() 2.1 create() 2.1.1 create() :Component :Component Generator 3.1*comp:=generateComponent(block) 3.1.1 create() 1*block:=[for each block]getBlock()
20
System Behavior: Internal Script Build :ScriptGenerator :Component :Script :ScriptConverter 4 addBlock(block) 3 create() 3.1 create() 3.1.1 create() 4.2 addComponent(comp) 4.2 add (comp) 5 writeScript() 5.1*:[for each component]comp::getComponent() :Component 5.2 visit(this) 5.2.2 dropTable(string) :File 5.3 write(string) ste:TableEntry 5.2.1 if [needed] lookup(name)
21
Problems Faced Small Revisions alter entire design Meeting Difficulties Similar/Not so similar database syntax
22
Revisions of Design XML Area of Design has changed As requested XML split into 2 files
23
Questions In the actionXML file, suppose we want to create a table named ”X". Table ”X" should be defined in the DBschemaXML file. But if table ”X" is not defined in the DBschemaXML file, what do you want to happen? Halt the program, spit out an error message, and don't create a script? Or maybe spit the error out, but then continue on with the program and generate the rest of the script, leaving "Create Table X..." out of the script. Questions for Us?
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.