What is Architecture?
How about, "The balance between art and engineering"
This simple definition became the basis of this session. As technical engineers and architects, we often focus only on the engineering aspects of architecture. In this session, the presenter places the focus on the art within architecture.
Key points:
Connecting with your users, understanding their needs, fulfilling their desires, and meeting their expectations.
As an architect you should be thinking about the following:
- Valuable/meaningful data presentation
- Fast and responsive user interaction
- Familiar feeling
- Reliability
- Performance online and offline
- Data integrity
- User recognition and profile awareness
- Customized to the way users work
- Focused on achieve goals of the user
Keeping in line with the title of the seminar the presentation talked about tools that are available to you as you are architecting your solution. The following is a listing of the key tools demonstrated:
Very little of the discussion actually involved SOA other than discussing how your application foundation can be separated from the applications/users context which can than be separated from the visualization. However each separation was discussed in good detail.
The presenter spent a good amount of time talking about handling the context of your user and application. He recommended tracking user profiles for your users with information such as the following:
- Description
- Goals when using the system
- Work environment
- History/Background
- User characteristics
- ...
Utilizing this information will help you create a user experience customized to the user of the system, and possibly improve the overall effectiveness for that person. He also stressed involving several different people with varying talents to work on this aspect of your solution. Developers, graphic designers, and user experience architects (graphic designer does not equal user experience expert) should all work collaboratively to create the solution.
Finally, he also talked about a form of gathering feedback and testing that he is particulary fond of, RITE (Rapid Iterative Testing & Evaluation). Typically companies spend a bunch of time working to build a solution, and when they are ready to let their customers give it a try, they launch a big deployment and get as many willing participants as possible to put the software through its paces. All the feedback is gathered at once, and fixes are put in place.
He suggests taking those same people and have each one test the system independtly. Deploy the software and only allow one of the people to try out the software. Gather the feedback from that person, and immediately fix any changes that they need. Then take the updated software and give it the next person, until everyone has tested the system. The presenter feels that by using this approach he has been able to find more issues, and get through more changes in less time.
Overall, a very good presentation, and something I look forward to improving on. With the introduction of Tim to our team (think art director background)... I think we are moving in the right direction!