Upload
edward-george
View
212
Download
0
Embed Size (px)
Citation preview
11Hong, KangWoon (TTA team)Hong, KangWoon (TTA team) Master of Software Engineering, ICU&CMUMaster of Software Engineering, ICU&CMU
Requirements Analysis Requirements Analysis for TTA studio project for TTA studio project
Hong, KangWoon SEP 13, 2Hong, KangWoon SEP 13, 2005005
22Hong, KangWoon (TTA team)Hong, KangWoon (TTA team) Master of Software Engineering, ICU&CMUMaster of Software Engineering, ICU&CMU
Initial Project OverviewInitial Project Overview
TTCN Translator System
Protocol Test Cases in TTCN
Lexical Analysis
Syntax Analysis
Semantic Analysis
Code Generation
Protocol Test
33Hong, KangWoon (TTA team)Hong, KangWoon (TTA team) Master of Software Engineering, ICU&CMUMaster of Software Engineering, ICU&CMU
Context DiagramContext Diagram
TTCN Translator
System
TTCN Script Writer
Maintenance Representative
Symbol Management
System
Translate TTCN Script
Perform Update
Forward Parse Tree
Store Parse TreeRequest Parse Tree
Protocol Tester
CompileCode
44Hong, KangWoon (TTA team)Hong, KangWoon (TTA team) Master of Software Engineering, ICU&CMUMaster of Software Engineering, ICU&CMU
ActorsActors
• TTCN Script WriterTTCN Script Writer– an individual who requests translation for an individual who requests translation for
TTCN script fileTTCN script file
• Maintenance RepresentativeMaintenance Representative– an individual who maintains subsystems of an individual who maintains subsystems of
TTCN translator systemTTCN translator system
• Symbol Management SystemSymbol Management System– a system that manages information a system that manages information
needed to make parse tree and target codeneeded to make parse tree and target code
• Protocol TesterProtocol Tester– an individual who compiles with generated an individual who compiles with generated
codecode
55Hong, KangWoon (TTA team)Hong, KangWoon (TTA team) Master of Software Engineering, ICU&CMUMaster of Software Engineering, ICU&CMU
Use CasesUse Cases
• Translate TTCN ScriptTranslate TTCN Script– Analyses for lexis, syntax, semanticAnalyses for lexis, syntax, semantic– Code generationCode generation– For analysis error,For analysis error,
•Performs behaviors of the extending Performs behaviors of the extending use case, Remove TTCN Script (Refer use case, Remove TTCN Script (Refer alternative scenario)alternative scenario)
• Perform UpdatePerform Update– Maintenance for each subsystemMaintenance for each subsystem
66Hong, KangWoon (TTA team)Hong, KangWoon (TTA team) Master of Software Engineering, ICU&CMUMaster of Software Engineering, ICU&CMU
Use Case Diagram (1/2)Use Case Diagram (1/2)TTCN Translator System boundaryTTCN Translator System boundary
Analyze Lexis
Analyze Syntax
Analyze Semantic
Symbol Manageme...
Translate TTCN Script
TTCN Script Writer
Perform Update
<<extend>>
<<extend>>
<<extend>>
Remove TTCN script
<<extend>>
Perform Syntax Analyzer Update
Perform Lexical Analyzer Update
Perform Code Generator Update
Maintenance Representative Perform Semantic Analyzer
Update
Generate Code
<<extend>> Protocol Tester
77Hong, KangWoon (TTA team)Hong, KangWoon (TTA team) Master of Software Engineering, ICU&CMUMaster of Software Engineering, ICU&CMU
Use Case Diagram (2/2)Use Case Diagram (2/2)
• Translate TTCN ScriptTranslate TTCN Script– EXTENDed by the followed use casesEXTENDed by the followed use cases
• Analyze LexisAnalyze Lexis• Analyze SyntaxAnalyze Syntax• Analyze SemanticAnalyze Semantic• Generate CodeGenerate Code• Remove TTCN ScriptRemove TTCN Script
• Perform UpdatePerform Update– GENERALIZEs the followed use casesGENERALIZEs the followed use cases
• Perform Lexical Analyzer UpdatePerform Lexical Analyzer Update• Perform Syntax Analyzer UpdatePerform Syntax Analyzer Update• Perform Semantic Analyzer UpdatePerform Semantic Analyzer Update• Perform Code Generator UpdatePerform Code Generator Update
88Hong, KangWoon (TTA team)Hong, KangWoon (TTA team) Master of Software Engineering, ICU&CMUMaster of Software Engineering, ICU&CMU
Domain ObjectsDomain Objects
• TTCN Script WriterTTCN Script Writer– User who writes TTCN script fileUser who writes TTCN script file– User who executes TTCN translatorUser who executes TTCN translator
• TTCN Script FileTTCN Script File– Collection of test cases written in TTCNCollection of test cases written in TTCN
• Target CodeTarget Code– Collection of codes translated from TTCNCollection of codes translated from TTCN
• Maintenance RepresentativeMaintenance Representative– Supporter who writes and maintains TTCN Supporter who writes and maintains TTCN
translatortranslator• Protocol TesterProtocol Tester
– Tester who tests protocol using target Tester who tests protocol using target codecode
99Hong, KangWoon (TTA team)Hong, KangWoon (TTA team) Master of Software Engineering, ICU&CMUMaster of Software Engineering, ICU&CMU
High Priority Use Case High Priority Use Case (1/4)(1/4)
• ““Translate TTCN Script” use caseTranslate TTCN Script” use case– PreconditionsPreconditions
• TTCN script written in TTCN with/without errorTTCN script written in TTCN with/without error• System can have features of a legacy compiler and System can have features of a legacy compiler and
generate target codegenerate target code
– PostconditionsPostconditions• Translation process is completed without errorTranslation process is completed without error
1010Hong, KangWoon (TTA team)Hong, KangWoon (TTA team) Master of Software Engineering, ICU&CMUMaster of Software Engineering, ICU&CMU
High Priority Use Case High Priority Use Case (2/4)(2/4)
– Successful Flow of EventsSuccessful Flow of EventsTTCN script writer request TTCN translation
In Analysis phase
Parses tokens
Stores analysis result and tokens
Checks syntax error and makes parse tree
Stores analysis result and parse tree
Checks semantic error
Stores analysis result
System generates target code
System removes information relevant to TTCN script file
1111Hong, KangWoon (TTA team)Hong, KangWoon (TTA team) Master of Software Engineering, ICU&CMUMaster of Software Engineering, ICU&CMU
High Priority Use Case High Priority Use Case (3/4)(3/4)
• Alternative ScenarioAlternative Scenario– Insertion pointInsertion point
• ““System checks syntax error”System checks syntax error”
– PreconditionsPreconditions• System found syntax error(s) during analysisSystem found syntax error(s) during analysis
– PostconditionsPostconditions• System removes a request for TTCN translationSystem removes a request for TTCN translation
1212Hong, KangWoon (TTA team)Hong, KangWoon (TTA team) Master of Software Engineering, ICU&CMUMaster of Software Engineering, ICU&CMU
High Priority Use Case High Priority Use Case (4/4)(4/4)
– Alternative Flow of EventsAlternative Flow of EventsStores analysis result with error information
I nforms TTCN script writer the reason by showing error messages on the screen
Removes a TTCN script file and information relevant to the file
1313Hong, KangWoon (TTA team)Hong, KangWoon (TTA team) Master of Software Engineering, ICU&CMUMaster of Software Engineering, ICU&CMU
What furtherWhat further
• How many concurrent works are How many concurrent works are possible?possible?– Concurrency LevelConcurrency Level
• How can the system reflect user’s How can the system reflect user’s need for readability?need for readability?– Readability LevelReadability Level
• Error type, Error Handling routine, …Error type, Error Handling routine, …– Error HandlingError Handling
1414Hong, KangWoon (TTA team)Hong, KangWoon (TTA team) Master of Software Engineering, ICU&CMUMaster of Software Engineering, ICU&CMU
Q&Q&AA
1515Hong, KangWoon (TTA team)Hong, KangWoon (TTA team) Master of Software Engineering, ICU&CMUMaster of Software Engineering, ICU&CMU
Backup SlidesBackup Slides
1616Hong, KangWoon (TTA team)Hong, KangWoon (TTA team) Master of Software Engineering, ICU&CMUMaster of Software Engineering, ICU&CMU
TTCNTTCN
• The Needs for TTCNThe Needs for TTCN– Conformance, InteroperabilityConformance, Interoperability
• an increasing amount of standardsan increasing amount of standards
– Automatic testingAutomatic testing• Test is time consuming and error-prone Test is time consuming and error-prone
tasktask
• Standardization (ISO 9646-3)Standardization (ISO 9646-3)– Tree and Tabular Combined NotationTree and Tabular Combined Notation– Incorporated specificationIncorporated specification
• a framework for conformance testinga framework for conformance testing
– Test casesTest cases
1717Hong, KangWoon (TTA team)Hong, KangWoon (TTA team) Master of Software Engineering, ICU&CMUMaster of Software Engineering, ICU&CMU
ReferenceReference
• TTCN tutorial (TTCN tutorial (http://www.iec.orghttp://www.iec.org))• Software Requirement Specification for TesSoftware Requirement Specification for Tes
tGen V0.8tGen V0.8