Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[UC] Personal website #31

Open
csarven opened this issue Dec 11, 2024 · 2 comments
Open

[UC] Personal website #31

csarven opened this issue Dec 11, 2024 · 2 comments
Labels
triage Issues needing triage usecase LWS Use Case

Comments

@csarven
Copy link
Member

csarven commented Dec 11, 2024

If the entire range of presence or presentation, whether for an individual, community, organization, or project, on a "website" isn't the most common or fundamental use case, then what is?


As a personal website owner,
Uhura wants to use an authoring tool to publish on her website,
so that she can present herself on the web, such as her homepage, CV, blogposts, and other content.

Preconditions:

What conditions must be in place or assumed before this use case can begin?

  • Actors can choose to identify themselves with the authoring tool by using their personal online identities.
  • Storage and hosting are set up for actors to publish and update content.
  • Published and served content are self-describing documents that have a URI allocated and when dereferenced the representation is expected to be compatible and fully usable with lowest common denominators, such as text-based web browsers and web crawlers in order to offer the greatest accessibility for humans and machines. Corollary, does not require the consuming software to fetch additional URLs at run time to assemble the resource.
  • Content is discovered or opened/loaded in various ways, e.g., from the authoring tool, via follow-your-nose type of exploration through an actor's storage, or by the end-user directly inputting the URL into user-agent's address bar.
  • The actors have sufficient awareness and understanding of their personal profile, storage, and use of authoring and publication tools to meet their goals.

Trigger:

What (user or system) event or action initiates this use case?

Uhuru, in her role as the website owner, wants to express herself and creative works with highest degree of control.

Actors:

Describe the primary actor, and any other relevant actors involved in this use case

Primary actor: Uhuru, as a personal website owner, knows how to use an authoring tool to author and publish accessible content. Uhuru is able to identify herself to the authoring tool and use common and advanced functions, including assigning any resource of significance a URI, and provide additional human- and machine-readable content and create typed (semantic) links to specific content (fragments) elsewhere. Uhuru understands the general notion of URI ownership and the social expectations for responsible management for the content she publishes on her website.

Distinction:

What unique challenges or distinguishing factors (like technical issues, user experience needs, workflow integration, etc.) are associated with this use case?

  • Ensuring content is equally accessible to users with disabilities and machine-readable for automated systems.
  • Seamless integration between authoring tools, storage systems, and other applications while adhering to web standards like WCAG, ATAG, and protocols built on top of HTTP.
  • Ensuring published content is self-describing, persistently linked, and future-proof for long-term accessibility and usability.

Scenario:

Describe an ideal or happy-case scenario where this use case would play out as intended.

Uhuru logs into the authoring tool using her personal online identity. She starts to author the homepage by providing the location (e.g., https://example.org/) to the authoring tool, including a short description for the purpose of her personal website, and what to find with hyperlinks to her CV and blogposts. She saves her changes, and publishes the homepage on her website that's publicly readable. She then wants to present her own identity on the homepage, including her full name, photo, contact information, online accounts, links to her friends, and a list of interests. For her own photo, she uses the authoring tool to create a media folder on her website, then uploads the image file. She saves and updates the homepage. Later she opens the location of her CV (/resume) from her authoring tool, and writes the initial content about her experiences, skills, and other achievements. Publishes her CV as she did with the homage. She then realises, she wants to use /cv instead of /resume, so renames the resource. Before calling it a day, she wants to write and publish a blogpost about the work she did on her website today, adds some tags to the article so that they can be found later (see also #7 (comment) ).

Alternative case(s):

What alternative flows or variations should the system handle for this use case?

  • Uhuru drafts content offline using a compatible local editor. The content syncs to the storage and authoring tool once connected online.
  • Uhuru may choose to import content from an external source into the authoring tool.

Error scenario:

What unexpected issues or errors might arise, and how should the system handle them?

  • If the content fails to publish due to network or server issues, the system should notify Uhuru and allow her to retry or save progress for later.
  • If a resource (like an image or link) is broken or the size of the image is too large, the system should notify Uhuru and allow for easy correction of the error.
  • If Uhuru tries to rename or move a resource (e.g., changing /resume to /cv) and the system encounters conflicts with existing links, it should notify Uhuru to double check the URI she wants to allocate to the resource.

Acceptance Criteria:

What conditions or criteria must be met for this use case to be considered successfully handled? What limitations are acceptable?

  • The authoring tool produces content that is accessible (with varying levels of conformance) according to WCAG and ATAG.
  • The output supports minimal client-side dependencies, and no server-side processing of the content generated by the authoring tool.
  • Content is discoverable and persistently accessible via a dereferenceable URI.
  • Collaboration is seamless, with no data loss or unresolvable conflicts during editing.
  • Both human-readable and machine-readable representations are valid, interoperable, and self-describing.

References:

List any relevant resources or examples that could inform this use case, possibly from other domains or solutions.

@csarven csarven added triage Issues needing triage usecase LWS Use Case labels Dec 11, 2024
@hzbarcea
Copy link
Contributor

It is not clear to me @csarven if in this UC your intention was for the web server to be colocated with the data storage, or the web server would be hosted externally?

I would assume the former, and then this story could be generalized for any compute service/agent colocated with the storage. If it's the former, then it's a simple case of data access.

@csarven
Copy link
Member Author

csarven commented Dec 17, 2024

That's all plumbing. I'm not thinking of or hinting at any specific solution. This is a use case, after all.

Start with the "homepage" use case. Does that sound like something within scope? Something that should be supported in this day and age? Something already (roughly) supported by the solutions in the input documents? Perhaps it all sounds obvious, but I can assure you this will be one of those things that will eventually make it clear where the gaps or conflicts are in requirements and implementations. (Ask me how I know... :) Discussion for another time.)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
triage Issues needing triage usecase LWS Use Case
Projects
None yet
Development

No branches or pull requests

2 participants