Open main menu

CDOT Wiki β

OOP344 Team Funktion

Revision as of 15:36, 11 November 2009 by Ljubo (talk | contribs) (11-10-09)

Team Funktion

SVN: ops344_093a04

Team Members

Last Name First Name Seneca Username Section Blog Url IRC Nick Current Task
Austerberry Eric erausterberry C Eric's Blog ericausterberry io_checklist
Chan Anton canton A AC's Blog canton io_edit
Cho Ahreum acho14 A Arum's Blog acho14 io_label
Gorscak Ljubomir gljubomir A Ljubomir's Blog ljubo io_menu
Li Verity vzli B Verity's Blog cubicu io_menubar
Pezeshki Neda npezeshki C Neda's Blog neda io_radio
Piltz Jonathan jmpiltz C Jon's Blog Mr_88 main
So Hyunju hso3 A Hyunju's Blog hso3 io_textedit

Contact Persons

Contact Name Email
Ljubomir Gorscak gljubomir@learn.senecac.on.ca
Jonathan Plitz jmpiltz@learn.senecac.on.ca

First IRC Meeting with Fardad - SVN steps

Our first meeting with Fardad was on Tuesday October 27, 2009 at 17:00. Our team experienced a few problems with SVN. A summary, and an edited transcription follows...

Summary

  • "Check out" the repository.
  • The code you are working on now will be in "trunk".
  • In PRJ you will have a directory called "DOS".
  • Put source codes inside PRJ. Everything.
  • There is one text file with "your_name.txt".
    • If something is important and you want your team to know about it, you change the date and write it in your_name.txt.

By the next meeting, we must have the full repository created made build-able with all the classes mentioned in as2 desc.

An (edited) transcription of the IRC meeting

Check Out the repository:

Create a dir, and either use svn check out by right clicking on the directory or type: svn co svn://zenit.senecac.on.ca/ops344_093a14/trunk/PRJ

You must cd to the directory you created first. It will ask for the user id and password then you start working with the copy you just checked out. Add files, modify already existing files and so on, when you are done with your changes, you right-click on the dir and click on "svn commit" or type svn commit. This will apply the changed you make to the repository.

Now what if someone already made changes to repository?

Easy: You just right-click on svn update or type svn update and this will apply the changes to YOUR working local copy is you want to see what is on the repository it is "svn list".

  • ljubo: Why did "export" mess things up so bad?
  • fardad: Well, what happened is that you created a repository inside a repository.

Lets understand this that there is a repository on zenit and you checkout working copies on your computer from that repository. The commands you use are mostly:

Check out (only once) and then update, commit, list when you commit your code to the repository.

You can always checkout your code to another computer and work on it and then commit, then when you go back to your computer at home, you simply do an update and all the changes you made at school, will be applied your code at home.

Lets go through the steps

1st - checkout the code from the repository.

You gotta have an organizer the one who makes sure the tasks are assigned properly, (I recommend you have the same as the contact person)

2nd - The organizer must add the following files to the repository.

The io_def.h with ciol.h included for cpp in there (with extern and everything) and a prjmain.cpp file with a main and 8 "sub-main" functions for each developer. You can call those functions like: int neda_main() or canton_main() and so on. The real main function (main) should use have only one function call in it to one of those sub-main functions.

Each of you can have his/her own main to test what they are developing and update and commit will not ruin other developer's main. The only thing you need to do after an update, is to change on function call in main.

3rd - choose the best ciol written and add it to the repository or m (all these are being added to the PRJ directory)

When I say add the file to repository, all you do is to add the file to your working copy and then issue svn add filename (or right-click on it and then svn add) and the svn commit. Remember when you add a file, it will be marked to be added on next commit.

4th - Each developer checks out the code and then adds a "your_name".txt to the Docs dir in PRJ. This file is used as a log to register all you do currently, most recent task is on top then the organizer will assign classes to each developer from the definition of assign 2.

All you do first is to create a header file and cpp file with the same name as the class name, and then build the working copy and make sure it compiles. When you reached to a build-able stage, you commit the code so other developers can get the class in next update.

NEVER COMMIT A CODE THAT DOES NOT COMPILE. Your PRJ must always be build-able.

You have your own main testing your own class, it is at the final stages of the project where you work on the same main

Fardad's expectations

What I want to see by the next meeting:

The full repository created made build-able with all the classes mentioned in as2 desc. Just create the header-file and cpp file. I need to know who created which class by looking at the docs directory and your logs.

I expect you all to blog about this meeting.

You can look at other teams wikis for ideas and you should give ideas and suggestions to others.

Second IRC Meeting with Fardad

Steps

1) Assign classes to developers. Each person is to commit their own classes to SVN.

Don't let one person do it all.

2) Select a coil lib if not already.

3) Each student add/modify/commit his/her assigned classes. Please call the classes and files IO_Whatever. Create empty classes (but compilable) for classes with no descriptions or the incomplete ones.

4) Main gets created and compiled.

5) Project file whatever.vcproj is created, tested, added, and committed buy ONE person.

6) Everyone else updates their repository.

7) Organizer assigns classes with complete description (in the wiki) to be developed.

8) Fardad updates the code and checks it and becomes happy and enjoys his life!!!!

Comments

Mr_88: I think we can all agree that step 8 is the best one :)

Fardad: Again I expect blogs from those who didn't have it (short and to the point). Don't write the story of your life in the blog. Do the .txt files and update what you have done.

Fardad: What we are doing in OOP344 has never been done anywhere, and the world is watching now, and I am not kidding when I say that.

Other Team IRC Meetings

Fardad adds io_textedit

I am going to do IO_TextEdit.

I will right the steps as I am doing it

  1. I am adding a headerfile and cpp file to my visual studio
  2. In solution exp. rightclick on headerfiles, add / new item
  3. Added code/headerfile: "io_textedit.h"
  4. Now i am righclicking on sourcefiles/newitem code/cpp file
  5. Added save (gard?) code to the headerifle
  6. Included general headerifle in io_textedit.h. It will have all necessary definitions and includes for the project
  7. Adding io_textedit.h and io_textdit.cpp to rep
  8. Compiled and it was successful, so I will commit now

Done, you can now update you working copy and see what I did. You should do the same for all the other classes. It should not take you more than 30 minutes to do you part, just pick a class and write it.

Questions

klim4: What is the general headerfile?

fardad: io_def.h

klim4: We do not add our solutions to the repository do we?

fardad: No. Only PRJ.vcproj, which I already did

To Do

10-29-09

(by Thursday October 29, 2009 - 12:00)

1) Follow the steps to "check out" on SVN

2) Add a log in your_name.txt file to show we were there

3) Upload assignment 1.

4) Have the full repository created made build-able with all the classes mentioned in as2 desc.

Remember: Fardad asked us to blog "about what we expect to be done and not to be done in the next meeting."

11-03-09

This class assigning was only for the purpose of uploading empty (but compiled) files to SVN. See the current tasks starting November 10th for a more updated list.

IRC Nick Upload Empty to SVN
ericausterberry io_checklist
canton io_edit
acho14 io_label
ljubo io_menu
cubicu io_menubar and io_field
neda io_form
Mr_88 main
hso3 io_textedit

Bonus classes:

  • io_form
  • io_frame
  • io_field

11-10-09

Each team member should choose at least one class, and put it beside their name (you may have more than one, including ones that Fardad started or covered in his lectures). Remember, being assigned a class does NOT mean that you have to write it by yourself! All it means is that you are ultimately responsible for making sure it works properly. Ideally, we will be involved with many classes, and we should understand them all.

IRC Nick Current Task
ericausterberry io_
canton io_edit
acho14 io_
ljubo io_
cubicu io_
neda io_menu , io_radio
Mr_88 io_frame
hso3 io_
fardad io_checklist

Options:

  • io_form
  • io_checklist
  • io_radio
  • io_frame
  • io_field
  • io_edit
  • io_label
  • io_textedit
  • io_menu
  • io_menubar (may not be required anymore)

Scheduled Meetings

10-27-09

Tuesday, October 27, 2009 at 12:35

  • In person meeting in the library at Seneca@York. Meeting is in room# 1135.
    • Topics include:
      • Review Assignment 1
      • Understanding SVN

Tuesday, October 27, 2009 at 17:00

  • 1st IRC Meeting with Fardad

10-29-09

Thursday, October 29, 2009 at 19:00

  • 2nd IRC Meeting with Fardad

11-04-09

Wednesday, November 4, 2009 at 17:15

  • In person meeting in the library at Seneca@York. Meeting is in room# 1135.
    • Main topic is to Review Assignment 2

11-05-09

Thursday, November 5, 2009 at 19:00

  • IRC Meeting with Fardad CANCELLED

11-07-09

Saturday, November 7, 2009 at 12:00 noon

  • IRC Meeting with Fardad

Audio Recordings

Discussion

northWind87: Cool website, I really like the design and contents. I hope that you don't mind us modeling out some of our site's elements after yours? Please feel free to let me know if that bothers you guys.

Ljubomir: np - Please feel free!

northWind87: excellent, thank you so much!