I have an issue with these compliance suites. I think for the most
part it's a pointless bureaucracy. Just listing XEPs makes it an
artificial metric that can be gamed easily. Typically if XMPP client
supports just one tiny part of a XEP, app developer immediately claims
this XEP support. We did it too, of course. This is kinda natural,
because many XEPs are often more complex that developer needs, and it
makes little sense to implement them fully just for compliance sake.
Classic example is private messages in XEP-0045, and all these crazy
roles/affilation models in it.

So, just listing XEPs saves little purpose other than a faint
guideline for an app developer if he's missing something. Also, I
don't think that listing them as XEPs is a good idea.

There is, however, a really big problem that no one seems to be
talking about - it's not the protocol, but accompanying behaviour.
Simple example: subscription request. It looks like very simple, but
it's not. It is more or less straightforward only if user has just one
device. But if it has more devices?
 - Romeo has XMPP clients on phone and tablet
 - Romeo has received subscription request from Juliet
 - Romeo opened dialog on tablet, but switched to phone
 - Romeo opened same dialog on phone and accepted subscription
 - What should happen on tablet? Should it close this dialog? What
should tablet open after closing dialog? main screen, or user details?

Current XMPP clients manage to do these very basic things in
dramatically different ways, worsening interoperability and user
experience.

If compliance suites are aimed at harmonising a rather chaotic XMPP
environment, it'd better think not of underlying protocols, but about
user experience and why these protocols are needed in first place. I
imagine that a proper compliance suite would be not a list of XEPs,
but rather a list of test cases that describe behaviour in commonly
occurring scenarios. It is more difficult and way more work, but would
be of much more help to anyone who wants to implement some
functionality in his client/server of choice. Also, this could be a
basis for objective testing if some client is compliant or not to such
suite.

--
Ненахов Андрей
Директор ООО "Редсолюшн" (Челябинск)
(351) 750-50-04
http://www.redsolution.ru
_______________________________________________
Standards mailing list
Info: https://mail.jabber.org/mailman/listinfo/standards
Unsubscribe: [email protected]
_______________________________________________

Reply via email to