How to Build Enterprise Software
“Efficient Enterprise Programming”
Chapter I: Introduction
No field suffers more from redundancy and re-invention than software development.
The goal of this book is to provide a software developer with a paradigm to eliminate as much risk as possible from developing new software for the enterprise. In this book, we attempt to outline techniques that can make some of the most time-intensive and error-prone parts of software trivial and easy.
Each technique is explained with (a) a discussion of the issue it addresses, (b) a theoretical description of the technique, © a recipe for implementing the technique.
Some of the techniques in this book are new and developed by the authors. Others are well-known and humbly described based on our experience.
The structure of this book will be:
Chapter II: Measuring programming techniques
One standard is that programmers, when they adopt these techniques, rarely ever go back.
Intent.
You’re writing software for someone else, possibly another developer, possibly a future you.
Conciseness.
Chapter III: Languages - necessary features of a language for efficient enterprise programming.
Chapter IV: Programming the data layer of enterprise applications
- dbentity
Chapter V: Testing
A. Unit Regression Testing: Build a growing library of regression tests.
B. Funcational Testing: Embrace functional testing tools
- Selenium
Chapter VII: User Interfaces
- Model View Controllers
- Templating
Chapter VI: Specification-driven programming
- Forms
- Reports
Chapter VII: Data Manipulation
- Transforms - a higher level language
Traditionally most programs spend most of their time manipulating objects, arrays, and dictionaries. Here, I describe a technique to eliminate most of that.
Chapter VIII: Programming with ledgers
- The core ideas behind ledger-based programming
- Types of ledgers - operational and double-entry