Principles

PED seeks to advance Java/JavaScript application construction by inspiring software engineers with Pattern First Thinking, enabling project teams with a Pattern Palette, and harmonizing enterprise communication with a Unified Pattern Language.

PED advocates one principle
for inspiring software engineers.

1.  Pattern First Thinking

In the beginning, when writing your first line of test code, keep in mind a simple class pattern.  In the end, your software will be more flexible.

Refactor

Principles 2 through 4 are relevant
for empowering project teams.

2.  Pattern Palette Adoption

Starting with project inception, adopt a coherent Pattern Palette by beginning with a proven pattern language.  Continue to mature your team palette throughout the project life cycle.

Palette

3.  Global Understandability

When authoring a narrative in Java, imagine the potential reading audience. Such a narrative—your code—will be understood beyond a pair programmer and immediate project team.

Understand

4.  JUnit Strategy for Testing 

Ensure pattern implementations are conveniently testable to encourage frequent running of the complete test suite using functionally equivalent services.

JVM Sketch

 

Principles 5 through 8 are relevant
for harmonizing enterprise communication.

5.  Unified Pattern Langauge

When promoting a shared Pattern Language organize patterns into collections. The project teams throughout the enterprise will have a starting point for adopting their own Pattern Palette.

Collection

6.  Adaptable Technology Wrapper

When aligning an API with a Pattern Language consider using adaptable technology wrappers as a way to increase programming consistency regardless of technology choices.

jPED

7.  Reference Application

When promoting application architecture, design or implementation recommendations, establish a reference application as an alternative to comprehensive documentation.

Reference

8.  Instructor Guided Training

When introducing a reference application into the enterprise, consider offering hands-on face-to-face instructor guided training so that participants become comfortable using the reference application as a self-study resource.

Training