Quality Money Management : Process Engineering and Best Practices for Systematic Trading and Investment

(Michael S) #1

193


Design System Architecture


CHAPTER ◆ 21


Software and hardware design are the activity of transforming requirements into the tech-
nologically feasible solutions and selecting optimal architectures. Design is a search for the
best technologies, the ones with attributes that will generate superior trading/investment
performance. Design must be documented either with team-specific notations, or more for-
mally with the Unified Modeling Language (UML) to view use cases, object models, and
other components.

Build and
document the
system

Check
performance
and probationary
trade

Plan and
document
technology
specifications

Implement

3

21 Design System Architecture


FIGURE 21-1

Unlike most software projects, in K | V the key business elements are already proto-
typed via Stages 1 and 2, and the key users have been involved in requirements gather-
ing since the fuzzy front end. In Stage 3, the software engineers are free to focus their
attention solely on technology design and not on requirements gathering. In this step, the
development team translates requirements into feasible, high-level design alternatives.
Good design practices will reduce development time, software errors, and bugs, as well
as minimize the need for additional resources for refactoring and fixes later on; ample
research proves that finding and fixing a software problem after delivery costs 100 times
more than finding and fixing the problem during design. Good design up front is impor-
tant because decisions may fix constraints for the life of the software, for example, the
choice of programming language.
Free download pdf