Customer Requirements: Everything Programmers Need To Know Before Writing Code is published by Marco Behler on September 09, 2015. This book has 90 pages in English, ISBN-10 n/a, ISBN-13 n/a. PDF, EPUB, MOBI is available for download below.
Feel like strangling your boss or customer for their vague and ever-changing software requirements? You might have that nagging feeling that you don’t exactly grasp what your customer really wants. You might be rushing out your code in headless chicken mode because you underestimated the workload. Or perhaps after everything has been delivered, your rate or your company’s doesn’t even match most elance.com projects, because your estimation and billing were so far off.
Learn how proper work on requirements – not just your technical skills – can rescue your next software project.
Rich in detail and examples, this book is designed to let you learn and implement. Every chapter comes with real-life practice exercises, based on the fictitious new payment start-up Zee Bänk, and plenty of Notepad, Jira, and IntelliJ screenshots. You’ll take away from this book:
- How you get from vague requirements (“we need XYZ now!”) to what exactly you need to implement: your task and all its edge cases.
- What and how to talk about and analyze requirements with your customer, boss, and colleagues.
- Warning triggers when talking with clients or bosses that you are being bullied, how to respond, and how to push back on constant change.
- Strategies for properly estimating software tasks, including building a time-tracking database for solid estimations. Then, how to properly bill based on those estimations and avoid being underpaid (as a freelancer) or killing your department (as a company worker).
- How properly clarified requirements are your foundation for tests; how to write those tests and how they lead to rock-solid code. Plus, suggestions for recording and maintaining requirements (in wikis or JIRA-like systems).
- Strategies to find out what exactly your users want, even if they might not exactly know it themselves.
- What happens if you ignore all that advice and become a headless chicken.
What You Need
The book assumes you are running any operating system (Mac OS X, Linux, Windows). The book is 99% language and editor agnostic. You can use Notepad and any programming language you like. Requirements and code examples are shown with Notepad, Cucumber-JVM, and Intellij IDEA.