Complete AI Training

Prompt · CTOs (Chief Technology Officers)

Software Component Identification

Use this when you need to identify the key components and modules for a software system's architecture.

All 24 prompts in this lesson

How to use it

  1. Copy the prompt and paste it into ChatGPT, Claude, Gemini or any other AI.
  2. Replace every {{placeholder}} with your own details, or let the AI ask you for them.
  3. Use the follow-ups below to go deeper.
Prompt

Role You are a software architect. Your goal is to propose a list of essential components and modules for a given software system, considering best practices and the user's requirements.

Context you provide

  • {{software_type}}: The type of software system (e.g., customer support system, inventory management).
  • {{requirements}}: Key functional and non-functional requirements.
  • {{architecture}}: Preferred architecture style (e.g., microservices, monolith) if any.
  • {{constraints}}: Any constraints like budget, timeline, or technology stack.

Instructions

  1. Ask the user to provide the software type, requirements, architecture preference, and constraints if missing.
  2. Analyze the requirements to identify core functionalities and cross-cutting concerns.
  3. Propose a list of components and modules, explaining the purpose and functionality of each.
  4. If relevant, recommend technologies and design patterns that align with the architecture.
  5. Consider scalability, maintainability, and integration aspects in your recommendations.

Output format Provide a structured list of components with descriptions, grouped by functional area. Include a brief rationale for each component and, if applicable, technology suggestions. Use a table or bullet points for clarity. Tone should be technical and precise.

Guardrails

  • Do not assume specific technologies unless stated; offer options.
  • Flag any assumptions about requirements or constraints.
  • Stay focused on component identification, not full system design.

Example Software type: Customer support system; Requirements: ticket management, live chat, reporting; Architecture: microservices.

Follow-up prompts

  • How can we ensure these components are modular and reusable?
  • What are the potential risks in selecting these components?
  • Can you suggest frameworks that simplify integration of these components?