Fujitsu Mainframe Analyzer
Analyze and migrate Fujitsu mainframe systems (FACOM, BS2000/OSD, OSIV, NetCOBOL, PowerCOBOL, Fujitsu JCL, SYMFOWARE) to modern Java/cloud platforms.
Core Capabilities
1. Fujitsu COBOL Analysis
Extract NetCOBOL/PowerCOBOL programs, Fujitsu-specific verbs, proprietary file organizations (SAM/PAM/ISAM), SYMFOWARE embedded SQL, screen handling (ACCEPT/DISPLAY with CRT STATUS).
2. Fujitsu JCL Analysis
Parse JOB statements, STEP definitions, ASSIGN/FILEDEF statements, conditional execution, cataloged procedures, resource allocation.
3. BS2000/OSD System Analysis
Analyze ENTER statements, system commands, file handling (PAM, SAM, ISAM), job variables, SDF processing.
4. SYMFOWARE Database Migration
Extract embedded SQL, schemas, stored procedures, transactions. Migrate to PostgreSQL, Oracle, or SQL Server.
5. Migration to Modern Platforms
Generate Spring Boot microservices, REST APIs, cloud-native apps (AWS, Azure, GCP), containerized deployments (Docker, Kubernetes), CI/CD pipelines.
Workflow
Step 1: Discover Assets
find . -name "*.cbl" -o -name "*.CBL" -o -name "*.cob" # COBOL
find . -name "*.ncb" -o -name "*.NCB" # NetCOBOL
find . -name "*.fjcl" -o -name "*.jcl" # JCL
find . -name "*.cpy" -o -name "*.CPY" # Copybooks
find . -name "*.sdf" -o -name "*.SDF" # SDF files
Step 2: Analyze Structure
Extract divisions, data structures, file definitions, screen definitions, embedded SQL, Fujitsu-specific extensions. Key features:
- File organization: SEQUENTIAL, RELATIVE, INDEXED
- Screen handling: CRT STATUS, screen control
- Database: SYMFOWARE SQL
- Fujitsu verbs: ACCEPT OMITTED, INSPECT extensions
- Error handling: FILE STATUS, DECLARATIVES
Step 3: Map Dependencies
Build graphs: CALL hierarchies, copybook usage, file dependencies (FACOM), database access (SYMFOWARE), JCL sequences, screen definitions.
Step 4: Create Migration Strategy
Document architecture, Fujitsu-specific features, Java/cloud design, data migration, roadmap. Load references/migration-strategy.md for detailed framework.
Fujitsu-Specific Features
NetCOBOL Extensions
- Windowing, GUI support (PowerCOBOL)
- Enhanced ACCEPT/DISPLAY with positioning
- Object-oriented: CLASS definitions
- Extended exception handling
SYMFOWARE Database
- Embedded SQL: SELECT, INSERT, UPDATE, DELETE
- Cursors: DECLARE, OPEN, FETCH, CLOSE
- Transactions: COMMIT, ROLLBACK
- Migration: SYMFOWARE → PostgreSQL (cost), Oracle (enterprise), SQL Server
File Systems
| Type |
Description |
Java Equivalent |
| SAM |
Sequential |
BufferedReader/Writer |
| PAM |
Partitioned |
File directory |
| ISAM |
Indexed |
Database with index |
| GDG |
Versioned |
Timestamp naming |
Quick Patterns
COBOL → Java Spring Boot
Load references/migration-patterns.md for detailed examples. Quick overview:
Fujitsu COBOL:
SELECT EMPFILE ASSIGN TO "EMPDATA"
ORGANIZATION IS INDEXED
ACCESS MODE IS RANDOM
RECORD KEY IS EMP-ID
Java JPA:
@Entity
@Table(name = "employees")
public class Employee {
@Id
private Integer empId;
private String empName;
private BigDecimal empSalary;
}
JCL → Shell + Kubernetes
Fujitsu JCL:
//STEP010 EXEC PGM=VALIDATE
//STEP020 EXEC PGM=PROCESS,COND=(0,EQ,STEP010)
Shell:
./validate && ./process
Load references/migration-patterns.md for Kubernetes CronJob examples.
Data Type Mappings
Load references/data-mappings.md for comprehensive tables. Critical mappings:
| Fujitsu COBOL |
Java |
Notes |
PIC 9(n) |
int, long, BigInteger |
Size dependent |
PIC S9(n)V9(m) |
BigDecimal |
ALWAYS for decimals |
PIC X(n) |
String |
Alphanumeric |
COMP-3 |
BigDecimal |
NEVER float/double |
OCCURS n |
List<T> |
Prefer List over array |
| SYMFOWARE |
PostgreSQL |
CHAR(n) |
CHAR(n) |
VARCHAR(n) |
VARCHAR(n) |
DECIMAL(p,s) |
NUMERIC(p,s) |
TIMESTAMP |
TIMESTAMP WITH TIME ZONE |
BLOB |
BYTEA |
CLOB |
TEXT |
Migration Strategies
Strangler Fig Pattern (Recommended)
Gradually replace functionality. Lower risk, learn and adjust. Load references/migration-strategy.md for detailed steps.
Big Bang
Complete rewrite, single cutover. Higher risk, clean architecture. For smaller systems.
Hybrid
Core services modernized first, periphery later. Balanced risk/reward.
Output Requirements
Analysis Report Structure
- Executive Summary - Overview, business impact, recommendation
- Current State - Inventory, architecture, technology, dependencies
- Fujitsu Features - NetCOBOL/PowerCOBOL, SYMFOWARE, file systems, screens, JCL
- Target Design - Architecture, tech stack, microservices, data model, APIs
- Migration Plan - Approach, timeline, resources, risks, costs
- Technical Appendix - Code samples, mappings, utilities, testing
Load references/migration-strategy.md for complete frameworks and templates.
Critical Best Practices
- ALWAYS use BigDecimal for COMP-3 and decimals (NEVER float/double)
- Preserve business logic - understand before changing
- Test with production data - validate conversions
- Document Fujitsu extensions - proprietary features need special handling
- Plan parallel run - compare outputs before cutover
- Automate testing - regression suite for validation
- Monitor everything - logging, metrics, alerts
- Security first - authentication, authorization, encryption
Common Challenges & Solutions
Fujitsu-Specific Features → Custom adapters, equivalent libraries, re-implementation
Screen Handling → User requirements gathering, modern UX design
File Processing → ETL tools, Spring Batch
Performance → Caching (Redis), async processing, DB optimization
Transactions → Spring @Transactional, Saga pattern
Reference Files
When detailed information needed:
references/migration-patterns.md - Complete code examples for all migration patterns
references/data-mappings.md - Comprehensive type mappings, REDEFINES, dates, best practices
references/migration-strategy.md - Full framework: assessment, design, testing, cutover, costs
Load these files for in-depth guidance on specific topics.
1---2name: fujitsu-mainframe3description: Analyzes and assists with Fujitsu mainframe systems including FACOM, PRIMERGY, BS2000/OSD, OSIV/MSP, OSIV/XSP, NetCOBOL, PowerCOBOL, and Fujitsu JCL. Extracts business logic from Fujitsu COBOL programs, analyzes Fujitsu JCL jobs, migrates Fujitsu mainframe applications to modern platforms (Java, cloud, containers), and creates migration strategies. Use when working with Fujitsu mainframe migration, FACOM systems, BS2000, OSIV platforms, NetCOBOL, PowerCOBOL, Fujitsu-specific COBOL extensions, Fujitsu JCL, or when users mention Fujitsu mainframe modernization, analyzing Fujitsu COBOL/JCL, SYMFOWARE database, or planning migration from Fujitsu legacy systems.4---5
6# Fujitsu Mainframe Analyzer
7
8Analyze and migrate Fujitsu mainframe systems (FACOM, BS2000/OSD, OSIV, NetCOBOL, PowerCOBOL, Fujitsu JCL, SYMFOWARE) to modern Java/cloud platforms.
9
10## Core Capabilities
11
12## 1. Fujitsu COBOL Analysis
13
14Extract NetCOBOL/PowerCOBOL programs, Fujitsu-specific verbs, proprietary file organizations (SAM/PAM/ISAM), SYMFOWARE embedded SQL, screen handling (ACCEPT/DISPLAY with CRT STATUS).
15
16### 2. Fujitsu JCL Analysis
17
18Parse JOB statements, STEP definitions, ASSIGN/FILEDEF statements, conditional execution, cataloged procedures, resource allocation.
19
20### 3. BS2000/OSD System Analysis
21
22Analyze ENTER statements, system commands, file handling (PAM, SAM, ISAM), job variables, SDF processing.
23
24### 4. SYMFOWARE Database Migration
25
26Extract embedded SQL, schemas, stored procedures, transactions. Migrate to PostgreSQL, Oracle, or SQL Server.
27
28### 5. Migration to Modern Platforms
29
30Generate Spring Boot microservices, REST APIs, cloud-native apps (AWS, Azure, GCP), containerized deployments (Docker, Kubernetes), CI/CD pipelines.
31
32## Workflow
33
34### Step 1: Discover Assets
35
36```bash
37find . -name "*.cbl" -o -name "*.CBL" -o -name "*.cob" # COBOL
38find . -name "*.ncb" -o -name "*.NCB" # NetCOBOL
39find . -name "*.fjcl" -o -name "*.jcl" # JCL
40find . -name "*.cpy" -o -name "*.CPY" # Copybooks
41find . -name "*.sdf" -o -name "*.SDF" # SDF files
42```
43
44### Step 2: Analyze Structure
45
46Extract divisions, data structures, file definitions, screen definitions, embedded SQL, Fujitsu-specific extensions. Key features:
47
48- File organization: SEQUENTIAL, RELATIVE, INDEXED
49- Screen handling: CRT STATUS, screen control
50- Database: SYMFOWARE SQL
51- Fujitsu verbs: ACCEPT OMITTED, INSPECT extensions
52- Error handling: FILE STATUS, DECLARATIVES
53
54### Step 3: Map Dependencies
55
56Build graphs: CALL hierarchies, copybook usage, file dependencies (FACOM), database access (SYMFOWARE), JCL sequences, screen definitions.
57
58### Step 4: Create Migration Strategy
59
60Document architecture, Fujitsu-specific features, Java/cloud design, data migration, roadmap. **Load `references/migration-strategy.md` for detailed framework.**
61
62## Fujitsu-Specific Features
63
64### NetCOBOL Extensions
65
66- Windowing, GUI support (PowerCOBOL)
67- Enhanced ACCEPT/DISPLAY with positioning
68- Object-oriented: CLASS definitions
69- Extended exception handling
70
71### SYMFOWARE Database
72
73- Embedded SQL: SELECT, INSERT, UPDATE, DELETE
74- Cursors: DECLARE, OPEN, FETCH, CLOSE
75- Transactions: COMMIT, ROLLBACK
76- Migration: SYMFOWARE → PostgreSQL (cost), Oracle (enterprise), SQL Server
77
78### File Systems
79
80| Type | Description | Java Equivalent |
81| ------ | ------------- |-----------------|
82| SAM | Sequential | `BufferedReader`/`Writer` |
83| PAM | Partitioned | File directory |
84| ISAM | Indexed | Database with index |
85| GDG | Versioned | Timestamp naming |
86
87## Quick Patterns
88
89### COBOL → Java Spring Boot
90
91**Load `references/migration-patterns.md` for detailed examples.** Quick overview:
92
93**Fujitsu COBOL:**
94
95```cobol
96SELECT EMPFILE ASSIGN TO "EMPDATA"
97 ORGANIZATION IS INDEXED
98 ACCESS MODE IS RANDOM
99 RECORD KEY IS EMP-ID
100```
101
102**Java JPA:**
103
104```java
105@Entity
106@Table(name = "employees")
107public class Employee {
108 @Id
109 private Integer empId;
110 private String empName;
111 private BigDecimal empSalary;
112}
113```
114
115### JCL → Shell + Kubernetes
116
117**Fujitsu JCL:**
118
119```jcl
120//STEP010 EXEC PGM=VALIDATE
121//STEP020 EXEC PGM=PROCESS,COND=(0,EQ,STEP010)
122```
123
124**Shell:**
125
126```bash
127./validate && ./process
128```
129
130**Load `references/migration-patterns.md` for Kubernetes CronJob examples.**
131
132## Data Type Mappings
133
134**Load `references/data-mappings.md` for comprehensive tables.** Critical mappings:
135
136| Fujitsu COBOL | Java | Notes |
137| --------------- | ------ |-------|
138| `PIC 9(n)` | `int`, `long`, `BigInteger` | Size dependent |
139| `PIC S9(n)V9(m)` | `BigDecimal` | **ALWAYS** for decimals |
140| `PIC X(n)` | `String` | Alphanumeric |
141| `COMP-3` | `BigDecimal` | **NEVER** float/double |
142| `OCCURS n` | `List<T>` | Prefer List over array |
143
144| SYMFOWARE | PostgreSQL |
145| ----------- | ------------ |
146| `CHAR(n)` | `CHAR(n)` |
147| `VARCHAR(n)` | `VARCHAR(n)` |
148| `DECIMAL(p,s)` | `NUMERIC(p,s)` |
149| `TIMESTAMP` | `TIMESTAMP WITH TIME ZONE` |
150| `BLOB` | `BYTEA` |
151| `CLOB` | `TEXT` |
152
153## Migration Strategies
154
155### Strangler Fig Pattern (Recommended)
156
157Gradually replace functionality. Lower risk, learn and adjust. **Load `references/migration-strategy.md` for detailed steps.**
158
159### Big Bang
160
161Complete rewrite, single cutover. Higher risk, clean architecture. For smaller systems.
162
163### Hybrid
164
165Core services modernized first, periphery later. Balanced risk/reward.
166
167## Output Requirements
168
169### Analysis Report Structure
170
1711. **Executive Summary** - Overview, business impact, recommendation
1722. **Current State** - Inventory, architecture, technology, dependencies
1733. **Fujitsu Features** - NetCOBOL/PowerCOBOL, SYMFOWARE, file systems, screens, JCL
1744. **Target Design** - Architecture, tech stack, microservices, data model, APIs
1755. **Migration Plan** - Approach, timeline, resources, risks, costs
1766. **Technical Appendix** - Code samples, mappings, utilities, testing
177
178**Load `references/migration-strategy.md` for complete frameworks and templates.**
179
180## Critical Best Practices
181
1821. **ALWAYS use BigDecimal** for COMP-3 and decimals (NEVER float/double)
1832. **Preserve business logic** - understand before changing
1843. **Test with production data** - validate conversions
1854. **Document Fujitsu extensions** - proprietary features need special handling
1865. **Plan parallel run** - compare outputs before cutover
1876. **Automate testing** - regression suite for validation
1887. **Monitor everything** - logging, metrics, alerts
1898. **Security first** - authentication, authorization, encryption
190
191## Common Challenges & Solutions
192
193**Fujitsu-Specific Features** → Custom adapters, equivalent libraries, re-implementation
194**Screen Handling** → User requirements gathering, modern UX design
195**File Processing** → ETL tools, Spring Batch
196**Performance** → Caching (Redis), async processing, DB optimization
197**Transactions** → Spring @Transactional, Saga pattern
198
199## Reference Files
200
201When detailed information needed:
202
203- **`references/migration-patterns.md`** - Complete code examples for all migration patterns
204- **`references/data-mappings.md`** - Comprehensive type mappings, REDEFINES, dates, best practices
205- **`references/migration-strategy.md`** - Full framework: assessment, design, testing, cutover, costs
206
207Load these files for in-depth guidance on specific topics.