E N D
NOTICE! • These materials are prepared only for the students enrolled in the course Distributed Software Development (DSD) at the Department of Computer Science and Engineering, University of Mälardalen, Västerås, Sweden and at the Faculty of Electrical Engineering and Computing, University of Zagreb, Croatia (year 2003/2004). • For all other purposes, authors’ written permission is needed! • The purpose of these materials is to help students in better understanding of lectures in DSD and not their replacement!
Selected Topics in Software Engineering-Distributed Software Development
ASN.1 to CSV converter generator Project Current state presentation 2008-12-04 FER: Ivan Škugor Željko Krpetić Željko Knežević MDH: Guido Di Campli Giovanni Piemontese Paolo D’Amelio Steering group: Igor Čavrak at FER Rikard Lang at MDH M.Sc. Branko Beslać (Ring datacom)
What we will talk about? • Current status for: • eSNACC / custom code generator solution • XSL generator • Tree view generator • BER to XML conversion • GUI • General project status
BER to CSV converter structure Done (eSNACC) Done Work in progress
Sample output void parse_nrtrde() { /* Init variables */ .... nrtrde = ≺ if (nrtrde->callEvents == NULL) return; node = nrtrde->callEvents->first; do { recordCount++; callEvent = node->data; switch (callEvent->choiceId) { case CALLEVENT_MOC: moc = callEvent->a.moc; /* RECORD_TYPE */ s = sprintf(sql,"1, "); /* O_P_MSISDN */ if (PRESENT(moc->connectedNumber)) { PRINT(moc->connectedNumber); } else if (PRESENT(moc->dialledDigits)) { PRINT(moc->dialledDigits); } else s += sprintf(sql+s,", ");
eSNACC / custom code generator solution status • Work on code generator algorithm • Learn more about ASN.1 and eSNACC • More testing on paper • Final implementation (C#) • GUI <-> Code generator interface
Code generator/XSL generator • XSLT • Converts XML to other format (even a CSV?) • We use it because it’s fast and simple to use • ANSI C compilant • It’s extendible
Example of generated XSL <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> <xsl:output method="text"/> <xsl:template match="/"> <xsl:apply-templates select="/Nrtrde/specificationVersionNumber"/> <xsl:apply-templates select="/Nrtrde/releaseVersionNumber"/> </xsl:template> <xsl:template match="/Nrtrde/specificationVersionNumber"> <xsl:value-of select="."/> <xsl:value-of select="','"/> </xsl:template> <xsl:template match="/Nrtrde/releaseVersionNumber"> <xsl:value-of select="."/> </xsl:template> </xsl:stylesheet>
GUI Status 2/3 = Done = Almost done or needs improvements = Not Done
GUI Status 3/3 = Done = Almost done or needs improvements = Not Done
Treeview and colors meaning No nodes selected Parents have one/different unchecked nodes All childs are selected or node has no child
What we will do about GUI • Solving some Bugs (if is possible) • Enrich information about selected grammars • Add Format PanelBox • Graphic improvements • Testing
General project status Project status : on track