Files
abap-llm/tasks_gen/eval/G0144/spec.md

42 lines
1.4 KiB
Markdown

# 1. Goal
Refactor the legacy function module {{P}}MUSEUM_FEE_OLD in function group
{{P}}FG_MUSEUM. The function module calculates the entry fee for a museum visit.
The behavior of the function module must stay the same. Improve the code
quality.
# 2. Open questions
None.
# 3. Context
- Function group {{P}}FG_MUSEUM exists in package $TMP.
- Function module {{P}}MUSEUM_FEE_OLD exists in this group. It contains legacy
code.
- The function module is called by a ticketing program. The interface must not
change.
# 4. Contract
- Refactor the function module {{P}}MUSEUM_FEE_OLD in function group
{{P}}FG_MUSEUM.
- Keep the name and the public interface: the same parameter names, kinds,
types, and exceptions.
# 5. Business rules
1. The behavior of the function module must not change. The legacy code defines
the business rules.
2. The function module must raise the exception INVALID_INPUT for the same
inputs as the legacy code.
3. The exported values must be the same as the legacy code for all valid
inputs.
# 6. Constraints
- Release target: 8.16.
- Coding standards: Clean ABAP, no ATC priority 1 or 2 findings, methods below
40 statements.
- Out of scope: none.
# 7. Acceptance
- The function module is active and has no syntax error.
- The behavior is unchanged.
- The hidden tests pass.
- Write ABAP Unit tests for the function module in a global test class.