Generative Development Framework
GDF.ai
  • Intro to GDF-FSE
    • Generative AI, Large Language Models, ChatGPT?
    • Knowledge Areas
    • Access a Chat Based LLM
    • Why GDF?
    • Expectations
  • Limitations
  • Prompting
    • Prompt Patterns
    • Prompt Context
    • Prompt Stores
    • Prompt Operators
    • Prompt Chaining
  • Security
    • Protecting Data
    • Protecting Application Security
    • Protecting Intellectual Property
    • Protection Stores
    • AI Security Assessments and Penetration Testing
    • Social Engineering Testing with AI
  • Subject Knowledge Areas
    • Ideation
      • Identifying a Problem Statement
      • Plan and Prioritize Features
      • Develop User Stories
      • Requirement Gathering
      • Ideation Prompting
      • Ideation Template
    • Specification
      • Specifying Languages
      • Specifying Libraries
      • Specifying Project Structures
      • Specify Schemas
      • Specifying Elements
      • Specifying API Specs
    • Generation
      • Generating UI Elements
      • Generating Mock Data
      • Generating Schemas
      • Generating Parsers
      • Generating Databases
      • Generate Functions
      • Generate APIs
      • Generate Diagrams
      • Generating Documentation
    • Transformation
      • Converting Languages
      • Converting Libraries
    • Replacement
      • Replacing Functions
      • Replacing Data Types
    • Integration
      • Connecting UI Components
      • Connecting UI to Backend
      • Connecting Multiple Services Together
      • Connecting Cloud Infrastructure (AWS)
    • Separation
      • Abstraction
      • Model View Controller (MVC)
    • Consolidation
      • Combining UI Elements
      • Deduplicating Code Fragments
    • Templating
      • Layouts
      • Schemas
      • Project Structures
      • Content Management Systems
    • Visualization
      • General Styling
      • Visual Referencing
      • Visual Variations
    • Verification
      • Test Classes
      • Logging and Monitoring
      • Automated Testing
      • Synthetic Monitoring
    • Implementation
      • Infrastructure
      • DevOps / Deployment
    • Optimization
      • General Optimization
      • Performance Monitoring
      • Code Review
  • Guidance
    • Business Process
    • Regulatory Guidance
  • Generative Pipelines
  • Troubleshooting
    • Client Side Troubleshooting
    • Server Side Troubleshooting
    • Troubleshooting with AI
    • Documentation
    • Infrastructure Engineering
  • Terminology
Powered by GitBook
On this page

Was this helpful?

Export as PDF
  1. Subject Knowledge Areas
  2. Ideation

Plan and Prioritize Features

Planning and prioritizing features in given-when-then with generative AI

Once your problem statement and intended outcome is well defined. You'll want to create and prioritize the features that will be included in the bicycle rental application.

This involves breaking down the user stories into smaller tasks and estimating the time and effort required to complete each task. Features should be prioritized based on their importance to the customer and their impact on the overall project.

Test-driven feature development is one the best ways to write and identify features for an application.

Given-When-Then

Given-When-Then is a testing framework that helps to write and organize automated tests by breaking them down into three distinct parts:

  • Given: The setup or precondition for the test.

  • When: The action or event being tested.

  • Then: The expected outcome or result of the test.

This approach helps to create more readable, reusable, and maintainable test cases by making them easier to understand and debug. In the same way this is used to write test cases, we will use it to write the basis of our features.

Example features of a bicycle rental application web app using Given-When-Then:

Feature
Given
When
Then

User Registration

A user is on the registration page

The user enters their details and submits the form

The user should be redirected to the login page

Search Bicycles

A user is on the homepage

The user enters a location and a date range to search for available bicycles

The user should see a list of available bicycles with details such as location, type, and price.

Rent Bicycle

A user has selected a bicycle to rent

The user enters the rental duration and completes the payment process

The user should receive a confirmation email with the rental details and instructions.

Return Bicycle

A user has rented a bicycle

The rental duration has ended, and the user returns the bicycle to the designated location

The user should receive a notification confirming the return and the rental charges should be deducted from their account.

While the above provides a great starting place for the core features of our app, it needs further refinement. To refine these features further, we will turn them into user stories.

PreviousIdentifying a Problem StatementNextDevelop User Stories

Last updated 3 months ago

Was this helpful?