Reguli și notare

În cadrul cursului de Introducere în organizarea calculatoarelor și limbaje de asamblare (IOCLA) sunt două componente: partea de laborator (parcurs) și partea de curs. Partea de curs acoperă cursurile, lucrările de curs și examenul final în vreme ce partea de laborator acoperă activitatea de laborator și temele.

Mai jos sunt detaliate modurile de desfășurare a cursurilor și laboratoarelor, sistemul de notare, reguli și recomandări.

Distincții

Pe parcursul anului academic 2020-2021 vor fi acordate distincții clasificate în următoarele categorii:

  • Examen: 1 distincție pentru fiecare variantă de examen, acordată celui care termină cel mai rapid examenul (cu punctaj maxim)
  • Activitate la curs: 12 distincții în total, 3 per serie
  • CTF de la finalul semestrului: 5 distincții pentru participanții clasați pe primele locuri ale clasamentului
  • Teme: se vor acorda distincții doar în cazuri excepționale. Exemple: coding style excepțional, o rezolvare extrem de originală, o temă foarte bine optimizată
  • Meme-uri: se vor acorda distincții pentru mesaje amuzante de tip meme în cadrul “concursurilor de meme” anunțate în comunitate

Fiecare student va putea primi maximum o distincție. Dacă un student va fi nominalizat pentru mai multe categorii, i se va acorda distincție doar pentru o categorie, iar celelalte vor fi cedate altor studenți din coadă.

Notare

Anumite componente ale materiei (teme, laborator, examen final) dispun de punctaje bonus sau suplimentare. Acestea pot fi folosite pentru a suplimenta punctaje mai mici în cadrul aceeași componente. Dacă nota pe componentă trece de nota maximă aferentă, atunci această notă se trunchiază. Nu puteți transfera punctaje bonus între componente.

Pentru absolvirea materiei trebuie să obțineți cel putin 50% din punctaj la examenul final și cel putin 50% din punctajul pe parcursul semestrului (laborator și teme).

Sumar notare

  • 1 punct: Activitate de laborator (12 laboratoare)
  • 4 puncte: Teme (4 teme)
  • 5 puncte: Examen final (în sesiune)

Notare detaliat

Activitate de laborator

Laboratorul valorează 1 punct. Notarea este realizata subiectiv de către asistent.

Vor fi 12 laboratoare pe parcursul semestrului. Fiecare laborator poate avea puncte bonus care sunt folosite pentru a compensa eventuale puncte pierdute în cadrul altor laboratoare.

Nota pe laborator se obține împărțind punctajul la 12. În situațiile în care punctajul depășește 1 punct, nota se va trunchia; cu alte cuvinte, nu există posibilitatea transferării surplusului către o altă componentă a materiei.

Teme

Temele valorează 4 puncte.

Există 4 teme, fiecare valorând 1 punct.

Submisia temelor se face folosind interfața vmchecker. Termenul limită de submisie de teme pe interfața vmchecker urmeaza a fi anuntat.

După expirarea termenului de rezolvare, o temă este depunctată cu 2 puncte pe zi (din 10) timp de 5 zile. După 5 zile de întârzieri nu se mai pot trimite teme. Nu se pot trimite teme pe perioada verii.

În realizarea temelor țineți cont de regulile și recomandările din secțiunea Realizarea temelor si Reguli de realizare a temelor.

Perioada de vacanță (19 decembrie 2020 - 10 ianuarie 2021) nu este contorizată ca întârziere.

Lucrări de curs

Pentru fiecare curs va exista un test de 5 întrebări pe Moodle. Acestea nu se punctează, sunt doar o forma de autoevaluare. Un test va fi disponibil pe parcursul a trei zile anunțate, de la 08:00 în prima zi, până la 23:55 în cea de-a treia. Fiecare întrebare va avea 4 variante de răspuns, dintre care una singură este corectă.

Examen final

Examenul final valorează 5 puncte. Examenul final are loc în sesiune și se va desfășura sub forma unui interviu/discuție cu o durata de 15 minute destinata fiecărui student; unde timpul discuției efective ii este rezervat un interval de aproximativ 12 minute.

Vor fi două tranșe per examen într-un interval de 2 ore, anume: 9:00 - 11:00 și 12:00 - 14:00. In cadrul celor doua transe fiecare student va fi repartizat la o anumita comisie la o anumita ora.

Repartițiile vor fi comunicate înainte de examenul aferent fiecărei serii pe canalele MS Teams / Moodle.

Puteți participa la un singur examen pe parcursul unei sesiuni la data stabilita seriei voastre. Puteți cere mutarea în altă dată de examen cu motive obiective temeinice. Motivul “nu am învățat suficient” nu este acceptat. Vom fi mai deschiși cererilor de mutare pentru studenții care refac materia și care au și alte examene în sesiune și posibile suprapuneri. Dacă aveți motive temeinice obiective de mutare trimiteți un e-mail lui Andrei Albișoru cu subiectul [IOCLA] Schimbare examen - NUME Prenume, Grupa, de exemplu [IOCLA] Schimbare examen - POPESCU Adrian, 322CB.

Pe parcursul examenului, aveți voie la Internet și la orice formă de documentație necolaborativă.

Examenul va fi înregistrat și se vor face canale private de Teams pe care veți fi invitați. Puteți cere să nu fie înregistrat, însă în acest caz nu veți mai putea solicita reevaluare.

Nota examenului va fi comunicată pe loc, la încheierea interviului.

Pentru a experimenta modul de desfășurare a examenului final (oral) (și pentru studenți și pentru asistenți), vom face o simulare duminică, 31 ianuarie 2021, intervalul 15:00-18:00. Primii 12 anunțați dintre voi vor participa la această simulare. Cei care vor participa pot să își păstreze nota la examen și nu vor mai da examen (dar pot să și refacă).

Simularea va avea loc pe canalul General de pe Microsoft Teams. Orice student poate participa în audiență.

Simularea va fi înregistrată și va rămâne disponibilă.

Desfășurare examen

Studentul programat la o anumită oră va intra sau va fi adăugat in call-ul comisiei unde a fost repartizat. La intrarea în sesiunea de interviu studentului ii se va verifica identitatea și apoi va primi un exemplu de cod practic.

Pentru verificare identității, studentul va prezenta un act de identitate cu poza (C.I., legitimație de student, pașaport). Recomandăm ca un examen să intrați de pe un Laptop / PC dotat cu camera web.

Discuția din cardul interviului va avea în centru un exemplu de cod, unde întrebările vor fi bazate exclusiv pe acel cod și pot acoperi întreaga materie. Recomandam ca în examen sa intrați de pe un Laptop / PC pe care aveți instalata mașina virtuală IOCLA pe care o puteți descarca de aici, astfel încât să puteți analiza/compila/rula exemplul de cod.

Pentru a facilita o discuție sincronizată între evaluatori și intervievat, va trebui ca pe parcursul desfășurării interviului sa partajați fie editorul/terminalul fie întreg ecranul.

Update: Exemplele de cod utilizate în cardul simulării se găsesc în pull request-urile din repository-ul iocla la adresa:

Reguli și recomandări

Desfășurarea laboratorului

Vom desfășura laboratorul pe semigrupe. Fiecare grupă se va împărți în jumătate (câte două semigrupe egale ca dimensiune, sau diferență de cel mult un student). Nu permitem schimbarea semigrupelor pe parcursul semestrului. Un student poate participa la o singură semigrupă a grupei din care face parte.

Studenții care au restanță și cei de la alte facultăți pot participa la orice laborator cât timp există locuri disponibile.

Pentru a asigura buna desfășurare a laboratorului, limita de studenți în cadrul unui laborator este 15 persoane.

Puteți recupera laboratoare de maxim două ori, doar cu acordul ambilor asistenți (acordat înainte). Recuperarea se poate face doar în timpul săptămânii normale de desfășurare a laboratorului; nu se poate recupera un laborator în mod retroactiv, în afara săptămânii normal de desfășurare a acestuia.

În timpul laboratorului permitem doar activități aferente acelui laborator.

Realizarea temelor

Echipa cursului de IOCLA își rezervă dreptul de a nu publica soluții ori rezolvări parțiale pentru teme nici după expirarea termenului de predare. Acest lucru este valabil pentru toate celelalte componente ale materiei.

Echipa cursului de IOCLA poate să solicite prezentarea uneia sau mai multor teme de casă cu notificare în prealabil.

Trimiterea temelor se va realiza prin intermediul interfeței vmchecker.

Pentru testarea temelor puteți folosi mașinile virtuale create special pentru cursul de IOCLA, descrisă în secțiunea aferentă. Aceaste mașini virtuale sunt configurate și pentru testarea pe vmchecker.

Reguli de realizare a temelor

Temele la IOCLA sunt individuale; cu excepția cazurilor în care se precizează explicit că o temă se poate rezolva în echipă. Asta pentru că temele au ca principal obiectiv ca voi să dobândiți sau să vă aprofundați abilitățile practice. În măsura în care nivelul de colaborare este prea ridicat sau atunci când cereți soluții pe Internet, acest obiectiv nu va fi îndeplinit. Fiecare temă este realizată de un student fără a consulta codul sursă al colegilor săi.

Știm că lucrul în echipă este important, dar nu avem mediul pentru a realiza proiecte de echipă la cursul de IOCLA. Încurajăm colaborarea în timpul orelor de laborator, interactivitate în timpul orelor de curs și implicarea în activități extracurriculare ce presupun lucru în echipă.

Dacă întâmpinați orice fel de probleme în rezolvarea temei, folosiți forumurile pe curs.upb.ro sau întrebați asistenții la laborator sau titularii la curs. Rolul nostru este să vă ajutăm în rezolvarea acestora. Apelați cu încredere la echipa de IOCLA.

Să evitați, vă rugăm, discuțiile private (e-mail, Facebook, face-to-face) legate de teme și aspecte organizatori ale materiei. În aceste situații să folosiți forumurile pe curs.upb.ro ca să putem oferi răspunsuri publice.

Puteți discuta între voi în limitele bunului simț; adică nu trebuie să-i dictați cuiva rezolvarea, dar puteți să-i oferiți ideea generală. Dacă sunteți cel care este întrebat și oferă explicații, să aveți în vedere redirectarea către forumurile pe curs.upb.ro sau echipa de IOCLA.

Nu este permis să solicitați rezolvarea unei teme pe un site de tip StackExchange, Rent a coder sau altele. Puteți pune întrebări mai generice, dar nu solicitați rezolvarea temei.

Temele vor fi realizate direct în limbaj de asamblare. Nu este permis să scrieți temele în limbaje de nivel înalt (precum C sau C++) pe care apoi să le compilați în limbaj de asamblare. Excepție face cazul în care este menționat explicit ca temele se realizează în limbaje de nivel înalt.

Puteți folosi fără probleme cod din laborator, schelete puse la dispoziție de noi. Puteți folosi resurse externe (GitHub, cod open source sau altele), atâta vreme cât acestea nu reprezintă rezolvări evidente ale temei, puse public cu sau fără intenție. Vedeți și paragraful următor.

Nu este permis să publicați soluțiile temelor (nici după încheierea materiei). Dacă găsiți pe GitHub sau în altă parte rezolvări publice de teme, raportați-le pe forumurile de pe curs.upb.ro sau privat asistentului de laborator sau titularului de curs. Reiterăm că dacă doriți clarificări pe care le-ați adresa colegilor de ani mai mari, sau pe alte forumuri, StackExchange sau alte surse, folosiți forumurile pe curs.upb.ro și echipa de IOCLA. E cea mai sigură și onestă cale de a rezolva problemele.

Nu este permis să faceți transfer de fișiere între voi. În general, recomandăm să nu urmăriți ecranul unui alt coleg, sau pentru inspirație sau pentru a îl/o ajuta la rezolvare. Evitați testarea unei teme pe un sistem al unui coleg. Pot exista excepții, puteți ajuta pe cineva la troubleshooting, dar să aveți în vedere să nu treacă de la “hai să dăm de cap problemei” la “hai să-ți rezolv tema”. Dar vă recomandăm să folosiți forumurile pe curs.upb.ro sau echipa de IOCLA pentru a afla răspunsuri la întrebările voastre.

Depunctari teme

Codul vostru trebuie nu numai să “meargă”, ci și să respecte anumite standarde. Aveți mai jos o listă de potențiale erori de care trebuie să țineți cont în momentul realizării unei teme. Nerespectarea indicațiilor poate atrage dupa sine depunctări proporționale cu gravitatea erorii.

  • Label-uri și variabile numite nesemnificativ (x1, x2, a, b, c). Pentru denumirea unei variabile ce itereaza printr-un vector se pot folosi denumirile uzuale i, j, k însă denumiri de genul label1, label2, introduc ambiguitate
  • Comentarii in cod care pot fi ambigue, insuficinete sau lipsa comentariilor
  • Cod duplicat
  • Hardcodări pentru a trece teste. Natura testelor este orientativă și menite să va ajute în realizarea temei, implementarea vostră este partea pe care o vom nota. Apelați la forum daca nu sunteți siguri daca ceva constituie hardcodare
  • Încărcarea unui README în alt format decât fisier text (să nu fie .docx, .pdf)
  • Secvente de instructiuni care nu ajuta la rezolvarea efectiva a temei. Ex:
mov eax , 500
inc eax
xor eax, eax
  • Utilizarea secvențelor 'sub esp, 4; mov [esp], eax' în locul 'push eax' sau 'mov eax, [esp]; add esp, 4' în locul 'pop eax'
  • Temele care nu trec de procesul de asamblare (build) nu vor fi luate în considerare.

Penalizare pentru teme copiate

În general, considerăm că măsurile punitive sunt ultimele de luat în considerare. În măsura în care tema este realizată individual, fără aport de cod sursă problematic din exterior, atunci nu este temă copiată.

Noțiunea de temă copiată se referă, fără a fi limitată, la situații precum:

  • două teme care seamănă suficient de mult pentru a putea trage această concluzie;
  • folosirea de cod sursă de pe Internet care este evident soluția la temă;
  • folosirea unor bucăți din codul altui coleg;
  • accesul la codul altui coleg pe durata desfășurării temei;
  • modificarea unei teme existente;
  • urmărirea codului altui coleg;
  • ajutor direct în realizarea temei (altcineva a scris cod sau a dictat codul);
  • altcineva a scris tema (de bună voie, cu plată sau alte beneficii).

În cazul în care două teme sunt considerate copiate, atât sursa cât și destinația se vor depuncta identic, fără discuții relative la cine a copiat de la cine și a cui e vina. Excepția face situația în care destinația a obținut acces fără permisiune la sursă, iar sursa nu a avut intenția de a oferi tema (sau bucăți din temă) spre copiere.

Primul caz de temă copiată duce la scăderea punctajului temei din punctajul aferent materiei (adică nu primiți punctajul pe temă și, suplimentar, vi se scade și punctajul pe temă). Recidiva (încă o temă copiată) duce la anularea punctajului și repetarea materiei în cadrul anului universitar următor.

Reiterăm faptul că obiectivul nostru nu este și nu va fi penalizarea pentru copiere. Considerăm copierea ca fiind un act neonest care va fi pedepsit dacă are loc. Obiectivul nostru este însă să prevenim copierea; pentru aceasta oferim suportul și resursele echipei atât pe forumurile pe curs.upb.ro cât și în discuții față în față. Vă rugăm să le folosiți cu încredere; o abordare onestă la realizarea temelor va însemna și un câștig de cunoștințe și abilități pentru voi.

Restanță / mărire

Sesiunea de restanță/mărire se desfășoară în sesiunea de toamnă. În cadrul sesiunii de restanță/mărire se va reface doar examenul final.

Dacă și după sesiunea de restanță/mărire din toamnă nu obțineți punctaj suficient, veți repeta materia în anul universitar viitor.

Puteți participa la examen pentru mărirea notei obținută în sesiunea de iarnă. În cazul participării pentru mărirea notei, nota astfel obținută va înlocui nota obținută anterior, în sesiunea de iarnă.

Pentru studenții de anul 4 care refac IOCLA există și o sesiune specială de restanță de vară.

Puteți participa la un singur examen pe parcursul unei sesiuni.

Restanță vară 2021

  • oral: întrebări concept și discutat pe snippet-uri de cod.
  • live: menținem aceasta opțiune deschisa în cazul în care evoluția situației actuale ne va permite acest lucru.

Restanță / mărire toamnă 2021

  • oral: întrebări concept și discutat pe snippet-uri de cod.
  • live: menținem aceasta opțiune deschisa în cazul în care evoluția situației actuale ne va permite acest lucru.

Refacerea materiei

Pentru studenții care refac materia în cadrul anului universitar curent, în mod implicit, punctajele se resetează la începutul semestrului.

Catalogul de anul trecut (2020-2021) este disponibil pe wiki.

Dacă se dorește, studenții care refac materia pot păstra punctajul de laborator din anul universitar anterior în următoarele variante:

  • pot păstra nota pe activitatea de laborator
  • pot păstra nota pe teme
  • pot păstra nota atât pe activitatea de laborator cât și pe teme

Se păstrează nota de anul trecut, nu punctajul. Nota din catalogul de anul trecut pentru activitatea dorită (laborator sau teme) este trecută în poziția aferentă din catalogul de anul acesta; se aplică pe nota astfel trecută ponderile din acest an.

Cei care doresc păstrarea notei de laborator și/sau teme vor trebui să posteze un mesaj pe acest thread până cel târziu vineri, 22 octombrie 2021, ora 23:00.

Mesajul trebuie sa aibă următorul conținut:

NUME Prenume, grupa actuala, grupa veche
Doresc păstrarea notei la activitatea de TODO.

În loc de TODO, folosiți una dintre opțiunile:

  • laborator
  • teme
  • laborator și teme

Un exemplu de mesaj este:

IONESCU Adrian, 334CC, 323CB
Doresc păstrarea notei la activitatea de laborator și teme.

Vom publica modificările în catalog și în sheetul de Echivalari.

Studenții care refac materia pot participa la laborator cu o singură grupă, în limita locurilor disponibile (au prioritate studenții din semigrupa afișată la orar).

ihs/reguli-notare.txt · Last modified: 2021/09/20 18:05 (external edit)
CC Attribution-Share Alike 3.0 Unported
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0