Real World PlantUML
SimpleUsecasewith one actorUse the applicationUser
USE CASE DIAGRAM
5836609568112640
Select a serverServer processingBuildinit object and startbackground procSelectfind proper serverAwaitwait for server selectto have at least amaster serverReceivereceive serverobjects from channelUriClient Objectserverserver objectDiscoverloop throughlist of serversCatagorizecatagorize listof serversSendsend each serverobject through channelTopologyset server types andClient topologyInterrogateask server for secondary hostsserver from urilist of serverslist of serverslist of serversmaster serverfound servers
STATE DIAGRAM
5839127761125376
ServerGamemap<string routingId, Robot &> _robotsmap<string routingId, Player &> _playersmap<string, Team &> _teamsbool _isGameStartedvoid start()void stop()void addRobot(string iName)void addPlayer(string iName)Robot getAvailableRobot()void fillGameStateMessage (orwell::messages::GameState & iMessage)routingId = Robot nameDo we need explicit link between robot and player ?Playerstring nameTeam & _teamRobotstring namevoid fillRobotStateMessage (orwell::messages::RobotState & iMessage)Teamlist<Player &> _playersvoid addPlayer(Player iPlayer)void removePlayer(Player iPlayer)10-*10-*10-*10-*1111
CLASS DIAGRAM
5839736841175040
AppAppKaltura LocalAssetsManagerKaltura LocalAssetsManagerDownloads Media tolocalPathregisterAsset(entryConfig, flavorId, localPath)SDK acquires licensealt[Success]Success[Failure]Failure
SEQUENCE DIAGRAM
5840451684794368
ProfessorProfessorStudentStudentGroupViewGroupViewGroupControllerGroupControllerGroupServiceGroupServiceGroupGroupMemberMemberProjectProjectRepositoryRepositorysubmitSolutionsubmitSolution (userName, Solution)submitSolution (userName, Solution)getGroup(groupName)GrouphasMember(Membership)getMember(Membership.key)Member[Member != NULL] truegetProject(Solution.projectID)ProjectsumbmitSolution (Membership, Solution, Project)validationsaddSolution(Solution)addSubmitedSolution(Solution.ID)notify(admin)emailsave(Group)successsuccessrenderSuccess
SEQUENCE DIAGRAM
5840758506520576
des.cldes.cl.glCLCommandQueueCLContextCLDeviceCLPlatformCLEventCLUserEventCLKernelCLMemoryHandlerCLMemoryCLProgramCLBuildOptionCLGLContextCLGLMemory
CLASS DIAGRAM
5841473350139904
AliceAliceBobBobHelloShortlegend
SEQUENCE DIAGRAM
5845493439528960
Controllerkb_protocol_factoryrun()KB_ProtocolFactoryprotocolscript_managercontext_pathKB_Protocolscript_managercontext_managerstring_received()_send()_parse()Queryrequestscript_managercontext_managerprotocolprocess()on_start_test()on_stop_test()on_query_send()on_query_receive()ScriptManagerscripts {feature: script_tree}_load_scripts(path)find_script(msg)ScriptTreerootinsert(paras, script)find(paras, script)ScriptTreeNodescriptparasadd_child(node)del_child(node)specific_than(node)Scriptnamemodulerun()ContextManagerindex_list {ctxt_type : index_list}contexts []_load_index_of_context(path)get_context(ctxt_type, key)get_context(ctxt_type) #last contextcreate_context(ctxt_type, **paras)delete_context(ctxt)delete_all_contexts()IndexListcontext_typekeys []indexes {key_name : index}get_context(key)insert_index(ctxt)Indexcontext_typekey_nameindexes {key_value: contexts}get_context(key)insert_index(ctxt)update_index(ctxt)delete_index(key)delete_all_index()Contextcontext_typeindexes {value tuple : index}fields {name : value}set_field()get_field()Timelinecreaterefer tocreaterefer tosorted based on timefindupdate
CLASS DIAGRAM
5850680417845248
http_client eventsapplicationapplicationhttp_clienthttp_clientconnectloopnormal requestrequestresponseexpect continue requestrequestresponse (continue)bodyresponsechunked requestrequestloopchunkresponsechunked responserequestresponseloopchunkopt[socket disconnected callback]disconnected
SEQUENCE DIAGRAM
5851343721857024
stopkill screenexit 1stop Apache 2exit 2screenrunning ?YeskilledNoYesNostoppedNoYes
ACTIVITY DIAGRAM
5853790511038464
startecho a warninglaunch Orchestra with screen,sleep for 5 secondsecho a warningecho a successstoragemounted ?NoYesAPI GET / ?NoAPI GET / ?NoYesYes
ACTIVITY DIAGRAM
5854900491649024
MonopolyABdoSomethingdoAdoB
SEQUENCE DIAGRAM
5855053231423488
foo1testfoo2foo3foo4foo5The text canalso be on several linesandverylong...You can put text on arrows
ACTIVITY DIAGRAM
5857384190705664
PDFGeneratorquestionCount : intvariantCount : intthemesOut : List<String>generatePDF(qc: int, vc: int, themes: List<String>) : PDFFileGeneratingFrameQuestionManageruseuse
CLASS DIAGRAM
5859735551082496
Initializationread config fileinit internal variableRunningwait for user interactionprint information
ACTIVITY DIAGRAM
5861666675752960
checkoutcheckoutpaymenthelpcustomerclerkincludeextends
USE CASE DIAGRAM
5868008194965504
username = "Dummy"id = 123
CLASS DIAGRAM
5868127380307968
Black boxtestingWhite boxtestingUnittestingIncrementalintegrationtestingIntegrationtestingFunctionaltestingEnd to endtestingRegressiontestingAcceptancetestingStresstestingPerformancetestingUsabilitytestingInstall/uninstalltestingSecuritytestingCompatibilitytesting
COMPONENT DIAGRAM
5871511546101760
Client Server interactionapplicationClientClient T0Client T1ServerServer TMonitorMonitor Tmongodnew(uri)store serverport in todo listPromise.start()load server:portfrom todo listClient objectnew()new()Monitor objectServer objectserver-init()start-monitor()Promise.start()Promiseismaster commandismaster resulttap from monitormonitor dataSet statustap from monitormonitor datastore new serverdata in todo listStore inserver listselect-server()Get serverfrom serverlistServer objectMonitor data is sent from Monitor thread using a SupplyData in Client structures for communication are guarded with Semaphores
SEQUENCE DIAGRAM
5874792632680448
startecho a warningstart Apache2exit 1launch Celerydwith screenexit 2sleep for 5 secondsexit 3echo a successstorage mounted &all configured ?NostartedNoscreenrunning ?NoYesokNoYesscreen running ?NoYes
ACTIVITY DIAGRAM
5874921213263872
Git branch conventions in avdecc-libdevelopment sequenceDeveloperX'senvironmentDeveloperY'senvironmentupstream gitDeveloperXDeveloperXbranchin forked localDeveloperX's git repobranchin forked localDeveloperX's git repoDeveloperYDeveloperYbranchin forked localDeveloperY's git repobranchin forked localDeveloperY's git repostagingbranchin upstream repostagingbranchin upstream repomasterbranchin upstream repomasterbranchin upstream repoManagerManagerIn this example DeveloperX isworking on a new featurecommits changes to forked git repomany updatescompleted a new featuregit pull requestemailed pull requestdo merge to staginggit mergeemail request to test stagingemail request to test stagingDeveloperY is taking on the roleof tester in this exampleloop[until staging test signoff]pulls staging branch for testinggit pullcommits bugfixes to forked git repogit pull requestemailed pull requestdo merge to staginggit mergeSignoffs for staging tests collected from all partiesdo mergestaging merged to master branch
SEQUENCE DIAGRAM
5881612235440128