PART ISoftware Engineering Step-by-Step
- CHAPTER 1: Software Engineering from 20,000 Feet
- CHAPTER 2: Before the Beginning
- CHAPTER 3: The Team
- CHAPTER 4: Project Management
- CHAPTER 5: Requirements Gathering
- CHAPTER 6: High-Level Design
- CHAPTER 7: Low-Level Design
- CHAPTER 8: Security Design
- CHAPTER 9: User Experience Design
- CHAPTER 10: Programming
- CHAPTER 11: Algorithms
- CHAPTER 12: Programming Languages
- CHAPTER 13: Testing
- CHAPTER 14: Deployment
- CHAPTER 15: Metrics
- CHAPTER 16: Maintenance
Software and cathedrals are much the same. First we build them, then we pray.
—Samuel Redwine
In principle, software engineering is a simple two-step process: (1) Write a best-selling program, and then (2) buy expensive toys with the profits. Unfortunately, the first step can be rather difficult. Saying “write a best-selling program” is a bit like telling an author, “Write a best-selling book,” or telling a baseball player “triple to left.” It's a great idea, but knowing the goal doesn't actually help you achieve it.
To produce great software, you need to handle a huge number of complicated tasks, any one of which can fail and sink the entire project. Over the years people have developed a multitude of methodologies and techniques to help keep software projects on track. Some of these, such as the waterfall and V-model approaches, use detailed requirement specifications to exactly define the desired results before development begins. Others, such as Scrum and agile techniques, rely on fast-paced ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access