Skip to main content

Package that converts raw text to scrum user stories

Project description

Scrumit

Description

Scrumit is a utility package that converts raw text to scrum user stories

Requirements

  • Python 3.10+

Installation

pip install scrumit

Usage

import openai
from promptify import OpenAI, Prompter

from scrumit.config import settings
from scrumit.entity.scrumit import Input
from scrumit.paraphraser.backends import ParaphraserOpenAI
from scrumit.recognizer.backends import RecognizerOpenAI
from scrumit.scrumer import Scrumer


def main():
    openai.api_key = settings.openai_api_key
    model = OpenAI(settings.openai_api_key)

    # recognizer
    prompter = Prompter(model)
    recognizer = RecognizerOpenAI(model, prompter)

    # paraphraser
    client = openai.Completion
    paraphraser = ParaphraserOpenAI(client)

    # scrumit
    scrumer = Scrumer(recognizer, paraphraser)
    conversation = Input(
        text="""
            Hey, have you heard about the latest bug fixes in the dating app, MatchMate?
            Oh, yes! They just released an update with some significant bug fixes. What specifically are you interested in?
            Well, I've been experiencing some issues with the matching algorithm. It doesn't seem to be working properly.
            Good news! The latest update addresses that. They've made improvements to the algorithm to ensure better matching accuracy. It should now provide more relevant matches based on your preferences and interests.
            That's great to hear! I was also encountering a problem where the app would crash randomly. Has that been fixed too?
            Absolutely! The developers have identified the cause of those crashes and implemented a fix. You should no longer experience any unexpected app shutdowns. They've also optimized the app's performance overall, making it more stable and responsive.
            That's a relief. Another issue I had was with the chat feature. Sometimes messages would get delayed or not show up at all.
            Yes, they've made significant improvements to the chat functionality. The messaging system has been optimized to ensure faster and more reliable delivery of messages. You should now experience smoother conversations with minimal delays or missing messages.
            Perfect! I've also noticed some minor UI glitches in the app. Are those taken care of too?
            Indeed! The developers have addressed various UI glitches reported by users. They've refined the interface to provide a more polished and visually appealing experience. The app should now look more cohesive and consistent across different devices.
            That's fantastic news! It seems like they've really been listening to user feedback and actively working on improving the app.
            Absolutely, user feedback is crucial, and the developers at MatchMate have been actively engaged with their user community. They've been working diligently to identify and fix any reported issues, ensuring a better overall experience for everyone.
            That's reassuring. I'm looking forward to updating the app and trying out all these bug fixes. Thanks for the information!
            You're welcome! Enjoy the updated MatchMate experience, and I hope you have some amazing connections on the app. Let me know if you have any other questions!
            """,
        domain="software",
    )
    outputs = scrumer.convert(conversation)
    print(outputs)


if __name__ == "__main__":
    main()

Output

Output(stories=[UserStory(task='The matching algorithm should provide more relevant matches based on user preferences and interests.', story='"As a user, I want the matching algorithm to provide more relevant matches based on my preferences and interests so that I get accurate results."'), UserStory(task='The app should no longer experience any unexpected app shutdowns.', story='"As a user I want to be able to use the app without any unexpected app shutdowns so I can have a reliable experience."'), UserStory(task='The messaging system should be optimized to ensure faster and more reliable delivery of messages.', story='Paraphrase: "As a user I want to be able to have a messaging system that is optimized for faster and more reliable delivery of messages so I can communicate efficiently."'), UserStory(task='The interface should be refined to provide a more polished and visually appealing experience.', story='"As a user I want the interface to be refined to provide a more polished and visually appealing experience so I have a better user experience."'), UserStory(task='The developers should actively engage with their user community and identify and fix any reported issues.', story='Scrum Story: "As a user I want the developers to actively engage with the user community and to identify and fix any issues I report so I can continue to have an enjoyable experience using the product."')])

CLI

Sample run

scrumit -s ./conversation.sample -d software -o ./output.sample

Help

scrumit --help

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

scrumit-0.0.3.tar.gz (50.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

scrumit-0.0.3-py3-none-any.whl (42.6 kB view details)

Uploaded Python 3

File details

Details for the file scrumit-0.0.3.tar.gz.

File metadata

  • Download URL: scrumit-0.0.3.tar.gz
  • Upload date:
  • Size: 50.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.10.9

File hashes

Hashes for scrumit-0.0.3.tar.gz
Algorithm Hash digest
SHA256 ca08d2581293f149cdcc8bbb686eb4bcaaf07e8a2af57192d63ec5eccbd6731b
MD5 83df80736839c7e6424a65877eb3bc63
BLAKE2b-256 43183b6a44ba4bff51781c877d2044e7e08da82c39da496a33f2e3055a5f7e1b

See more details on using hashes here.

File details

Details for the file scrumit-0.0.3-py3-none-any.whl.

File metadata

  • Download URL: scrumit-0.0.3-py3-none-any.whl
  • Upload date:
  • Size: 42.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.10.9

File hashes

Hashes for scrumit-0.0.3-py3-none-any.whl
Algorithm Hash digest
SHA256 d9f9259135710489859a9388ab7a1239e61a7545cd45e5a0d01aae75ccc0ece5
MD5 233863768ea562ecf304aaf12a28500c
BLAKE2b-256 47298c27a8035f9a855c0217a848bb987e678f942946a4c95c1ff6cae24ef01d

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page