CMPT 275 Software Engineering - PowerPoint PPT Presentation

1 / 54
About This Presentation
Title:

CMPT 275 Software Engineering

Description:

... 'selecting chair person and minute taker' should always be items on an ... ( helps the minute taker to record the important 'stuff' resulting from the meeting) ... – PowerPoint PPT presentation

Number of Views:85
Avg rating:3.0/5.0
Slides: 55
Provided by: jr2
Category:

less

Transcript and Presenter's Notes

Title: CMPT 275 Software Engineering


1
CMPT 275Software Engineering
  • Course Information
  • FALL 2008

2
Best Sources of Information
  • Extensive information about course content and
    expectations for successful course completion can
    be found
  • By attending lectures
  • By reading the textbook and other suggested
    readings
  • By referring to the information and resources
    listed on the CMPT 275 website at
  • http//www.cs.sfu.ca/CC/275/jregan/

3
How is the course graded?
  • Midterm (October 20) 15
  • Project 50
  • Final (December 9) 35
  • To receive a grade of C- or above you must have a
    passing grade on the midterm and the final.
  • A passing grade is defined as
  • Midterm 0.15 Final 0.35 gt 0.50

4
How is the project graded?
  • Deliverable 1 - Planning 3
  • Client meeting 2
  • Deliverable 2 - Requirements 4
  • Client Requirements Review 2
  • Deliverable 3 - Requirements 5
  • Deliverable 4 User Manual 5
  • Deliverable 5 - Design 9
  • Deliverable 6 Implementation plan 2
  • Team presentation 3
  • Deliverable 7 Final project 7
  • User Acceptance Test 8

5
Out of class client Meetings
  • The client meeting, the client requirement
    review meeting and the user acceptance test are
    out of class meetings
  • All team members must attend these meeting
  • Any member missing one of these meeting will
    receive a grade of 0 for that meeting
  • These meetings will be scheduled early in the
    term (more later today) according to the
    timetables you provide to the instructor. Find
    links to schedules for these meetings at
    http//www.cs.sfu.ca/CC/275/jregan/assign.html

6
(No Transcript)
7
Team presentation
  • The team presentation is an in class presentation
  • Maximum 15 minutes
  • About testing and planning not the finished
    project
  • All team members must participate (non
    participation will result in a grade of 0 for the
    student who does not participate)

8
What are deliverables
  • Each of the Deliverables is a series of tasks
    (an assignment)
  • Each group demonstrates their understanding of
    the software engineering methods learned in class
    by working through the tasks within the related
    deliverable
  • Different phases or stages of the project are
    parts of different deliverables

9
Deliverable expectations
  • Detailed descriptions of each deliverable are
    already available on the course website
    http//www.cs.sfu.ca/CC/275/jregan/assign.html
  • Due dates for each deliverable are also given on
    this page
  • Each detailed description includes a summary of
    the expected content and an indication of how
    marks will be distributed
  • Except under exceptional conditions all team
    members will receive the same grade

10
Deliverable due dates
11
Example Deliverable description (1)
12
Example Deliverable Description (2)
13
Questions?
  • There will always be an opportunity to ask
    questions at the beginning of each lecture
  • If something is not clear to you during a
    lecture, ask about it immediately
  • If you need more individual interaction come to
    the instructors office hours or the TA's office
    hours to discuss points that are not clear
  • Email a question to the instructor or TA.

14
Questions?
  • Instructor and TA office hours and contact
    information is found at http//www.cs.sfu.ca/CC/27
    5/jregan/
  • Email instructions at
  • http//www.cs.sfu.ca/CC/275/jregan/emails.html/

15
Emails
16
Contact Information
17
Instructors Schedule
18
Preparing for lectures
  • A course overview and approximate schedule is
    given at
  • http//www.cs.sfu.ca/CC/275/jregan/notes.html
  • Read the suggested readings for the lecture and
    the posted lecture notes before class.
  • Think of any questions that may help you to
    clarify previous material at the start of the
    class, or to clarify new material during class

19
Readings and lecture notes
20
Other important information
  • There are general expectations for the
    preparation of deliverables. These can be found
    at
  • http//www.cs.sfu.ca/CC/275/jregan/delivprep.html

21
Academic Dishonesty
  • Any work submitted by your group must be the
    original work prepared by that group
  • Any information, code, etc. that is not original
    must have its source cited
  • Failure to follow these simple rules will result
    in penalties appropriate to the seriousness of
    the offence http//www.cs.sfu.ca/CC/275/jregan/Ac
    adHon.html
  • SFU Academic Honesty policies can be found at
    http//www.sfu.ca/policies/teaching/t10-02.htm
  • http//www.sfu.ca/policies/teaching/t10-01.htm

22
CMPT 275Software Engineering
  • Forming Teams
  • Basic Project information

23
Material - 1
  • Software Engineering techniques
  • How to organize and manage a development project
  • How to work in teams
  • Software life cycle

24
Material - 2
  • Design and documentation techniques used at each
    stage of software development
  • Project Planning
  • Requirements gathering, specification, analysis
  • Design, High level and low level
  • Implementation
  • Testing
  • Maintenance

25
Material - 3
  • An introduction to
  • Software project management
  • Quality Assurance
  • Configuration management

26
To be discussed today
  • What is your term project?
  • Team Formation
  • Management Roles
  • Software Development Leadership Roles
  • Team Communication
  • Weekly team meetings
  • Working in Teams

27
Starting your project
  • Project description is posted at
    http//www.cs.sfu.ca/CC/275/jregan/Project.html
  • The project description has been written from a
    clients perspective.
  • Outlines the functionality the client needs to
    accomplish her task
  • Does not describe how to do the project
  • Keep in mind that the initial project description
    is often incomplete or even inconsistent.

28
Project client constraints
  • Platform -gt Windows
  • Language -gt Java
  • GUI -gt Java SWING (or AWT)
  • Database
  • MS SQL or
  • custom data storage solution

29
Project Team Formation
  • Each project team will have 5 or 6 members
  • Today you will choose partners
  • Each pair or unpaired single student will send
    one email to the instructor with the following
    information
  • student names (as they appear in goSFU)
  • student numbers and email addresses
  • List of courses being taken by each student

30
Timeline Team Formation
  • Each pair or single student should send the
    instructor their email by 430 PM Thursday
    September 4
  • If I do not receive an email from you by this
    time I will assign you to a group.
  • You will be informed of the members of your group
    by email before Thursday September 4 at 930 pm.
  • Group lists will also be posted in class on
    Friday September 5

31
Management Roles - 1
  • Project Progress manager
  • Keeping track of progress of projectby updating
    the project schedule
  • Caucus manager
  • Set up and maintain Caucus
  • External Communications manager
  • Liaison between your team and client/instructor

32
Management Roles - 2
  • Configuration manager
  • Create document skeleton format layout, font,
    etc.
  • Setup/maintain the software version control and
    project development environment
  • Internal Communication manager
  • Setup and maintain any communications tools used
    by the team (emails, chats )
  • Ensure that minutes and agendas are posted to
    Caucus in a timely manner

33
The Phase Leader Role
  • The phase leader is responsible for
  • Collecting the contributions of each team member
    during a particular phase
  • Assessing when contributions are not complete or
    not consistent with agreed upon standards,
    designs, or expectations
  • Monitoring progress on contributions and
    requesting or assigning additional tasks or
    revisions to contributions when necessary
  • Integrating contributions into a coherent
    deliverable

34
Team member's responsibilities
  • Each team member must
  • Take 1 management role
  • If your team has 6 members the member with no
    management role must be phase leader for more
    than one phase
  • Be phase leader for at least one phase of the
    software development process.
  • Take part in all phases of the project
  • Work on all aspects of the project
    (documentation, coding, design )

35
First team meeting
  • The agenda for the first team meeting will be
    distributed to you at the beginning of Friday's
    class. You can see it now at
  • http//www.cs.sfu.ca/CC/275/jregan/Team_Meeting_1
    _Agenda.html
  • Your first team meeting will be held in class at
    the end of Friday's class. Be sure to be in class
    on Friday so your schedule will be available when
    out of class group meetings with the instructor
    are scheduled

36
Tools for good Communication
  • Using your Caucus Site effectively
  • a "group email" for your group only
  • Weekly meetings
  • Frequent discussions with your teammates
  • The help mailing list
  • Reaches the TA's and the instructor
    cmpt-275-d1-help_at_sfu.ca

37
Caucus
  • Uses for your caucus Site
  • Posting of contributions to deliverables,
    agendas, minutes etc
  • Forum for online discussion of project tasks
  • Ease information sharing amongst the team members
  • TA and instructor will post comments about
    meetings (client meeting, client requirements
    review, UAT) and your marked deliverables to your
    caucus site.
  • TA and instructor must have write access

38
Caucus
  • Additional uses for your caucus Site
  • Your Caucus site documents your progress.
  • Make sure you post all your own contributions to
    deliverables on the caucus site
  • Make sure you agree with what is posted in the
    minutes, or document (post) your disagreement and
    the reason for it on Caucus
  • Contents of your Caucus site may be used in
    dispute resolution between team members

39
Weekly Team Meetings
  • Your team must meet at least once a week
  • Agenda must be created for each meeting
  • Minutes must be taken for each meeting
  • Agenda and minutes of each meeting must be posted
    on your Caucus site
  • For each meeting you will need a chair and a
    minutes taker

40
Meeting roles
  • Chair or Facilitator
  • Prepare and distribute agenda
  • Keep the meeting on topic and on time
  • Make sure each team member participates
  • Note taker
  • Record attendance and the outcomes of discussions
    on each item in the agenda
  • Distribute meeting summary as soon after the
    meeting as possible

41
Weekly Team Meetings Term Project
  • Chair person and minute taker roles rotate
    throughout the semester
  • All team members experience these roles several
    times
  • Therefore "selecting chair person and minute
    taker" should always be items on an agenda
  • Each team member must be prepared when going into
    a meeting
  • be ready to discuss status / progress of items
    you are responsible for
  • Be beady to discuss new items

42
Content of Agenda
  • Meeting location, time, audience
  • Objectives and preparation
  • Preparation that should be competed before
    meeting
  • What do you wish to accomplish
  • Status Allocated time for status reports
  • Report on specific action items (in progress)
  • Discussion Items Allocated time for discussion
  • List of issues scheduled to be discussed and
    resolved
  • Be specific in your list and allocate time for
    each issue
  • Wrap Up allocated time for wrap up
  • Review assignment of new action items

43
During the meeting
  • STATUS Progress Review of project
  • Review work produced before meeting
  • What deadlines have been met?
  • What deadlines have been missed and why?
  • How do missed deadlines effect the project?

44
During the meeting
  • DISCUSSION ITEMS For each agenda item
  • Bring up and discuss problems and roadblocks
  • Brainstorm solutions
  • Identify and solve any resulting conflicts
  • Identify and distribute new work
  • Identify risks and create plan to deal with those
    risks

45
Role of Chair - 1
  • Before the meeting
  • Request agenda items from team members
  • Create an agenda
  • Make the agenda available to the rest of the team
    before the meeting. The agenda should be
    distributed at least two days before the
    meeting.

46
Role of Chair - 2
  • During the meeting (Status and discussion items)
  • Starts the meeting
  • Ensures that each agenda item is discussed within
    time allocated
  • Summarizes key issues during discussion and
    summarizes the consensus decision at the end of
    the discussion.
  • Invites other members to have their serious
    objections to the consensus decision recorded

47
Role of Chair - 3
  • During the meeting (Status and discussion items)
  • Ensures that each team member had a chance to
    voice opinion.
  • All members should come prepared, have opinions
    comments about the agenda items
  • The chair should encourage quiet team members
  • The chair should politely thank long-winded team
    members

48
Role of Chair - 4
  • Close the meeting (Wrap up)
  • Summarize decisions
  • Ensure that each member understands her/his tasks
    and associated deadlines
  • Ask other team members if there is anything else
    that should be included in the summary, or any
    disagreement with the chair's interpretation of
    the consensus on decisions. (helps the minute
    taker to record the important stuff resulting
    from the meeting)

49
Minute Taker
  • Minutes record what happens during a meeting
  • To be most useful minutes should be available
    soon after the meeting (lt2-3 days)
  • Make sure that the minutes are posted to caucus
  • Meeting minutes are often ALL that is seen by a
    manager not present at the meeting. Provide
    useful information in your minutes but be concise

50
Minute Taker
  • Make sure your minutes include
  • Date, time, duration and place of meeting
  • List present/absent team members
  • Indicate if a team member was present for only
    part of the meeting (and which part they were
    present for)
  • Record the facilitator and minute taker for the
    next meeting

51
Minutes
  • Make sure your minutes for each item include
  • A brief explanation of each item
  • A brief summary of general opinion (consensus
    decision) about the item
  • Any assigned tasks arising from the item
  • Any serious objection to the consensus decision
    and the team member making the objection
  • Has any part (all) of the item been deferred to a
    later meeting?

52
Example Agenda items 2nd meeting
  • Allocate manager roles and software development
    leadership roles
  • Discuss project schedule and risks as outlined
    for Project Deliverable 1
  • Create schedule of internal deliverables
  • Select chair person for next meeting
  • Select minute taker for next meeting

53
Obstacles to Effective Meetings
  • Dysfunctional communication
  • silence or domination
  • failure to listen to others
  • Not adhering to the agenda (going over time, or
    straying off topic)
  • Vague or poorly prepared agenda
  • How do you know if you are off topic if the topic
    is not clearly defined in the agenda

54
Working in Teams
  • Be conscientious about due dates
  • Be respectful of ideas of others
  • Always prepare and be on time for meetings
  • If you are less able to work on the project at a
    particular moment of the semester, either due to
    sickness, midterms, etc..., you must bring this
    issue up during a meeting and discuss it with
    your team
  • If you are sick, get better! Then make sure you
    make up for lost time by catching up with the
    project and doing extra work
Write a Comment
User Comments (0)
About PowerShow.com