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 2021-2022 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
  • Laborator: Vom acorda pinuri pentru implicarea în activitățile de laborator, 17 la număr.

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 puțin 50% din punctajul de curs (lucrări de curs și examen final) și cel puțin 50% din punctajul de pacurs (laborator și teme) și 50% din punctajul cumulat.

Dacă nu ați obținut 50% din punctajul de parcurs nu veți putea participa la examenul final și va trebui să refaceți disciplina anul universitar următor.

Sumar notare

  • 1 punct: Activitate de laborator (12 laboratoare)
  • 1 punct: Lucrări (4 lucrări)
  • 4 puncte: Teme (3 teme)
  • 4 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ă 3 teme, fiecare valorând 1.33 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ță (18 decembrie 2021 - 16 ianuarie 2022) nu este contorizată ca întârziere.

Lucrări de curs

Există 4 lucrări de curs care valorează 1 punct în total. Acestea se vor susține online pe platforma de Moodle și vor fi disponibile pe durata unei zile (acestea se vor închide la 23:55 în cadrul zilei anunțate). Fiecare întrebare va avea 4 variante de răspuns, dintre care una singură este corectă. Desfășurătorul lucrărior de curs este descris mai jos, așa cum este indicat și în Calendar. Fiecare lucrare va avea 5 întrebări, iar timpul efectiv de răspuns este de 10 minute.

Lucrarea de curs 1 va avea loc în data de 26-Oct-2021 . Lucrarea va fi dată din capitolele 1-3 (Programe și sistemul de calcul, Investigarea programelor, Arhitectura sistemului de calcul).

Lucrarea de curs 2 va avea loc în data de 16-Nov-2021 . Lucrarea va fi dată din capitolele 4-5 partea 1 (Reprezentarea numerelor, Interfata hardware-software x86 - Registre + flaguri si Set de instructiuni).

Lucrarea de curs 3 va avea loc în data de 14-Dec-2021 . Lucrarea va fi dată din capitolele 5 partea 2-7 (Interfata hardware-software x86 -Moduri de adresare si Declararea datelor, Stiva, Functii).

Lucrarea de curs 4 va avea loc în data de 25-Ian-2022 . Lucrarea va fi dată din capitolele 8-9 (Interfata binara a functiilor, Buffer Overflow).

Examen final

Examenul final valorează 4 puncte. Examenul final are loc în sesiune. Puteți participa la un singur examen pe parcursul unei sesiuni. Examenul final este examen practic. Cu subiecte de rezolvat în fața calculatorului.

Găsiți două modele de subiect de examen final (practic) aici

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.

Vor fi două tranșe per examen, prima 9:00-11:30 și cea de-a doua 12:00-14:30. Fiecare tranșă va avea 2h examenul propriu-zis + 30 de minute de organizare și corectare etc. Repartițiile vor fi comunicate înainte de examenul aferent fiecărei serii pe canalele MS Teams / Moodle. Rezultatele vor fi date după 30 de minute de la încheierea celei de-a doua tranșe. Vor fi afișate în catalogul online.

Pe parcursul examenului, aveți voie la Internet și la orice formă de documentație necolaborativă. Aveți voie cu acces la soluții de laboratoare, dar NU cu soluții la modele de subiecte, subiecte din alți ani sau altele. Orice încercare de a folosi forme de documentație colaborativă (messenger, Google Docs, pus întrebări pe Internet) sau a rezolvărilor de la modele sau de la subiecte din alți ani este considerată copiere.

În cadrul examenului veți folosi propriul laptop astfel încat să evităm orice problemă de configurație.

Vă recomandăm să utilizați mașina virtuală de IOCLA pe care o gasiți aici care vine cu toate tool-urile pre-instalate.

Telefoanele și orice dispozitive electronice vor fi inaccesibile pe durata examenului.

Pentru participarea la examen este nevoie de act cu poză, ideal carnetul de student.

Vom face corectare live. Când un student încheie un subpunct, i se va marca pe foaie. La sfârșit, de față cu studenții se vor face calculele și trecerea punctajului final.

Pentru a fi punctat trebuie să explicați cum ați făcut; nu punctăm brute force sau nimereală. Fiți eficienți în explicații ca să nu consumați din timpul de examen.

Punctaje se dau doar pe fiecare subpunct, nu mai granular. Punctajele vor însuma 45 pentru un maxim de 40. Ce este peste 40 este bonus și se trunchiază. Pentru absolvirea disciplinei este nevoie de obținerea a 50% din punctajul de curs (lucrări de curs și examen final).

Veți sta în sala de laborator până la finalul examenului.

Orice tentativă de copiere se penalizaează:

  1. prima încercare cu avertisment
  2. a doua încercare eliminarea din examen și referat la decanat

Orice încercare de exfiltrare a subiectelor de examen va înseamnă repetarea disciplinei anul viitor și referat la decanat pentru tentativă de fraudare.

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. Publicarea codului vostru sursa pe internet este considerata intentie de a oferi tema pentru a fi copiata.

Primul caz de temă copiată duce la scăderea a jumatate din punctajului temei din punctajul aferent materiei (adică nu primiți punctajul pe temă și, suplimentar, vi se scade și jumatate din 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ă 2022

Sesiunea de restanță/mărire vară 2022 se desfășoară fizic, în săli de laborator. În cadrul sesiunii de restanță/mărire se va reface doar examenul final.

Restanță / mărire toamnă 2022

Examenul de refacere / restanță la IOCLA / IHS / PLCP2 din sesiunea toamnă 2022 va avea loc în două date, așa cum este anunțat pe site-ul facultății:

  • marți, 30 august 2022
  • marți, 6 septembrie 2022

Față de examenul din timpul semestrului, examenul va avea încă o componentă care permite recuperarea a 1p din punctajul pe teme. Astfel că, cei care nu aveți punctaj de trecere din timpul semestrului, veți putea recupera 1p cu care să puteți absolvi disciplina.

Concret, va exista un subiect echivalent unei teme timp de o oră pentru 1 punct, care va necesita atenție și efort din partea voastră pentru o rezolvare corectă si completă. Vom reveni cu un model de astfel de subiect.

În fiecare dintre cele două zile, desfășurătorul examenului va fi:

  • 09:00-12:30 - prima tură (examen efectiv - 2 ore, 4 puncte și subiect echivalent pentru 1 punct - 1 oră)
  • 12:30-16:00 - a doua tură (examen efectiv - 2 ore, 4 puncte și subiect echivalent pentru 1 punct - 1 oră)

Cei din prima tură, vor trebui să stea până la final, inclusiv dacă nu doresc să rezolve subiectul echivalent.

Pentru a participa la examen și pentru a putea să ne organizăm mai bine, trebuie să vă înscrieți pe unul dintre cele două fire de discuție de pe forumul de discuții generale. Termenul pentru înscriere este joi, 25 august 2022. ora 23:00.

Refacerea materiei

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

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 la 31 Octombrie 2021 - ora 23:55.

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.

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).

Refacerea materiei 2021-2022 semestrul 2

Studenții de anul 2 care au urmat cursul de IOCLA în semestrul 1 din anul universitar 2021-2022 pot reface părțile din timpul semestrului (laborator, teme, lucrări de curs) în semestrul 2 (la PCLP2). Examenul va fi dat în sesiunea toamnă 2022 (NU în sesiunea vară 2022).

Cei care doresc refacerea și, eventual, păstrarea notei de laborator și/sau teme și/sau lucrări vor trebui să posteze un mesaj pe acest thread până cel târziu la 25 martie 2022 - ora 23:55.

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

NUME Prenume, grupă
Doresc refacerea părții din semestru a materiei (IOCLA -> PCLP2).
Doresc păstrarea notei la activitatea de TODO.
Examenul final îl voi reface în sesiunea toamnă 2022.

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

  • laborator
  • teme
  • lucrări
  • orice combinație între cele de mai sus, inclusiv toate 3

Un exemplu de mesaj este:

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

Vom publica modificările în catalog.

Vă înscrieți la cursul comun de PCLP2 pe Moodle și pe Teams.

iocla/reguli-notare.txt · Last modified: 2022/08/04 10:14 by razvan.deaconescu
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