LEADER 06960nam 22006975 450 001 9910300642203321 005 20200705113151.0 010 $a9781484206201 010 $a1484206207 024 7 $a10.1007/978-1-4842-0620-1 035 $a(CKB)3710000000371804 035 $a(EBL)1998606 035 $a(SSID)ssj0001465664 035 $a(PQKBManifestationID)11917432 035 $a(PQKBTitleCode)TC0001465664 035 $a(PQKBWorkID)11478951 035 $a(PQKB)11229724 035 $a(DE-He213)978-1-4842-0620-1 035 $a(MiAaPQ)EBC1998606 035 $a(CaSebORM)9781484206201 035 $a(PPN)184888360 035 $a(OCoLC)905853351 035 $a(OCoLC)ocn905853351 035 $a(EXLCZ)993710000000371804 100 $a20150303d2015 u| 0 101 0 $aeng 135 $aur|n|---||||| 181 $ctxt 182 $cc 183 $acr 200 10$aPractical Enterprise Software Development Techniques $eTools and Techniques for Large Scale Solutions /$fby Edward Crookshanks 205 $a1st ed. 2015. 210 1$aBerkeley, CA :$cApress :$cImprint: Apress,$d2015. 215 $a1 online resource (223 p.) 225 0 $aThe expert's voice in software development Practical enterprise software development techniques 300 $aDescription based upon print version of record. 311 08$a9781484206218 311 08$a1484206215 320 $aIncludes bibliographical references and index. 327 $aContents at a Glance; Introduction; Chapter 1: How Enterprise Software Is Different; Summary; Chapter 2: Software Requirements; Business Requirements; Functional Design; Technical Design; Change Control; Summary; Chapter 3: Design Patterns and Architechture; Pattern Examples; The Observer Pattern (Behavioral); The Fac?ade Pattern (Structural); The Singleton Pattern (Creational); Enterprise Patterns: MVC and Inversion of Control; Model-View-Controller; Inversion of Control; Manual Example; Configured Example; Architecture Pattern: N-Tier; Summary; Chapter 4: Development Methodologies and SDLC 327 $aWaterfallAgile; Extreme Programming; Distributed Teams; Code Reviews; Bug Tracking; Agile Software Tools; Summary; Chapter 5: Version Control; Theory; Software Demonstration; Resolving Conflicts; Tagging and Branching; Retrieving a Previous Version; What to Keep in the Repository; IDE Integration; Distributed Version Control; Summary; Chapter 6: Unit Testing and Test-Driven Development; Unit Testing Frameworks; JUnit; NUnit; Test-Driven Development (TDD); Summary; Chapter 7: Refactoring; Theory; Software Demonstration Setup; A Note about Tools; Refactoring the Code; Refactoring Using Patterns 327 $aFactory Method PatternStrategy Pattern; Example; Summary; Chapter 8: Debugging; Breakpoints; Stepping; Stack Trace; Logging; Summary; Chapter 9: Build Tools and Continuous Integration; make; Ant; NAnt/MSBuild; Maven; Continuous Integration (CI) Tools; Simple Example; Deploying to Environments; Summary; Chapter 10: Just Enough SQL; A Note About the Server and Client Tools; Minimal Database Design; SQL Statement Basics; Filtering and Sorting; More Advanced SQL; Programming Frameworks; Basic ADO.NET; Basic JDBC; Object-Relational Mapping-Methods and Tools; Summary 327 $aAppendix A: Enterprise Considerations and Other TopicsNumber and Location of Team Members; System Integration; Separation of Duties and Environments; Which Language/Platform Is Better?; Third Party or Home Grown?; Domain Knowledge; Continuing Education; Contractor or Full-Time Employee?; Summary; Appendix B: Discussion Questions; Chapter 2: Software Requirements; Chapter 3: Design Patterns and Architecture; Chapter 4: Development Methodologies; Chapter 5: Version Control; Chapter 6: Unit Testing and Test Driven Development; Chapter 7: Refactoring; Chapter 8: Debugging 327 $aChapter 9: Build Tools and Continuous IntegrationChapter 10: Just Enough SQL; Appendix C: Database Details; Summary; Appendix D: Bibliography; Books; Web Sites; Other Suggested Reading; SQL Additional Reading/Resources; Index; Contents; About the Author; About the Technical Reviewer; Acknowledgments 330 $aThis expanded and updated edition of "Practical Enterprise Software Development Techniques" includes a new chapter which explains what makes enterprise scale software development different from other development endeavors. Chapter 4 has been expanded with additional coverage of code review, bug tracker systems and agile software applications. The chapter order has been changed in response to feedback from readers and instructors who have taught classes using the previous version (which was also published by Apress). This book provides an overview of tools and techniques used in enterprise software development, many of which are not taught in academic programs or learned on the job. This is an ideal resource containing lots of practical information and code examples that you need to master as a member of an enterprise development team. This book aggregates many of these "on the job" tools and techniques into a concise format and presents them as both discussion topics and with code examples. The reader will not only get an overview of these tools and techniques, but also several discussions concerning operational aspects of enterprise software development and how it differs from smaller development efforts. For example, in the chapter on Design Patterns and Architecture, the author describes the basics of design patterns but only highlights those that are more important in enterprise applications due to separation of duties, enterprise security, etc. The architecture discussion revolves has a similar emphasis ? different teams may manage different aspects of the application?s components with little or no access to the developer. This aspect of restricted access is also mentioned in the section on logging. Theory of logging and discussions of what to log are briefly mentioned, the configuration of the logging tools is demonstrated along with a discussion of why it?s very important in an enterprise environment. 606 $aApplication software 606 $aSoftware engineering 606 $aComputer Applications$3https://scigraph.springernature.com/ontologies/product-market-codes/I23001 606 $aSoftware Engineering/Programming and Operating Systems$3https://scigraph.springernature.com/ontologies/product-market-codes/I14002 615 0$aApplication software. 615 0$aSoftware engineering. 615 14$aComputer Applications. 615 24$aSoftware Engineering/Programming and Operating Systems. 676 $a005.1 700 $aCrookshanks$b Edward$4aut$4http://id.loc.gov/vocabulary/relators/aut$0917112 801 0$bUMI 801 1$bUMI 906 $aBOOK 912 $a9910300642203321 996 $aPractical Enterprise Software Development Techniques$92175742 997 $aUNINA