Chapter 9. Building the Complete Feature: Final Project Integration

This chapter can be considered the final project integration phase for the resilient invoice generation solution. To get started, I’ll review the current scale of resilience for the project.

Revisiting the Scale of Resilience

Way back in Chapter 1, you saw the major nonfunctional resilience requirements introduced in “Requirements for Resilience: What Versus How”. The resilience requirements (and the current resilience scores) are shown in Table 9-1.

Table 9-1. The resilience requirements
Resilience requirement Status Resilience score

Capture all errors and exceptions

NOT DONE YET

0

Recoverability

NOT DONE YET

0

Observability

NOT DONE YET

0

Modifiability

NOT DONE YET

0

Modularity

NOT DONE YET

0

Simplicity

NOT DONE YET

0

Coding conventions

NOT DONE YET

0

Reusability

NOT DONE YET

0

Repeatable testing

NOT DONE YET

0

Avoiding common antipatterns

NOT DONE YET

0

Schema evolution

NOT DONE YET

0

One or two of the items in Table 9-1 are at least started (e.g., Simplicity), but for the moment, I’ve marked them all as “NOT DONE YET.”

In the following sections, I’ll be applying the Table 9-1 requirements to the existing code from Chapter 8. The code is currently composed of:

  • The PL/SQL driver/invoker procedure

  • Three PL/SQL helpers

  • Some Java code to call the PL/SQL driver/invoker procedure

I’ll start with the PL/SQL code and then briefly move on to the Java code. As mentioned, the PL/SQL ...

Get Resilient Oracle PL/SQL now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.