Preface
Thank you kindly for picking up Semantic Software Design. Welcome.
This book introduces a new method of software design. It proposes a new way of thinking about how we construct our software. It is primarily focused on large projects, with particular benefit for greenfield software projects or large-scale legacy modernization projects.
A software project is said to fail if it does not meet its budget or timeline or deliver the features promised in a usable way. It is incontrovertible, and well documented, that software projects fail at alarming rates. Over the past 20 years, this situation has grown worse, not better. We must do something different to make our software designs more successful. But what?
My assumption here is that you’re making business application software and services to be sold as products for customers or you’re working at an in-house IT department. This book is not about missile guidance systems or telephony or firmware. It’s not interested in debates about object-oriented versus functional programming, though it could apply for either realm. It’s certainly not interested in some popular framework or another. And for the sake of clarity, my use of “semantic” here traces back to my philosophical training, and as such, it concerns the matter of signs. “Semantic” here refers more to semiology. It is not related or confined to some notion of Tim Berners-Lee’s concept of the Semantic Web, honorable as that work is.
The primary audience is CTOs, CIOs, vice ...