11 Aug 2006CSE403, Summer'06, Lecture 22 Lecture 22: Configuration Management Valentin Razmov.

Slides:



Advertisements
Similar presentations
How Do you operate in conflict?
Advertisements

Leadership III for fire and ems: strategies for supervisory success
HOW TO RESOLVE CONFLICTS WITHOUT OFFENDING ANYONE.
Self – respect and Self – assertion Ms. Jayalakshmi R.
Examples of life goals: 1.Live on my own or with a family of my own. If I have this, I can use my non-working time how I see fit. FREE TIME! 2.Keep a job.
Phil 160 Kant.
MODULE 23 CONFLICT AND NEGOTIATION
Chapter 2 The Nature of Conflict. How do you view conflict  As a battle to be won?  As a problem to be solved?  As a danger?  As an opportunity? Your.
~ Generation Y - Song Analysis Assignment
Applied Software Project Management Andrew Stellman & Jennifer Greenehttp:// Applied Software Project Management Introduction.
Conflict Management.
12 Aug 2005CSE403, Summer'05, Lecture 15 Updated Schedule of Remaining Class-Related Deliverables Fri, Aug 10pm: hw#4 responses due Sun, Aug
INTERPERSONAL CONFLICT
2/6/2008Prof. Hilfinger CS164 Lecture 71 Version Control Lecture 7.
10 Aug 2005CSE403, Summer'05, Lecture 15 Lecture 15: Configuration Management, Software Maintenance, and Code Reviews (Part I) Valentin Razmov.
ISQA 454 Foundations 30 Second book. Spellbound I have a spelling checker, It came with my PC. It plainly marks four my revue Mistakes I cannot sea. I’ve.
Applied Software Project Management 1 Introduction Dr. Mengxia Zhu Computer Science Department Southern Illinois University Carbondale.
How NOT to Have a Successful PhD on Middleware Research The Ten Commandments (to carefully avoid) Paolo Costa Vrije Universiteit Amsterdam
Approaches to ---Testing Software Some of us “hope” that our software works as opposed to “ensuring” that our software works? Why? Just foolish Lazy Believe.
Managing Conflict in Organizations
Conflict Resolution.
1 The Purpose of Written Communication “Think now; write later”. ● Before one can begin to plan the “How”, he or she has to understand the “Why” of business.
Hiring Top Performing Project Managers Brian Richardson, PMP.
University of Palestine software engineering department Testing of Software Systems Fundamentals of testing instructor: Tasneem Darwish.
LOCUS OF CONTROL Manishaa & Dayaanand.
Applied Software Project Management Andrew Stellman & Jennifer Greenehttp:// Applied Software Project Management Chapter 1: Introduction.
Chapter 10 -Team work and Carnegie’s Principles
Chapter 10 THE NATURE OF WORK GROUPS AND TEAMS. CHAPTER 10 The Nature of Work Groups and Teams Copyright © 2002 Prentice-Hall What is a Group? A set of.
study of how and why humans act as they do Instead of studying how humans function in cultures or societies, psychology focuses on the individual, and.
Management Principles
22 Jul 2005CSE403, Summer'05, Lecture 12 Lecture 12: Scheduling, Estimation, and Prioritization (Part II) Valentin Razmov.
Types of Groups in Organizations
The psychology of testing.  The mindset to be used while testing and reviewing is different to that used while developing software.  With the right.
Module: Leadership Training Workshop for Health Professionals Organization: East Africa HEALTH Alliance Author(s): Prof. William Bazeyo, Resource.
Pragmatic Programmer Ch. 8.41
16 Aug 2006CSE403, Summer'06 Final Project Retrospective: From the Audience’s Viewpoint Key questions in your mind as you were watching the other team.
Valentin Razmov, CSE403, Sp'05 CSE403 Section 1: The Fate of Software Projects Learning = Practice + Feedback Desirable Qualities in Teammates Team-Building.
CSE 403, Spring 2007, Alverson Software Development Teams Talent wins games, but teamwork and intelligence wins championships. Michael Jordan With some.
Lecturer: Gareth Jones Class 18: Teams.  Teams ◦ What are teams? ◦ Types of teams ◦ Conflict resolution ◦ Team strategies 27/10/2015Business Communication.
11 Version Control Systems Mauro Jaskelioff (originally by Gail Hopkins)
Configuration Management and Change Control Change is inevitable! So it has to be planned for and managed.
Guidance Techniques. SETTING LIMITS Setting Limits What limits where set for you as a child? What did you think about those? What limits are set for.
Project Portfolio Management Business Priorities Presentation.
06 Jul 2006CSE403, Summer'06, Lecture08 Lecture 08: Requirements Gathering Techniques (Part II) Valentin Razmov “The goal of requirements engineering is.
05 Jul 2006CSE403, Summer'06, Lecture07 Administrivia Informal feedback meetings with LCO groups FantasySportsLeague: still to come today Individual assignment.
12/24/2015 Makin’ It Work Lesson 8: Choices & Consequences Module III: Solving Problems Logically © 2008 by Steve Parese, Ed.D. Transitioning from Corrections.
Conflict & resolution. What do you think this graphic represents??
Using Conflict Management to Resolve Workplace Issues
GEB 3213 Lecture 11 Outline Working in Teams. Why form groups and teams? 1._________________ 2.Faster response 3. _________________ 4. Greater “buy-in”
1 CSE 403 Team Dynamics Reading: Rapid Development Ch. 13, Pragmatic Programmer Ch These lecture slides are copyright (C) Marty Stepp, 2007, with.
Crisis And Conflict Management Lecture 17 Lecture 17 Conflict Management.
Conflict Management RAJKUMAR MANDA Dy.Mgr (Mining)-HRD RAJKUMAR MANDA14/25/2011.
07 Jul 2006CSE403, Summer'06, Lecture10 Lecture 10: Core Principles and Best Practices for Software Design (Part I) “Treat design as a wicked, sloppy,
05 Jul 2006CSE403, Summer'06, Lecture08 Lecture 08: Techniques for Gathering Requirements Valentin Razmov “The goal of requirements engineering is to develop.
Deliverables: Beta Release Installation package Application sources and binaries One-step build for all sources Latest specification & design documents.
1 Ivan Marsic Rutgers University LECTURE 2: Software Configuration Management.
SOURCES OF CONFLICT AND HOW TO DEAL WITH THEM THE SOLUTIONS GROUP.
27 Jul 2006CSE403, Summer'06, Lecture 15 Midterm Exam Statistics Other statistics: Average: 40.6 Median: 42.3 Std Dev: 6.2 Max: 46.5 Min: 28 Easiest Problems:
Managing the Project Lifecycle
Classroom Interaction via Tablet PCs and Student Submissions
LECTURE 2: Software Configuration Management
Conflict Resolution in Leadership
Conflict Resolution.
Are You a Professional or Just an Engineer?
LECTURE 3: Software Configuration Management
Lecture 06: Team Environment Issues
CSE599A TA Training, Au'05, Session 06
Conflict Resolution.
Lecture 07: Team Environment Issues (Part I)
Presentation transcript:

11 Aug 2006CSE403, Summer'06, Lecture 22 Lecture 22: Configuration Management Valentin Razmov

11 Aug 2006CSE403, Summer'06, Lecture 22 Outline Configuration management Motivation Challenges Examples Reality Valentin Razmov

11 Aug 2006CSE403, Summer'06, Lecture 22 Resources The Pragmatic Programmer, by Andrew Hunt and David Thomas Ch. 3 (section 17), p. 271 Code Complete, by Steve McConnell Valentin Razmov

11 Aug 2006CSE403, Summer'06, Lecture 22 Configuration Management – What and Why? What: A technique for simultaneously handling multiple versions (configurations) of a set of documents (code) by multiple people Why: (List two main reasons that you see.) - Valentin Razmov Student Submission

11 Aug 2006CSE403, Summer'06, Lecture 22 Reasons for Doing Configuration Management (1/3) Allows multiple people to collaborate in producing a common piece of work without imposing elaborate or overly strict management rules E.g.: “You can only touch the code between 8am and 10am, then it’s my turn.” Ability to revert to a previous version of the code Undoing undesirable changes Allowing testers to work independently on a different (not latest) release Valentin Razmov

11 Aug 2006CSE403, Summer'06, Lecture 22 Reasons for Doing Configuration Management (2/3) Tracking changes and project progress metrics Who makes the largest number of changes? How large/extensive are individual changes? Who changed this line of code? Which modules get changed most often? How much did module X change since the last release? In lines of code (LOC), new methods, etc. Valentin Razmov

11 Aug 2006CSE403, Summer'06, Lecture 22 Splitting source tree into multiple versions / branches and later merging (some of) them Motivation: different customers need / pay for different updates; teams working independently on same codebase Challenge: avoid duplication of effort across different branches of the tree; more conflicts to resolve if there has been no recent synching Central place / repository that keeps an authoritative version of the work Can be properly protected and managed with fewer human resources Everyone knows where to look for things Enables running (repeatable) automatic builds & regression tests Reasons for Doing Configuration Management (3/3) Valentin Razmov

11 Aug 2006CSE403, Summer'06, Lecture 22 Recap: High-Level Motivation for Configuration Management Maximizing effectiveness of the team Efficient collaboration on a common body of work People can work on snapshots of the system, created at different points in time Robustness (against mistakes) Accountability (of contributors) Managing complexity (and avoiding nightmares) Valentin Razmov

11 Aug 2006CSE403, Summer'06, Lecture 22 The Hardest Challenges with Using CMS A human has to keep track of all the different configurations and decide which updates to apply to which branches, and when Gets increasingly error-prone with large projects and many branches (many releases, many customers) Challenges you’ve experienced (e.g., using CVS, Subversion, etc.)? Valentin Razmov

11 Aug 2006CSE403, Summer'06, Lecture 22 Examples of Configuration Management Systems (CMS) CVS / RCS Perforce Subversion Visual Source Safe Roundtable … Note: Not all CMS are created equal: (a) handling of branching (b) conflict resolutions (before merging) Valentin Razmov

11 Aug 2006CSE403, Summer'06, Lecture 22 In Reality... Most companies use some CMS Including all companies where I have worked There are, surprisingly, also companies that don’t use a CMS This should be a red flag for you if you’re considering working for one of those It is a huge risk for dubious (or none) cost savings Management can easily buy into using a CMS to reduce their risks Valentin Razmov

11 Aug 2006CSE403, Summer'06, Lecture 22 Relevance of CMS Applicable to all types of valuable documents and artifacts, not just source code “You don’t need to floss all your teeth – just the ones you want to keep.” Valentin Razmov

11 Aug 2006CSE403, Summer'06, Lecture 23 Lecture 23: Conflict Management (Part I) (with quotes of wisdom) " Every problem is also an opportunity." Valentin Razmov

11 Aug 2006CSE403, Summer'06, Lecture 23 Outline Conflict defined Benefits and downsides of conflict Sources of conflict: at work, at school Ideas for preventing and resolving conflict Internal Inter-personal (covered next time) Valentin Razmov

11 Aug 2006CSE403, Summer'06, Lecture 23 Resources “Rapid Development”, by Steve McConnell Ch. 29: “Principled Negotiation” “Speech Acts” (handout) Other: “The 7 Habits of Highly Effective People”, by Steven Covey “When Conflict Helps Learning”, by David Socha and Valentin Razmov “Freakonomics: A Rogue Economist Explores the Hidden Side of Everything”, by Steven Levitt and Stephen Dubner Valentin Razmov

11 Aug 2006CSE403, Summer'06, Lecture 23 What Is Conflict? Definition (according to Merriam-Webster): 1 : fight, battle, war 2 a : competitive or opposing action of incompatibles : antagonistic state or action (as of divergent ideas, interests, or persons) b : mental struggle resulting from incompatible or opposing needs, drives, wishes, or external or internal demands 3 : the opposition of persons or forces that gives rise to the dramatic action in a drama or fiction Conflict can be: internal (intra-personal; confined within you) inter-personal (involving multiple people) Valentin Razmov

11 Aug 2006CSE403, Summer'06, Lecture 23 Potential Consequences of Conflict What may be some consequences of conflict? Student Submission Positive: Negative: Valentin Razmov

11 Aug 2006CSE403, Summer'06, Lecture 23 Potential Consequences of Conflict Positive consequences Illuminates problems (that have been unknown and/or unaddressed) Provides an incentive for change Negative consequences Wastes resources (time, money, patience, etc.) Can be stressful De-motivates Valentin Razmov

11 Aug 2006CSE403, Summer'06, Lecture 23 Conflict Is Not Always Bad "A good scare is worth more to a man than good advice." -- Edgar Watson Howe, novelist and editor If carefully controlled, conflict can be a powerful motivator for positive change. But don’t let it grow to become disruptive. Without some conflict, people don’t change. Humans are used to doing things in specific ways… … and resist changing until those approaches prove clearly inadequate for what they want to achieve. Presence of conflict can provide the needed incentive. Valentin Razmov

11 Aug 2006CSE403, Summer'06, Lecture 23 Origins of Conflict Misaligned incentives Ungrounded expectations “Expectations are a premeditated resentment.” -- Louis Fox Scarce resources Time Money Decision power Information etc. Valentin Razmov

11 Aug 2006CSE403, Summer'06, Lecture 23 Typical Psychological Reactions to Conflict “Fight” People who tend to be critical, vocal, demanding, seeking control… “Flight” People who tend to be indecisive, caring, wanting to be right… The type of reaction a person has depends on personalities and context, among other factors. Valentin Razmov

11 Aug 2006CSE403, Summer'06, Lecture 23 Experiences of Conflict You Have Had at Work What sources of conflict have you experienced with your managers / supervisors / advisors? a)Micro-management; not giving people ownership in the tasks they do b)Exercising authority for decisions without first getting a buy-in from everyone c)Penny pinching d)Skewed reward structure and preferential treatment Including being taken for granted e)Setting false expectations; not following through on expectations f)Not devoting proper mindshare to projects of importance to you E.g.: professional development opportunities g)Perception of differing interests (“Win-Lose”, Us vs. Them, etc.) h)Others (specify):_______________________________________ Did you let management know that you disagreed? Valentin Razmov Student Submission

11 Aug 2006CSE403, Summer'06, Lecture 23 Sources of Conflict between Students Who Work in Teams The most frequent sources of conflict we have observed in student teams: “free riding”, unequal work distribution making commitments but not following through on them ignoring the contributions of peers power struggles ego showing: (over)emphasizing one’s perceived technical superiority Valentin Razmov

11 Aug 2006CSE403, Summer'06, Lecture 23 Ideas for Preventing (Too Much) Internal Conflict Don’t take it personally (because it rarely is so) “Whenever anyone has offended me, I try to raise my soul so high that the offense cannot reach it.” -- Rene Descartes, philosopher and mathematician Ask questions to clarify, don’t assume you’re under attack “I’ve had many troubles most of which have never happened.” Learn to use the multiple possible responses to a request Agreement (“Yes”) Disagreement (“No”) Counter-offer (“How about we do X instead?”) Commit to commit (“I’ll get back to you by tomorrow.”) Learn to say ‘No’ – it takes practice. If ‘No’ is not a possible answer, then what does ‘Yes’ really mean? “I don’t know the key to success, but the key to failure is trying to please everybody.” -- Bill Cosby “It is kindness immediately to refuse what you intend to deny.” -- Publilius Syrus “Half the truth is often a great lie.” -- Benjamin Franklin Valentin Razmov