Ability to provide real-time feedback in CLI and GUI upon request
[osm/Features.git] / Release6 / Ability to provide real-time feedback.md
1 # Ability to provide real-time feedback in CLI and GUI upon request
2
3 ## Proposer
4
5 - Gerardo Garcia (Telefonica)
6 - Alfonso Tierno (Telefonica)
7 - Francisco Javier Ramon (Telefonica)
8
9 ## Type
10
11 **Feature**
12
13 ## Target MDG/TF
14
15 IM-NBI, LCM, CLI, LW-GUI (optional)
16
17 ## Description
18
19 Currently, OSM's CLI (and OSM's GUI to some extent) follow a similar behaviour 
20 to OSM's NBI, returning control to the user immediately after a request has 
21 been made, although OSM is still being processed by OSM behind the scenes, so 
22 the user needs to poll the system to learn (i.e. running commands) when the 
23 request has been completely processed. While this behaviour is reasonable as 
24 regular practice, it still presents some limitations in terms of usability:
25
26 - It makes more complicated to follow the progress of a given operation or 
27 whether it is stuck at any step, particularly when the requested operation is 
28 complex (e.g. instantiate a large NS).
29 - It makes even more complicated to relate the processes during the operation 
30 with other asynchronous events (e.g. error messages) that may happen during the 
31 operation and explain better its progress and/or results.
32
33 The current proposal is adding an option `--wait` to selected CLI commands so 
34 that they do not return the control immediately, but keep it until the 
35 operation is completed, reporting meanwhile the progress in the operation and, 
36 if appropriate, relevant events that may facilitate diagnosis/troubleshooting.
37
38 As a minimum, the commands for NS instantiation and NST instantiation should 
39 support this option. Likewise, LW-GUI might support the same mode for 
40 equivalent operations.
41
42 ## Demo or definition of done
43
44 Possibility to use the `--wait` option for an NS/NSI creation that keeps 
45 control and reports the progress of the operation in terms of:
46
47 - VMs/VDUs created, VLs created and bar of progress (e.g. "VM 7/24: 'CTRL_1' 
48 VDU of 'Router_7' VNF created").
49 - Stage of instantiation where the process is (e.g. "starting NS day-1", 
50 "Starting 'Router_2' day-1", etc. ).
51 - Timely report any other relevant event that might occur in the middle of the 
52 operation.
53