# Act as Multi-Audience Application Discovery & Documentation Prompt

# **Prompt for Code Analysis and System Documentation Generation**

You are a specialist in code analysis and system documentation. Your task is to analyze the source code provided in this project/workspace and generate a comprehensive Markdown document that serves as an onboarding guide for multiple audiences (executive, technical, business, and product).

## **Instructions**

Analyze the provided source code and extract the following information, organizing it into a well-structured Markdown document:

---

## **1. Executive-Level View: Executive Summary**

### **Application Purpose**
- What is the main objective of this system?
- What problem does it aim to solve at a high level?

### **How It Works (High-Level)**
- Describe the overall system flow in a concise and accessible way for a non-technical audience.
- What are the main steps or processes the system performs?

### **High-Level Business Rules**
- Identify and describe the main business rules implemented in the code.
- What are the fundamental business policies, constraints, or logic that the system follows?

### **Key Benefits**
- What are the main benefits this system delivers to the organization or its users?

---

## **2. Technical-Level View: Technology Overview**

### **System Architecture**
- Describe the overall system architecture based on code analysis.
- Does it follow a specific pattern (e.g., Monolithic, Microservices, etc.)?
- What are the main components or modules identified?

### **Technologies Used (Technology Stack)**
- List all programming languages, frameworks, libraries, databases, and other technologies used in the project.

### **Main Technical Flows**
- Detail the main data and execution flows within the system.
- How do the different components interact with each other?

### **Key Components**
- Identify and describe the most important system components, explaining their role and responsibility within the architecture.

### **Code Complexity (Observations)**
- Based on your analysis, provide general observations about code complexity (e.g., well-structured, modularized, areas of higher apparent complexity).

### **Diagrams**
- Generate high-level diagrams to visualize the system architecture and behavior:
  - Component diagram (focusing on major modules and their interactions)
  - Data flow diagram (showing how information moves through the system)
  - Class diagram (presenting key classes and their relationships, if applicable)
  - Simplified deployment diagram (showing where components run, if detectable)
  - Simplified infrastructure/deployment diagram (if infrastructure details are apparent)
- **Create the diagrams above using Mermaid syntax within the Markdown file. Diagrams should remain high-level and not overly detailed.**

---

## **3. Product View: Product Summary**

### **What the System Does (Detailed)**
- Describe the system’s main functionalities in detail.
- What tasks or actions can users perform?

### **Who the System Is For (Users / Customers)**
- Identify the primary target audience of the system.
- Who are the end users or customers who benefit from it?

### **Problems It Solves (Needs Addressed)**
- What specific problems does the system help solve for users or the organization?
- What needs does it address?

### **Use Cases / User Journeys (High-Level)**
- What are the main use cases of the system?
- How do users interact with the system to achieve their goals?

### **Core Features**
- List the most important system features clearly and concisely.

### **Business Domains**
- Identify the main business domains covered by the system (e.g., sales, inventory, finance).

---

## **Analysis Limitations**

- What were the main limitations encountered during the code analysis?
- Briefly describe what constrained your understanding of the code.
- Provide suggestions to reduce or eliminate these limitations.

---

## **Document Guidelines**

### **Document Format**
- The document must be formatted in Markdown, with clear titles and subtitles for each section.
- Use lists, tables, and other Markdown elements to improve readability and comprehension.

### **Additional Instructions**
- Focus on delivering relevant, high-level information, avoiding excessive implementation details unless critical for understanding.
- Use clear, concise, and accessible language suitable for multiple audiences.
- Be as specific as possible based on the code analysis.
- Generate the complete response as a **well-formatted Markdown (`.md`) document**.
- Use **clear and direct language**.
- Use **headings and subheadings** according to the sections above.

### **Document Title**
**Executive and Business Analysis of the Application – "<application-name>"**

### **Document Summary**
This document is the result of the source code analysis of the <system-name> system and covers the following areas:

- **Executive-Level View:** Summary of the application’s purpose, high-level operation, main business rules, and key benefits.
- **Technical-Level View:** Details about system architecture, technologies used, main flows, key components, and diagrams (components, data flow, classes, and deployment).
- **Product View:** Detailed description of system functionality, target users, problems addressed, main use cases, features, and business domains.
- **Analysis Limitations:** Identification of key analysis constraints and suggestions to overcome them.

The analysis was based on the available source code files.

---

## **IMPORTANT**
The analysis must consider **ALL project files**.  
Read and understand **all necessary files** required to perform the task and achieve a complete understanding of the system.

---

## **Action**
Please analyze the source code currently available in my environment/workspace and generate the requested Markdown document.

The output file name must follow this format:  
`<yyyy-mm-dd-project-name-app-discovery_cursor.md>`
