Research Article

Porting Mobile Apps from iOS to Android: A Practical Experience

Algorithm 1

Applicative PSM: an excerpt of the inferred storyboard model.
<storyBoard:document xmi:version = “2.0”
 propertyAccessControl = “none” systemVersion = “15D21”
 targetRuntime = “iOS.CocoaTouch” useAutolayout = “YES”
 initialViewController = “WII–Gl–wjJ” toolsVersion = “9531” version = “3.0”>
 <child xsi:type = “storyBoard:dependencies”>
  <child name = “deployment”/>
 </child>
 <child xsi:type = “storyBoard:scenes”>
  <child xsi:type = “storyBoard:scene” sceneID = “NNp–Gi–V3j”>
   <child xsi:type = “storyBoard:objects”>
    <child xsi:type = “storyBoard:tableViewController”
     customClass = “CategoryViewController” id = “4ep–Np–ax8”>
     <child xsi:type = “storyBoard:tableView” sectionHeaderHeight = “22”
      alwaysBounceVertical = “YES” id = “4V1–1B–aCe” style = “plain”
      opaque = “NO” separatorStyle = “default” contentMode = “scaleToFill”
      key = “view” sectionFooterHeight = “22” clearsContextBeforeDrawing = “NO”
      clipsSubviews = “YES” rowHeight = “44” dataMode = “prototypes”>
      <child xsi:type = “storyBoard:rect” height = “568”
       width = “320” y = “0.0” key = “frame” x = “0.0”/>
      <child xsi:type = “storyBoard:autoresizingMask”
       widthSizable = “YES” heightSizable = “YES” key = “autoresizingMask”/>
      <child xsi:type = “storyBoard:color” colorSpace = “calibratedWhite”
       alpha = “1” white = “1” key = “backgroundColor”/>
      </child>
     </child>
     </child>
    </child>
   </child>
   <child xsi:type = “storyBoard:point” y = “752” key = “canvasLocation” x = “1220”/>
  </child>
 </child>
</storyBoard:document>