International Telecommunication Union Integrated Application of URN Daniel Amyot University of Ottawa, Canada damyot@site.uottawa.ca ITU-T Workshop on the Integrated Application of Formal Languages Geneva, September 13, 2003 © ITU-T Study Group 17 URN o User Requirements Notation • Allows engineers to specify or discover requirements for a proposed system or an evolving system, and review such requirements for correctness and completeness • Helps bridging the gap between informal and formal concepts, and between requirements models and design models o URN = GRL + UCM • Combines goals and scenarios • Graphical notations • Reusable patterns o Applicable to various domains (e.g. telecom services, distributed or reactive systems), in industry and SDOs © ITU-T Study Group 17 2003 GRL (URN) Low Cost High Performance Less need for new hardware Minimum Changes to Infrastructure Maximum Hardware Utilisation High Throughput o Goal-oriented Requirement Language • For incomplete, tentative, (non-functional) requirements • Capture goals, objectives, contributions, alternatives, and rationales • Supports goal analysis and qualitative evaluations © ITU-T Study Group 17 2003 UCM (URN) o Use Case Maps • Causal sequences of responsibilities, allocated to components • For operational requirements, as scenarios • Support validation, performance analysis, and evaluation of architectural alternatives © ITU-T Study Group 17 2003 Integrating GRL and UCM o Traceability between: • Goals/tasks and UCMs (or UCM scenario definitions) • Tasks and UCM responsibilities • Different granularity • Requirements management • Others… o Underspecification and overspecification • Discovery of new goals and scenarios • Removal of unnecessary goals and scenarios • Examples: • Why is a UCM scenario without any link to a GRL goal? • Why is a GRL goal without any link to a UCM scenario? o Refinements of alternative solutions • From GRL (identification) to UCM (evaluation) © ITU-T Study Group 17 2003 Example GRL Model (Wireless Service) Low Cost High Performance High Evolveability Less need for new hardware Impact is vendor-specific Minimum Changes to Infrastructure Maximum Hardware Utilisation Determine SDF Location SDF in SCP High Throughput Minimum Message Exchange Minimum MobSC Load SDF in SN Service in MobSC © ITU-T Study Group 17 2003 Service in SCP Three Alternative Solutions (a) Service in MobSC (b) Service in MobSC, SDF in SN (c) Service and SDF in SCP © ITU-T Study Group 17 2003 Integrating UCM and MSC o Automated transformation from UCM to MSC • Traversal of UCMs based on Scenario Definitions • Enables scenario highlight on UCMs • Paths visited can be transformed to MSCs • Enables the generation of more detailed design scenarios © ITU-T Study Group 17 2003 UCMNav and Scenario Definitions © ITU-T Study Group 17 2003 Two Resulting MSCs © ITU-T Study Group 17 2003 Integrating UCM and SDL o Generating MSC enables the synthesis of SDL specifications • Early prototyping and requirements analysis • Some results already available • Presented at the 11th SDL Forum, 2003 UCM UCM Exporter MSC MSC2SDL © ITU-T Study Group 17 2003 SDL Integrating UCM and UML o Similar transformations from UCM to: • UML sequence diagrams • UML activity diagrams o These can be used to further synthesize state diagrams © ITU-T Study Group 17 2003 Integrating UCM and TTCN-3 o UCM scenarios can be used as test goals • Structured UCM scenarios converted to test suite • Coverage of operational requirements • Another transformation: TTCN-3 © ITU-T Study Group 17 2003 UCMNav and UCMExporter o UCMNav 2 generates scenarios (in XML) from traversals • http://www.UseCaseMaps.org/tools/uvmnav o UCMExporter takes these as input and generates: • MSC (Z.120, textual form) • UML sequence diagrams (in XMI) • TTCN-3 o http://ucmexporter.sourceforge.net/ © ITU-T Study Group 17 2003 Integrating UCM and LQN o Quantitative performance analysis with Layered Queuing Networks o Transformation from complete UCM model to an LQN model • Supported by UCMNav o Enables: • Analytic evaluations (LQNS) • Simulations (LQSim) o http://www.LayeredQueuing.org © ITU-T Study Group 17 2003 UCMs and Performance Arrival Characteristics • Exponential, or • Deterministic, or • Uniform, or • Erlang, or • Other Population size Timestamp TaxPayer Device Characteristics • Processors, disks, DSP, external services… • Speed factors Security T1 E_Accountant T2 CheckBio Continue Access Ready Rejected Components • Allocated responsibilities • Processor assignment Can generate Layered Queuing Networks (LQN) automatically! OR Forks • Relative weights (probability) Response Time Requirement • From T1 to T2 • Name • Response time • Percentage Responsibilities •Data access modes •Device demand parameters •Mean CPU load (time) •Mean operations on other devices © ITU-T Study Group 17 2003 From Goals to Design, Performance, and Test Artifacts o Initial traceability from GRL goals to UCMs leads (transitively) to traceability between goals and: • Design scenarios (MSC, UML SD) • Internal behaviour (SDL) • Test (TTCN-3) • Performance evalutions (LQN) © ITU-T Study Group 17 2003 Still To Be Explored… o Integrated use of URN and • eODL • object interfaces • Deployments • ASN.1 • Interface/message definitions • Other requirements • URN can’t express everything… © ITU-T Study Group 17 2003 For More Information… o User Requirements Notation • URN Focus Group • http://www.UseCaseMaps.org/urn/ o Papers • UCM Virtual Library • http://www.UseCaseMaps.org/pub/ © ITU-T Study Group 17 2003