Continuing from Part 1, this modeled diagram represents components of a concept reputational application. As do most web applications, the system is comprised of three tiers: client, application, and the database layer.
The user of the system interfaces with a browser on a desktop computer or an application on a mobile device. The middle tier is comprised of JBoss Application Server and Apache's ServiceMix. I chose JBoss AS to allow for enterprise javabeans to be used along with all of the lovely enterprise features such as remoting, security, transaction management, presistence, messaging, resource pooling, concurrency control, and directory services.
I included a servicemix implementation component to jboss for deploying a webservice to external webservice clients. In addtion, servicemix allows for xmpp implementations along with messaging services over Java Messaging Service (JMS).
For authorization, an OpenID provider is accessed for warehousing usernames and passwords. Having users' credentials stored by an OpenID provider removes the potential possibility of a security breach regarding usernames and passwords.
Lastly, I selected PostgreSQL for the application's database layer. I have used PostgreSQL with many projects previously while the zero licensing cost to implement is most ideal.
To continue this development drill, I will next blog activity diagrams from using the potential use cases.