| name | informatica-assessment |
| description | Analyze Informatica Power Center workflows/mappings from SnowConvert ETL.* outputs and source XML files. Classifies workflows, scores migration complexity, and produces JSON for the parent assessment multi-report. |
| parent_skill | assessment |
| license | Proprietary. See License-Skills for complete terms |
Informatica Power Center Assessment
SnowConvert AI migrates Informatica Power Center workflows to Snowflake. This skill analyzes workflows and mappings from their source XML and SnowConvert assessment CSV reports to generate detailed migration analysis including workflow classification and complexity assessment.
Rules
-
Use ONLY Provided Scripts
- ONLY use the provided CLI commands:
python -m informatica_assessment_analyzer
- DO NOT create custom scripts to read or manipulate the JSON file
- DO NOT use grep, jq, or other tools to parse the JSON directly
- All JSON interactions MUST go through the provided CLI
-
Quality Over Speed
- Each workflow deserves thorough, individual analysis
- Write specific, detailed analysis for each workflow
- DO NOT create batch analysis regardless of workflow volume
- DO NOT skip analysis steps to save time
-
Follow ONLY Provided Analysis Methods
- Use ONLY the workflow defined in this skill
-
Complete ALL Steps
- Step 4 (AI Summary) is MANDATORY before finishing
- DO NOT skip to report generation without completing all steps
- Every checkpoint in the workflow must be completed
-
Report Generation via Parent Skill ONLY
- The multi-report generator in the parent skill (
../SKILL.md) is the ONLY approved method
- Provide the
--informatica-json parameter pointing to the informatica_assessment_analysis.json file generated by this skill
Workflow
Copy this checklist and track your progress:
Analysis Progress:
- [ ] Step 1: Locate and Validate Input Files
- [ ] Step 2: Generate JSON Analysis
- [ ] Step 3: Analyze Informatica workflows (sub workflow)
- [ ] Step 4: Draft AI summary (HTML AI summary)
Step 1: Locate Input Files (auto-detected)
Do NOT prompt the user for paths. Inputs are resolved automatically from project_dir configured by the parent assessment skill:
| Input | Auto-resolution |
|---|
ETL.Elements.csv | Latest <project_dir>/reports/SnowConvert/ETL.Elements.*.csv |
ETL.Issues.csv | Latest <project_dir>/reports/SnowConvert/ETL.Issues.*.csv |
| Informatica source dir | The --etl-replatform-sources-path recorded by convert (or <project_dir>/source/etl/, falling back to whatever was passed to scai code convert) |
| Output dir | <project_dir>/assessment/informatica/ (create if missing) |
Validation (silent — only surface a problem to the user if validation fails):
- Confirm both
ETL.* CSVs exist. If they don't, the conversion either skipped ETL or didn't include the --etl-replatform-sources-path flag — return to the parent and ask the parent to re-run convert with ETL inputs.
- Confirm the Informatica source directory contains
.xml files (PowerCenter XML exports).
Step 2: Generate JSON Analysis
Run with the auto-detected paths from Step 1:
uv run python -m informatica_assessment_analyzer <ETL.Elements> <ETL.Issues> <OUTPUT> [--source-dir <XML_SOURCE_DIR>]
The --source-dir flag enables CONNECTOR extraction from the Informatica XML, enriching the analysis with data flow edge details.
Step 3: Analyze Informatica Workflows
This step is a sub workflow to analyze workflows individually. After this, continue with step 4.
Important: To analyze workflows, follow the detailed instructions in references/writing_analysis.md. This reference explains:
- What to read from the XML files (MAPPING, TRANSFORMATION, SOURCE, TARGET elements)
- How to classify workflows (with concrete criteria for each category)
- Required analysis format and minimum lengths
- Effort estimation guidelines
Sub-Workflow: Analyze Each Workflow
For each pending workflow:
- Get next pending workflow:
uv run python -m informatica_assessment_analyzer informatica <JSON_PATH> pending
-
Analyze the workflow:
- Read the source XML file for this workflow
- Examine the mappings, transformations, source/target definitions
- Identify custom transformations, SQL overrides, complex expressions
- Classify the workflow based on the criteria in references/writing_analysis.md
-
Write analysis following the mandatory format in references/writing_analysis.md.
Note: Analysis is validated. If format is wrong, the command will fail with guidance.
-
Update the workflow with AI analysis:
uv run python -m informatica_assessment_analyzer informatica <JSON_PATH> update <WORKFLOW_PATH> \
--ai-status DONE \
--classification "Data Transformation"
--ai-analysis "<ANALYSIS_TEXT>"
- Repeat until no pending workflows remain.
Step 4: Draft AI Summary
DO NOT SKIP THIS STEP. The AI Summary is required before finishing the assessment.
Required Actions:
- Run the summary command to get all signals:
uv run python -m informatica_assessment_analyzer informatica <JSON_PATH> summary
-
Read the guide: references/ai_summary_guide.md
-
Generate summary file: ai_informatica_summary.html
- Follow the structured HTML template in the guide
- Include all 7 sections: Workload Overview, Classification Breakdown, Sources & Destinations, Connector Types, Complexity Drivers, Recommended Migration Approach, Key Risks
- Use real data from the summary command output
- Use inline styles (not CSS classes) since this is an embedded HTML snippet
- IMPORTANT: The file must be a fragment only — do NOT include
<!DOCTYPE>, <html>, <head>, <body>, or <h1> tags. The report generator provides the section heading (<h2>AI Summary</h2>) automatically.
-
Register the summary in the JSON:
uv run python -m informatica_assessment_analyzer informatica <JSON_PATH> ai-summary ai_informatica_summary.html
Verification Checklist:
Completion:
Report to user:
- Total workflows analyzed
- JSON file location:
<output_path>/informatica_assessment_analysis.json
- Go to main workflow in parent skill