Uploaded image for project: 'SAFe Program'
  1. SAFe Program
  2. SP-109

CSP LMC prototype - set working environment

Change Owns to Parent OfsSet start and due date...
    XporterXMLWordPrintable

Details

    • Hide

      Set CSP.LMC project and development environment aligned with SKA  standards and acquire related skills; increase code re-use, improve maintainability and long-term productivity.    

      Show
      Set CSP.LMC project and development environment aligned with SKA  standards and acquire related skills; increase code re-use, improve maintainability and long-term productivity.    
    • Hide

      Tools required for software development, unit testing and packaging working in a development environment (developer Workstations and/or lab computers), as required.

      Show
      Tools required for software development, unit testing and packaging working in a development environment (developer Workstations and/or lab computers), as required.
    • 3
    • 3
    • 6
    • Team_CIPA
    • 3.4
    • PI22 - UNCOVERED

    • CSP.LMC Team_CIPA

    Description

      Set working environment for the CSP.LMC Prototype compliant with the SKA standards for software development, use the latest version of the the SKA LMC Base Classes as a base for CSP.LMC Prototype development. This Enabler includes time to acquire skills to set and use all required tools.

      Additional/background information:

      Initial plan (presented at the CDR) was to develop CSP.LMC  using C++. Justification for such decision is well documented in CSP.LMC Design Document and Development Plan:

      • Correlator-Beamformer (CBF), Pulsar Search engine (PSS)  and Pulsar Timing engine (PST) software is developed in  C+/C. C+ is more suitable  then Python for PSS and PST algorithms (pipelines), and a large part of Mid.CBF monitor & control software runs on embedded (SoC) processors, where C++/C is a better choice (efficiency, stability and performance). The CSP intention was to take advantage of the existing skills and increase possibility of software reuse among CSP sub-elements.
      • C++ is the primary language for TANGO Control System (framework).

      However, the  first version of the LMC Base Classes is being developed in Python 3. After some consideration, it was decided that during the bridging, a new version of the CSP.LMC prototype shall be developed in Python 3, this decision is motivated by the following:

      • increase code reuse, take advantage of work performed by other SKA teams (use LMC Base Classes).
      • use the CSP.LMC Prototype developed during the Bridging as a test bed for the LMC Base Classes and a test bed for suitability of Python for development of the CSP monitor and control software (including asynchronous commands, multi-threading, and other real-time aspects of CSP M&C software).

      Risks of  this approach:

      1. The risk that development will require more time/effort due to learning curve  (learn how to use Python with TANGO CS, first reuse of the LMC Base Classes) is mitigated by the long-term opportunity for code reuse (i.e. direct re-use of code developed by the NCRA Team).
      2. Dependency on the NCRA Team support and System team support for CI environment.

      Attachments

        Issue Links

          Structure

            Activity

              People

                m.bartolini Bartolini, Marco
                s.vrcic Vrcic, Sonja
                Votes:
                0 Vote for this issue
                Watchers:
                0 Start watching this issue

                Feature Progress

                  Story Point Burn-up: (100.00%)

                  Feature Estimate: 3.0

                  IssuesStory Points
                  To Do00.0
                  In Progress   00.0
                  Complete26.0
                  Total26.0

                  Dates

                    Created:
                    Updated:
                    Resolved:

                    Structure Helper Panel