دسترسی نامحدود
برای کاربرانی که ثبت نام کرده اند
برای ارتباط با ما می توانید از طریق شماره موبایل زیر از طریق تماس و پیامک با ما در ارتباط باشید
در صورت عدم پاسخ گویی از طریق پیامک با پشتیبان در ارتباط باشید
برای کاربرانی که ثبت نام کرده اند
درصورت عدم همخوانی توضیحات با کتاب
از ساعت 7 صبح تا 10 شب
ویرایش: نویسندگان: Evelyn van Kelle, Gien Verschatse, Kenny Baas-Schwegler سری: ISBN (شابک) : 9781633439252 ناشر: Manning سال نشر: 2024 تعداد صفحات: 821 زبان: English فرمت فایل : PDF (درصورت درخواست کاربر به PDF، EPUB یا AZW3 تبدیل می شود) حجم فایل: 10 مگابایت
در صورت تبدیل فایل کتاب Collaborative Software Design: How to facilitate domain modeling decisions (Final Release) به فرمت های PDF، EPUB، AZW3، MOBI و یا DJVU می توانید به پشتیبان اطلاع دهید تا فایل مورد نظر را تبدیل نمایند.
توجه داشته باشید کتاب طراحی نرم افزار مشترک: نحوه تسهیل تصمیمات مدل سازی دامنه (انتشار نهایی) نسخه زبان اصلی می باشد و کتاب ترجمه شده به فارسی نمی باشد. وبسایت اینترنشنال لایبرری ارائه دهنده کتاب های زبان اصلی می باشد و هیچ گونه کتاب ترجمه شده یا نوشته شده به فارسی را ارائه نمی دهد.
Collaborative Software Design Copyright dedication contents front matter forewords preface acknowledgments about this book Who should read this book? How this book is organized: a roadmap liveBook discussion forum about the authors about the cover illustration 1 The need for collaborative software design 1.1 Design decisions gone wrong at BigScreen 1.1.1 Understanding the landscape 1.1.2 BigScreen’s attempt at refactoring 1.2 BigScreen: How collaborative modeling helped to improve design decisions 1.2.1 Our approach for BigScreen 1.2.2 The new architecture 1.2.3 A brief history of software design 1.2.4 The Agile theater 1.2.5 Enabling teams to do collaborative software design 1.3 Collaborative software design as a catalyst for better design decisions 1.3.1 Collaborative modeling, design, and architecture 1.3.2 Collaborative modeling ingredients and potential benefits of facilitation 1.3.3 The effect of social dynamics on collaborative modeling sessions 1.3.4 Collaborative decision-making Summary 2 What is collaborative modeling? 2.1 Understanding the business problems 2.1.1 What problems are we trying to solve? 2.1.2 What is collaborative modeling? 2.1.3 Exploring business problems using collaborative modeling 2.2 Domain-Driven Design and collaborative modeling 2.2.1 What is Domain-Driven Design? 2.2.2 Who are the stakeholders? 2.2.3 Why DDD and collaborative modeling go hand in hand 2.3 Different collaborative modeling tools 2.3.1 Collaborative modeling in the problem and solution space 2.3.2 EventStorming 2.3.3 Example Mapping 2.3.4 Domain Storytelling 2.3.5 When to use what tool 2.4 Collaborative software design catalysts 2.5 Further reading Summary 3 Using collaborative modeling for design and architecture 3.1 What is software design and architecture? 3.1.1 The importance of meaning and definitions 3.1.2 What is software architecture? 3.1.3 What is software design? 3.1.4 What are sociotechnical systems? 3.1.5 Design decisions and collaborative modeling 3.2 Heuristics for collaborative modeling 3.2.1 What are heuristics? 3.2.2 Competing heuristics 3.2.3 How to use heuristics 3.3 Driving the design by understanding the business 3.3.1 Designing boundaries 3.3.2 Why boundaries are designed through collaboration 3.3.3 From design to architecture 3.4 Collaborative software design catalysts 3.5 Chapter heuristics 3.6 Further reading Summary 4 The ingredients of collaborative modeling 4.1 The collaborative modeling stages 4.1.1 Why use our stages? 4.1.2 The stages 4.2 Preparing for a session 4.2.1 Preparing the content 4.2.2 Preparing the space 4.3 Sensemaking 4.3.1 Conscious and unconscious minds 4.3.2 Opening up conversations 4.3.3 What is sensemaking? 4.3.4 Why would you do sensemaking? 4.3.5 In-person or remote? 4.3.6 Premortem 4.4 Check-in and check-out 4.4.1 What is a check-in and check-out? 4.4.2 Characteristics of a check-in and check-out 4.4.3 Why would you do a check-in and check-out? 4.4.4 Capturing feedback through check-outs 4.5 Different collaboration styles for modeling with tools 4.5.1 Together, Alone 4.5.2 Split and Merge 4.5.3 Small Group Diverge and Converge 4.5.4 Liberating structures: 1-2-4-All 4.5.5 Ensemble 4.5.6 Fishbowl 4.5.7 Anarchy! 4.5.8 Guerilla 4.5.9 The secret modeler 4.5.10 How to use the styles 4.6 Retrospective 4.6.1 Evaluating the outcome of the session 4.6.2 When we don’t do a retrospective 4.7 Collaborative software design catalysts 4.8 Chapter heuristics 4.9 Further reading Summary 5 Facilitating collaborative modeling 5.1 The role of a facilitator 5.1.1 The facilitator as an observer 5.1.2 Other stances of a facilitator 5.2 The core competencies of a facilitator 5.2.1 Neutrality 5.2.2 Observing 5.2.3 Compassion 5.2.4 Using and learning the core competencies 5.3 Skill set of a facilitator 5.3.1 Clear communication 5.3.2 Active listening 5.3.3 Holding space 5.4 Facilitating sensemaking and collaborative styles 5.4.1 Why do you need a facilitator? 5.4.2 The role of a facilitator during sensemaking 5.4.3 Facilitating check-ins and check-outs 5.4.4 Preparing to facilitate sensemaking 5.4.5 Facilitating collaborative styles 5.4.6 What if you’re not the facilitator? 5.5 Dealing with remote facilitation 5.5.1 Benefits and potential downsides of the different forms 5.5.2 Preparing a remote facilitation 5.6 Collaborative software design catalysts 5.7 Chapter heuristics 5.8 Further reading Summary 6 The influence of ranking 6.1 Ranking explained 6.1.1 What is ranking? 6.1.2 Implicit versus explicit ranking 6.1.3 Symbolic violence 6.1.4 Epistemic injustice 6.2 Becoming aware of ranking during collaboration and software design 6.2.1 Group ranking 6.2.2 People 6.3 Facilitating ranking 6.3.1 Analyzing the group rank 6.3.2 Own, play, and share your rank 6.3.3 Making the group aware of their rank 6.4 Collaborative software design catalysts 6.5 Chapter heuristics 6.6 Further reading Summary 7 The effect and opportunities of cognitive bias 7.1 Cognitive bias explained 7.1.1 What is cognitive bias? 7.1.2 What does cognitive bias look like? 7.1.3 System 1 and System 2: A crash course 7.1.4 Embracing cognitive bias 7.2 Cognitive bias during collaboration and software design 7.2.1 Confirmation bias 7.2.2 The law of triviality 7.2.3 False-consensus effect 7.2.4 Availability bias 7.2.5 Loss aversion 7.2.6 Additive bias 7.3 Facilitating cognitive bias 7.3.1 Self-fulfilling prophecy 7.3.2 Altering behavior through nudges 7.3.3 The different dimensions of nudges 7.3.4 Becoming a choice architect 7.4 Collaborative software design catalysts 7.5 Chapter heuristics 7.6 Further reading Summary 8 Resistance and conflict resolution 8.1 Why people show resistance and have conflicts 8.1.1 What conflict is all about 8.1.2 Edge behavior 8.1.3 What is resistance? 8.2 Resistance and conflict during collaboration 8.2.1 Recognizing resistance and conflict in collaborative modeling 8.2.2 The effect of resistance and conflict on software design 8.2.3 Resistance and conflict as learning opportunities 8.3 Facilitating toward a resolution 8.3.1 Resistance and conflict in practice 8.3.2 Kissing the group over the edge 8.3.3 Creating role fluidity 8.4 Collaborative software design catalysts 8.5 Chapter heuristics 8.6 Further reading Summary 9 Making sustainable design decisions 9.1 Decisions, decisions, decisions 9.1.1 What is a decision anyway? 9.1.2 Decision vs. outcome 9.1.3 What you need to make a decision 9.1.4 Reactive vs. proactive decisions 9.1.5 Sustainability in software design 9.2 Decision-making styles and levels of buy-in 9.2.1 Autocracy vs. democracy 9.2.2 Creating buy-in on decisions 9.2.3 Buy-in on software design decisions 9.3 Facilitating sustainable design decisions 9.3.1 Moving toward a majority vote 9.3.2 Go fishing! 9.4 Collaborative software design catalysts 9.5 Chapter heuristics 9.6 Further reading Summary 10 Managing unsolvable problems 10.1 Polarities: Some problems can’t be solved 10.1.1 What are polarities? 10.1.2 Recognizing polarities 10.1.3 Common polarities in collaborative modeling 10.1.4 Crusaders and tradition bearers 10.2 Visualizing a polarity 10.2.1 Creating a shared understanding of a polarity 10.2.2 Managing the polarity 10.3 Managing polarities during collaborative modeling 10.3.1 Getting stuck in a polarity 10.3.2 Managing a polarity as facilitator 10.3.3 Letting the group manage the polarity 10.4 Collaborative software design catalysts 10.5 Chapter heuristics 10.6 Further reading Summary 11 Communicating and documenting decisions 11.1 Formalizing a decision 11.1.1 Finding the consequences 11.1.2 Capturing the decision 11.2 Spreading the knowledge through the company 11.2.1 Communicating decisions 11.3 Keeping the decision alive 11.3.1 The modeling process as a whirlpool 11.3.2 Don’t fall in love with your model 11.4 Collaborative software design catalysts 11.5 Chapter heuristics 11.6 Further reading Summary 12 Collaborative modeling beyond software design 12.1 Moving toward understanding the context 12.1.1 Focusing on customer needs 12.1.2 Connecting business strategy, product, and software architecture 12.2 Collaborative modeling beyond software design 12.2.1 Different roles, different modeling needs 12.2.2 Customer journeys and EventStorming: A love story 12.2.3 Aligning capabilities with your strategy 12.3 Moving toward implementation 12.3.1 When to go from collaborative modeling to coding 12.3.2 From collaborative modeling to code 12.4 Collaborative software design catalysts 12.5 Chapter heuristics 12.6 Further reading Summary Appendix A. index