概要


事例


API設計書の作成

  1. 第1プロンプト

    # 命令書:
    あなたはウェブエンジニアです。下記の制約条件に従って、必要なWeb APIの設計書を出力してください。
    
    # 制約条件:
    - [要件定義書]に準拠すること
    - [API設計書形式]に合わせたJSONで出力すること
    - GET/POST/PUT/DELETE、それぞれ別のAPIとして扱うこと
    
    # API設計書形式:
    {{
        apis: [
            {{
                name: "ユーザー登録",
                description: "ユーザーを登録する",
                method: "POST",
                path: "/users",
                request: ユーザー情報,
                response: ユーザーID
            }}
        ]    
    }}
    
    # 要件定義書:
    {この例では、病院システムに関する要件提議書を読み込ませた}
    
    #JSONファイル:
    
  2. 第1回答

    {
        "apis": [
            {
                "name": "ユーザー登録",
                "description": "ユーザーを登録する",
                "method": "POST",
                "path": "/users",
                "request": "ユーザー情報",
                "response": "ユーザーID"
            },
            {
                "name": "患者予約機能",
                "description": "患者が病院の診療予約を行う",
                "method": "POST",
                "path": "/appointments",
                "request": "予約情報",
                "response": "予約ID"
            },
            {
                "name": "患者登録機能",
                "description": "新しい患者情報をシステムに登録する",
                "method": "POST",
                "path": "/patients",
                "request": "患者情報",
                "response": "患者ID"
            },
            {
                "name": "患者削除機能",
                "description": "データベースから患者情報を削除する",
                "method": "DELETE",
                "path": "/patients/{patientId}",
                "request": "なし",
                "response": "なし"
            },
            {
                "name": "患者情報編集機能",
                "description": "患者の情報を編集する",
                "method": "PUT",
                "path": "/patients/{patientId}",
                "request": "患者情報",
                "response": "なし"
            },
            {
                "name": "会計情報登録機能",
                "description": "患者の会計情報を登録・管理する",
                "method": "POST",
                "path": "/billing",
                "request": "会計情報",
                "response": "会計ID"
            },
            {
                "name": "会計情報削除機能",
                "description": "予約管理システム内の古い会計情報を削除する",
                "method": "DELETE",
                "path": "/billing/{billingId}",
                "request": "なし",
                "response": "なし"
            },
            {
                "name": "会計情報編集機能",
                "description": "患者の会計情報を編集する",
                "method": "PUT",
                "path": "/billing/{billingId}",
                "request": "会計情報",
                "response": "なし"
            },
            {
                "name": "問診票記入機能",
                "description": "患者が問診票の情報を入力する",
                "method": "POST",
                "path": "/questionnaires",
                "request": "問診票情報",
                "response": "問診票ID"
            },
            {
                "name": "予約確認機能",
                "description": "患者が自分の予約情報を確認する",
                "method": "GET",
                "path": "/appointments",
                "request": "なし",
                "response": "予約情報"
            },
            {
                "name": "診断結果出力機能",
                "description": "診断結果を提供する",
                "method": "GET",
                "path": "/diagnosis",
                "request": "なし",
                "response": "診断結果"
            }
        ]
    }
    

<aside> 💡 ちなみに、プロンプトにおいて {{"key": "value"}} のように {{ }} と2つの中括弧で挟んでいるのは、Pythonコーディングを想定しているためである。変数として扱われないように2つ用意している。

</aside>