Difference between revisions of "ARK2/UX"

From ARK
Jump to: navigation, search
(User Home Page)
(Map View)
 
(52 intermediate revisions by the same user not shown)
Line 1: Line 1:
 
= UX =
 
= UX =
  
ARK provides a very flexible platform akin to a CMS to allow different clients to configure their site to meet their data recording needs. This flexibility applies to the UX and UI as well as the data schema. ARK2 is a ground-up rewrite to bring ARK into line with modern web technology including a REST API, while also making it easier to configure and maintain.  
+
ARK, the Archaeological Recording Kit, is a web application for recording, analysing, and publishing archaeology data. ARK provides a very flexible platform akin to a CMS to allow different clients to configure their website to meet their data recording needs. This flexibility applies to the UX as well as the data schema.
  
While clients are able to build custom web or app interfaces using whatever technology they prefer, most will choose to use and possibly adapt the default Bootstrap/Twig web interface which needs to be both feature-complete and flexible, albeit at the cost of some efficiency. They are also likely to use variations on the standard 'Site Recording' data schema with 'Sites' or 'Projects' at the top level, as will the hosted ARK-as-a-service, so the default UX should be weighted towards that scenario.
+
ARK 1 is largely custom code that is showing its age and hard to customise. ARK 2 is a ground-up rewrite to bring ARK into line with modern web technology including a REST API, while also making it easier to configure and maintain. ARK 2 will also enable ARK to be offered as a hosted service.
 +
 
 +
While clients will be able to build custom web or app interfaces using whatever technology they prefer, most will choose to use and possibly adapt the default Bootstrap/Twig web interface which needs to be both feature-complete and flexible, albeit at the cost of some efficiency. They are also likely to use variations on the standard 'Site Recording' data schema with 'Sites' or 'Projects' at the top level, as will the hosted ARK-as-a-service, so the default UX should be weighted towards that scenario.
 +
 
 +
Note that 'Site' is a term often used in archaeology to define a geographic area of interest or excavation, to avoid confusion we will try refer to 'An ARK Website' and 'An Archaeological Site' wherever possible.
 +
 
 +
== Data Schema ==
 +
 
 +
The ARK data schema is configurable using the concept of Modules. A Module can be thought of as an Object in the Object-Oriented model, a Resource in the REST model, or a table in the Relational model. A Module has a set of data properties and relationships to other Modules. An instance of a Module is known as an Item. The schema is completely configurable by the website admin, but a number of pre-defined configurations for industry-standard recording schemas are available to use.
 +
 
 +
=== Field Recording ===
 +
 
 +
The primary use for ARK is recording archaeological data in the field, analysing the data in the office, and publishing the data online. It reflects the paper-based field recording systems originally used in Archaeology, being based around Registers and Forms, and is designed to replace part or all of a paper-based system. Field staff are often freelance or on short-term contracts, so the UX needs to be familiar enough for them to adapt to quickly. The UX needs to balance the familiarity of the users with the paper-based systems with the improved workflows that can come from an online system. The UX should also be adaptable to other field data recording scenarios both in archaeology, and also other potential uses such as conservation.
 +
 
 +
[[File:ExampleRegisterSmall.png]]
 +
[[File:ExampleSheetSmall.png]]
 +
 
 +
The main recording system used is called Single Context Recording in which various objects and concepts found on an archaeological site are recorded.
 +
 
 +
* [https://en.wikipedia.org/wiki/Context_(archaeology) Context] - A basic unit of archaeological recording, such as a layer of soil or a wall.
 +
* Photo - A photo that can be linked to the objects seen in the Photo, such as Context, Timber, Find, etc.
 +
* Plan - A drawn plan of an object, usually a Context or Find, which can be linked to those objects.
 +
* Section - A drawn cross-section of contexts
 +
* Sample - Part of a Context saved for later scientific analysis in the laboratory.
 +
* Find - A human made object that is found in a Context, like a pot or a coin.
 +
* Timber - A piece of timber used in a building or other man-made structure.
 +
* Subgroup - A collection of Contexts that make up a minor feature or object.
 +
* Group - A collection of Subgroups that make up a major feature or object.
 +
 
 +
This could be drawn as:
 +
 
 +
[[File:MinoriesSchema.png]]
 +
 
 +
Other archaeological objects can also be added to the model as required.
 +
 
 +
As staff in the field excavate a site, they initially Register the basic details of contexts and objects using phones or tablets, and can then add more details as required. An alternative use model is to record on paper and later copy into the ARK. Staff in the office then process that data, such as putting the Contexts into Subgroups and Groups, before publishing the results. The results are mostly used internally for writing formal reports, but may also attract wider professional or public interest.
 +
 
 +
== User Profiles ==
 +
 
 +
* Anonymous - A member of the general public interested in browsing information about the archaeological site. Primary requirement is rich detail with easy navigation.
 +
* Field Operative - A member of staff recording and editing data in the field. Primary requirement is speed and simplicity of data entry in challenging conditions (protective gloves, rain, mud, etc), often only using a mobile phone.
 +
* Field Supervisor - A member of staff supervising other field staff with supervisor-level site functions. Primary requirement is quickly and easily reviewing and editing data.
 +
* Office Operative - A member of staff in the office processing data. Primary requirement is full-featured but efficient data entry and editing, but also search and navigation.
 +
* Office Supervisor - A member of staff in the office doing higher level data analysis. Primary requirement is powerful search and navigation functions.
 +
* Website Admin - An administrator of the ARK website. Primary requirement is basic admin functions, mainly user admin and vocabularies, but sometimes also schema.
 +
* System Admin - An administrator of the ARK install (Different from Site Admin on multi-site/multi-tenant installs). God.
 +
 
 +
== Configurable Views ==
 +
 
 +
Just as the data schema is completely configurable by a website admin, so too are the views of that data. ARK combines a layout grid with content blocks known as Subforms. Each Subform usually contains a layout of data fields from the schema, but can also contain other elements. Subforms are usually used to group fields that are related, or require similar functionality. Different page views of the same Item can be laid out for different purposes, for example the Field Operatives data entry view may differ from the Office Supervisors data analysis view. Where this differs from standard CRUD forms is in the code functionality that can be embedded in a Subform. A different View of an Item can also offer significantly different functionality for that Item.
 +
 
 +
Item Collection views, such as Table, List, Thumbnail, etc, can also be configured. In ARK 1 the two main variants are currently Register and Search, but ARK 2 will also define a standard List view.
 +
 
 +
The core UX requirement is to define the relationship and navigation between these core generic pages, rather than the physical layout of the Item fields and Subforms. The current model is not integrated or consistent and leads to considerable confusion for users.
  
 
== Generic Pages ==
 
== Generic Pages ==
  
=== Website Home Page ===
+
=== Website Home ===
  
=== User Home Page ===
+
Landing page for a Website. If private ARK then usually login page. If public ARK then usually some project brochure-ware and links to browse site if anonymous access enabled.
 +
 
 +
=== User Home ===
  
 
Landing page for user after logging in, usually some kind of dashboard, but may be User Profile page.
 
Landing page for user after logging in, usually some kind of dashboard, but may be User Profile page.
  
=== Collection View Screen ===
+
=== Collection View ===
  
 
* List Items by Module
 
* List Items by Module
 
* View modes: Text, Table, Thumbnails
 
* View modes: Text, Table, Thumbnails
* Filter Items by properties
+
* Filter Items by properties in view
 
* Select properties to view
 
* Select properties to view
 
* Paging
 
* Paging
Line 23: Line 78:
 
* Integrate Advanced Search? (see below)
 
* Integrate Advanced Search? (see below)
  
=== Item View ===
+
=== Item View / Edit ===
 +
 
 +
* View item details
 +
* Edit Item details
 +
* Subforms (think Drupal Blocks)
 +
* Item navigation
  
 
=== Map View ===
 
=== Map View ===
 +
 +
Spatial data and GIS is core to archaeology, but often in a way that has more in common with CAD than most websites. While some simpler forms of data are recorded, such as find spots or site addresses, most spatial data is a detailed and precise plan of all the contexts in a site drawn to 25mm accuracy. This data needs to be displayed in a way that can help with data analysis, such as how different objects relate to each other, as well as be attractive to a wider public.
 +
 +
OpenLayers is used to display spatial data, both embedded as a subform in an Item View, or on a separate page showing a Collection of Items. Spatial search and interactive editing are also required, but full-blown spatial analysis is done in a proper GIS package that can make calls to the ARK api to obtain the data.
  
 
=== Advanced Search ===
 
=== Advanced Search ===
Line 35: Line 99:
 
* By Module / Type
 
* By Module / Type
 
* By Property
 
* By Property
* By Actor
+
* By Actor / Action / Event
 
* By Period
 
* By Period
 
* By Spatial
 
* By Spatial
 
* Free Text
 
* Free Text
 +
* Save Search Definition
 +
* Choose from saved Search definitions
  
 
== Site Recording Pages ==
 
== Site Recording Pages ==
  
 
=== Register View ===
 
=== Register View ===
 +
 +
Short-form add new Item. List view shows most recently registered Items to reflect the traditional paper register.
 +
 +
=== Site/Project Dashboard ===
 +
 +
Dashboard for a Site/Project
  
 
== User Security ==
 
== User Security ==
  
ARK2 will provide a very flexible User Security system using an RBAC model. Website admins will have a choice of registration and authentication options and the UX/UI should adapt to these as configured.
+
ARK2 will provide a very flexible User Security system using an RBAC model. Website admins will have a choice of registration and authentication options and the UX/UI should adapt to these as configured. Login should work as either a page or a pop-up.
  
* Register
+
* Register (by self or admin)
 
* Login
 
* Login
** Captcha
+
* Optional Captcha
** OAuth2 (Facebook, Google, etc)
+
* Optional OAuth2 (Facebook, Google, etc)
 
* Request password reset
 
* Request password reset
 
* Profile
 
* Profile

Latest revision as of 15:07, 15 December 2016

UX

ARK, the Archaeological Recording Kit, is a web application for recording, analysing, and publishing archaeology data. ARK provides a very flexible platform akin to a CMS to allow different clients to configure their website to meet their data recording needs. This flexibility applies to the UX as well as the data schema.

ARK 1 is largely custom code that is showing its age and hard to customise. ARK 2 is a ground-up rewrite to bring ARK into line with modern web technology including a REST API, while also making it easier to configure and maintain. ARK 2 will also enable ARK to be offered as a hosted service.

While clients will be able to build custom web or app interfaces using whatever technology they prefer, most will choose to use and possibly adapt the default Bootstrap/Twig web interface which needs to be both feature-complete and flexible, albeit at the cost of some efficiency. They are also likely to use variations on the standard 'Site Recording' data schema with 'Sites' or 'Projects' at the top level, as will the hosted ARK-as-a-service, so the default UX should be weighted towards that scenario.

Note that 'Site' is a term often used in archaeology to define a geographic area of interest or excavation, to avoid confusion we will try refer to 'An ARK Website' and 'An Archaeological Site' wherever possible.

Data Schema

The ARK data schema is configurable using the concept of Modules. A Module can be thought of as an Object in the Object-Oriented model, a Resource in the REST model, or a table in the Relational model. A Module has a set of data properties and relationships to other Modules. An instance of a Module is known as an Item. The schema is completely configurable by the website admin, but a number of pre-defined configurations for industry-standard recording schemas are available to use.

Field Recording

The primary use for ARK is recording archaeological data in the field, analysing the data in the office, and publishing the data online. It reflects the paper-based field recording systems originally used in Archaeology, being based around Registers and Forms, and is designed to replace part or all of a paper-based system. Field staff are often freelance or on short-term contracts, so the UX needs to be familiar enough for them to adapt to quickly. The UX needs to balance the familiarity of the users with the paper-based systems with the improved workflows that can come from an online system. The UX should also be adaptable to other field data recording scenarios both in archaeology, and also other potential uses such as conservation.

ExampleRegisterSmall.png ExampleSheetSmall.png

The main recording system used is called Single Context Recording in which various objects and concepts found on an archaeological site are recorded.

  • Context - A basic unit of archaeological recording, such as a layer of soil or a wall.
  • Photo - A photo that can be linked to the objects seen in the Photo, such as Context, Timber, Find, etc.
  • Plan - A drawn plan of an object, usually a Context or Find, which can be linked to those objects.
  • Section - A drawn cross-section of contexts
  • Sample - Part of a Context saved for later scientific analysis in the laboratory.
  • Find - A human made object that is found in a Context, like a pot or a coin.
  • Timber - A piece of timber used in a building or other man-made structure.
  • Subgroup - A collection of Contexts that make up a minor feature or object.
  • Group - A collection of Subgroups that make up a major feature or object.

This could be drawn as:

MinoriesSchema.png

Other archaeological objects can also be added to the model as required.

As staff in the field excavate a site, they initially Register the basic details of contexts and objects using phones or tablets, and can then add more details as required. An alternative use model is to record on paper and later copy into the ARK. Staff in the office then process that data, such as putting the Contexts into Subgroups and Groups, before publishing the results. The results are mostly used internally for writing formal reports, but may also attract wider professional or public interest.

User Profiles

  • Anonymous - A member of the general public interested in browsing information about the archaeological site. Primary requirement is rich detail with easy navigation.
  • Field Operative - A member of staff recording and editing data in the field. Primary requirement is speed and simplicity of data entry in challenging conditions (protective gloves, rain, mud, etc), often only using a mobile phone.
  • Field Supervisor - A member of staff supervising other field staff with supervisor-level site functions. Primary requirement is quickly and easily reviewing and editing data.
  • Office Operative - A member of staff in the office processing data. Primary requirement is full-featured but efficient data entry and editing, but also search and navigation.
  • Office Supervisor - A member of staff in the office doing higher level data analysis. Primary requirement is powerful search and navigation functions.
  • Website Admin - An administrator of the ARK website. Primary requirement is basic admin functions, mainly user admin and vocabularies, but sometimes also schema.
  • System Admin - An administrator of the ARK install (Different from Site Admin on multi-site/multi-tenant installs). God.

Configurable Views

Just as the data schema is completely configurable by a website admin, so too are the views of that data. ARK combines a layout grid with content blocks known as Subforms. Each Subform usually contains a layout of data fields from the schema, but can also contain other elements. Subforms are usually used to group fields that are related, or require similar functionality. Different page views of the same Item can be laid out for different purposes, for example the Field Operatives data entry view may differ from the Office Supervisors data analysis view. Where this differs from standard CRUD forms is in the code functionality that can be embedded in a Subform. A different View of an Item can also offer significantly different functionality for that Item.

Item Collection views, such as Table, List, Thumbnail, etc, can also be configured. In ARK 1 the two main variants are currently Register and Search, but ARK 2 will also define a standard List view.

The core UX requirement is to define the relationship and navigation between these core generic pages, rather than the physical layout of the Item fields and Subforms. The current model is not integrated or consistent and leads to considerable confusion for users.

Generic Pages

Website Home

Landing page for a Website. If private ARK then usually login page. If public ARK then usually some project brochure-ware and links to browse site if anonymous access enabled.

User Home

Landing page for user after logging in, usually some kind of dashboard, but may be User Profile page.

Collection View

  • List Items by Module
  • View modes: Text, Table, Thumbnails
  • Filter Items by properties in view
  • Select properties to view
  • Paging
  • Export
  • Integrate Advanced Search? (see below)

Item View / Edit

  • View item details
  • Edit Item details
  • Subforms (think Drupal Blocks)
  • Item navigation

Map View

Spatial data and GIS is core to archaeology, but often in a way that has more in common with CAD than most websites. While some simpler forms of data are recorded, such as find spots or site addresses, most spatial data is a detailed and precise plan of all the contexts in a site drawn to 25mm accuracy. This data needs to be displayed in a way that can help with data analysis, such as how different objects relate to each other, as well as be attractive to a wider public.

OpenLayers is used to display spatial data, both embedded as a subform in an Item View, or on a separate page showing a Collection of Items. Spatial search and interactive editing are also required, but full-blown spatial analysis is done in a proper GIS package that can make calls to the ARK api to obtain the data.

Advanced Search

Version of Collection View with more advanced search tools, possibly same page with mode switch or hidden panel?

  • Cross-module search
  • Set based queries
  • By Module / Type
  • By Property
  • By Actor / Action / Event
  • By Period
  • By Spatial
  • Free Text
  • Save Search Definition
  • Choose from saved Search definitions

Site Recording Pages

Register View

Short-form add new Item. List view shows most recently registered Items to reflect the traditional paper register.

Site/Project Dashboard

Dashboard for a Site/Project

User Security

ARK2 will provide a very flexible User Security system using an RBAC model. Website admins will have a choice of registration and authentication options and the UX/UI should adapt to these as configured. Login should work as either a page or a pop-up.

  • Register (by self or admin)
  • Login
  • Optional Captcha
  • Optional OAuth2 (Facebook, Google, etc)
  • Request password reset
  • Profile
    • Personal details
    • Contact details
    • Security details

Admin Screens

See Admin Screens. UX required is primarily layout and flow, plus User Admin, Translation and Vocabulary pages.