## Action = Action True Search continued = ## The persons assigned to the action Assigned:: ABR+JRG ## The persons that previously worked on this action Prev assigned:: KFC ## The tasks from the WBS that are adressed by this action Tasks adressed:: [[TaskB.1]], [[TaskB.2]] ## The time estimated for this action, Use the format Xmd, to indicate the number of man-days estimated Time estimated:: 12½md ## The time used for this action so far. Same format as Time estimated Time used:: 0md ## The priority of this action. 1-9 Priority:: 1 ## The status of this action, legal values are 'Not described', 'Not started', 'In progress' and 'Finished' Status:: In progress ## The iteration that this actions belongs to Iteration:: 16 ## Notes about this action, that should be viewable on other pages Notes:: ## Detailed description of wanted output from the work to be carried out. ## E.g. Implement a utility class for writing data to a disk. The data must be base64 encoded before being written. This action deals with making DOMS searchable in Summa. DOMS data should be delivered to Summa in an xml-format defined by Summa. There are two ways to get these files into Summa: * Through a ''hot-dir'', which Summa checks frequently for xml-files. ## * Through a Summa-callable ''watcher'' (an implementation of a Summa-provided interface), which will return the xml files to Summa when called by Summa. * By implementing a Summa storage-interface (called "ReadableStorage") and using the implementation as a ''plug-in'' to Summa, whereby Summa can take the data directly from DOMS. We need to decide which of these approaches to take. In addition, we need to write an xslt for Summa, which will convert the xml-format that leaves DOMS into the format that should enter Summa. This action contains the following things to be done. * Choose between ''hot-dir'' and ''plug-in'' (½md) * Choose the xml-format that should be generated by DOMS (included in below) * Code webservice that generates xml from data inside DOMS (included in below) * Note, code for generating the bundle exists, but needs review (½md) * Add disseminator for that webservice to content models (1md) * Write xslt that transforms the generated xml into the xml-format Summa wants (1½md) * Implement database (for use by the above webservice) that records (included in below) * The PID of the corresponding main object for each data object in DOMS (included in below) * The last update time for when a main view was recalculated in the database, and when this main object has last changed (2md) * Implement code that keeps that database up to date, and hook this code to the relevant API-M calls (4md) * Implement the plug-in or make code to put files in hot-dir (1md) * Set up Summa and put it in TestBed (2md) === Design === After getting more info from the Summa-dudes, the ''plug-in'' solution was chosen, and we have revised the 'things to be done' into the following: * Implement webservice that records (and remembers) * The PID of the corresponding main object for each data object in DOMS * The last update time for when a main view was recalculated in the database, and when this main object has last changed (2md) And which contains the following methods: * Maintenance-methods for keeping the above data up to date. (3md) * Methods for providing data to the Summa plug-in. (1md) * Hook the above maintenance-methods to the relevant API-M calls (½md) * Implement the plug-in, which gets info (by SOAP) from the above webservice (1md) * Set up Summa and put it in TestBed (2md) == Checklist For Working On An Action == The Life Cycle of an Action: * ''Assign people for action definition'': Done at start of iteration status meeting. Fill out '''Assigned''' * ''Define the action'': Describe information about what is to be done and how. Fill out '''Tasks Addressed''' and '''Time Estimated'''. * ''Review the definition'': Get another project group member to review the action definition, and update it. * ''Assign people for action implementation'': Done by project manager, usually the same persons who wrote the definition. Fill out '''Assigned''' and '''Prev assigned''' if new persons are assigned. * ''Implement the action'': See details below * ''Review the action'': Get another project group member to review what is implemented (code and documentation), and update it. * ''Finish the action'': Change the status to "Finished" and update the "time used" field on the action page. Please make sure that you address the below issues, when working on an action: * Update the state of the action to "In Progress" when you start working on it. * Check if the tasks addressed by this action have their status set to "In Progress". If that is not the case, then change the state of them. * Keep track of how much time that has been spent working on the action. If it addresses more than one task, then make a note on the action page about how much of the elapsed time that has been spent on the individual tasks. '''Hint:''' Continually updating the "Time used" field will make it easier for you. * Update the "Progress History" and documentation pages of each task addressed by this action when appropriate. This depends on the situation, but in general, the task pages should hold all important related information about the work done, experiences gathered, identified requirements and so on.