IT services

    From UNITApedia

    List of services tasks and deliverables

    • Name(Open Project), B(0.5):01/2026-10/2027, A(0.5):03/2026-10/2027, T(0.2):02/2026-10/2027, B0(PM Review1):05/2026, B2(PM Review2):10/2026, B0(PM Review3):09/2027 → Gantt:Open Project
    • Name(UNITAPEDIA Impact Observatory), B(4):01/2026-04/2027, A(4):01/2026-10/2027, T(2):01/2026-10/2027, T0(PreProd & CAS):05/2026, B1(Ben spec):04/2026, B2(Strat spec):06/2026, A3(Ben dashboard):06/2026, A4(Strat dashboard):11/2026, A5(Public V1):04/2027, A6(Public V2):08/2027 → Gantt:UNITAPEDIA Impact Observatory
    • Name(AI for Teaching and Learning (multilingual, asyncronous, interactive)), B(4):01/2026-12/2026, A(4):03/2026-10/2027, T(3):04/2026-10/2027, T0(Infra IA Deployment):05/2026, B1(Prototype):06/2026, A2(Beta):11/2026, A3(V1):02/2027, A4(V2):05/2027 → Gantt:AI for Teaching and Learning support
    • Name(Interactive Map service for UNITA members & Partners), B(0.5):04/2026-07/2026, A(0.5):05/2026-09/2026, T(0.5):04/2026-08/2026, T0(Infra Setup):04/2026, B1(Data Specs):05/2026, A1(Beta Map):07/2026, A2(Public Map V1):09/2026 → Gantt:Interactive Map service for UNITA members & Partners
    • Name(Access portal to Virtual Campus services (Mobile App)), B(0.5):04/2026-07/2026, A(1):05/2026-10/2027, T(0.5):04/2026-10/2027, B1(Reqs Specs):05/2026, A1(Beta App):07/2026, A2(Public App V1):12/2026 → Gantt:Access portal to Virtual Campus services

    System prompt

    Act as an expert in JSON configurations for MediaWiki Flex Diagrams (DHTMLX Gantt). I will provide you with a shorthand string representing a project, its layers (Business, Application, Technology), their Person-Month (PM) efforts, date ranges, and milestones.
    
    Your task is to parse this string and convert it into a strictly formatted JSON structure.
    
    **Strict Formatting Rules:**
    1. **Root Task:** Create a root parent task (id: 1) using the `Name(...)` provided. Give it `"color": "#8E44AD"` (purple) and `"open": true`.
    2. **Layer Containers (Split Render):** Create container sub-tasks for Business (B), Application (A), and Technology (T). Label them as "Business layer (X PM)", etc. These containers must have `"parent": 1` and `"render": "split"` so their children display on the same line.
    3. **Colored Task Bars:** Inside each split container, create a child task representing the full duration of that layer. Leave its `"text"` blank (`""`). Color code them: 
       * Business = `#F4D03F` (Yellow)
       * Application = `#5DADE2` (Blue)
       * Technology = `#58D68D` (Green)
    4. **Milestones:** Map each milestone to its corresponding layer based on its prefix (e.g., B1 goes under Business, A1 under Application). Format them with `"type": "milestone"`, `"duration": 0`, and prepend a star symbol (★) to their `"text"` (e.g., `"★ B1 (Reqs Specs)"`).
    5. **Dates & Durations:** Convert the `MM/YYYY` format to `01-MM-YYYY 00:00` (or the last day of the month for end dates, e.g., `31-10-2027 00:00`). Calculate the `"duration"` in days for the main tasks and colored task bars.
    
    **Example Input:**
    Name(Access portal to Virtual Campus services (Mobile App)), B(0.5):04/2026-07/2026, A(1):05/2026-10/2027, T(0.5):04/2026-10/2027, B1(Reqs Specs):05/2026, A1(Beta App):07/2026, A2(Public App V1):12/2026
    
    **Example Output:**
    {
      "data": [
        {
          "id": 1,
          "start_date": "01-04-2026 00:00",
          "text": "Access portal to Virtual Campus services (Mobile App)",
          "duration": 579,
          "end_date": "31-10-2027 00:00",
          "progress": 0,
          "parent": 0,
          "open": true,
          "color": "#8E44AD"
        },
        {
          "id": 2,
          "text": "Business layer (0.5 PM)",
          "parent": 1,
          "render": "split",
          "open": true
        },
        {
          "id": 20,
          "start_date": "01-04-2026 00:00",
          "text": "", 
          "duration": 122,
          "end_date": "31-07-2026 00:00",
          "parent": 2,
          "color": "#F4D03F"
        },
        {
          "id": 21,
          "start_date": "01-05-2026 00:00",
          "text": "★ B1 (Reqs Specs)",
          "duration": 0,
          "type": "milestone",
          "parent": 2
        },
        {
          "id": 3,
          "text": "Application layer (1 PM)",
          "parent": 1,
          "render": "split",
          "open": true
        },
        {
          "id": 30,
          "start_date": "01-05-2026 00:00",
          "text": "",
          "duration": 549,
          "end_date": "31-10-2027 00:00",
          "parent": 3,
          "color": "#5DADE2"
        },
        {
          "id": 31,
          "start_date": "01-07-2026 00:00",
          "text": "★ A1 (Beta App)",
          "duration": 0,
          "type": "milestone",
          "parent": 3
        },
        {
          "id": 32,
          "start_date": "01-12-2026 00:00",
          "text": "★ A2 (Public App V1)",
          "duration": 0,
          "type": "milestone",
          "parent": 3
        },
        {
          "id": 4,
          "text": "Technology layer (0.5 PM)",
          "parent": 1,
          "render": "split",
          "open": true
        },
        {
          "id": 40,
          "start_date": "01-04-2026 00:00",
          "text": "",
          "duration": 579,
          "end_date": "31-10-2027 00:00",
          "parent": 4,
          "color": "#58D68D"
        }
      ],
      "links": []
    }
    
    **Current Input to Process:**
    [INSERT YOUR NEW SHORTHAND STRING HERE]