it-swarm.com.de

User Experience vs. UI Javascript Component Libraries

Jeder trifft auf agile Entwicklungsteams, die UI-Komponentenbibliotheken (PrimeFaces und IceFaces) mit schrecklichen Benutzererfahrungen verwenden ... und den Code nicht ändern, um eine bessere Benutzererfahrung zu unterstützen. Suchen Sie nach Antworten zum Schutz der Benutzererfahrung und überzeugen Sie das obere Management davon, dass die UI-Komponentenbibliotheken eine schlechte Benutzererfahrung bieten.

2
Ashlie

Ich hasse Stereotypen, aber in diesem Fall ist es einigermaßen gültig: JSF-Entwickler verstehen weder den Code der Präsentationsschicht noch die Benutzererfahrung. Ich denke, das hat mit der Entwicklung von JSF als Webentwicklungstool zu tun ... Der gesamte Front-End-Code liegt nicht in der Hand der Entwickler. Es wird alles automatisch (und schlecht) über die serverseitigen JSF-Tags generiert. Aus diesem Grund verbirgt JSF den clientseitigen Code vor JSF-Entwicklern, sodass sie nie die Notwendigkeit oder Motivation haben, sich um eine gute UX-Clientseite zu kümmern.

Dinge wie PrimeFaces sollen helfen, aber meiner Meinung nach nicht.

Die einzige "Heilung" besteht darin, die JSF dazu zu bringen, keine Kundenmarkierung mehr zu machen. Dazu müssen Sie wahrscheinlich die gesamte Architektur der Software ändern, damit Sie Dinge wie JSON und AJAX in größerem Umfang nutzen können - damit die Daten von JSF verarbeitet werden können. aber das eigentliche Rendern der Seite wird von den Front-End-Entwicklern übernommen.

Seien Sie vorsichtig, wenn Sie generell angeben, dass UI-Komponentenbibliotheken eine schlechte Benutzererfahrung bieten, da es viele hochwertige UI-Komponentenbibliotheken gibt, die eine recht anständige Benutzeroberfläche bieten (jQUery UI ist eine zu berücksichtigende).

Leider ist das viel Tippen, aber ich bin mir nicht sicher, ob ich eine Antwort für Sie habe ... wenn überhaupt, denke ich, dass ich genau die gleiche Frage habe!

Einige zu berücksichtigende Argumente:

  • JSF stammt aus dem serverseitigen Modell der Webentwicklung. Es ist ein veraltetes Konzept.
  • JSF neigt dazu, eine starke clientseitige Codebasis zu erzeugen. Das wirkt sich auf UX aus.
  • JSF-Bibliotheken sind in der Regel ziemlich starr, was die Fähigkeit des UX-Teams verringert, die Erfahrung für Ihre Kunden anzupassen
  • Es gibt viele moderne, aktuelle clientseitige Bibliotheken, die in großem Umfang verwendet werden und sowohl in der UX- als auch in der Entwicklungsphilosophie viel vorausschauender sind.
8
DA01

Meiner Meinung nach ist dies kein spezifisches Problem für agile Entwicklungsprozesse. Bei dieser Frage geht es darum, sicherzustellen, dass UX Teil des Entwicklungsprozesses ist. In einem der ersten Kommentare zu der Frage "Zu welchem ​​Zeitpunkt im Entwicklungsprozess sollte UX in einer agilen Arbeitsumgebung ins Spiel kommen?" sagt Benutzer Aaron McIver (zu Recht), dass "Agile für alles verantwortlich ist Das liefert dem Endbenutzer einen Mehrwert. Wenn das agile Team, an dem Sie arbeiten, UX nicht berücksichtigt, hat dies mit dem Team zu tun, nicht mit dem Prozess. "

Ihre Situation scheint zu sein, dass Sie/das UX-Team nicht angemessen in den Entwicklungsprozess involviert sind. Entwickler, die Teil des Prozesses sind, implementieren die Benutzeroberfläche ohne Rücksprache mit UX, und diese Benutzeroberfläche ist schlecht, aber sie hören dann nicht auf Empfehlungen, um es besser zu machen.

Dies ist leider typisch (unabhängig von der Softwareentwicklungsmethode), und meiner Erfahrung nach erfordern Auflösungen ein UX-Buy-In ein oder zwei Stufen über der "Problemschicht", damit die Verantwortlichkeiten allen Teammitgliedern klar werden. Du kannst:

  • Geben Sie weiterhin gute UX-basierte Empfehlungen für die Benutzeroberfläche
  • Dokumentieren Sie alles , was Sie (offensichtlich) empfehlen, dokumentieren Sie aber auch sofort, was tatsächlich getan wird, und geben Sie ganz klar an, wie die Implementierung nicht der Empfehlung entspricht
  • Kommunizieren Sie ständig mit dem Projektmanager, dass der UX-Teil des Projekts durch den Implementierungsteil untergraben wird - nicht auf mittlere Weise, sondern auf quantifizierbare Weise, basierend auf Ihrer Dokumentation.
  • Finden Sie einen Weg (entweder Sie oder Ihren Manager, abhängig von der Hierarchie an Ihrem Standort), um sicherzustellen, dass UX und Dev während des gesamten Produktentwicklungszyklus koordiniert zusammenarbeiten.
  • Machen Sie weiterhin die beste Arbeit, die Sie leisten können, um Empfehlungen und Dokumentation für eine gute UX bereitzustellen. Wenn Sie feststellen, dass UX dort nicht geschätzt wird/Sie das Setup nicht ändern können, entscheiden Sie, wie hart Sie weiter kämpfen möchten.

Der Schlüssel für mich ist immer, mich selbst zu schädigen, bis die Leute verstehen, dass es ein grundlegendes Prozessproblem gibt , und dann zu der Arbeit zurückzukehren, die ich/die UX Das Team hat sehr einfach gezeigt, dass "A gut ist. B ist schlecht. Wir haben empfohlen, A. Entwickler zu implementieren. B. Wenn sie B weiterhin implementieren, sind hier die Probleme, die auftreten werden." Am Ende des Tages wird das Management entscheiden, womit es rollen möchte. Wenn sich die Stakeholder von etwas abmelden, das UX nicht unterstützt, ist das bedauerlich, aber es ist das, was sie tun.

Sie werden feststellen, dass ich in meiner Antwort, die DA01 gemacht hat, nicht auf die Komponentenbibliotheken selbst eingegangen bin. Das liegt daran, dass ich das größere Problem als Prozess und Management sehe. Ohne UX, das in den Entwicklungsprozess eingebettet ist, werden die nicht UX/UI-orientierten Entwickler alles verwenden, was sie möchten/verwenden möchten, bis jemand sie stoppt.

2
jcmeloni

Ja. Ich hatte Probleme mit einem Entwicklerteam, das Primefaces als Toolkit ausgewählt hat - mit dem Segen unseres (Usability-Teams) -, solange es mit CSS vollständig anpassbar war.

Es stellt sich jedoch heraus, dass es für sie so schwierig ist, Primefaces anzupassen, dass sie sich jetzt weigern, dies zu tun - auch wenn es nicht unseren Standards entspricht oder den Benutzeranforderungen entspricht.

Was ich nicht verstehe, ist, dass sie leicht andere Tools zusammen mit Primefaces als Basis (wie JQuery) verwenden können, um das zu tun, was wir von ihnen benötigen.

Soweit ich weiß, ist Primefaces jedoch ein Toolkit, das Sie auswählen, wenn Sie sich überhaupt nicht mit einer benutzerdefinierten Benutzeroberfläche befassen möchten.

Es ist ein echtes Problem. Primefaces und eine gute Benutzererfahrung/solide Benutzerfreundlichkeit scheinen nicht gut zusammen zu passen.

Ich werde ein Themenpapier schreiben, das besagt, dass Primefaces (sofort einsatzbereit) die Usability-Anforderungen nicht erfüllen. Hoffentlich geben sie es entweder auf oder nutzen es als Basis und ergänzen es mit robusteren Technologien, wenn es nicht das kann, was wir brauchen.

1
user34510

Ich fühle deinen Schmerz. Derzeit verwendet unser Unternehmen JSF 1.2; Sehr alt, sehr veraltet und leider das neueste Anwendungsframework, das wir unterstützen können. Um das JSF-Manko zu umgehen, haben wir ein User Experience-Team zusammengestellt, in dem ich derzeit arbeite. Wir haben eine agnostische Vorlage/ein Framework, benutzerdefinierte JavaScript-APIs und Anleitungen erstellt, um nach Möglichkeit andere Technologien zu verwenden. Wir befinden uns derzeit noch in der "Beta" -Stufe, aber die Entwicklungsgruppen haben unseren Standard nach Möglichkeit übernommen.

Abhängig von den geschäftlichen Anforderungen können Sie möglicherweise dasselbe tun. Einige der von uns verwendeten Technologien bieten Entwicklern:

  • jQuery und jQuery UI
  • Modernizr
  • jQuery DataTable-Plugins
  • jQuery Qtips Plugin
  • Viele kundenspezifische Plugins
  • Benutzerdefiniertes CSS, um strukturelle Mängel bei JSF zu beheben.

Wir essen oder besitzen Gift, indem alle Funktionen und das Styling, die wir anbieten, auf JSF 1.2 aufbauen. Da die "Anwendung" keinen wirklichen Anwendungsbedarf bietet, beweist dies, dass das Framework etwas solide ist. Wir bieten auch Syntaxhervorhebungen, die zeigen, wie wir den Stil und die Funktionalität implementiert haben. In den meisten Fällen müssen Entwickler eine Klasse an ein Element wie eine Tabelle anhängen, und unser clientseitiges Datentabellen-Plugin formatiert die Funktion automatisch entsprechend.

Derzeit kann ich keinen Link zu unseren UX-Richtlinien bereitstellen, da wir noch daran arbeiten und sie noch nicht auf einen öffentlich zugänglichen Server hochgestuft wurden. Aber es ist in unserem Rückstand.

Hoffe das hilft!

0
JeffH