Beste antwoord
Als u UML (de meest gebruikte diagrammen) gaat gebruiken voor het maken van uw softwarearchitectuur, Visual Paradigm Community Edition is een volledig gratis oplossing (voor persoonlijk en niet -Commercieel).
Ondersteuning van UML 2.5-diagrammen (hier is een MVC Framework-softwarearchitectuur met een sequentiediagram)
Model-view-controller ( MVC ) is een van de meest gebruikte softwarearchitectuurraamwerken voor het ontwikkelen van gebruikersinterfaces die een applicatie opsplitst in drie onderling verbonden delen (model / weergave en controller). Dit wordt gedaan om interne representaties van informatie te scheiden van de manieren waarop informatie wordt gepresenteerd aan en geaccepteerd door de gebruiker.
De MVC-architectuur ontkoppelt deze hoofdcomponenten, waardoor efficiënt codehergebruik en parallelle ontwikkeling mogelijk is met behulp van het concept van scheiding van zorgen die geschikt is voor zowel web- als desktopapplicaties.
Bijvoorbeeld: JHispter is MVC-framework (samen met REST API) voor Webapplicaties, terwijl de meest populaire framework Spring ook tot MVC behoren voor alle soorten applicaties.
In UML kunt u een reeks gebruiken diagram om uw MVC-softwarearchitectuur weer te geven. (Bron: Visual Paradigm – MVC Framework – Visual Paradigm Community Circle )
- Entiteiten zijn objecten die systeemgegevens vertegenwoordigen: klant, product, transactie, winkelwagentje, enz.
- Grenzen zijn objecten die communiceren met systeemactoren: UserInterface, DataBaseGateway, ServerProxy, etc.
- Controls zijn objecten die bemiddelen tussen grenzen en entiteiten.
Ze orkestreren de uitvoering van commandos afkomstig van de grens door interactie met entiteit- en grensobjecten. Besturingselementen komen vaak overeen met use cases en worden vaak weergegeven door een sequentiediagram.
U kunt stereotypen gebruiken voor de levenslijn in het MVC-sequentiediagram om visueel duidelijk te maken welk type objecten u gebruikt in de MVC
Om MVC-sequentiediagram te maken met gratis UML-tool
Meer informatie over UML-diagrammen
Meer informatie over volgordediagrammen
Antwoord
De benadering op hoog niveau die ik doorgaans gebruik bij het documenteren van architecturen (of zelfs meer gedetailleerde ontwerpen op een lager niveau) is:
- Identificeer de belanghebbenden bij het ontwerp. Het engineering / ontwikkelingsteam is een van de belanghebbenden. Uw test- / kwaliteitsborgingsteam, IT-infrastructuurteam, projectmanagement en misschien ondersteunend personeel kunnen ook belanghebbenden van het systeem zijn en geïnteresseerd zijn in verschillende aspecten van het ontwerp.
- Identificeer de aandachtspunten in uw systeem. Als uw systeem een database heeft, is een gezichtspunt de databasestructuur. Als u een gedistribueerd systeem heeft, zijn de systeembeheerders of het personeel van de klantenservice wellicht geïnteresseerd in waar de componenten zijn geïnstalleerd. Als je een openbare interface hebt, dan zijn externe ontwikkelaars geïnteresseerd in wat die interface is: bestandsindelingen, gegevensindelingen, enz. Als je veel complexe algoritmen hebt, dan zijn de algoritme-ontwerpers / beheerders geïnteresseerd in de workflows en algoritmestappen. Elk standpunt dat u identificeert, is een specifieke reeks zorgen.
- Kies voor elk standpunt dat u heeft een passende weergave. Voor uw database-gezichtspunt kunnen entiteit-relatiediagrammen en een gegevenswoordenboek wellicht nuttig zijn. Voor openbare interfaces kunnen XML-schemadocumenten of API-documentatie worden opgenomen als onderdeel van uw documentatie. Overweeg voor complexe algoritmen UML-activiteits- of interactie-overzichtsdiagrammen. Als je een notatie kiest, geef ik de voorkeur aan bekende en goed gedefinieerde notaties, zodat ik mijn notatie niet aan iemand anders hoef uit te leggen en ze gewoon naar bestaand referentiemateriaal kan verwijzen als ze de gebruikte symbolen niet kennen. / li>
- Voeg tekstuele beschrijvingen toe en rationeel rond de diagrammen. Leg niet alleen uit wat de architecturale beslissingen waren die u nam, maar wat u ertoe dreef om die beslissingen te nemen.
Architecturale kaders, zoals het Zachman Framework, The Open Group Architectural Framework, de afdeling Defence Architectural Framework en andere architecturale kaders helpen door essentiële standpunten en standpunten te definiëren die algemeen toepasbaar zijn.
Uiteindelijk is “de beste” documentatie die welke voldoet aan de behoeften van de belanghebbenden.Identificeren wie de informatie nodig heeft en wat ze precies nodig hebben, is de eerste stap.