Sari la conținut
Public Framework

Straturi

v1.0 · în consultare

Aplicații (APP)

Stratul APP al limbajului Public Framework Modelling Language 1.0 răspunde la întrebarea „Cu ce software?”. Pagina descrie conceptele stratului, relațiile lor și cele 23 tipuri de elemente.

Descrie specificația v1.0

Ce descrie stratul

Stratul APP răspunde la întrebarea „Cu ce software?”. El descrie software-ul care susține serviciile (PublicService): structura, comportamentul și integrarea lui. Producerea software-ului ține de DEL, iar instalarea (Deployment) unei versiuni (Release) ține de RUN.

Conceptele și relațiile lor

Sistemul software (SoftwareSystem) include în compoziție, la nevoie, containerele de aplicație (ApplicationContainer) și componentele (Component) lui. Relația este „include în compoziție” (composition) și leagă aici elemente din familia structură.

Software-ul susține serviciile prin relația „deservește” (serving). Sursa ei este o structură, un acces sau un serviciu. Exemple sunt sistemul software, componenta reutilizabilă comună (SharedBuilding Block) și interfața de programare a aplicațiilor (API). Ținta este o structură, un comportament sau un serviciu, de exemplu un serviciu public sau o procedură (Procedure).

Serviciul de aplicație (ApplicationService) și schimbul de date (DataExchange) descriu comportamentul software-ului. Ca și sistemele și componentele, ele accesează un depozit de date (DataStore) sau un set de date (Dataset) din INF, prin relația „accesează” (access). Comportamentul detaliat se desenează, la nevoie, pe planșa de detaliu, cu instrumentele BPMN.

Un element din APP depinde de, la nevoie, alte elemente tehnice, din APP, DEL, RUN, HST sau OPS, prin relația „depinde de” (dependsOn). La nevoie, elemente din alte straturi realizează elemente din APP, prin relația „realizează” (realisation). De exemplu, un artefact (Artifact) din DEL realizează o componentă, iar o unitate de execuție (Workload) din RUN realizează un container de aplicație.

Tipurile de elemente

Stratul are 23 tipuri de elemente, din familiile: structură (7), comportament (7), acces (4), informație (3), depozit (1), decizie (1). Câmpurile proprii ale fiecărui tip sunt enumerate sub definiție; câmpurile comune tuturor elementelor sunt descrise la conceptele de bază.

  • SoftwareSystemSistem software · familia structură

    Un sistem software care susține capabilități sau servicii organizaționale.

    Atribute principale: lifecyclesourcingcriticalityversionsourceReferencestatuslifecycleStatepurposevendorproductNameimplementationKindsupportContactsupportRoleprovidesperforms
  • ApplicationContainerContainer de aplicație · familia structură

    O parte a unui sistem software care poate fi instalată sau poate funcționa independent.

    Atribute principale: kindtechnology
  • ComponentComponentă · familia structură

    O componentă software logică, cu o responsabilitate definită.

    Atribute principale: technologyversionsourceReferencestatuslifecycleStatepurposevendorproductNameimplementationKindcriticalitysupportContactsupportRoleprovidesperformspartOf
  • APIInterfață de programare a aplicațiilor (API) · familia acces

    O interfață software prin care sunt accesate funcții sau date.

    Atribute principale: styleversionspecificationUrlvisibilitysourceReferencestatuslifecycleStatepurposeinterfaceKindprotocolcontractReferenceownerexposes
  • DataStoreDepozit de date · familia depozit

    Un depozit logic folosit de software, independent de o instanță de stocare instalată.

    Atribute principale: kindversionsourceReferencestatuslifecycleStatepurposestoreKindownerstores
  • DataExchangeSchimb de date · familia comportament

    Un schimb de informații între aplicații sau interfețe software.

    Atribute principale: patternprotocolfrequencyversionsourceReferencestatuslifecycleStatepurposeinteractionPatterntriggerDescriptiontimeoutfailureHandlingsourcedestinationusesexchangesrepliesWithtransformsWith
  • SharedBuildingBlockComponentă reutilizabilă comună · familia structură

    O capabilitate software reutilizabilă, partajată între servicii sau organizații.

    Atribute principale: kindprovider
  • AlgorithmAlgoritm · familia comportament

    O procedură de calcul sau de decizie definită, folosită de software.

    Atribute principale: versionsourceReferencestatuslifecycleStatepurposealgorithmKinddefinitionLanguagedefinitionTextassumptionspreconditionspostconditionsdeterminismnodesentry
  • AlgorithmDecisionDecizie algoritmică · familia decizie

    Un punct de decizie dintr-un algoritm.

    Atribute principale: versionsourceReferencestatuslifecycleStatereadsPortswritesPortsusesParametersquestionexpressionLanguageexplanation
  • AlgorithmImplementationImplementare a algoritmului · familia comportament

    O implementare software concretă a unui algoritm.

    Atribute principale: versionsourceReferencestatuslifecycleStateentryPointartifactVersionsourceRevisionchecksumnumericalBehaviourrandomnessPolicy
  • AlgorithmStepPas al algoritmului · familia comportament

    O acțiune sau un calcul individual dintr-un algoritm.

    Atribute principale: versionsourceReferencestatuslifecycleStatereadsPortswritesPortsusesParametersstepKindinstructionexpressionLanguageexpressioninvokesAlgorithm
  • ApplicationFunctionFuncție a aplicației · familia comportament

    Un comportament software grupat după responsabilitatea sa.

    Atribute principale: versionsourceReferencestatuslifecycleStatepurposebehaviourKindrealisesautomatesconsumesproducesusesAlgorithmsimplementsRules
  • ApplicationInterfaceInterfață a aplicației · familia acces

    Un punct de acces care expune comportamentul aplicației.

    Atribute principale: regionhorizonProfiledirectioncontractboundary1boundary2
  • ApplicationServiceServiciu de aplicație · familia comportament

    O funcționalitate software oferită unei alte componente sau unei interfețe cu utilizatorul.

    Atribute principale: versionsourceReferencestatuslifecycleStatepurposeserviceCategorysupports
  • DataTransformationTransformare a datelor · familia comportament

    O conversie dintr-o reprezentare a datelor în alta.

    Atribute principale: mappingKindmappingReferencelossinessreadswrites
  • IntegrationChannelCanal de integrare · familia structură

    Un mecanism care conectează participanți software pentru comunicare.

    Atribute principale: versionsourceReferencestatuslifecycleStatepurposechannelKindlogicalAddress
  • MessageContractContract de mesaj · familia informație

    O specificație a structurii și a semnificației unui mesaj.

    Atribute principale: versionsourceReferencestatuslifecycleStatepurposemessageKindcorrelationKeyidentityKeypayloadMode
  • TechnologyPlatformPlatformă tehnologică · familia structură

    O platformă tehnologică folosită pentru susținerea software-ului.

    Atribute principale: versionstatuslifecycleStatesourceReferencedispositionpurposecategorycomprisesprovidesexposes
  • SystemSoftwareSoftware de sistem · familia structură

    Software de sistem sau de platformă necesar unei aplicații ori unui artefact.

    Atribute principale: versionstatuslifecycleStatesourceReferencedispositionsoftwareKindvendorproductNamereleaseVersionlicenseproductReferencesupportEndDatesupportEvidenceprovidesexposes
  • TechnologyBoundaryInterfaceInterfață de delimitare tehnologică · familia acces

    O interfață de delimitare prin care o aplicație accesează o capabilitate tehnologică.

    Atribute principale: regionhorizonProfiledirectioncontractboundary1boundary2
  • TechnologyServiceServiciu tehnologic · familia informație

    O capabilitate tehnologică pusă la dispoziția consumatorilor software.

    Atribute principale: versionstatuslifecycleStatesourceReferencedispositioncategorycontractVersionserviceDescriptionlimitations
  • TechnologyInterfaceContractContract de interfață tehnologică · familia acces

    Un contract care descrie accesul la un serviciu tehnologic.

    Atribute principale: versionstatuslifecycleStatesourceReferencedispositionaccessStylecontractReferenceexposesServicessupportsProtocols
  • TechnologyProtocolProtocol tehnologic · familia informație

    Un protocol folosit pentru comunicarea cu o capabilitate tehnologică.

    Atribute principale: versionstatuslifecycleStatesourceReferencedispositionfamilyprotocolVersion

În exemplul „Family support benefit”

Figura 4.5 (pagina 30) arată stratul APP în exemplu. Sistemul software „Benefits case platform” deservește serviciul public „Family support benefit”, din ORG. Este singura relație a stratului în exemplu.

Celelalte legături ale platformei sunt câmpuri și nu apar în figură. Platforma cuprinde componenta „Benefit assessment component” și expune API-ul „Benefit submission API”, interfața dintre canalul (ServiceChannel) „Public benefit portal”, din ORG, și platformă. Ea oferă serviciul de aplicație „Benefit case processing”, pe care API-ul îl expune.

Ți-a fost utilă această pagină?