300 likes | 527 Views
Sociolo ški i profesionalni aspekti računarstva. Dr Jelica Protić. Plan predmeta. Teorijski deo (predavanja) tokom prvih 5 nedelja (četvrtkom, od 17h) 14, 21, 28. februar 6, 13 mart Gostujuća predavanja: Istorija razvoja računara i istorija personalnih računara u Srbiji
E N D
Sociološki i profesionalni aspekti računarstva Dr Jelica Protić
Plan predmeta • Teorijski deo (predavanja) tokom prvih 5 nedelja (četvrtkom, od 17h) • 14, 21, 28. februar • 6, 13 mart • Gostujuća predavanja: • Istorija razvoja računara i istorija personalnih računara u Srbiji • Računarsko tržište u Srbiji: trenutni status • Modaliteti licenciranja softvera
Profesionalni aspekti • Šta je to profesija i profesionalizam? • Webster: Poziv koji zahteva specijalizovano znanje, a često i dugu i intenzivnu akademsku pripremu • Posao kojim se zarađuje za život (profesionalizam nasuprot amaterizma, recimo u sportu)
Računarski profesionalac? • Punomoć ili licenca za bavljenje profesijom – da li je posao uporediv sa, npr. gradnjom mostova? • Šta je profesionalna etika? • Da li “profesionalac” mora da se drži pravila koja se ne odnose na “ne-profesionalca” • Kakav je društveni uticaj ove profesije?
NAČELA ETIKE I PROFESIONALNOGRADA U SOFTVERSKOM INŽENJERSTVU • Po preporuci IEEE-CS/ACM Joint Task Force on Software Engineering Ethics andProfessional Practices • Zajednički usvojena od udruženja ACM i IEEE-CS kao normaza edukaciju i stručni rad u softverskom inženjerstvu
Osam načela softverskih inženjera – koncizna verzija • Softverski inženjeri obavezuju se da će analizu, specifikaciju, dizajn, razvoj, testiranje iodržavanje softverskih proizvoda učiniti korisnom i poštovanom strukom. • U skladu sasvojim obavezama prema zdravlju, sigurnosti i dobrobiti javnosti, softverski inženjeri seobavezuju da će se pridržavati sledećih osam načela:
Osam načela • JAVNI INTERES – Softverski inženjeri deluju u skladu sa javnim interesom • KLIJENT I POSLODAVAC – Softverski inženjeri deluju u skladu s interesima svoga klijenta i poslodavca, a koji nisu u suprotnosti s javnim interesom.
Osam načela • PROIZVOD – Softverski inženjeri obavezuju se da osiguraju da njihovi proizvodi i pratećeizmene zadovoljavaju najviše moguće standarde struke. • PROSUĐIVANJE– Softverski inženjeri održavaju integritet i nezavisnost u svom stručnomprosuđivanju
Osam načela • UPRAVLJANJE – Menedžeri i rukovodiocisoftverskog inženjerstva podstiču i promovišu etičkipristup upravljanju razvojem softvera i njegovim održavanjem • STRUKA – Softverski inženjeri unapređuju čestitost i ugled struke u skladu sa javniminteresom
Osam načela • KOLEGIJALNOST – Softverski inženjeri međusobno se podržavaju i ophode pošteno • ODNOS PREMA SEBI – Softverski inženjeri se kontinuirano stručno unapređuju ipromovišu etički pristup radu u svojoj struci
Pojedinosti – Javni interes • 1.01. Preuzeti punu odgovornost za svoj rad. • 1.02. Uskladiti interese softverskog inženjera, poslodavca, klijenta i korisnika s javniminteresom. • 1.03. Odobriti programski proizvod samo uz opravdano uverenje da je siguran, zadovoljavaspecifikacije, prolazi odgovarajuće testove i ne umanjuje kvalitet života ili privatnost, nitišteti okolini. Krajnji učinak rada treba da donese javnu dobrobit. • 1.04. Otkriti nadležnim osobama ili institucijama svaku stvarnu ili moguću opasnost zakorisnika, javnost ili okolinu, za koju se veruje da je povezana s programskim proizvodom ilipratećom dokumentacijom.
Pojedinosti – Javni interes • 1.05. Sarađivati u nastojanjima da se razmotre pitanja koja zabrinjavaju javnost, a vezanasu uz programski proizvod, njegovu uspostavu, održavanje, podršku ili dokumentaciju. • 1.06. Ponašati se pošteno i izbeći zavaravanje u svim izjavama, posebno u javnim, kojese tiču programskih proizvoda ili prateće dokumentacije, postupaka i alata. • 1.07. Uzeti u obzir probleme telesnih oštećenja, dodele sredstava, ekonomskezapostavljenosti i druge faktore koji mogu umanjiti pristup prednostima programskihproizvoda. • 1.08. Pokazati dobru volju da svoja stručna znanja bez naknade stave na raspolaganje udobrotvorne svrhe i pridonose obrazovanju javnosti o svojoj struci.
Pojedinosti – Klijent i poslodavac • 2.01. Pružati usluge u svojim područjima stručnosti, i pošteno i otvoreno priznati granicesvoga iskustva i obrazovanja. • 2.02. Ne koristiti se svesno programskim proizvodom koji je dobavljen ili zadržan nanelegalni ili neetički način. • 2.03. Koristiti vlasništvo klijenta ili poslodavca samo na propisno odobreni način, te uzznanje i pristanak klijenta ili poslodavca. • 2.04. Osigurati da je svaki dokument na koji se oslanjaju odobren, kada je to potrebno, odovlašćene osobe. • 2.05. Očuvati privatnost svih poverljivih informacija dobijenih u njihovom profesionalnomradu, uz uslov da je ta poverljivost u skladu s javnim interesom i zakonom.
Pojedinosti – Klijent i poslodavac • 2.06. Ustanoviti, dokumentovati i pravovremeno obavestiti klijenta ili poslodavca ukoliko je,prema vlastitom mišljenju, verovatno da projekt neće uspeti, da će se pokazati preskupim,da krši zakon intelektualnog vlasništva, ili je na bilo koji drugi način pod znakom pitanja. • 2.07. Identifikovati, dokumentovati i obznaniti poslodavcu ili klijentu diskutabilna socijalnapitanja kojih su svesni u softverskom proizvodu ili pratećoj dokumentaciji. • 2.08. Ne prihvatiti nikakav spoljašnji posao na uštrb posla koji obavljaju za primarnogposlodavca. • 2.09. Ne voditi se interesima koji mogu štetiti njihovom poslodavcu ili klijentu, osim ako sekrše neka viša etička načela, u kojem slučaju će izvestiti poslodavca ili drugu nadležnuinstituciju o svojim etičkim dilemama.
Pojedinosti – Softverski proizvod • 3.01. Stremiti visokom kvalitetu, prihvatljivoj ceni i razumnom rasporedu, osiguravajući dasu svi značajni kompromisi cene i kvaliteta jasni i prihvaćeni od poslodavca i klijenta, te da su stavljeni narazmatranje korisniku i javnosti. • 3.02. Osigurati realni smisao i dostižne ciljeve svakog projekta na kojem rade ili gapredlažu. • 3.03. Identifikovati, dokumentiovati i uzeti u obzir etička, ekonomska, kulturna, pravna ipitanja životne okoline, vezanoza projekte na kojima radi. • 3.04. Osigurati da su kvalifikovani, odgovarajućom kombinacijom školovanja, obrazovanja iiskustva, za izvođenje svakog projekta na kome rade ili nameravaju da rade. • 3.05. Osigurati upotrebu odgovarajućih metoda rada na svakom projektu na kome rade ilinameravaju da rade.
Pojedinosti – Softverski proizvod • 3.06. U radu slediti postojeće profesionalne standarde koji najbolje odgovaraju datomzadatku, odstupajući od njih samo kada je to etički ili tehnički opravdano. • 3.07. Nastojati u potpunosti razumeti specifikacije softverskih proizvoda koje koriste. • 3.08. Osigurati da su specifikacije softverskih proizvoda na kojima rade dobrodokumentovane, da zadovoljavaju korisničke potrebe i imaju potrebnedozvole. • 3.09. Osigurati realne kvantitativne procene troškova, rokova, saradnika, kvaliteta i ishodasvakog projekta na kome rade ili nameravaju da radeioceniti tačnost te procene. • 3.10. Osigurati odgovarajuće testiranje, otklanjanje grešaka i proveru softverskog proizvoda i prateće dokumentacije na kojima rade.
Pojedinosti – Softverski proizvod • 3.11. Osigurati odgovarajuću dokumentaciju za svaki projekt na kojem rade, uključujući i otkrivene značajne probleme i usvojena rešenja. • 3.12. Razvijati softverske proizvode i prateću dokumentaciju poštujući privatnost onih nakoje će taj softverski proizvod delovati. • 3.13. Obratiti pažnju da se služe samo tačnim podacima dobijenim etički i pravnonespornim putem, koristeći ih isključivo na odobreni način. • 3.14. Održati integritet podataka, obraćajući pažnju na zastarele i netačne podatke. • 3.15. Odnositi se prema svim oblicima programskog održavanja sa istim profesionalizmomkao prema novom razvoju.
Pojedinosti – Prosuđivanje • 4.01. Ograničiti sve tehničke procene potrebom za podrškom i održavanjem ljudskihvrednosti. • 4.02. Overiti samo dokumente s kojima se slažu, a pripremljeni su bilo pod njihovimnadzorom bilo unutar njihovog područja stručnosti. • 4.03. Zadržati profesionalnu objektivnost prema svakom programskom proizvodu ili pratećojdokumentaciji koje su zamoljeni da ocene. • 4.04. Ne učestvovati u finansijskim prevarama kao što su mito, dvojno naplaćivanje, ilidruge neprikladne finansijske radnje.
Pojedinosti – Prosuđivanje • 4.05. Obavestiti sve zainteresovane stranke o onim suprotstavljenim interesima koji se nemogu izbeći na razuman način. • 4.06. Odbiti učestvovati kao član ili savetnik bilo u privatnom, državnom ili profesionalnomtelu koje se bavi problematikom softverskih proizvoda, ukoliko oni sami, njihoviposlodavci ili klijenti imaju prikrivene potencijalno konfliktne interese.
Pojedinosti – Upravljanje • 5.01. Osigurati dobro vođenje projekata na kojima rade, uključujući i delotvorne postupke za unapređenje kvalitete i smanjenje rizika. • 5.02. Osigurati da su softverski inženjeri obavešteni o standardima pre nego što treba da ih primene • 5.03. Osigurati da su softverski inženjeri upoznati s poslodavčevom politikom i postupcimazaštite lozinki, datoteka i podataka poverljivih bilo poslodavcu bilo drugima. • 5.04. Podeliti radne zadatke uzimajući u obzir potrebni nivo obrazovanja i stečenogiskustva, kao i želju za daljim unapređivanjem obrazovanja i iskustva. • 5.05. Osigurati realne kvantitativne procene troškova, rokova, saradnika, kvaliteta i ishodasvakog projekta na kojem rade ili nameravaju da radite, i oceniti tačnost ovih procena.
Pojedinosti – Upravljanje • 5.06. Privući potencijalne softverske inženjere isključivo potpunim i tačnim podacima ouslovima zapošljavanja. • 5.07. Ponuditi poštenu i pravednu naknadu. • 5.08. Ne sprečiti nikoga nepravedno da prihvati mesto za koje je odgovarajućekvalifikovan. • 5.09. Osigurati postojanje poštenog sporazuma o vlasništvu nad programskim proizvodom,radnim postupcima, istraživanjima, pisanim dokumentima ili drugim intelektualnimvlasništvom kome je softverski inženjer doprineo. • 5.10. Osigurati primeren postupak saslušanja optužbi o kršenju bilo politike poslodavca biloovih Načela. • 5.11. Ne tražiti od softverskog inženjera da učini išta protivrečno ovim Načelima. • 5.12. Ne kazniti nikoga za izražavanje etičkih dilema o projektu.
Pojedinosti – Struka • 6.01. Pomoći uspostavu etički podsticajne organizacione okoline. • 6.02. Unapređivati javno razumevanje softverskog inženjerstva. • 6.03. Unaprediti svoje stručno znanje iz područja softverskog inženjerstva učešćem u stručnim organizacijama, skupovima i publikacijama. • 6.04. Podržati, kao stručnjaci, druge softverske inženjere koji nastoje slediti ova Načela. • 6.05. Ne predpostavljati vlastite interese na uštrb struke, klijenta ili poslodavca. • 6.09. Obavestiti klijenta, poslodavca ili nadređenog o svome poštovanju ovih etičkihNačela, kao i o posledicama takvog poštovanja.
Pojedinosti – Struka • 6.10. Izbeći udruživanje s preduzećima i organizacijama koje se ne pridržavaju ovih Načela. • 6.11. Biti svestan da je kršenje ovih Načela nespojivo sa zvanjem profesionalnog softverskog inženjera. • 6.12. Izraziti svoje sumnje uključenim nadležnim osobama u slučaju otkrivanja povreda ovihNačela, osim ako je to nemoguće, nedelotvorno ili opasno. • 6.13. Prijaviti ozbiljna kršenja ovih Načela nadležnim telima u slučajevima kada je jasnoda bi razgovor s nadležnim osobama uključenim u ova ozbiljna kršenja bio nemoguć,nedelotvoran ili opasan.
Pojedinosti – Kolegijalnost • 7.01. Podsticati kolege da se pridržavaju ovih Načela. • 7.02. Pomoći kolegama u stručnom usavršavanju. • 7.03. U potpunosti priznati autorstvo drugih i suzdržati se od potpisivanja tuđeg rada. • 7.04. Oceniti rad drugih na objektivan, otvoreni i uredno dokumentovan način. • 7.05. Nepristrasno poslušati mišljenja, sumnje ili pritužbe kolega. • 7.06. Pomoći kolegama da budu potpuno svesni trenutno važećih metoda rada, uključujućipolitiku i postupke zaštite lozinki, datoteka i drugih poverljivih podataka, te uopšte merasigurnosti.
Pojedinosti – Kolegijalnost • 7.07. Ne uplitati se na nepošten način u karijeru kolege; međutim briga za poslodavca,klijenta ili javni interes može prinuditi softverskog inženjera da, u dobroj nameri, ispitastručnost kolege. • 7.08. U područjima koja nadilaze njihovu vlastitu stručnost, savetovati se s drugimstručnjacima upućenim u to područje.
Pojedinosti – Odnos prema sebi • 8.01. Unaprediti svoje znanje o razvoju na području analize, specifikacije, oblikovanja,razvoja, održavanja i ispitivanja programskih proizvoda i prateće dokumentacije, kao i oupravljanju razvojnim procesima. • 8.02. Unaprediti svoju sposobnost stvaranja sigurnih, pouzdanih i korisnih kvalitetnihprogramskih proizvoda po prihvatljivoj ceni i u razumnim vremenskim okvirima. • 8.03. Unaprediti svoju sposobnost pisanja tačne, sadržajne i dobro oblikovanedokumentacije. • 8.04. Unaprediti svoje razumevanje programskih proizvoda i prateće dokumentacijekojima se služe, te okoline u kojoj će biti upotrebljeni.
Pojedinosti – Odnos prema sebi • 8.05. Unaprediti svoje poznavanje relevantnih standarda i zakona koji upravljajuprogramskim proizvodom i pratećom dokumentacijom na kojima rade. • 8.06. Unaprediti poznavanje ovih Načela, njihovog tumačenja i primene u dnevnom radu. • 8.07. Ne odnositi se ni prema kome nepošteno na osnovu beznačajnih predrasuda. • 8.08. Ne podsticati druge na ikakva dela koja bi kršila ova Načela. • 8.09. Biti svesni da je lično kršenje ovih Načela nespojivo sa zvanjem profesionalnog softverskog inženjera.
Različiti kodeksi • British Computer Society http://www.bcs.org • Association for Computing Machineryhttp://www.acm.org/about/code-of-ethics • IEEEhttp://www.ieee.org/portal/pages/iportals/aboutus/ethics/code.html • SEEPPhttp://www.acm.org/about/se-code