Software Development, Design, and Coding - John F. Dooley, Vera A. Kazakova

Software Development, Design, and Coding

With Patterns, Debugging, Unit Testing, and Refactoring
Buch | Softcover
513 Seiten
2024 | 3rd ed.
Apress (Verlag)
979-8-8688-0284-3 (ISBN)
64,19 inkl. MwSt
Learn the principles of good software design and then turn those principles into great code. This book introduces you to software engineering — from the application of engineering principles to the development of software. You'll see how to run a software development project, examine the different phases of a project, and learn how to design and implement programs that solve specific problems. This book is also about code construction — how to write great programs and make them work. 



 



This new third edition is revamped to reflect significant changes in the software development landscape with updated design and coding examples and figures. Extreme programming takes a backseat, making way for expanded coverage of the most crucial agile methodologies today: Scrum, Lean Software Development, Kanban, and Dark Scrum. Agile principles are revised to explore further functionalities of requirement gathering. The authors venture beyond imperative and object-oriented languages, exploring the realm of scripting languages in an expanded chapter on Code Construction. The Project Management Essentials chapter has been revamped and expanded to incorporate "SoftAware Development” to discuss the crucial interpersonal nature of joint software creation.



Whether you're new to programming or have written hundreds of applications, in this book you'll re-examine what you already do, and you'll investigate ways to improve. Using the Java language, you'll look deeply into coding standards, debugging, unit testing, modularity, and other characteristics of good programs.



 



You Will Learn





Modern agile methodologies
How to work on and with development teams
How to leverage the capabilities of modern computer systems with parallel programming
How to work with design patterns to exploit application development best practices
How to use modern tools for development, collaboration, and source code controls



 



Who This Book Is For



Early career software developers, or upper-level students in software engineering courses



 

John F. Dooley is the William and Marilyn Ingersoll Professor Emeritus of Computer Science at Knox College in Galesburg, Illinois. Before returning to teaching in 2001, Professor Dooley spent more than 16 years in the software industry as a developer, designer, and manager working for companies such as Bell Telephone Laboratories, McDonnell Douglas, IBM, and Motorola, along with an obligatory stint as head of development at a software startup. He has written more than two dozen professional journal and conference publications and seven books to his credit, along with numerous presentations. He has been a reviewer for the Association for Computing Machinery Special Interest Group on Computer Science Education (SIGCSE) Technical Symposium for the last 36 years and reviews papers for the IEEE Transactions on Education, the journal Cryptologia, and other professional conferences. He has created short courses in software development and three separate Software Engineering courses at the advanced undergraduate level. Dr. Vera A. Kazakova is a Computer Science educator and researcher, with expertise in artificial intelligence, experiential learning, and collaborative methodologies. With a PhD in AI focused on nature-inspired computation and emergent division of labor, her research spans CS Education, Evolutionary Computation, Narrative Generation, Decentralized Multi-Agent Systems, and Cyber Social Science. Dr. Kazakova also has extensive experience as a CS educator, having taught programming, artificial intelligence, research, and software development courses. Dr. Kazakova has coined the term "Soft-Aware Development" to encapsulate a holistic approach for building software, building stakeholder relationships, and building up each developer along the way. An ardent proponent of experiential learning and agile methodologies, Dr. Kazakova champions a multi-sprint learning architecture that enables students to adapt and iterate, fostering a shared environment of continuous growth. Her passion for collaboration, from simplistic autonomous agents to human developers, and members of large online communities, sets her apart as an advocate for a more interconnected, empathetic, and empowering approach to CS research, education, and software development.

Chapter 1: Introduction to Software Development.- PART ONE: MODELS AND TEAM PRACTICES.- Chapter 2: Software Process Models.- Chapter 3: Project Management Essentials.- Chapter 4: Ethics and Professional Practice.- Chapter 5: Intellectual Property, Obligations, and Ownership.- Chapter 6: Requirements.- PART TWO: DESIGN PRACTICES.- Chapter 7: Software Architecture.- Chapter 8: Design Principles.- Chapter 9: Structured Design.- Chapter 10: Object-Oriented Overview.- Chapter 11: Object-Oriented Analysis and Design.- Chapter 12: Object-Oriented Design Principles.- Chapter 13: Design Patterns.- Chapter 14:Parallel Programming.- Chapter 15:Parallel; Design Patterns.- PART THREE: CODING PRACTICES.- Chapter 16: Code Construction.- Chapter 17: Debugging.- Chapter 18: Unit Testing.- Chapter 19:P Code Reviews and Inspections.- Chapter 20: Wrapping It All Up.

Erscheinungsdatum
Zusatzinfo 67 Illustrations, black and white; X, 370 p. 65 illus.
Verlagsort Berlin
Sprache englisch
Maße 178 x 254 mm
Themenwelt Mathematik / Informatik Informatik Programmiersprachen / -werkzeuge
Mathematik / Informatik Informatik Software Entwicklung
Informatik Theorie / Studium Compilerbau
Schlagworte Coding • Debugging • Object-Oriented Design • Parallel Programming • Patterns • Project Management • Refactoring • Requirements • Software Design • software development • Software engineering • Unit Testing
ISBN-13 979-8-8688-0284-3 / 9798868802843
Zustand Neuware
Haben Sie eine Frage zum Produkt?
Mehr entdecken
aus dem Bereich
Grundlagen und Anwendungen

von Hanspeter Mössenböck

Buch | Softcover (2024)
dpunkt (Verlag)
29,90
a beginner's guide to learning llvm compiler tools and core …

von Kai Nacke

Buch | Softcover (2024)
Packt Publishing Limited (Verlag)
47,35