1.1 Group Organization
1.1.1 Chief Programmer Team
1.1.2 Egoless Programming Team
1.1.3 Administrative Programming Team
1.2 Assigning Roles
1.3 Distributing Tasks
1.3.1 Matching Tasks to Roles
1.3.2 Matching Tasks to Abilities
1.3.3 Time/Schedule Conflicts Between A Group Member and The Milestone or Task At Hand
1.4 Running Group Meetings
Chapter 2 Successful Group Dynamics
2.1 Generating Ideas and Strategies
2.1.1 Participation
2.1.2 Listening
2.2 Coming To Consensus
2.3 Making Diversity Work For You
2.4 Tips For Group Success
Chapter 3 Project Management
3.1 Maintaining the Group's Conceptual Understanding of the Entire Project
3.2 Keeping the Project on track
3.2.1 Working Under Time Constraints and Deadlines
3.2.2 Maintaining the Project Specification's Integrity
Chapter 4 What You Need to Know About Risk
4.1 Identifying Risks
4.2 Analyzing Risks
4.3 Planning for Risks
4.4 Monitoring Risks
5.1 Types of Spoken Behaviors
5.1.1 Initiating Behaviors
5.1.2 Reacting Behaviors
5.1.3 Clarifying Behaviors
5.1.4 Process Behaviors
5.2 Communication as Part of Software Development
Chapter 6 Potential Profiles of A Group Member
6.1 Some or All Group Members Are Not Used To Group Projects
6.2 The Dominant and/or Aggressive Group Member
6.3 The Shy, Passive Group Member
6.4 The Group Member Who Feels Technically Unprepared For The Project
6.5 The "I'll Do It All Myself" or "Anti-Group" Group Member
6.6 Cliques
Chapter 7 Handling Conflict
7.1 Personal Conflict
7.2 Role Conflict
7.3 Issue Conflict
8.1 You, The Project, and The Rest Of Your Schedule
8.2 When A Group Member Has A Job (Besides School)
Chapter 9 The Group Grade
9.1 When A Group Member Is Lazy
9.2 When A Group Member Drops Or Withdraws From The Class
9.3 When A Group Member Is A Non-English Speaking Student
9.4 When Group Member(s) Go Home During Weekends and Three-Day Weekends
Chapter 10 Other Useful Stuff
10.1 Keeping a Journal
10.2 Empowerment and Encouragement