Rady dla początkującego

0

Witam
Mam nadzieje, że do dobrego działu pisze. Otóż ostatnio z czterema znajmoymi wzią się do pisania projektu. Wiadomo, że jacyś super zaawansowani nie jesteśmy więc rzeczy w stylu uml nie znamy. I teraz chcę się zapytać jak zmaksymalizować szanse na ukończenie tego projektu? Może ktoś zna jakieś linki jak zorganizować pracę itd.?

0
rtp napisał(a)

Witam
Mam nadzieje, że do dobrego działu pisze. Otóż ostatnio z czterema znajmoymi wzią się do pisania projektu. Wiadomo, że jacyś super zaawansowani nie jesteśmy więc rzeczy w stylu uml nie znamy. I teraz chcę się zapytać jak zmaksymalizować szanse na ukończenie tego projektu? Może ktoś zna jakieś linki jak zorganizować pracę itd.?

Przedewszystkijm określić co tak naprawde chciecie zrobić, choćby to miało wam zająć miesiąc. Jak wszystko dobrze przemyślicie na początku to implementacja to jest pestka.

0

Druga sprawa, czy podołacie - to też jest dość istotna sprawa. I nie szczędzić na gotowych i dostepnych rozwiązaniach.

0

Jezeli nie jestescie chociaz srednio-zaawansowani to najlepiej podzielic projekt na 4 czesci, po jednej dla kazdego - kazdy robi swoje i potem mozna to polaczyc i nikt nikomu nie wchodzi w parade. Bo jak nie macie doswiadczenia, to gwarantuje, ze nawet przy zrobionym planie wystapia problemy (wynikajace np. ze slabej znajomosci jezyka) i nieukonczycie projektu.
4 osoby (zakladam, ze te 4 osoby to programisci, a nie 1 programista i 3 grafikow) to duzo jak na poczatek.
Co do organizacji, to polecam zrobic TODO + changelog i je aktualizowac - robie tak w moich projektach i dzieki temu widze od razy za co mam sie zabrac i nie musze tego szukac w kodzie czy siegac pamiecia co chcialem poprawic
W projekcie wazne, zeby nie uzywac domyslnych nazw (np. form1, unit1, button1), bo moga pojawic sie konflikty nazw (chyba, ze to c++, to skorzystajcie z przestrzeni nazw) lub nic nie mowiacych nazw (np. record, tree), chyba, ze jest to uzasadnione.

Jeżeli pisaliście mniejsze programy, to powinniście czuć kod nosem, jeżeli od razu checie napisać (wiekszy) projekt w teamie to lepiej dajcie sobie na razie spokoj...

pozdrawiam, Aklimx

0

Przede wszystkim ustalcie, kto jest szefem. Wybierzcie najbardziej doświadczonego, który będzie rozdzielał pracę. I miejcie na uwadze jedno z praw Murphiego: "Każda organizacja jeżeli temu nie przeciwdziałać dąży do pogrążenia się w chaosie."

0

polecam przeczytać http://programex.risp.pl/?strona=j_k_projekty - trochę długie ale pouczające

0

rtp, sądzę że w tej sytuacji najcenniejsza uwaga jaką mogę ci przekazać to że bardzo ważne jest w projekcie aby ludzie się specjalizowali. Dzięki temu będą pracować coraz szybciej i lepiej.

0
Oleksy_Adam napisał(a)

Przede wszystkim ustalcie, kto jest szefem. Wybierzcie najbardziej doświadczonego, który będzie rozdzielał pracę.

IMHO szefem powinien być ten kto ma największy wpływ na ludzi z grupy a nie ten kto się najlepiej zna bo szef nie ma tylko rozdzielać pracę ale przede wszystkim mobilizować do niej ;)

0
CyberKid napisał(a)
Oleksy_Adam napisał(a)

Przede wszystkim ustalcie, kto jest szefem. Wybierzcie najbardziej doświadczonego, który będzie rozdzielał pracę.

IMHO szefem powinien być ten kto ma największy wpływ na ludzi z grupy a nie ten kto się najlepiej zna bo szef nie ma tylko rozdzielać pracę ale przede wszystkim mobilizować do niej ;)

IMO przy złym podziale pracy wszystko leży, bo ludzie będą wchodzili sobie w paradę. Mobilizować powinni się wszyscy na wzajem (np. spotykając się co jakiś czas w miłej atmosferze jednocześnie obgadując w grupie problemy, z którymi sobie nie radzą).
Szefem powinna być osoba, która ma wizję końcowego projektu i doświadczenie (np. najwięcej ukończonych projektów).

0

nie mniejsza uwage nalezy poswiecic oprogramowaniu wspomagajacemu sam proces wspolbieznej implementacji

powinniscie zaznajomic sie z obsluga uslug CVS / SVN (polecam wygodniejsze SVN)

rzadko zdarza sie aby zespol programistow kodowal zupelnie niezalezne czesci systemu
korzystajac z uslug przykladowo subversion jestescie w stanie:

  • trzymac jeden projekt w kupie
  • caly czas byc na biezaco z uzupelniajacym twoja czesc pracy kodem kolegi
  • pracowac wspolbieznie nad jedna (najczesciej) rdzeniowa czescia implementacji
  • przywrocic poprzedni prawidlowy ksztalt aplikacji bez wnikliwej analizy kto zawinil i gdzie

obsluga jest bardzo prosta:
http://subversion.tigris.org/

istnieje wiele graficznych interfacow na aplikacje kliencka jak:

  1. TortoiseSVN: <url>tortoisesvn.tigris.org</url>
  2. SvnX: http://www.lachoseinteractive.net

procedura pracy polega na:

  • aktualizacja do wersji biezacej
    svn update

  • praca nad kodem

  • ponowna aktualizacja (w razie gdyby ktos pracuje w tym samym obszarze gdzie ty z pomoca przychodzi 'diff')
    svn update

  • wprowadzenie wlasnych zmian do systemu i opatrzenie wlasnej aktualizacji zrozumialym komentarzem
    svn commit -m "zrobilem nowy guzik i poprawilem ten nullpointer"

  • aktualizacja
    svn update

o konfiguracji serwera dla tej uslugi poczytacie np. tu: http://www.linuxfromscratch.org/blfs/view/svn/server/svnserver.html

0

Polecam artykuł 'Jak kończyć projekty' ( http://www.eioba.com/a1022.html )

1 użytkowników online, w tym zalogowanych: 0, gości: 1