App Accomplished: Strategies for App Development Success
By: Carl Brown (author)Paperback
Build Great Apps: End-to-End Processes, Tools, and Management Tips for Doing It Right! Foreword by Kyle Richter, CEO, MartianCraft Today, successful apps are complex software projects. You can't just knock them off in a weekend--and, worse, many common programming habits don't work well in mobile. You need skills, processes, tools, management techniques, and best practices that are honed for mobile platforms and realities. In App Accomplished, top mobile developer Carl Brown provides all that--so you can run your entire project effectively and get the answers you need right now. Whether you're writing your own code or contracting out, you'll find hard-won guidance for your entire app development life cycle. Brown guides you step-by-step from planning and design through testing and updates. Through case studies drawn from his immense experience, he reveals why so many app projects fail--and how to avoid the mistakes that derailed them. When it comes to apps, a great idea isn't enough: You have to execute. This is the first book that shows you how.
* Understand mobile-specific issues that lead even experienced developers astray* Find developers who can do a great job with your unique app at a fair price* Define the requirements you need to create accurate schedules and budgets* Work with developers to get the best possible results* Manage and communicate effectively to avoid cost overruns* Solve problems before they get out of control* Develop wireframes and prototypes that clarify the user's core experience* Choose app components, from servers to data storage* Select tools for source control, testing, project tracking, and more* Identify and fill crucial skills gaps * Estimate the quality of the app you're building* Efficiently test and debug your app* Recover from App Store rejection* Leverage user feedback to help plan your next release* Determine when an existing project is too far off course to fix
Carl Brown (@CarlBrwn) started writing software for client companies while working at EDS in 1993. He became enamored of developing for mobile connected devices in 2005, starting with the Palm VII and moving on to Windows CE. Since 2008, he's been focused primarily on the iOS app market (with some Android thrown in). He's worked on dozens of apps, starting with the Calorie Tracker for LIVESTRONG.com. He's also been brought in to rescue a number of troubled or failing app projects, with varied success. He's a frequent speaker at the annual 360|iDev iOS developer conference and a speaker and organizer with CocoaCoder.org, the largest Mac and iOS developer meet-up group in Austin, Texas, where he lives with his wife and daughter.
Foreword xi Preface xiii Chapter 1: What Could Possibly Go Wrong? 1 App Projects Are Not Small and Easy 1 Apps Are Not Easy to Program 5 Poor Skill Set Fit 8 If You Get a Good Developer, You Still Have to Worry 10 The Idea Is Not More Important Than the Execution 12 Unwillingness to Delegate: Micromanaging 15 Bikeshedding 16 Poorly Defined Requirements 16 Out-of-Date Requirements Documentation 18 Constantly Changing Requirements 20 Leaving the Worst for Last 20 Cost Overruns 24 That Last 10% 26 The Whack-a-Mole Problem 27 Poor Communication 29 Abdication of the Management Process 31 Wrapping Up 31 Chapter 2: The App Development Life Cycle 33 The Design Phase 34 The Development Phase 39 The Testing Phase 45 Repeating the Cycle as Needed 49 Wrapping Up 52 Chapter 3: Prototyping and Wireframing Your App 53 Focus on the Core Experience 54 Wireframe the App 58 Build an Interactive Prototype 76 Prototyping Tips and Tricks 91 Wrapping Up 95 Chapter 4: Determining Your App's Components 97 Dealing with Devices 97 Native, Web, and Hybrid Apps 104 Dealing with Third-Party Frameworks 111 Dealing with Analytics 119 Dealing with Video and Audio 120 Dealing with Peripherals 121 Dealing with Accessibility 122 Dealing with Custom or Complex Animations 122 Dealing with Conditional Formatting 123 Dealing with Localization 124 Dealing with User Preferences 125 Dealing with Data Storage 125 Dealing with Servers 131 Dealing with Syncing 133 Dealing with Push Notifications 134 Dealing with Background Tasks 134 Wrapping Up 135 Chapter 5: Finding the Right Tools 137 Selecting Tools for Your Project Size 138 Source Control 138 Bug Tracking 144 Project and Schedule Tracking 148 The Development Environment 154 Continuous Integration 157 Beta Testing Distribution 159 Crash Reporting 160 End-User Feedback 161 Wrapping Up 162 Chapter 6: Skill Gap Analysis 163 Programming 163 Testing and Quality Assurance 168 Server Support and Troubleshooting 168 User Experience Design 169 Graphic Design 173 Sound Design and Music 176 Copywriting 178 Marketing 179 About Games 181 Wrapping Up 183 Chapter 7: Finding a Developer 185 Template App Sites 185 App Developer Matchmaker Sites 189 Local Versus Remote Developers 191 Creative Agencies 194 App Development Companies 196 Independent Developers 199 Grow Your Own Developer (Maybe Even You) 203 Wrapping Up 204 Chapter 8: Interviewing and Selecting a Developer 207 Nondisclosure Agreements 208 Setting Up an Interview 208 Previous Work 210 Gap Analysis 212 Contingency Plans 213 Estimating and Planning 214 Working Relationship 217 Wrapping Up 224 Chapter 9: Managing to Milestones 227 Never Agree to "30% Down, and I'll Talk to You in Three Months" 227 Minimizing Risk with Frequent Milestones 228 How I Learned to Stop Grumbling and Love Milestones 229 Milestones Are Not Sprints 230 Organization, Sequencing, and Focus 232 Let Conway's Law Be Your Guide 235 Scheduling Software: Strongly Suggested 237 Remember That Estimates Are Only Estimates 239 Renovation Versus New Construction 243 Estimates and Entomology 245 Plan Reevaluation and Project Feedback Loops 246 Wrapping Up 246 Chapter 10: Understanding What You're Getting 249 Living Within Your Means 250 The Ticking Clock 251 Justifying Effort for Your Project Size 253 Get the Code, Even if There's Nothing to See in the UI 253 Comments in Source Control 254 Comments in Code 256 Build and Run the App Yourself 258 Third-Party Libraries 260 Source Code Project Organization 261 Automated Test Coverage 262 Detecting Plagiarism 262 Compiler Warnings 264 Duplicated Code 264 Commented Out Code 265 Magic Numbers 265 Huge Combinatorial Complexity 266 Useless, Ambiguous, or Confusing Naming 266 The "UI Thread" or "Main Thread" 267 Wrapping Up 267 Chapter 11: Pulling the Plug Early 269 So You Missed a Milestone 270 Stop the Presses! Figure Out Where You Are 270 Discussing Failure 271 Milestone Hit but Bugs Abound 272 If Your Developer Is Proactive 274 If Your Developer Isn't Honest 275 If It Might Have Been Your Fault 275 Evaluating the Recovery Plan 277 How Far Gone Are You? 282 Trying to Salvage a Project 283 Fair Compensation 284 Transitioning to a New Developer 284 Wrapping Up 285 Chapter 12: Communicating Using Bugs 287 Vocabulary 287 Bug Trackers as Communication Tools 288 One Bug per Bug Report, Please 290 Anatomy of a Bug Report 291 Feature Request Versus Bug Fix 292 Placeholder Issues 294 Bug Trackers as Business Continuity 295 Bug Trackers Versus Code Comments 295 Writing Useful Bug Reports 296 Attaching Files to Bugs 298 Data-Specific Bugs 299 Reproduction: There's the Rub 299 Bug States 300 Reopening Bugs Versus Creating New Ones 301 Splitting Bugs 303 Two Bugs, One Cause 303 Saving for Posterity 304 Wrapping Up 304 Chapter 13: Testing 305 Types of Testing 305 Failures of Imagination 306 Your Testing Schedule 308 Approaching Deadlines 311 Your Testing Team 311 Getting and Incorporating Feedback 319 Wrapping Up 327 Chapter 14: Submission and Beyond 329 Getting Your Marketing Material Together 330 Reviewer Instructions 331 Last-Minute Plea for Sanity 333 Pushing the Button 334 Dealing with Rejection 335 Resubmission 340 Launch 340 Getting Feedback 340 The Next Release 342 The Red Queen's Race 343 Wrapping Up 343 Index 345
Number Of Pages:
- ID: 9780321961785
- Saver Delivery: Yes
- 1st Class Delivery: Yes
- Courier Delivery: Yes
- Store Delivery: Yes
Prices are for internet purchases only. Prices and availability in WHSmith Stores may vary significantly
© Copyright 2013 - 2016 WHSmith and its suppliers.
WHSmith High Street Limited Greenbridge Road, Swindon, Wiltshire, United Kingdom, SN3 3LD, VAT GB238 5548 36