Frage

Ich habe in letzter Zeit immer mehr Systeme erstellt und finde immer mehr Planung und Vorbereitung, bevor ich das Projekt starte.

Ich bestimme, welche Bibliotheken oder Frameworks ich verwenden werde, welche Sprachen, die grundlegende Architektur des Fließens der Website usw.

Ich habe auch von anderen Designprozessen wie dem Hängen von Styroporbällen gehört, um zu zeigen, wo sich Klassen befinden und wie sie sich beziehen. Dies ist ein Prozess, von dem ich noch nie gehört habe, und ich weiß, wie es funktioniert.

Gibt es eine Software, die bei diesem Prozess hilft? Gibt es Richtlinien oder Schritte oder haben Sie eine Reihe von Schritten oder Richtlinien, die Sie beim Entwerfen eines neuen Projekts befolgen?

War es hilfreich?

Lösung

Sie machen also basic lösungsarchitektur. Es gibt keine Methoden, die mir bekannt sind - zumindest keine, die auf vier Seiten oder weniger kurz beschrieben werden (etwas, das ich mir einfallen lasse).

Zur Beantwortung Ihrer Frage:

1 - Verstehen Sie die Einschränkungen

Das Offensichtliche ist das Verständnis des Problems, das Sie zu lösen versuchen, und den Kontext.
Möglicherweise haben Sie eine freie Hand oder werden nach vorhandenen Standards eingeschränkt - wo ich arbeite (in einem Govt Agencey), haben wir viele verschiedene Technologien und Systeme, und es gibt eine Hackordnung, wenn wir uns etwas anderes ansehen. Technologie, die wir bevorzugen, und die Technologie, aus der wir herauswachsen.

Zachman ist ein Rahmen für Enterprise Architecture; Sie werden es vielleicht interessant finden, aber ich bezweifle, dass es auf der Lösungsebene sehr relevant ist. Togaf ist ein anderer.

2 - Ansichten

Die Sache mit Togaf (und Zachman) ist, dass es das Konzept verschiedener "Ansichten" hat, zum Beispiel das:

  • Sicherheitsansicht
  • Datenansicht
  • Technologieansicht
  • Anwendungsansicht
  • Prozessansicht
  • Unterstützungsansicht
  • Betriebsansicht
  • Abrechnungsansicht
  • Benutzeransicht
  • Leistung usw. ...

Sie möchten genau nachdenken, welche Ansichten für das System, das Sie planen, relevant sind. Während sich das Projekt / System entwickelt, müssen Sie diese berücksichtigen. Sie werden dazu beitragen, wichtige Entscheidungen zu leiten. Ich mag auch diese Appoarch / Denkweise, weil er nach wie vor "Teilen Sie eine Eroberung" - ein großes Puzzel in kleinere.

3 - Modellierung

Ich habe noch nicht gehört, Styroporbälle zu verwenden, aber die Idee, Beziehungen auf taktile Weise zu modellieren, klingt sehr ansprechend - obwohl Sie, wenn es ein großes System ist, ein wirklich großes Zimmer benötigt :)

Whiteboard ist meine Lieblingsmethode, um zu erforschen, wie Klassen in Beziehung stehen (und was wirklich so). Ich empfehle dringend, eine Digitalkamera bei sich oder ein Telefon mit eingebauter Kamera zu haben. Ich benutze das letztere, mache nach Bedarf Fotos des Whiteboards und synchronisiere sie dann mit meinem Computer nach dem Meeting und schicke Kopien an die Teilnehmer aus. Es ist sehr einfach, die Informationen zu erfassen und lässt Sie auch ziemlich professionell aussehen.

UML ist sehr nützlich, aber Sie müssen möglicherweise auswählen, welche Teile Sie je nach Publikum verwenden - es hängt davon ab, wie formal Sie Dinge betrachten möchten.

Formell Modellierungssysteme in einem Modellierungswerkzeug (und die Verwendung formaler UML im Gegensatz zu einer Diagrammierung in Say Visio) ist sehr nützlich. Wenn Sie damit nicht vertraut sind, werden Sie feststellen, dass es eine Schmerzschwelle gibt, die Sie durchmachen müssen, aber es lohnt sich im Allgemeinen, wenn:

  • Das System liegt über einer bestimmten Größe / Komplexität oder
  • Sie haben viele kleinere Systeme, mit denen Sie arbeiten können.

4 - Projektmethode

Ich bin ein großer Fan von Agile / Scrum. Ich suche nach Möglichkeiten, agile Prinzipien auf die SLN -Architektur anzuwenden - aber ich habe noch nichts.

Ich habe letztes Jahr an einer guten Sitzung bei Tech -ED teilgenommen (ARC202, der die Rolle des Architekten bei Kevin Francis herausfordert) - ich habe einen Schreiben hier.

Dies war eine hervorragende Sitzung - es ist das erste Mal, dass ich jemanden erklärte, wie ein (Lösung?) Architekt ein Projekt beteiligen sollte - unabhängig von der Methodik. Kevins, ein agiler Anwalt - und sein Vortrag konzentrierte sich darauf, was es doppelt so gut machte: wie man Architektur und agil passt.

Andere Tipps

Einige Leute mögen Kanban.

Andere finden Uml um nützlich zu sein.

Architektur -Wonks verwenden die Zachmann -Framework.

Ich denke, die meisten Leute verwenden eine Kombination dieser Techniken. Es ist wichtig, flexibel zu sein- jedes Projekt ist unterschiedlich. Schärfen Sie Ihre Managementfähigkeiten und -prozesse weiter und Sie werden einen Workflow finden, der für den größten Teil Ihrer Projekte am besten geeignet ist.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top