software paradigm applied