Designing the Requirements
Chris Britton
Designing the Requirements
Chris Britton
- Producent: Addison Wesley Publishing Company
- Rok produkcji: 2015
- ISBN: 9780134021218
- Ilość stron: 400
- Oprawa: Miękka
Niedostępna
Opis: Designing the Requirements - Chris Britton
Too many software applications don't do what's needed or they do it clumsily, frustrating their users and owners. The core problem: poorly conceived and poorly crafted requirements. In Designing the Requirements, Chris Britton explains why it's not enough to simply "gather" requirements-you need to design them. Britton offers powerful techniques for understanding stakeholders' concerns and working with stakeholders to get the requirements right. Using Britton's context-driven approach to requirements design, you can detect inconsistencies, incompleteness, poor usability, and misalignment with business goals upstream-long before developers start coding. You can also design outward-looking applications and services that will integrate more effectively in a coherent IT architecture. First, Britton explains what requirements design really means and presents a hierarchy of designs that move step by step from requirements through implementation. Next, he demonstrates how to build on requirements processes you already use and how to overcome their serious limitations in large-scale development. Then, he walks you through designing your application's relationship with the business, users, data, and other software to ensure superior usability, security, and maximum scalability and resilience. Whether you're a software designer, architect, project manager, or programmer, Designing the Requirements will help you design software that works-for users, IT, and the entire business. Coverage includes * Designing the entire business solution, not just its software component * Using engineering-style design analysis to find flaws before implementation * Designing services, and splitting large development efforts into smaller, more manageable projects * Planning logical user interfaces that lead to superior user experiences * Designing databases and data access to reflect the meaning of your data * Building application frameworks that simplify life for programmers and project managers * Setting reasonable and achievable goals for performance, availability, and security * Designing for security at all levels, from strategy to code * Identifying new opportunities created by context-driven designPreface xiii Acknowledgments xxi About the Author xxiii Chapter 1: Introduction to Context-Driven Design 1 Designing Requirements 2 What Is Design? 9 Making IT Application Development More of an Engineering Discipline 19 Taking IT Architecture into Account 20 Concluding Remarks 21 Chapter 2: A Hierarchy of Designs 23 Justifying the Hierarchy of Designs 23 Context Design 28 Integration Design 35 Technical Design 41 User Interface Design 44 Database Design 46 Implementation 47 Is It Really Engineering? 48 Concluding Remarks 51 Chapter 3: Reusing Existing Methods and Practices 53 Agile 54 Upside-Down Design 60 Use Cases 62 The Problem with Estimating Cost 68 Why Is BDUF Big? 72 Iterations 74 Quality 75 Testing and Inspection 76 Using Existing Practices in Context-Driven Design 78 Learning Organizations 80 Concluding Remarks 80 Chapter 4: The Problem of Large Applications 83 The Dimensions of Size 84 Problems with Large Projects 88 Can Large Projects Be Avoided? 100 Concluding Remarks 103 Chapter 5: The Relationship with the Business 105 Understanding Business Processes 106 When It's Not a Process 112 The Need for a Wider View 115 Applying the Business Strategy to Application Development 118 Analysis 123 Concluding Remarks 128 Chapter 6: The Relationship with the Users 129 Adding the Detail 129 Who Are the Users? 141 Analyzing the Context Design 151 Reviewing the Context Design 156 Concluding Remarks 158 Chapter 7: The Relationship to Other IT Projects 159 Integration Design 161 Services Interface Design 170 Existing Applications 178 Looking Back at the Design Process 186 Concluding Remarks 188 Chapter 8: User Interface Design and Ease of Use 189 Logical User Interfaces 191 From Tasks to Clicks 194 Ease of Use 199 Transaction and Task Integrity 208 The User Interface Design and the Other Detailed Designs 212 Concluding Remarks 212 Chapter 9: Database Design 215 Database Design 215 Database Design Theory 223 Programmers versus the Database Designer 233 Database Access Services 236 NoSQL 238 Concluding Remarks 242 Chapter 10: Technical Design-Principles 243 Principles of High Performance on a Single Machine 244 Principles of High Performance on Many Servers 252 Principles of High Resiliency 260 The Need for Testing and Benchmarking 263 The Technical Design Process 265 Concluding Remarks 268 Chapter 11: Technical Design-Structure 271 Program Structure 272 What Is a Framework? 276 The Variety of Programming Languages 281 Choosing a Programming Language and Framework 286 Extending the Framework 290 Implementing Common Functionality 293 Concluding Remarks 295 Chapter 12: Security Design 297 IT Application Security Principles 299 The Security Elements of Each Design 307 Security Programming 316 Concluding Remarks 319 Chapter 13: The Future of Application Development 323 How Context-Driven Design Changes Application Development 323 Context-Driven Design Opportunities 325 The Application Development Challenges 332 Concluding Remarks 339 Appendix A: Context Design Checklist 341 Description 341 References 349 Index 353
Szczegóły: Designing the Requirements - Chris Britton
Tytuł: Designing the Requirements
Autor: Chris Britton
Producent: Addison Wesley Publishing Company
ISBN: 9780134021218
Rok produkcji: 2015
Ilość stron: 400
Oprawa: Miękka
Waga: 0.62 kg