|
![]() |
|||
|
||||
OverviewIt’s a jungle out there. Delivering software solutions with predictable costs, time, scope, and quality has become more complicated than ever. Developers need to account for multiple moving targets, including often avoided but always relevant factors such as culture, people, and leadership. To effectively deal with these challenges, it’s necessary to rethink the entire delivery chain of modern software development. This book addresses all these topics, putting everything in perspective, from the potential awkwardness created by cultural differences to connecting code with business outcomes to make delivering quality solutions possible. As a software engineer who strives to be his best and challenge the status quo when building IT systems, author Tengiz Tutisani always wanted a book that would cover all of these elements from a developer’s perspective — so he wrote one. Effective Software Development for the Enterprise builds on advanced disciplines, methodologies, and techniques derived from domain-driven design, software architecture, and extreme programming. Its objective is to aid modern software engineers and solution architects in building and delivering high-quality solutions for an enterprise while meeting ambitious criteria: Meet users' expectations Deliver solutions on time with no defects Create products that can scale-out horizontally Solutions should not require a dedicated production support team Accelerate development pace Double ROI per developer, team, and software You will learn how to achieve these objectives in any engineering environment by developing solid strategies based on the industry's well-known, recognized, and proven patterns and principles. After reading this book, you will be ready to effectively deal with any and all challenges posed by today’s hyper-competitive, globally-diverse, fast-moving enterprise environment. Who This Book Is ForProfessional software engineers and solution architects, as well as those aspiring to become one. Additionally, software engineering leaders will benefit from reading it, as it will help them maximize their impact via successful software project deliveries. Full Product DetailsAuthor: Tengiz TutisaniPublisher: APress Imprint: APress Edition: 1st ed. Weight: 0.539kg ISBN: 9781484293874ISBN 10: 1484293878 Pages: 323 Publication Date: 27 May 2023 Audience: Professional and scholarly , Professional & Vocational Format: Paperback Publisher's Status: Active Availability: Manufactured on demand ![]() We will order this item for you from a manufactured on demand supplier. Table of ContentsChapter 1: IntroductionChapter Goal: Give users the overview of current challenges in software development; prepare mindset to develop better software and learn how to. No of pages 11 Sub -Topics 0. History Behind Inefficient Monoliths 1. Why People Avoid Building Effective Software 2. Software Development Perfectionism As A State Of Mind 3. Six Pillars Of Effective Software Chapter 2: Crosscutting ConcernsChapter Goal: Overview of software development-related but non-technical challenges, such as leadership, forming organizations, etc. The goal is broaden the readers’ view and understand that software development cannot succeed in silo – it needs support from outside as well. No of pages: 36 Sub - Topics 0. Execution, Leadership, Management 1. Organizational Structure 2. Processes, Ongoing Efforts, Teams 3. Culture 4. Recruitment Chapter 3: From Customer Insights To InternalRequirementsChapter Goal: Connecting the dots between customers’ expectations and the requirements that the software engineers fulfill; This chapter will enhance the readers with external view to the requirements – the business value behind deliveries No of pages: 35 Sub - Topics: 0. Understanding Customers' Needs 1. Organization's Response To Customers' Needs 2. Requirements And Story Writing 3. Planning Work 4. Carrying Out Work Chapter 4: Design and Architecture Chapter Goal: Architecture knowledge and work related to building effective software solutions; Learn how architecture supports all other aspects of software delivery process No of pages: 61 Sub - Topics: 1. Architecture As A Crosscutting Concern 2. Architecture In Analysis And Requirements Gathering 3. Architecture Body Of Knowledge 4. Architecture And Implementation 5. Architecture For Testable Systems 6. Architecture For Deployable Systems 7. Architecture For Maintainable Systems Chapter 5: Implementation and Coding Chapter Goal: Dive deep into the implementation side of things; not much code here but instead connecting the coding activities back to the architecture’s guardrails, and forward with quality engineering No of pages: 52 Sub - Topics: 1. Crosscutting Concerns Related To Coding 2. Designing Code 3. Implementing Code 4. Testing Code 5. Code Deployment And Maintenance Chapter 6: Testing and Quality Assurance Chapter Goal: Often overlooked but a vital aspect of software delivery – quality assurance is discussed in this topic; how to optimize value by combining the architecture and development with testing, and apply the best of these worlds for quality software delivery – that is what the readers will learn No of pages: 30 Sub - Topics: 1. Testing Processes And Principles 2. Test Design And Architecture 3. Implementing Automated Tests 4. Enhancing Deployments With Test Automation Chapter 7: Deployment Chapter Goal: How to effectively deploy modern, effective software solutions? How these questions impact architecture, development, or other phases? We will find out in this chapter. No of pages: 8 Sub - Topics: 1. Culture Of Releases 2. CI/CD - Deployment Foundation 3. Building Deployment-Ready Applications Chapter 7: Maintenance and Support Chapter Goal: Maintenance seems to be on the other side of the fence from the development. This chapter will help the readers connect it back to development for decreasing costs and eliminating the need for dedicated production support teams. No of pages: 5 Sub - Topics: 1. Maintenance-Free Mindset 2. Maintenance-Aware MindsetReviewsAuthor InformationTengiz Tutisani has been in the software development industry for over 19 years. His experience ranges from startups to Fortune-500 corporations. He held roles with a mix of people and technology leadership (software engineer, technical lead, development manager, application architect, solutions architect, enterprise architect, and chief architect). Tengiz's broad experience and frequent recognition for outstanding quality and performance have convinced him to teach others unique engineering and architecture techniques. He authored this book to describe advanced techniques for professional software development and architecture disciplines. Tab Content 6Author Website:Countries AvailableAll regions |