pdf_signature/docs/FRs.md

51 lines
2.9 KiB
Markdown

# Functional Requirements
## user stories
The following user stories may not use formal terminology as [meta-arch.md](./meta-arch.md) and use cases(`test/*.feature`), but use oral descriptions.
* name: [PDF browser](../test/features/pdf_browser.feature)
* role: user
* functionality: view and navigate PDF documents
* benefit: select page to add signature
* name: [load signature](../test/features/load_signature.feature)
* role: user
* functionality: load a signature asset file and create a signature card
* benefit: easily add signature to PDF
* name: [geometrically adjust signature picture](../test/features/geometrically_adjust_signature_picture.feature)
* role: user
* functionality: adjust the scale, rotation and position of the signature placement on the PDF page
* benefit: ensure the signature fits well on the PDF page
* name: [graphically adjust signature picture](../test/features/graphically_adjust_signature_picture.feature)
* role: user
* functionality: background removal, contrast adjustment... to enhance the appearance of the signature asset within the signature card
* benefit: easily improve the appearance of the signature on the PDF without additional software.
* name: [draw signature](../test/features/draw_signature.feature)
* role: user
* functionality: draw a signature asset using mouse or touch input
* benefit: create a custom signature directly on the PDF if no pre-made signature is available.
* name: [save signed PDF](../test/features/save_signed_pdf.feature)
* role: user
* functionality: save/export the signed PDF document
* benefit: easily keep a copy of the signed document for records.
* name: [preferences for app](../test/features/app_preferences.feature)
* role: user
* functionality: configure app preferences such as `language`, `theme`, `theme-color`.
* benefit: customize the app experience to better fit user needs
* name: [remember preferences](../test/features/remember_preferences.feature)
* role: user
* functionality: remember user preferences for future sessions
* benefit: provide a consistent and personalized experience
* name: [internationalizing](../test/features/internationalizing.feature)
* role: user
* functionality: app provide localization support
* benefit: improve accessibility and usability for non-English speakers
* name: [support multiple signatures](../test/features/support_multiple_signatures.feature)
* role: user
* functionality: the ability to sign multiple locations within a PDF document
* benefit: documents requiring multiple signatures can be signed simultaneously
* name: [support multiple signature pictures](../test/features/support_multiple_signature_pictures.feature)
* role: user
* functionality: the ability to use different signature pictures for different signing locations
* benefit: close to real-world signing scenarios where every signature is not the same