Changes between Version 4 and Version 5 of DevNotes/Obsolete/CodeRefactoring


Ignore:
Timestamp:
Jun 15, 2014 8:25:37 PM (10 years ago)
Author:
butler
Comment:

Legend:

Unmodified
Added
Removed
Modified
  • DevNotes/Obsolete/CodeRefactoring

    v4 v5  
    55 
    66 - Improve the maintainability of the code. 
    7  - Cleanly separate the computation and the UI components to allow remote submission. 
     7 - Cleanly separate the computation and the UI components to allow 
     8  - easily replacing the UI if/when new technologies become available or when the current one becomes obsolete/unsupported 
     9  - remote submission (necessary to eventually allow use of clusters or HPC backends). 
    810 
    911The following approach is thought to be the most practical given the level of effort involved and the resources available. 
    1012 
    1113 
    12 === Medium-Term Goals === 
    13  - We will follow a progressive refactoring approach rather than a complete re-write. 
    14  - We will keep the UI in wx for this first phase. 
    15  - We will proceed by identifying use-cases that are known to involve code that need refactoring. 
    16    For each of those use-cases, we will identify the API needed to perform the calculations by script. 
    17  - We will go through our use-cases and refactor the computation code to follow the new API. 
    18    We will also refactor the UI to use the newly refactored code. 
    19  - We will release a version of !SasView once this work is completed. 
     14=== Suggested Approach (Medium-Term Goals) === 
     15 - Follow a progressive refactoring approach rather than a complete re-write. 
     16 - Keep the UI in wx for this first phase. 
     17 - Proceed by identifying use-cases that are known to involve code that need refactoring. 
     18   For each of those use-cases, identify the API needed to perform the calculations by script. 
     19 - Go through our use-cases and refactor the computation code to follow the new API. 
     20   Refactor the UI to use the newly refactored code. 
     21 - Release a new version of !SasView once this work is completed. 
    2022 
    2123=== Long-Term Goals === 
    22  - Building on the work described above, we will consider moving to !PyQt and/or building a web application version of !SasView. 
     24 - Building on the work described above, we will then consider moving to !PyQt and/or building a web application version of !SasView. 
    2325 - The following version of !SasView should be able to submit remote jobs to compute resources to be determined. Those will likely be located at labs, but could alternatively use services like Amazon AWS.