Friday, August 26, 2011

User-centered design


User-centered design is a design philosophy and a process in which the needs, wants, and limitations of the end user of an interface or document are given extensive attention at each stage of the design process. User-centered design can be characterized as a multi-stage problem solving process that not only requires designers to analyze and foresee how users are likely to use an interface, but to test the validity of their assumptions with regards to user behaviour in real world tests with actual users. Such testing is necessary as it is often very difficult for the designers of an interface to understand intuitively what a first-time user of their design experiences, and what each user's learning curve may look like.
The chief difference from other interface design philosophies is that user-centered design tries to optimize the user interface around how people can, want, or need to work, rather than forcing the users to change how they work to accommodate the system or function.


User Centered Design 
 
User-centered design (UCD) is a design approach that grounds the process in information about the people who will use the product. UCD processes focus on users through the planning, design and development of a product. It describes user centred design as a multi-disciplinary activity, which incorporates human factors knowledge and techniques with the objective of enhancing effectiveness and productivity eventually.
At Texnovate we follow an international standard that is the basis for many UCD methodologies. This standard (ISO 13407: Human-centred design process) defines a general process for including human-centered activities throughout a development life-cycle.
In this model, once the need to use a human centered design process has been identified, four activities form the main cycle of work:
  1. Specify the context of use
    Identify the people who will use the product, what they will use it for, and under what conditions they will use it.
  2. Specify requirements
    identify any business requirements or user goals that must be met for the product to be successful.
  3. Create design solutions
    this part of the process may be done in stages, building from a rough concept to a complete design.
  4. Evaluate designs
    The most important part of this process is that evaluation - ideally through usability testing with actual users - is as integral as quality testing is to good software development.
The Texnovate UCD Methodology
Our methodology involves iterating until the objectives are satisfied.
The sequence in which the following activities are performed and the level of effort and detail that is appropriate varies depending on the design environment and the stage of the design process.
User Centered Design
Analysis Phase
  • Meet with key stakeholders to set the product vision
  • Include usability tasks in the project plan
  • Assemble a multidisciplinary team to ensure complete expertise
  • Develop usability goals and objectives
  • Look at competitive products  (Product -feature research & product benchmarking)
  • Create user profiles
  • Develop a task analysis
  • Document user scenarios
  • Document user performance requirements
Design Phase
  • Begin to brainstorm design concepts and metaphors
  • Develop the information architecture
  • Develop screen flow and navigation model
  • Do walkthroughs of design concepts
  • Visual Design
  • Create low-fidelity prototypes
  • Conduct usability testing on low-fidelity prototypes
  • Create high-fidelity detailed design
  • Do usability testing (1st level)
  • Document standards and guidelines
  • Create a design specification
Implementation Phase
  • Continuous heuristic evaluations
  • Work closely with delivery team as design is implemented
  • Conduct usability testing (2nd Level)
Deployment Phase
  • Use surveys to get user feedback
  • Check objectives using usability testing

Usability engineering


Usability engineering is a subset of human factors that is specific to computer science and is concerned with the question of how to design software that is easy to use. It is closely related to the field of human-computer interaction and industrial design. The term "usability engineering" (UE) (in contrast to other names of the discipline, like interaction design or user experience design) tends to describe a pragmatic approach to user interface design which emphasizes empirical methods and operational definitions of user requirements for tools. Extending as far as International Organisation for Standardisation-approved definitions usability is considered a context-dependent agreement of the effectiveness, efficiency and satisfaction with which specific users should be able to perform tasks. Advocates of this approach engage in task analysis, then prototype interface designs and conduct usability tests. On the basis of such tests, the technology is (ideally) re-designed or (occasionally) the operational targets for user performance are revised.

Usability Engineering, like all forms of engineering, needs to be based on a solid foundation of requirements.Usability Engineering needs to take into account the different usability requirements of different groups of users, different tasks, different content chunks, and different existing tools. The inter-connectedness of these elements is illustrated in Figure 1.

Figure 1. Inputs into the Development of a successful computer application

 Usability Engineering, like all forms of engineering, involves applying specialized processes throughout a systems development life cycle. Usability engineering needs to be highly iterative, as illustrated in Figure 2.

Figure 2 Iteration within and between usability engineering life cycle stages

Semantic Web


Semantic Web is an evolving extension of the World Wide Web in which web content can be expressed not only in natural language, but also in a form that can be understood, interpreted and used by software agents, thus permitting them to find, share and integrate information more easily.It derives from W3C director Tim Berners-Lee's vision of the Web as a universal medium for data, information, and knowledge exchange.
At its core, the Semantic Web comprises a philosophy, a set of design principles, collaborative working groups, and a variety of enabling technologies. Some elements of the Semantic Web are expressed as prospective future possibilities that have yet to be implemented or realized. Other elements of the Semantic Web are expressed in formal specifications.Some of these include Resource Description Framework (RDF), a variety of data interchange formats (e.g. RDF/XML, N3, Turtle, and notations such as RDF Schema (RDFS) and the Web Ontology Language (OWL). All of which are intended to formally describe concepts, terms, and relationships within a given problem domain.

Structure of  Web 1.0, Web 2.0, Semantic Web







Today we here more about Semantic Web or Web 3.0. But most of my friends are not able to grab what is semantic web or what's the specialty of web 3. Semantics is the study of meaning. So Semantic Web means a Web with meaning, got confused?

In Web 1 the scope of web pages are to just give out the information to the viewers as we see in TVs. But in Web 2.0 Web Pages become dynamic in behavior, they provide information and also accepts datse from the viewers and produce results based on those data. The current version of web we are using is Web 2.0. In web 2 the search engines use the keywords in the means of keywords or tags, but not by the meaning.

Web 3.0 provides a better efficient searching of the web using the semantics of the content in the pages. that means the search engines work not with the keywords we use to search, but with the meaning of the search query we gave. So the main and most important feature of Web 3.0 is Semantic Web.  It will be clearer if you see the example below.

Imagine I am going to Texas, and I want to know about the hotels, tourists spots etc there. In the persent condition if I search the term 'I am going to Texas', I get the results page showing the websites containing the keywords I searched, but not useful for me. But in Semantic Web the search engine understands the semantics, that is the meaning of the search query and gice results based on the semantics of the query. 

But some scientist thinks that implementing a semantic web is not possible as the semantic web need huge engineering work. But as always do there are some who thinks anothing is possible if there is a will, let's wish to make Semantic Web a reality.

*Documents have taken from Rocking team and Wikipedia.