Skip to content

bivex/symmetrical-funicular-iso25065

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

CIF Go SDK User Documentation

Front Matter

Field Value
Document Title CIF Go SDK User Guide
Version 1.0
Date [Current Date]
Authors CIF SDK Development Team
Copyright © 2025 CIF SDK Contributors. All rights reserved.
Purpose This document provides guidance for software developers on using the CIF Go SDK to create ISO 25065:2019-compliant user requirements specifications.
Scope Covers installation, usage procedures, and examples for the SDK. Does not include internal API implementation details or end-user software guides.
Audience Software developers, technical writers, and project managers with basic Go programming knowledge.
Prerequisites Go 1.21 or later, familiarity with ISO 25065:2019 standards.

Table of Contents:

  1. Introduction
  2. Concept of Operations
  3. Procedures
  4. Information for Uninstallation
  5. Appendices
    • 5.1 Glossary
    • 5.2 Index

Document Quality Notes: This documentation adheres to ISO/IEC/IEEE 26514 for clarity, consistency, and accessibility. Tested for readability on standard screens and with screen readers.

1. Introduction

1.1 Purpose and Scope

The CIF Go SDK enables software developers to create, validate, and manage user requirements specifications compliant with ISO 25065:2019 (Common Industry Format for Usability: User requirements specification). This SDK supports the development of interactive systems by providing tools for specifying user-system interaction requirements and use-related quality requirements.

1.2 Intended Audience and Usage Context

  • Primary Audience: Software engineers and technical writers responsible for user requirements in interactive system development.
  • Usage Context: Use this SDK in development environments for creating CIF-compliant specifications. It is suitable for Agile teams requiring rapid, maintainable documentation.

1.3 Related Documents

  • ISO 25065:2019: Common Industry Format (CIF) for Usability
  • ISO 9241-11: Usability definitions and concepts
  • Go Programming Language Documentation

2. Concept of Operations

2.1 Overview of the CIF Go SDK

The CIF Go SDK is a software library that implements the Common Industry Format (CIF) for usability user requirements. It provides:

  • Data structures for CIF elements (e.g., interactive systems, goals, tasks, requirements).
  • Fluent builder APIs for constructing specifications.
  • Validation against ISO 25065:2019 standards.
  • Serialization in multiple formats (JSON, YAML, CIF text).

2.2 Key Features

  • Complete ISO 25065:2019 compliance.
  • Type-safe Go implementation with error handling.
  • Support for hierarchical goal/task structures.
  • Comprehensive validation and cross-reference checking.

2.3 Operational Assumptions and Limitations

  • Assumes users have Go development environment set up.
  • Limited to CIF specification creation; does not execute or deploy systems.
  • Requires internet access for dependency management.

3. Procedures

3.1 Installation

  1. Ensure Go 1.21 or later is installed.
  2. Run: go get github.com/iso-cif/cif-sdk.
  3. Verify installation: Import the package in a Go file and check for compilation errors.

3.2 Creating a User Requirements Specification

  1. Import the SDK: import cif "github.com/iso-cif/cif-sdk".
  2. Use the SpecificationBuilder:
    spec, err := cif.NewSpecification().
        WithInteractiveSystem(cif.NewInteractiveSystem("id", "name", "type").Build()).
        AddGoal(cif.NewGoal("goal_id", "Goal Name").Build()).
        AddUserRequirement(cif.NewUserSystemInteractionRequirement("req_id").CanInput("data").Build()).
        Build()
    if err != nil { log.Fatal(err) }
  3. Validate: validator := cif.NewValidator(spec); errors := validator.Validate().

3.3 Exporting Specifications

  1. Create a Serializer: serializer := cif.NewSerializer().
  2. Export to JSON: err := serializer.ExportJSON(spec, "file.json").
  3. Export to CIF text: err := serializer.ExportCIF(spec, "file.cif").

3.4 Running Examples

  1. Navigate to the examples/ directory.
  2. Execute: go run immigration_kiosk.go (replaces outdated command).

3.5 Testing the SDK

  1. Run tests: go test -v ./....
  2. Review output for failures.

4. Information for Uninstallation

This SDK is a Go library with no standalone installation. To remove:

  1. Delete the module from your Go project: go mod tidy.
  2. Remove any cached dependencies: go clean -modcache. Note: This section is included per ISO/IEC/IEEE 26514, Clause 7.6, though not directly applicable to library usage.

5. Appendices

5.1 Glossary

  • CIF (Common Industry Format): A standardized framework for usability-related information (ISO 25065).
  • Fluent API: A design pattern allowing method chaining for readable code construction.
  • User-System Interaction Requirements: Specifications for what users can do with a system.
  • Use-Related Quality Requirements: Criteria for effectiveness, efficiency, and satisfaction.

5.2 Index

  • Builders: See Section 3.2
  • Compliance: See Section 1.3
  • Examples: See Section 3.4
  • Installation: See Section 3.1
  • Validation: See Section 3.2

About

ISO 25065:2019: Common Industry Format (CIF) for Usability Go SDK

Topics

Resources

License

Stars

0 stars

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages