Real World PlantUML
UserUserSystemSystemadd an objectloop[!validation]informations demandname, corresponding classloopadd a valueloop[!validation]informations demandcorresponding attribute, value
SEQUENCE DIAGRAM
5412734816485376
babStarting processing25% done50% done100% doneDone with processing
SEQUENCE DIAGRAM
5415130737147904
la:LoadActionzw:ZoneWriterzd_new:ZoneDatanew:MemorySegment(Mapped):b10-memmgr:b10-memmgr:ConfigurableClientList:ConfigurableClientList:CacheConfig:CacheConfig:ZoneTableSegment(Mapped):ZoneTableSegment(Mapped)existing:MemorySegment(Mapped)existing:MemorySegment(Mapped)new:MemorySegment(Mapped):ZoneTable:ZoneTablezw:ZoneWriterla:LoadActionzd_existing:ZoneDatazd_existing:ZoneDatazd_new:ZoneDatareload(zonename)getCachedZoneWriter(zone_name)isWritable()truegetLoadAction()<<construct>>la:LoadActionla<<construct>> (la)zw:ZoneWriterzwload()(funcall)<<construct>> via helperszd_new:ZoneDatazd_newinstall()addZone(zd_new)zd_existing (old data)cleanup()<<destroy>>command tomodules(datasrc_name,segmentparam)ack from allmodulesresetMemorySegment(datasrc_name,READ_WRITE,segmentparam)reset(READ_WRITE,segmentparam)<<destroy>><<construct>>new:MemorySegment(Mapped)(repeat thesame sequencefor loading to theother segment)getCachedZoneWriter(zone_name)
SEQUENCE DIAGRAM
5418239219728384
UserUserSystemSystemadd an interfaceloop[!validation]informations demandname, packageloopadd a methodloop[!validation]information demandname, type, visibility, parameters
SEQUENCE DIAGRAM
5418764950568960
BrowserBrowserServerServerAPI AAPI AAPI BAPI BRequestResponse
SEQUENCE DIAGRAM
5429524246298624
UserUserAABBDoWorkInternal call<< createRequest >>RequestCreatedDone
SEQUENCE DIAGRAM
5442058571481088
UserUserNodeNodeSessionSessionObjectManagerObjectManagerClientClientNodeProcessorNodeProcessorVersionHandlerVersionHandleraddMixinsavesave()storeNodes()process()addVersionProperties()additionalPropertiesadditionalProperties
SEQUENCE DIAGRAM
5442685636706304
Cliente:Interface:Controlador:ChamadoaltAbrir chamadoAbrir chamadoabrirchamados() , dados do chamadoChamado registradoChamado registradoConsultar chamadoConsultar chamadoloop[Para cada chamado registrado pelo usuário]mostratelaprincipal()Chamado registrado pelo usuárioLista de Chamados
SEQUENCE DIAGRAM
5462279277510656
PlantUML4MarkdownPlantUML4MarkdownMarkdown (orig)Markdown (orig)PlantUML (markup)PlantUML (markup)Markdown (converted)Markdown (converted)PlantUMLPlantUMLUML Diagram (image)UML Diagram (image)ReadGenerateGenerateReadGenerate
SEQUENCE DIAGRAM
5518912179404800
OtherStringBobBobAliceAliceOtherStringhellonewOtherStringYou can also put notes!ok
SEQUENCE DIAGRAM
5521592238997504
clientclienthttp_serverhttp_serverapplicationapplicationHTTP requestrequest receivedresponseHTTP response
SEQUENCE DIAGRAM
5554241775075328
Footer removedAliceBobAuthentication RequestAuthentication Response
SEQUENCE DIAGRAM
5558976708083712
Users CRUD (Create Read Update Delete)UserUserWebUIWebUIOrchestraOrchestraLoginGET /user/login (auth d@f.com:pass)Get user from MongoDBOK 200{"status"=200"value"={"_id": "<uuid>", "name": "David Fischer", ...}}'Successfull login'Users TabGET /user/id/<uuid> (auth d@f.com:pass)Get user from MongoDBOK 200{"status"=200,"value"={"_id": "<uuid>", "name": "David Fischer", ...}}alt[if authenticated user has the admin_platform attribute]GET /user (auth d@f.com:pass)Get users from MongoDBOK 200{"status"=200,"value"=[{"_id": "<uuid>", "name": "David Fischer", ...}, ...]}<< Show the user and users listif authenticated user ... >>alt[if auth. user has the admin_platform attribute]Add an user (with add form)POST /user (auth d@f.com:pass) {"first_name": "Adi", "last_name": "Kouadio", ...}Save user to MongoDBOK 200{"status"=200,"value"={"_id": "<uuid_of_adi>", "name": "Adi Kouadio", ...}}<< Flash info message'The user "Adi Kouadio" has been added.' >>Edit an userPUT /user/id/<uuid_of_andres> {"admin_platform": false} (auth d@f.com:pass)Update user into MongoDBOK 200{"status"=200,"value"="The user \"Andrés Revuelta\" has been updated."}<< Flash info message'The user "Andrés Revuelta" has been updated.' >>Remove an userDELETE /user/id/<uuid_of_bram> (auth d@f.com:pass)Remove user from MongoDBOK 200{"status"=200,"value"="The user \"Bram Tullemans\" has been deleted."}<< Flash info message'The user "Bram Tullemans" has been deleted.' >>
SEQUENCE DIAGRAM
5559998373429248
クライエントクライエントサーバーサーバー1.アクセス要求2.リプライ3.サーバー証明書送信4.証明書の検証5.ランダムデータ生成 + サーバー公開鍵 => サーバ鍵、クライエント鍵6.暗号化されあランダムデータ7.秘密鍵でランダムデータ解読 => サーバー鍵、クライエント鍵8.暗号化通信開始9.アプリケーションデータ
SEQUENCE DIAGRAM
5569868745146368
audio_rxtx Interaction DiagramSender Shutdownprocprocsendersenderreceiverreceiverloop[Ongoing Transmission]1/audio2terminate3stop sending audio4shutdown5playout until buffer emptyloop6buffer underflow
SEQUENCE DIAGRAM
5572315534327808
WearableWearableSmartphone_appSmartphone_appXenophile_serverXenophile_serverData requestData responseData requestData responseInternal callCreateRequestRequestCreatedServe user data
SEQUENCE DIAGRAM
5573425514938368
SenderSenderDropControllerDropControllerGSONGSONCryptoUtilsCryptoUtilsDropHTTPDropHTTPsend[andForget](DropMessage, Contact)alt[!andForget]generateAcknowledgeId()serialiseMessage(DropMessage)JSONMessagecreateBox(SendPrivKey, RcptPubKey, JSONMessage)NoiseBoxsend(DropURL, NoiseBox)http-OK (200)result
SEQUENCE DIAGRAM
5575909213995008
UserUserAppAppServerServerDatabaseDatabasereviw my profilemakeGetRequest()getUserProfile()ResultSetalt[login key is correct]HTTP Response(success:true, data)[else]HTTP Response(success:false)
SEQUENCE DIAGRAM
5597862805110784
Call DetailsICAPPRMotechMotechCallInitiationServicePinAuthenticationControllerVerboiceInteractionControllerIVR ServiceVerboicePatientPlatform Eventsfrom callinitiationinitiateCall()HTTP callcall Idring phone (SIP, etc.)HTTP status "ringing"next status URLanswer phoneHTTP status "in-progress"next status URLplay Motech musicenter pinHTTP authenticateresult=trueplay "yellow skin?"answer "yes"HTTP answerYES_YELLOW_SKIN_OR_EYESto encounterrecordingplay "abdominal pain?"answer "yes"HTTP answerYES_ABDOMINAL_PAIN_OR_VOMITINGplay "skin rash?"answer "no"HTTP answerNO_SKIN_RASH_OR_ITCHY_SKINplay "tingling?"answer "no"HTTP answerNO_TINGLING_OR_NUMBNESS_OF_HANDS_OR_FEETplay "goodbye"hang uphang upHTTP status "completed"next status URLHTTP status "Disconnect"next status URLEND_OF_CALL_EVENTto callinitiationICAPPR phone calls are implemented with an IVR service called Verboice.Patients enter PINs and respond to questions by pressing buttons on theirphones. Verboice sends these data to the ICAPPR Motech server viaHTTP requests, configured as Verboice "External Services", which arehandled by custom end points in within the ICAPPR module.(http://verboice.instedd.org/projects/228/external_services).Verboice also sends generic call status data to the ICAPPR Motech servervia HTTP requests, configured as Verboice status "Callbacks", which arehandled by the Motech platform's IVR module.
SEQUENCE DIAGRAM
5608825843351552
UserUserAppAppServerServerDatabaseDatabaseget all reviews of another usermakeGetRequest()gerReviewsForUser()ResultSetalt[user is found]HTTP Response(success:true, data)[else]HTTP Response(success:false)
SEQUENCE DIAGRAM
5610205735813120
UserUserFirst ClassFirst ClassSecond ClassSecond ClassLast ClassLast ClassDoWork<< createRequest >>DoWorkWorkDoneRequestCreatedDone
SEQUENCE DIAGRAM
5613520645259264