m253 team working in distributed environments -...

29
~1~ Kuwait10 May 18, 2013 1. Project Logs ......................................................................................................................................................................... 3 2. Working at Distance ............................................................................................................................................................ 4 3. Communicating, cooperating and collaborating online ..................................................................................................... 6 4. Team Organization .............................................................................................................................................................. 8 5. Team Formation .................................................................................................................................................................. 9 6. Reflective Practice ............................................................................................................................................................. 11 7. The Systems Approach ...................................................................................................................................................... 13 8. Project Planning and Scheduling ....................................................................................................................................... 14 9. Specifying Requirements .................................................................................................................................................. 16 10. Producing a Team Response ........................................................................................................................................... 17 11. Information Gathering .................................................................................................................................................... 19 12. How to Decompose a Problem ....................................................................................................................................... 20 13. Negotiation Skills............................................................................................................................................................. 22 14. Risk and Contingency Planning ....................................................................................................................................... 25 15. Team Roles ...................................................................................................................................................................... 26 16. Making Decisions ............................................................................................................................................................ 27 17. Writing a Report .............................................................................................................................................................. 28 18. Constructive Criticism ..................................................................................................................................................... 29 M253 Team Working in Distributed Environments (Final – Second Semester 2012/2013)

Upload: vuthuan

Post on 07-Mar-2018

219 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: M253 Team Working in Distributed Environments - …etihadaou.com/wp-content/uploads/2015/12/Summarize.pdfTo express oneself in such a way that one is clearly understood. Methods of

~1 ~

Kuwait10 May 18, 2013

1. Project Logs ......................................................................................................................................................................... 3

2. Working at Distance ............................................................................................................................................................ 4

3. Communicating, cooperating and collaborating online ..................................................................................................... 6

4. Team Organization .............................................................................................................................................................. 8

5. Team Formation .................................................................................................................................................................. 9

6. Reflective Practice ............................................................................................................................................................. 11

7. The Systems Approach ...................................................................................................................................................... 13

8. Project Planning and Scheduling ....................................................................................................................................... 14

9. Specifying Requirements .................................................................................................................................................. 16

10. Producing a Team Response ........................................................................................................................................... 17

11. Information Gathering .................................................................................................................................................... 19

12. How to Decompose a Problem ....................................................................................................................................... 20

13. Negotiation Skills ............................................................................................................................................................. 22

14. Risk and Contingency Planning ....................................................................................................................................... 25

15. Team Roles ...................................................................................................................................................................... 26

16. Making Decisions ............................................................................................................................................................ 27

17. Writing a Report .............................................................................................................................................................. 28

18. Constructive Criticism ..................................................................................................................................................... 29

M253

Team Working in Distributed Environments

(Final – Second Semester 2012/2013)

Page 2: M253 Team Working in Distributed Environments - …etihadaou.com/wp-content/uploads/2015/12/Summarize.pdfTo express oneself in such a way that one is clearly understood. Methods of

~2 ~

Part 1

Page 3: M253 Team Working in Distributed Environments - …etihadaou.com/wp-content/uploads/2015/12/Summarize.pdfTo express oneself in such a way that one is clearly understood. Methods of

~3 ~

1. Project Logs Definition: Place (physical or electronic) in which you record your notes, and ideas about project. Different types of information in our log:

1. Factual information. 2. Development ideas, plans and designs.

3. Reflection on experiences. 4. Others.

Why it important?

1. To support you in your work. 2. To helps you remember facts, Information, sources, and results.

How to use it? (By Hohmann)

1. Keep your notebook with you at all times.2. Use your project log. 3. Write legibly, preferably in ink.

4. Review your notebook regularly. 5. Keep accurate dates.

What to include in it? Observation, descriptions, sketches, impressions, ideas, opinion, and sources of information. What NOT to include in it? General diary, be written in different places, include everything that happens whether relevant or not, and wander from the subject. How to make sure that your entries are complete? (Journalist's five Ws)

1. Who. 2. What.

3. When. 4. Where.

5. Why/How.

Type 1. Paper Log 2. Electronic Log 3. Laboratory Notebooks

Ex. Loose-leaf folder. Bound journal-style notebook.

Word processor. Diary program. Online (blog, or MySuff).

Most common type. Used to record details of experiments carried out in the laboratory. Can be accepted as legal proof.

Adv. Durable. Convenience. Easily to make an entry.

Ease copy-and-paste information. Ease search. Ease to make backup. Check spelling.

Blog: A personal website on which an individual makes regular entries. Advantages: Time and date stamped, can be tagged with keywords, and searchable. Disadvantages: Entries can be edited, and able to read by anyone.

Dis. Difficulty of making backup. Difficulty of search. Pages can easily fall out. The extra pages cannot be added.

Not availability like paper. The permanence of the data.

البيانات دوام

Page 4: M253 Team Working in Distributed Environments - …etihadaou.com/wp-content/uploads/2015/12/Summarize.pdfTo express oneself in such a way that one is clearly understood. Methods of

~4 ~

2. Working at Distance Team: A group of people who have shared goals and a common purpose. Virtual Team: Members who live far from each other, work for different organizations, meet rarely, and collaborate electronically. Three practices to the success of virtual teams:

Exploit diversity within the team (innovative and creative solutions).

Use technology to simulate reality (email. conference calls, Wiki).

Work on holding the team together (via communication). Categories of communications media (Olson and Olson):

Co-located موقع مشترك

Same physical environment (ex. meeting room).

Support the discussion. (ex. use shared surfaces).

Visible مرئي

Participants are visible to each other.

Body language to communicate & through speech, and diagrams.

Audible سمعي

Participants use speech to communicate.

Synchronous متزامن

All participants participate in the meeting at the same time.

Simultaneous في وقت واحد

Both speakers can send and receive messages at the same time (ex. face-to-face meeting).

Electronic mail is NOT simultaneous.

Sequential تسلسلي

Communication that is simultaneous such as speech is easier to follow since it is always heard in the correct sequence.

Permanent Record سجل دائم

If a permanent record of the discussion is kept then you can review each other’s messages.

It is helpful to refer back to earlier discussion.

Telephone conversations are ephemeral (no permanent record kept).

Revisions Possible تنقيح/مراجعة

The ability to revise a message before it is sent gives people the opportunity to compose carefully what they are going to say.

Categories of communications media: Co-located Visible Audible Synchronous

Simultaneous

Sequential

Permanent Record

Permanent Record

Face-to-face Telephone Video Internet Telephony

IM Voicemail Wiki Email Forum Phone Text

Page 5: M253 Team Working in Distributed Environments - …etihadaou.com/wp-content/uploads/2015/12/Summarize.pdfTo express oneself in such a way that one is clearly understood. Methods of

~5 ~

Part time study and team working: Issues that your team will have to be aware of in communicate and collaborate?

The difficulty of scheduling synchronous meetings.

Recognizing that progress may be slow.

Allowing extra time for decision making .

Not dependent on working very closely with remote team members. The rules and norms:

How many times should members check their emails and forums.

What is the most suitable communication media is going to use.

Page 6: M253 Team Working in Distributed Environments - …etihadaou.com/wp-content/uploads/2015/12/Summarize.pdfTo express oneself in such a way that one is clearly understood. Methods of

~6 ~

3. Communicating, cooperating and collaborating online Communication:

The exchange of thoughts, and messages as by speech, signals or writing.

To express oneself in such a way that one is clearly understood. Methods of communication:

1 Way: Memo, fax ,e-email, letter, voice mail.

2 Ways: Phone call, chat, in-person. Collaboration: Cooperative arrangement in which two or more parties work together towards a common goal. Collaboration in higher education: Discussion boards gain a higher knowledge of a topic from a diverse group of people. Electronic Collaboration Tools: 1. Forum:

Forum is a place where people can start communication and reply to others.

Helps us in many different ways to support the team communication. Allows users to post questions or discussion topics.

2. Wiki:

A collaborative website that allows visitors to change or add contents.

Easy for anyone to contribute pages, and link them together.

Makes the perfect online collaboration tool.

The most important characteristics:

If team member writes a document and circulates it to the rest of the team. They may then get back multiple modifications to pull together into an updated version.

Only one person can edit a section of a wiki page at any given moment in time.

The major drawbacks:

Not very easy to follow the potentially large number of changes made to a page over time.

If you do not save the work after previewing it, the system will just lose all your work.

Notes:

Only one person can edit a section of a wiki page at any given moment in time.

It easier to use the wiki comments facility for commenting on the actual contents of each wiki page..

When you have added content to a wiki page, the system lets you preview it.

You can delete work entered by other people. 3. Instant messaging/ Audio or video conferences:

There are two key points while using, other communication tools:

A summary of what you discuss must be relayed back to the forum/wiki so that everyone in the team know what is going on.

You must obtain team agreement about the use of additional modes of communication.

Page 7: M253 Team Working in Distributed Environments - …etihadaou.com/wp-content/uploads/2015/12/Summarize.pdfTo express oneself in such a way that one is clearly understood. Methods of

~7 ~

Instant messaging: A form of real-time direct text-based communication between two or more people using shared software clients.

Advanced Instant Messaging:

Allow enhanced modes of communication (live voice or video calling).

You can format your text, past in images.

More flexible than face-to-face meetings.

You can accept or decline invitations to join discussions.

Disadvantages:

Cannot do for you decisions making.

One way of initiating a discussion. Netiquette:

Remember that you are talking to real people.

Keep your messages short.

Give your messages a descriptive subject line.

Summarize messages when replying to them.

Check the sender before quoting from private email.

Credit other people’s work.

Avoid writing all in CAPITALS.

Send your messages to the right place.

Page 8: M253 Team Working in Distributed Environments - …etihadaou.com/wp-content/uploads/2015/12/Summarize.pdfTo express oneself in such a way that one is clearly understood. Methods of

~8 ~

4. Team Organization Three types of teams:

Functional teams: Teams members from same department.

Cross–functional teams: Teams may have members from different departments .

Project teams: These are often put together in order to undertake a task that is too large or complex. Team structure (depends on the size of the project, small (6 to 8 members) or large):

Democratic All members are involved in making decisions.

Decision are made by consensus, or by vote.

There is minimal hierarchy within the team.

No team leader. Benefits:

They have high morale.

They can be very productive.

Hierarchical There is team leader or manager who makes decisions.

Team leader is the person who has the most experience.

Common in large companies.

Decisions are made high in the chain.

Ego – less (Everyone does everything )

No one owns or has any control of any of the tasks.

Decision making has to take place by consensus. اإلجماع

If team members have different talents , this kind of teams will not make the best use.

Team roles: األدوار The work under the team falls into two main categories:

Working on the task that the team has been assigned.

The management tasks (to make the team function effectively).

Team leader: Every team need leader.

In democratic teams: someone has to take the responsibility to clarify the aims of the meeting.

In hierarchical team: the leader is someone has strong leadership.

Record keeper: Takes notes in meetings.

Keeps a record of what decisions have been taken, who is doing what, and the date of the next meeting.

A summary of the meeting will be circulated to the rest of the team.

Rep. coordinator Coordinating the production of team documents and reports.

Progress chaser Monitor progress, ensuring that everyone is doing what they are supposed to, and all tasks need to be completed before deadline.

Time keeper Monitors how long is spent on each item in face-to-face meetings.

Technical director

Advise the team upon technical issues.

Process consultant

Giving advise on the process of working in a team

Monitor the way the discussions and advise the team on ways to be improved.

Client liaison Dealing with external organizations.

Page 9: M253 Team Working in Distributed Environments - …etihadaou.com/wp-content/uploads/2015/12/Summarize.pdfTo express oneself in such a way that one is clearly understood. Methods of

~9 ~

5. Team Formation Team formation/Tuckman’s mode: The stages of team development that it identifies:

Teams come together in order to carry out a project.

The team is formed at the beginning of the project. Stages in the development of teams : Many teams develop in the same way and to follow a predictable pattern of formation. As a member of a team, if you know what the pattern :

You can understand what is going on.

You can take appropriate actions.

You can try to avoid doing anything inappropriate.

Stage Features

Forming تشكيل

Team members try to get to know each other.

The team attempts to understand the task/project.

Individuals will be trying to work out what role they want to play.

The team will also begin to establish some rules.

For a distributed team:

You may experience some anxiety and uncertainty.

There is a feeling of wasted time.

Be patient. It takes time for people to get to know one another.

Storming العصف الفكري

Shared discussion forum is easy for members who feel that they are on the receiving personal criticism to become defensive.

Which can lead them withdrawing from the discussion.

In order to draw them back in, it may require a personal, private approach (e-mail or a telephone call).

For a distributed team:

When communicating by electronic means, you lose much of the feedback.

Person’s body language and tone of voice are very expressive.

It is important to remember the advice given elsewhere about how to communicate effectively (netiquette).

Norming مقاييس

The team should reach agreement upon the process issues.

The team should agree on the team rules and team roles.

The team also reaches agreement upon the nature of the task.

For a distributed team:

A useful team rule to establish is the frequency with which team members should check the conference and e-mail (at least once a week).

Forming Storming Norming Performing Adjournin

Page 10: M253 Team Working in Distributed Environments - …etihadaou.com/wp-content/uploads/2015/12/Summarize.pdfTo express oneself in such a way that one is clearly understood. Methods of

~10 ~

Performing العمل

The focus of the team has shifted to the task that the team is undertaking.

Individuals know how to work with each other.

The team is in a much better position to solve problems. For a distributed team:

In a distributed team, you lack many of the informal cues that are important to keeping a team working productively (ex. what they are working on).

You have to give rather more explicit indications of how you are progressing.

It is helpful to let other know when you will be unable to work on the project.

Adjourning االنتهاء

There is a possibility that the team could become less effective as members regret the end of the task and the breaking up of relationships.

The task is completed, the project comes to an end and the team disbands.

For a distributed team:

In order to overcome this stage try to identify some means of keeping in touch and of keeping working relationships going (ex. by email).

Page 11: M253 Team Working in Distributed Environments - …etihadaou.com/wp-content/uploads/2015/12/Summarize.pdfTo express oneself in such a way that one is clearly understood. Methods of

~11 ~

6. Reflective Practice

Kolb's experiential learning: 4 major phases:

1. You start with experience. 2. You replay and interrogate the experience for meaning and reflect on questions. 3. You abstract and generalize from the experience and make hypothesis. فرضية 4. You test this hypothesis in new situations. Then off you go again on a new cycle.

Routine action and reflective action (Dewey): 3 major approaches can be identified in the current debate on the nature of reflective practice:

1. We have the idea of the experiential application (trying things out and observing). 2. We have the idea of knowledge –in action –of making knowledge. 3. We have the idea of reflection as critical enquiry in a more generic sense (questioning about aims and

effects). Time line for reflection process:

1. Reflection before action: We need to take some time thinking about why we are undertaking a task, and how much time and resources we expect to have. 2. Reflection during action: While proceed we may find that our subconscious is active in parallel and the useful ideas occur to us a result of what actually happens. 3. Reflection after action We have the opportunity to ask ourselves such questions as whether the products of activity are of an acceptable quality, what went well and why, and what did not go well and why.

The need for evidence:

Successful reflection is based on the collection of evidences and conclusions based on facts.

You need to select relevant evidence and incorporate it into your evaluation of what you produced.

Page 12: M253 Team Working in Distributed Environments - …etihadaou.com/wp-content/uploads/2015/12/Summarize.pdfTo express oneself in such a way that one is clearly understood. Methods of

~12 ~

Learning from our mistakes (Hodges): 4 major reasons for failure:

1. Many people didn't set clear goals. 2. People didn't handle the information available to them. 3. People tended to act on impulse rather than thinking before. 4. People failed to observe what they were doing.

Reflection on reflection:

If you have developed an organized and well-documented approach to your reflective activities then you should be able to stand back and look for ways in which the process itself can be improved.

Page 13: M253 Team Working in Distributed Environments - …etihadaou.com/wp-content/uploads/2015/12/Summarize.pdfTo express oneself in such a way that one is clearly understood. Methods of

~13 ~

7. The Systems Approach What is a system? A system is a bounded entity, which in its environment achieves a definite objective through the interaction of its component parts.

A system has a boundary Limitations, physical/functional boundary.

A system has an environment Political or social factors outside system boundary.

A system has components Subsystems.

A system has an interface Set of rules for how a system interacts with the environment.

A system has structure Hierarchical structure of subsystems within the system.

A system has synergy The way in which the combined subsystems behave as a whole. Emergent: is unexpected or unpredictable resulting behavior from collaboration.

A system has a purpose A system has been created to does something.

Check land's Soft Systems approach: To answer the overall question "what is the system about?" we need to:

Start by providing answers to a number of important questions.

Investigate the problem situation in the real world prior to any modelling of the situation in the system world.

Gathering factual material and presenting it in such a way that it provides an overview of the underlying complexity of the situation (simple diagrammatic representations/rich pictures).

Then, we enter the system thinking world and construct a root definition of the system

A root definition, describes what the system is and what it aims to achieve.

To ensure all the relevant aspects of the system are present CATWOE is used: o Client o Actors o Transformation

o World view o Owner o Environment

A few questions to start you off on the process:

Who is your system for? (who the customers are, and what their needs are).

What does your system have to do? (the purposes/goals of the system). What is the context of the system? (environment, boundaries ,and other systems).

Page 14: M253 Team Working in Distributed Environments - …etihadaou.com/wp-content/uploads/2015/12/Summarize.pdfTo express oneself in such a way that one is clearly understood. Methods of

~14 ~

8. Project Planning and Scheduling Setting a schedule/Determining what to do by:

1. Decomposing the goal of the project into smaller units. 2. Identify tasks by using "Work Breakdown Structure - WBS" technique. 3. Estimating duration. 4. Determining order. المهام ترتيب 5. Determining deadlines.

Why people are different in their estimation for the time؟

Not familiar with the task.

Forget to take into account unexpected events.

Fail to take account of the work complexity. Advanced techniques for planning a project. CPA: Critical path analysis.

Analyzing the identified tasks. المميزة

Determining all the relationships between tasks to produce a graphical representation of the project as a network

Identifying within that network a critical path. PERT: Project Evaluation and Review Technique.

It takes a more pessimistic view of a project. متشائم

Project planner produces a series of estimates for the duration of each task: o The shortest possible time a task will take. o The most likely time a task will take. o The longest time it might take.

Then applying a formula to estimate the duration.

Identifying tasks

Preparing a work breakdown structure:

A way of specifying in detail the work to be done by decomposing big tasks.

Guidelines for planner: o Splitting of major work into tasks should be logical. o Should be possible to test objectively.

Estimating duration

Make a list of the tasks.

Number the tasks.

List them down the left-hand side of a piece of paper.

Enter the time you estimate.

Page 15: M253 Team Working in Distributed Environments - …etihadaou.com/wp-content/uploads/2015/12/Summarize.pdfTo express oneself in such a way that one is clearly understood. Methods of

~15 ~

Determining order

Some tasks must be done before others can start, know predecessor tasks.

Any task that has no predecessor tasks is a candidate for the first task.

If there is no candidate for this because there are several such tasks, create a dummy task, such as start project with a duration of zero time to form a single beginning point.

Any task that has no successor tasks is a candidate for the last task.

If there is more than one candidate task, create a dummy task, such as end project with a duration of zero time, to form a single ending point.

Full graphical representation:

The sequence of tasks dictating the overall time required for this project is B to C to D to F to G to H to K to L (3 + 1 + 2 + 4 + 2 + 4 + 2 = 18 days).

Setting a schedule

There are two ways to set a schedule: o Finding a completion date. o Planning from a pre-determined completion date.

It is vital for the success of a project to allow time for:

Project management tasks Project planning tasks

liaison with others (customers) Meetings

Delays in communications Quality assurance tasks

Page 16: M253 Team Working in Distributed Environments - …etihadaou.com/wp-content/uploads/2015/12/Summarize.pdfTo express oneself in such a way that one is clearly understood. Methods of

~16 ~

9. Specifying Requirements Why do we need software requirements?

The hardest single part of building a software system is deciding precisely what to build.

No other part is as difficult to rectify later. To analyze a problem, we talked briefly about (vision document):

1. User needs (describe the issues concerning the scope of the problem.). 2. System features (the users' real needs and how the system will fulfills those needs). 3. Use cases (way to describe how the user will interact with the system).

Categories of requirements:

Functional What the inputs are.

What the outputs are.

What transforms are necessary.

Non-functional Aspects of the overall quality of the system (ex. security).

Design constraints Restrictions on the design of a system to meet external technical or business obligations (ex. blind users).

User interface Systems that involve a significant amount of user interaction.

How do we document requirements/software requirements specification?

It should be equally meaningful to the stakeholders (ex. customers, the project managers).

It acts as a source of reference and as the basis for any development contract. MoSCoW rule (Dai Clegg): Acronym for prioritising requirements at the design stage: األولوية إعطاء

Must have applies the fundamental requirements.

Should have mandatory requirements would still be usable and useful.

Could have valuable requirements if time and money allows them to be.

Won't have applies to other requirements identified as potentially valuable enhancements.

Page 17: M253 Team Working in Distributed Environments - …etihadaou.com/wp-content/uploads/2015/12/Summarize.pdfTo express oneself in such a way that one is clearly understood. Methods of

~17 ~

10. Producing a Team Response What we mean by a team response ? An agreed position on an issue or question that the team has been asked to address or research. There are two major stages to producing a team response:

The team has to reach agreement on the issue.

The team has to document this team response. The steps involved in producing a team response document:

1. Begin with a period of open discussion in order to generate ideas. 2. Team members may provide background information for the team response document. 3. Discuss the outcomes of your research in order to agree upon your team’s position. 4. Draft an outline for the document and decide who is going to write which sections of the document. 5. Writing the document comes next, followed by cycles of editing and reviewing. 6. The agreed response document has now been completed by the team.

Collaborative writing:

One person writing the whole document on behalf of the team.

Combine effort writing, members of the team write different parts of the document.

Collaborative writing, several team members work on the text of the report together. The model you choose depends on a number of factors:

The size of the response document.

The independence of different parts of the document.

The skills of different team members. Which document format to use? We should try to standardize on the same set of software programs, in order to avoid the problem of incompatibility. The role of the Report Coordinator:

1. The responsibility for planning and coordinating the production. 2. Writing the first draft of the document. Then, circulate this draft for revision by the rest of the team. 3. Managing versions of the report.

Version control: It useful to keep earlier versions in order to maintain a record of the major changes that you have made. Track changes: Most word processors have a facility to automatically record changes that are made to a document while you are editing it. This facility called Track Changes in Microsoft Word.

Page 18: M253 Team Working in Distributed Environments - …etihadaou.com/wp-content/uploads/2015/12/Summarize.pdfTo express oneself in such a way that one is clearly understood. Methods of

~18 ~

Part 2

Page 19: M253 Team Working in Distributed Environments - …etihadaou.com/wp-content/uploads/2015/12/Summarize.pdfTo express oneself in such a way that one is clearly understood. Methods of

~19 ~

11. Information Gathering The need for information

Important aspects of successfully carrying out: o Ensuring that you are working on the correct problem. o Ensuring that you have the correct information.

In order to achieve all this you have to collect, evaluate and organize information from a variety of sources.

Getting everything 'right first time' is generally an unrealistic target. What sort of information are you looking for?

Identify the potential users.

What the system's objectives?

What features are expected?

How users will access these features? Acquiring Information:

The approach you take to gathering information will depend on the time and resources available to you.

You have to collect this information before analyzing it.

Literature searches البحث

Used with new/unique systems which has no similar systems.

Examples: textbooks, journals, reports, and World Wide Web.

Evaluation of existing systems تقييم أنظمة قائمة

Access existing systems of a similar nature.

Some of these will be equivalent manual or paper-based activities.

Analyze the information they contain, and the processes they involve.

You may also find that accessible electronic versions of the sort of system you are proposing to build already exist.

Interviews المقابالت

Identify a wide range of people who are involved as potential users.

Asking them for their opinions on the nature and scope of a solution to the problem.

The questions that you ask them may well affect the answers that you get.

Questionnaires استبيان

After the initial investigation and interviewing, put down on paper some of your thoughts and queries.

Questionnaires can be used to get responses from a larger group of people.

Questionnaires contain fixed set of questions set out in formalized document.

The sets of potential responses, will affect the results that you achieve.

Focus groups مجموعات التركيز

Getting a group of people together to discuss the problem area.

The face-to-face interactions often provide a mechanism for getting everyone to think a little more widely.

This will lead to improve the overall coverage of the problem.

Observation المالحظة

Access to some similar systems and have a few people to help.

Ask them to use the systems while you watch and observe.

This offers relevant information than interviews or questionnaires, because it based on reactions.

Page 20: M253 Team Working in Distributed Environments - …etihadaou.com/wp-content/uploads/2015/12/Summarize.pdfTo express oneself in such a way that one is clearly understood. Methods of

~20 ~

12. How to Decompose a Problem Breaking down a large problem into a collection of more manageable sub-problems. To identify the problem:

Consider on what the system will do rather than how it will do it.

Consider the problem from the point of view of the user

If we did not identify the right problem from the beginning, we may build software that correctly solves the wrong problem.

Problem Frames (by Michael Jackson):

Attempt to identify and describe a recurring situation, to define a simple problem class.

The benefit from this that the developer can use his existing list of problem frames as a guide, looking for aspects of the overall problem that might fit a given frame.

Jackson makes a distinction between the wider system (where the problem resides) and the narrower system (where the solution will reside/machine)

He also makes a distinction between analytic and analogic models. o Analytic: Describing the system in the outside world. o Analogic: Describing the system inside the computer.

There are five basic problem frames that Jackson mentioned in his book: The Required Behavior frame

Capture the idea that there is some part of the physical world whose behavior is to be controlled so that it satisfies certain conditions.

The problem is to build a machine that will impose that control.

Example: A controller for a set of one-way lights to manage the traffic flow at some road works.

The Commanded Behavior frame

Capture the idea that there is some part of the physical world whose behavior is to be controlled in accordance with commands.

The problem is to build a machine that will accept the operator's commands.

Example: A controller for video player.

The Information Display frame

Capture the idea that there is some part of the physical world about whose states and behavior certain information is continually needed.

The problem is to build a machine that will obtain this information from the world and present it.

Example: A car dashboard display.

The Simple Workpiece frame

Capture the idea that a tool is needed to allow a user to create and edit a certain class of computer process.

The problem is to build a machine that can act as this tool.

Example: A tool to create and update information on an individual's product.

The Transformation frame

Capture the idea that there are some given certain required outputs.

The problem is to build a machine that will produce the required outputs from the inputs.

Example: A program to analyses the data relating to an individual's supermarket shopping bills and to identify purchasing patterns, so that a set of special vouchers can be generated.

Page 21: M253 Team Working in Distributed Environments - …etihadaou.com/wp-content/uploads/2015/12/Summarize.pdfTo express oneself in such a way that one is clearly understood. Methods of

~21 ~

Heuristics ( مهني حدس ): The benefits of a good decomposition of a problem are:

Helping you to understand the problem.

Helping you to describe the problem.

Helping you in your attempts to solve the problem. Possible heuristics include the following:

1. Identify the core problem. 2. Identify the sub problems. 3. Use standard decompositions of sub-problems. 4. Identify common concerns and difficulties. 5. Look for sub-problems with different tempi.

6. Look for sub-problems with different moods. 7. Look for residual complexity (Sub-problem to

sub-problems). 8. Investigate any need to model users.

Assessing the decomposition (التقييم):

1. Each one is smaller and easier. 2. Each one should be a complete problem in their own right. 3. They should also be complete as a set. 4. The sub-problems need to interact with each other.

Jackson points out that at the initial stage of problem decomposing you usually find yourself creating several potentially overlapping projections of the original problem (different views of the problem) rather than partitioning your problem into totally independent sub-problem.

Needs and features (by Dean Lenffingwell):

To focus on the users need (stakeholders) from the system.

The purpose of the requirements definition phase of system development is to answer "What is this system supposed to do?"

He distinguish between the real needs of the stakeholder and the features of a system.

He defines: o Stakeholder need:

A reflection of the business personal or operational problem that must be addressed. o Feature:

A service that the system provides to fulfill one or more stakeholder needs. o Use case: o The description of a sequence of actions, performed by a system.

He emphasizes the fact that these features are direct response to the problems indicated by the stakeholders (top-level solution to the problem).

Page 22: M253 Team Working in Distributed Environments - …etihadaou.com/wp-content/uploads/2015/12/Summarize.pdfTo express oneself in such a way that one is clearly understood. Methods of

~22 ~

13. Negotiation Skills

1. Overview:

You need to negotiate about plans, time Table, and roles.

Negotiation can be very important to group trying to work effectively together.

Well negotiated can make different between success and failure.

Negotiate can be: o Formal (meeting). o Informal (Phone, email).

2. What is negotiation? The process of satisfying needs by reaching agreement or compromise with others. 2.1 Anatomy of a negotiation: التفاوض تحليل

Negotiations always take place between two (or more) parties.

Each party will have an initial position (1), ideal outcome (2), and fallback position (3).

Page 23: M253 Team Working in Distributed Environments - …etihadaou.com/wp-content/uploads/2015/12/Summarize.pdfTo express oneself in such a way that one is clearly understood. Methods of

~23 ~

2.2 What is negotiation and why is it needed? Who does what? When it is done? What the priorities are? What sort of standards? How it is done?

General areas Possible issues Parties to negotiation

1. Resource Time, cost, equipment Individual needing

2. Schedule Priorities Order of activities, time, stages, deadlines Team members

3. Procedures Methods, roles, responsibilities Team members

4. People issues Getting team to perform, using skills needed Team members

3. Preparing to negotiate:

Each negotiation requires a different degree of definition, planning, and control.

If the negotiation is very informal, it is important to consider the following: 1. Who is to be involved in? 2. What are the concerns of each

individual involved? 3. What is the goal of the negotiation? 4. Is there a common understanding of

the goal?

5. What are the issues? 6. What must be agreed to? 7. How much flexibility does each party

have? 8. Is there a conflict? 9. How much time is available?

3.2 Skills negotiators need:

Listening skills Focus on content, not delivery (what is being said, not the way it is said).

Avoid emotional involvement (hear’ what is being said, not what you want to hear).

Avoid getting distracted. تسهو ال

Reading skills Required when exchanging letters or email.

Focus on content.

Different people may attach different meanings to the same term.

Objectivity Separate considerations of the problem from considerations of the people.

Recognize that there are multiple interests and needs involved.

Use objective criteria.

Look forward, not back. (Not placing blame).

Communication strategies

Be realistic. واقعي

Concentrate on the problem.

Acknowledge other party concerns.

Assertiveness الحزم

Assertiveness is not the same as aggressiveness.

It means effectively expressing one’s needs and opinions.

Also must considerate of others’ feelings and needs.

Page 24: M253 Team Working in Distributed Environments - …etihadaou.com/wp-content/uploads/2015/12/Summarize.pdfTo express oneself in such a way that one is clearly understood. Methods of

~24 ~

The outcome of the negotiating:

Win-win.

Win-lose.

Win-no lose.

No-lose (its worst result). 3.3 Tactics:

1. Sufficient preparation is one of the most important tactics (What the problem is? What the parties want?). 2. Do not weaken your case during negotiations (The other party spot on these points). 3. Choose a few strong points and stick to these. 4. Use questions to persuade your opponents (Make them to think). 5. Use questions to control the conversation by making your opponents respond to your question. 6. Having prepared questions can allow you to reduce the pressure on yourself (giving you time). 7. When using questions or suggesting solutions, clearly signal that this is what you are doing.

3.4 Keeping a negotiation on track and coming to a conclusion:

1. It is important to ensure that both sides clearly understand what is being proposed. 2. Keep everyone on the topic. 3. Summarizing from time to time (What stage? Current positions, Problem remaining).

Page 25: M253 Team Working in Distributed Environments - …etihadaou.com/wp-content/uploads/2015/12/Summarize.pdfTo express oneself in such a way that one is clearly understood. Methods of

~25 ~

14. Risk and Contingency Planning Murphy's Law: if anything can go wrong, it will. It is important to:

Identify the Risk

Finding out what can go wrong.

The most basic step is knowing what the desired outcome of the project is.

Think about the smaller activities (work breakdown structure).

Use pre-existing risk checklists or drawing up your own list.

Item Risk

Transport to airport Car breaks down, get lost

Baggage Left at home, left in taxi

Money Forgetting wallet, wallet stolen

Analysis the Risk

It impact on performance, cost, and schedule.

Involves making an estimation of how likely a risk is and what its impact.

And what its impact is likely to be?

Draw up a list of risks and rank it according to their impact and probability.

Risk orders (priorities): o High-impact = High probability o High-impact = Low probability o Low-impact = High probability

Risk Impact التأثير Probability حدوثها احتمالية

Traffic jam or accident High High

Get lost on the way Low Low

Car breaks down Medium Low

Management the Risk

Steps to prevent failures or limit damages. Different ways to manage risks:

Avoid the risk (Changing a task).

Reduce the risk (Allow of extra time).

Transfer the risk (Insurance).

Accept the risk.

Make contingency plans. o Draw up alternative plans. o Ask others to provide specific help. o Do nothing.

Page 26: M253 Team Working in Distributed Environments - …etihadaou.com/wp-content/uploads/2015/12/Summarize.pdfTo express oneself in such a way that one is clearly understood. Methods of

~26 ~

15. Team Roles Functional roles, such as:

Team leader.

Meetings secretary.

Planner.

Reporter. Members of a team contribute to the overall objective in at least two ways:

Individuals draw upon their own professional/technical knowledge (Functional role within the team).

Individuals can also play a team role applying. To insure that the team is making the best use of its member's skills (Skill Audit):

Each member of the team should summaries what skills they have.

This help you to identify the functional roles that each team member can take on.

Sometimes individuals may need to acquire external skills.

Skills acquisition task should appear as an additional task in the project plan. Belbin’s Team Roles:

It is a system for identifying and classifying team roles.

Based upon observational studies.

Balance of the different roles between the members can have an impact on the team performance.

Belbin’s classification of nine team roles.

Each role has a list of typical features or characteristics that can be used to identify the role.

Each role also has a list of allowable weaknesses. The Belbin’s team roles list is:

1. Planner 6 مخطط. Shaper محسن

2. Implementer 7 منفذ. Team worker عامل

3. Completer 8 متمم. Coordinator منسق

4. Monitor 9 مراقب. Specialist متخصص

5. Resource investigator محقق

Notes:

Individuals may change their roles.

If certain roles within the team are missing then other team members can play these missing roles.

Roles may change over time as people gain new experiences. Belbin roles and successful teams

The composition of team roles was important to the success of the team.

Successful teams tended to have members with a balance of roles. Belbin identified between successful and less successful teams.

Successful teams were those that tended to have the following team roles: a good coordinator, a strong planner, and a monitor.

Less successful teams had a major imbalance of team roles, such as a team that had a coordinator and two or more dominant shapers.

Page 27: M253 Team Working in Distributed Environments - …etihadaou.com/wp-content/uploads/2015/12/Summarize.pdfTo express oneself in such a way that one is clearly understood. Methods of

~27 ~

16. Making Decisions Overview:

Making decisions is the most important thing we do.

We are rarely given time to think about the process of preparing to make a decision. Thus, we make "snap" decisions.

Snap decision: a decision based on feelings and moods of the moment rather than careful consideration.

Under pressure, it may be necessary to make snap decisions. Steps before making decision:

1. Set deadline (when you must have made a decision). 2. Be sure you know what the problem is. 3. Determine what your options. 4. Consider these options. 5. Decide.

The four models for making group decisions:

Autocratic model استبداد

One person usually the team leader to make decisions on the group's behalf.

Drawback: Decision is taking without consultation.

Majority rules األغلبية

Doesn't mean that everyone agrees, but at least groups agreeing to agree by majority vote.

Drawback: if there is no majority, there needs to be some mechanism for breaking the deadlock.

Majority rules, minority writes a dissenting opinion

ة األغلبية مع تسجيل معارض األقلية

Minority writes what is known as a dissenting opinion.

Dissenting opinion: states what a different outcome could be and the arguments.

Consensus اإلجماع

The quicker model.

Describes the condition of being in complete agreement.

Reaching a consensus requires a number of conditions: o Being willing to accept that rejection of one’s own ideas is not

equivalent to rejection of oneself. o To find areas of common agreement. o Ensuring that those who do not agree have a chance to have their say. o Seeking to build on areas of agreement. o Willingness to continue the discussions until a consensus is reached. o Communicating as a decision only that which is supported by the

consensus.

It should be there someone who is responsible for discussing. This head has to achieve these conditions:

Make sure that every member is able to express an opinion.

Make sure that there are no personality differences.

Remind members about the value of the objectives.

Page 28: M253 Team Working in Distributed Environments - …etihadaou.com/wp-content/uploads/2015/12/Summarize.pdfTo express oneself in such a way that one is clearly understood. Methods of

~28 ~

17. Writing a Report

Report

Formal and structured piece of work that often gets out to answer set of questions or

Factual account of something that has been seen done or investigated.

1. Understanding Author and audience

2. Listening to, or reading Audience

3. Telling or writing Author

Purpose of a report:

To communicate information.

To explain or describe an idea. Conditions:

You have good understanding of the topic

Know the purpose of report.

Know how the audience will be. Common basic structure for reports:

Introduction.

Purpose of report.

Background information about topic.

Body of report.

Conclusion or summary. Process of drafting a report:

Some writers prefer to write a rough draft (only headings and brief notes) and then refine it.

Once you are happy with rough draft, it remains to put everything into plain English.

Now the process of writing becomes one of polishing.

You will need to check that you have the right level of detail in the report.

Rewrite your draft as needed.

Final check, the draft report should be well structured and well-polished.

At this stage, you should also see how the report looks: o Is it legible? o If it is a longer report? o Are there adequate margins? o Is white spaces used effectively?

Style and related issues of the report:

Report length.

Grammar & spelling.

Abbreviation.

Technical terms.

Slang.

Figures and tables.

Lists.

Page 29: M253 Team Working in Distributed Environments - …etihadaou.com/wp-content/uploads/2015/12/Summarize.pdfTo express oneself in such a way that one is clearly understood. Methods of

~29 ~

18. Constructive Criticism Introduction:

Constructive criticism that seeks to build better practice, standards, or results.

Constructive criticism should enable each person to improve his or her own practice and performance.

Constructive opposite is destructive. Constructive Criticism:

Important points: o Avoid making criticism personal. o Avoid emotive language. o Remember that constructive criticism achieving some improvement.

Emotive language: o Language can be neutral or emotive. عاطفي أو حيادي o Emotive language can be positive or negative. o language can be considered emotive or not:

Subjectivity versus objectivity. Facts versus opinions. Tone of voice. The functions of the chosen words in which they are used.

Giving constructive criticism: Identify the problem. Be certain what to say. Choose a good time. Give the recipient time to respond. Hear the person out. Mention the positive aspect. Not to mix negative and positive. Make positive suggestions.

Receiving constructive criticism: Remain calm, and relax. Try to receive the criticism as being helpful. Do not interrupt. Accept your critic’s viewpoint, and thanks them.

Responding to Criticism:

Allow time before responding.

If it is a warranted, acknowledge that.

If you think a criticism is unwarranted or wrong then: o Clarifying some facts. o Keep your tone unemotional.

Satisfactory Conclusion: A constructive criticism session designed to end in one of two ways:

An agreement no further action.

An agreement to carry out certain actions.