Documentos de Académico
Documentos de Profesional
Documentos de Cultura
March23,2006
RTIInternationalisatradenameofResearchTriangleInstitute
3040CornwallisRoad Phone9195416000
Introduction
Faster,bettercontrolleddevelopment AutomaticallyconvertspecstoBlaiseIncludefiles Easilyaddasecondlanguage SynchronizespecsandBlaisecode Logchanges
March23,2006
CaseStudy
OverviewoftheQSD
Programmersloadspecsfromadocumentand automaticallycreatefileswithtypes,fills,andmodules Specwritersandtranslatorsmakeiterativechanges tothespecifications ProgrammersexportthechangesintotheBlaisecode PrintedspecificationsareinsyncwiththeBlaisecode Allstaffmonitorchangesmadeduringdevelopmentof theBlaisequestionnaire
March23,2006 4
BlaiseinstrumentDesign
BlaiseDataModelBasics TheDataModeldefinesthequestionnaire:
DATAMODELBasicModel FIELDS A_NameWhatisyourname?:STRING[35] A_AgeHowoldareyou?:0..120 RULES A_Name A_Age ENDMODEL Rulesstateifandhow fieldsaredisplayed, andarelistedina RULESsection Fieldsholdthedata definitions,andare definedinaFIELDS section
March23,2006
OverviewoftheQSD(Systemflow)
March23,2006
BlaiseinstrumentDesign
BlaiseFieldTypesandFills
Types:
FieldtypeAtypedeclarationorthenameofauserdefinedtype TYPEsectionisusedtoholduserdefinedtypes
TYPE
TYesNo=(Yes(1)ENG"Yes"SPN"S" ,No(2)ENG"No"SPN"No")
Fill:
Holdsthevalueofanotherfieldandinsertsitintothequestiontext Insertedbyusinga^character
FIELDS
A_NameWhatisyourname?:STRING[35] A_Age^Name,howoldareyou?:0..120
March23,2006 7
BlaiseinstrumentDesign
BlaiseIncludeFiles
IncludeFiles:
Bringinformationthatisinaseparatefileintoadatamodel Makemaintenanceeasier Allowustocreatefilesautomatically
Examplesofincludefiles:
{A_Fields.inc}
FIELDS A_NameWhatisyourname?:STRING[35]
A_Age^Name,howoldareyou?:0..120
{Types.inc}
TYPE
TYesNo=(Yes(1)ENG"Yes"SPN"S" ,No(2)ENG"No"SPN"No")
March23,2006 8
BlaiseinstrumentDesign
BlaiseBlocks
Blocks:
UnitsofBlaisecodethatcanbereused Addstructuretoadatamodel DefinedandreferencedinthesamewayasaTYPE
BLOCKB_A {ModuleAAskNameandAge}
INCLUDEA_Fields.inc { A_NameWhatisyourname?:STRING[35]} { A_Age^Name,howoldareyou?:0..120} RULES A_Name A_Age
IncludefileA.inc
BlaiseinstrumentDesign
BlaiseDataModelforAutomationUpdate
DATAMODELAutoModel
{somesettings}
INCLUDE"FillAuxfields.inc {FieldsthatareusedasFillsintheinstrument}
Fills.keep A {ExecutemoduleAAskNameandAge}
{somecode} ENDMODEL
March23,2006 10
OverviewoftheQSD(MainScreen)
March23,2006
11
OverviewoftheQSD(DeveloperView)
March23,2006
12
OverviewoftheQSD(SpeccerView)
March23,2006
13
OverviewoftheQSD(IterativeChanges)
March23,2006
14
OverviewoftheQSD(ACASI)
March23,2006
15
Conclusion
FasterdevelopmentofBlaiseInstruments:
Programmersfocusonlogicratherthanquestionwording MinimizeerrorswhencreatingBlaisecode Automaticallyaddsecondlanguage Automaticallycreatescriptsforsoundfiles
SpecsInstrumentsynchronization
Textalwaysinsyncandcanbeprintedintwolanguagesforreviewortesting Simplifysyncinglogic
MonitoringofallchangesintheQSD Futuredevelopment:
ConsideraddingBlaiselanguagetoIDADS ImprovetheQSDbyaddingmoreuserfriendlysearchfunctionsforchanges
March23,2006 16
Questions?
Thankyouto: PALSPortraitsofAmericanLifeSurvey,sponsored bytheUniversityofNotreDameandRiceUniversity LiliaFilippenko,RTIInternational ValentinaGrouverman,RTIInternational
March23,2006
17