<?xml version="1.0" encoding="ISO-8859-1"?>
<?xml-stylesheet type="text/xsl" href="behavior.xsl"?>
  <behavioral manifest="scanner.xml" version="2.0">
    <file>"P1-Display UI.xml"</file>
    <Author>Huang, Yi-Yang</Author>
    <version No="1.1" date="10/25/01">Jim Fawcett</version>
    <!--
      This is a behavioral desciption of a scanner process below manifestScanner. It has a sibling process 
      "xmlTran" that aids in conversion between xml and normal text. You may not need it really but i 
      just added for demo.  This XML file doesn't refer to childs but has inputs & outputs specifically 
      mentioned here.  You have to put them if you have any.  Also the manifest which refers this process 
      behavioral desciption is manifestScanner.
    -->
 
    <process name="Display UI (1)">
      This process take care of displaying user interface to user at begining. Then, user can connect to server
      or using building tool to build component. 
    </process>

    <diagram diagramTitle="Three thread">
      threethread.htm
    </diagram>

    <inputs>
      <input variable="user command">
        <def>command from user</def>
        <text>This is the user command that execute client program.</text>
      </input>
    </inputs>

    <outputs>
      <output variable="connect command">
        <def>user ask to connect server</def>
        <text>Command which received from user interface ask to connect to server.</text>
        <connectsToTitle>(2) Connect to Server Process</connectsToTitle>
        <connectsToFile>P2-Connect to Server.xml</connectsToFile>
      </output>
      <output variable="build command">
        <def>user ask to build component</def>
        <text>This user command ask to build a component.</text>
        <connectsToTitle>(7) Build Process</connectsToTitle>
        <connectsToFile>P7-Build.xml</connectsToFile>
      </output>
    </outputs>

    <requirements>
    
      <test No="Display UI_1">
        <traces to="A.3.1.32,A.3.1.21"/>
        <def>provide all the controls</def>
        <text>
        
        User can connect/disconnect to and from the server, extract  component(s) or file(s), create component(s), upload file(s), build component(s) ,view a component's/file's  content, delete component/file(only by administrator) through Client Interface.</text>
        </test>
      
      <test No="Display UI_2">
        <traces to="derived"/>
        <def>use build tool</def>
        <text>The build tool can be used even without connecting to the server</text>
      </test>
      
      <test No="Display UI_3">
        <traces to="derived"/>
        <def>avoid blocking</def>
        <text>Shall avoid blocking of the main user interface while performing operations of communication and building of components</text>
      </test>
      <test No="Display UI_A">
        <traces to="derived"/>
        <def>What a file's content means</def>
        <text>
		In requirement .. viewing a component's/file's content shall mean the literal contents of the file. The client interface will support the direct viewing the viewing of atleast the following file types : .txt, .cs,.xml, .doc

        </text>
        </test>
    </requirements>
    <!--
      The sibling tag, below, is used to identify lower level process descriptions.  Sibling tags have a visibility
      attribute, allowing them to be part of the parent's behavior model, or excluded, at the descretion of the
      behavior RI.
    -->
    <sibling ref="child2.xml" manifest="xmlTran.xml" visible="false"></sibling>
  </behavioral>