Skip to content

Commit

Permalink
Updates
Browse files Browse the repository at this point in the history
  • Loading branch information
CANCI0 committed Feb 11, 2024
1 parent abd1e85 commit 531cd19
Show file tree
Hide file tree
Showing 2 changed files with 59 additions and 100 deletions.
Binary file added images/businesscontext.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
159 changes: 59 additions & 100 deletions index.html
Original file line number Diff line number Diff line change
Expand Up @@ -698,127 +698,86 @@ <h3 id="_stakeholders">1.3. Stakeholders</h3>
<div class="sect1">
<h2 id="section-architecture-constraints">2. Architecture Constraints</h2>
<div class="sectionbody">
<div class="sidebarblock arc42help">
<div class="content">
<div class="paragraph">
<div class="title">Contents</div>
<p>Any requirement that constraints software architects in their freedom of design and implementation decisions or decision about the development process. These constraints sometimes go beyond individual systems and are valid for whole organizations and companies.</p>
</div>
<div class="paragraph">
<div class="title">Motivation</div>
<p>Architects should know exactly where they are free in their design decisions and where they must adhere to constraints.
Constraints must always be dealt with; they may be negotiable, though.</p>
</div>
<div class="paragraph">
<div class="title">Form</div>
<p>Simple tables of constraints with explanations.
If needed you can subdivide them into
technical constraints, organizational and political constraints and
conventions (e.g. programming or versioning guidelines, documentation or naming conventions)</p>
</div>
<div class="paragraph">
<div class="title">Further Information</div>
<p>See <a href="https://docs.arc42.org/section-2/">Architecture Constraints</a> in the arc42 documentation.</p>
</div>
</div>
</div>
<table class="tableblock frame-all grid-all stretch">
<colgroup>
<col style="width: 50%;">
<col style="width: 50%;">
</colgroup>
<thead>
<tr>
<th class="tableblock halign-left valign-top"><strong><em>Restricción de Arquitectura</em></strong></th>
<th class="tableblock halign-left valign-top"><strong><em>Descripción</em></strong></th>
</tr>
</thead>
<tbody>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><strong><em>Tecnología de Desarrollo</em></strong></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">La aplicación debe desarrollarse utilizando tecnologías web compatibles con los requisitos y estándares de RTVE.</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><strong><em>Plataforma de Implementación</em></strong></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">La aplicación debe ser implementada en una plataforma de alojamiento web que cumpla con los requisitos de rendimiento, seguridad y escalabilidad de RTVE.</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><strong><em>Cumplimiento de Normativas de Privacidad</em></strong></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">La arquitectura debe garantizar el cumplimiento de las regulaciones de privacidad de datos, como GDPR, para proteger la información de los usuarios.</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><strong><em>Compatibilidad con Navegadores</em></strong></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">La aplicación debe ser compatible con una amplia gama de navegadores web populares para garantizar una experiencia de usuario consistente.</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><strong><em>Seguridad de la Información</em></strong></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Se deben implementar medidas de seguridad sólidas, como autenticación de usuarios, control de acceso y encriptación de datos, para proteger la información confidencial de los usuarios.</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><strong><em>Escalabilidad</em></strong></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">La arquitectura debe ser escalable para manejar un aumento en el tráfico de usuarios sin comprometer el rendimiento.</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><strong><em>Mantenibilidad del Código</em></strong></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Se deben seguir prácticas de desarrollo de software que promuevan un código limpio y bien documentado para facilitar futuras actualizaciones y mantenimiento.</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><strong><em>Tiempo de Desarrollo</em></strong></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">La aplicación debe desarrollarse dentro de un marco de tiempo específico, lo que puede influir en las decisiones arquitectónicas y en la selección de tecnologías.</p></td>
</tr>
</tbody>
</table>
<div style="page-break-after: always;"></div>
</div>
</div>
<div class="sect1">
<h2 id="section-system-scope-and-context">3. System Scope and Context</h2>
<div class="sectionbody">
<div class="sidebarblock arc42help">
<div class="content">
<div class="paragraph">
<div class="title">Contents</div>
<p>System scope and context - as the name suggests - delimits your system (i.e. your scope) from all its communication partners
(neighboring systems and users, i.e. the context of your system). It thereby specifies the external interfaces.</p>
</div>
<div class="paragraph">
<p>If necessary, differentiate the business context (domain specific inputs and outputs) from the technical context (channels, protocols, hardware).</p>
</div>
<div class="paragraph">
<div class="title">Motivation</div>
<p>The domain interfaces and technical interfaces to communication partners are among your system&#8217;s most critical aspects. Make sure that you completely understand them.</p>
</div>
<div class="paragraph">
<div class="title">Form</div>
<p>Various options:</p>
</div>
<div class="ulist">
<ul>
<li>
<p>Context diagrams</p>
</li>
<li>
<p>Lists of communication partners and their interfaces.</p>
</li>
</ul>
</div>
<div class="paragraph">
<div class="title">Further Information</div>
<p>See <a href="https://docs.arc42.org/section-3/">Context and Scope</a> in the arc42 documentation.</p>
</div>
</div>
</div>
<div class="sect2">
<h3 id="_business_context">3.1. Business Context</h3>
<div class="sidebarblock arc42help">
<div class="imageblock">
<div class="content">
<div class="paragraph">
<div class="title">Contents</div>
<p>Specification of <strong>all</strong> communication partners (users, IT-systems, &#8230;&#8203;) with explanations of domain specific inputs and outputs or interfaces.
Optionally you can add domain specific formats or communication protocols.</p>
<img src="./images/businesscontext.png" alt="businesscontext" width="1009" height="578">
</div>
<div class="paragraph">
<div class="title">Motivation</div>
<p>All stakeholders should understand which data are exchanged with the environment of the system.</p>
</div>
<div class="paragraph">
<div class="title">Form</div>
<p>All kinds of diagrams that show the system as a black box and specify the domain interfaces to communication partners.</p>
</div>
<div class="paragraph">
<p>Alternatively (or additionally) you can use a table.
The title of the table is the name of your system, the three columns contain the name of the communication partner, the inputs, and the outputs.</p>
</div>
</div>
</div>
<div class="paragraph">
<p><strong>&lt;Diagram or Table&gt;</strong></p>
</div>
<div class="paragraph">
<p><strong>&lt;optionally: Explanation of external domain interfaces&gt;</strong></p>
</div>
</div>
<div class="sect2">
<h3 id="_technical_context">3.2. Technical Context</h3>
<div class="sidebarblock arc42help">
<div class="content">
<div class="paragraph">
<div class="title">Contents</div>
<p>Technical interfaces (channels and transmission media) linking your system to its environment. In addition a mapping of domain specific input/output to the channels, i.e. an explanation which I/O uses which channel.</p>
</div>
<div class="paragraph">
<div class="title">Motivation</div>
<p>Many stakeholders make architectural decision based on the technical interfaces between the system and its context. Especially infrastructure or hardware designers decide these technical interfaces.</p>
</div>
<hr>
<div class="paragraph">
<div class="title">Form</div>
<p>E.g. UML deployment diagram describing channels to neighboring systems,
together with a mapping table showing the relationships between channels and input/output.</p>
</div>
</div>
<p>Actor User as user
Actor Admin as admin</p>
</div>
<div class="paragraph">
<p><strong>&lt;Diagram or Table&gt;</strong></p>
<p>node cloud as "Cloud"{
component wiq as "WIQ! Webapp"
}</p>
</div>
<div class="paragraph">
<p><strong>&lt;optionally: Explanation of technical interfaces&gt;</strong></p>
<p>component wikidata as "Wikidata"</p>
</div>
<div class="paragraph">
<p><strong>&lt;Mapping Input/Output to Channels&gt;</strong></p>
<p>user -down&#8594; cloud: HTTP/HTTPS
admin -down&#8594; cloud: SSH
wikidata -right- cloud: REST
---</p>
</div>
<div style="page-break-after: always;"></div>
</div>
Expand Down

0 comments on commit 531cd19

Please sign in to comment.