Sunday, November 5, 2017

Oktoober 2017

Jätkasime testkeskkonna veebilehe tegemist. Kui valmis saab, saab seal luua teste ning ka nendele vastata. Luua saavad teste ainult need, kellele on testi loomise õigused antud. On erinevaid sorti küsimusi, nt 1 õige vastusevariandiga, mitme õige vastusevariandiga, tekstikast, lohistamine jms. Ülesanded jaotati üpris nii laiali, et see, kellel üks osa valmis sai hakkas järgmist osa tegema. Kuna me olime liiga aeglased, andis Marko meile oma osaliselt valmis lehe. Sinna hakkasime juurde kirjutama vajalikke osi, nt kasutajate haldamine, küsimuste haldamine jms. Pole valmis veel.

Mida õppisin: PHP'd.

Saturday, September 30, 2017

Thursday, September 7, 2017

Wednesday, September 6, 2017

6.09.2017: programmeerimine x4 (Marko L., Triin M.)

Marko lehte tegime edasi. Triinu tunni ajal läksime peamajja. Seal ei olnud arvutites XAMPP'i ja VBox'i. IT 3. kursus pidi need arvutitesse paigaldama. Üks isik kaotas kahest arvutist võrguadapterid ära ja ainult VBox'i adapter oli olemas. Sai pikapeale phpVBOX'i tööle, aga siis sai tund läbi.

Mida õppisin: peame vokilt pedaalid ära võtma, aga vokk peab ikka korralikult edasi keerlema.

Tuesday, September 5, 2017

5.09.2017: Progemine x4 (Marko L., Triin M.)

Marko tundide ajal tegime ta lehe kujundust edasi.

Triinu tundide ajal jagasime klassi pooleks. Peame tegema VBox (VirtualBox) php versioonist .. asja. Selline funktsionaalsus juurde ehitada, et ainult kasutajapõhiselt näed oma VBox virtuaalmasinaid. Virtuaalmasinaid ei peaks ise tegema vaid kopeerida saaks olemasoleva tööorras virtuaalmasina, nt Win7, Win8 jne.

Mida õppisin: phpVBox on toode.

Monday, September 4, 2017

4.09.2017: programmeerimine x2 (Marko L. )

Hakkasime Markole uut veebilehe kujundust looma. Põhjuseks on see, et talle tema praegune kujundus ei meeldi.

Mida õppisin: midagi.

Monday, May 29, 2017

29.05.2017: andmebaasirakenduste arendaja x3

2.1
1. select last_name, address from f_customers

2.
  • select first_name from f_staffs;
  • SELECT first_name||' '||last_name AS "DJs on Demand Clients" FROM d_clients;
  •  
  • SELECT order_number FROM f_orders;

3. SELECT '***'||first_name||'***'||first_name||'***' as "Super Star" FROM f_staffs WHERE first_name = 'Sue' or first_name = 'Bob' or first_name = 'Monique';

4. d

5. select last_name as "Employee last name", salary as "Current salary" ,salary*1.05 as "Salary with 5% raise" from f_staffs; 

6. desc employees, nullable = väärtus võib olla NULL

7. ma veel mäletan

8. true

9. false

10. SELECT employee_id, last_name sal x 12 ANNUAL SALARY FROM employees;
      vead: tulp sal ees puudub koma; korrutamine on x-iga; aliase eest puudub as keyword;  alias pole         jutumärkides;

11. korrutamine enne

12. d

13. a

14. c

15. c

16. c

17. c

18. d

19. d

20. oskan

2.2 

1. select first_name, last_name, address from f_customers where id = 456;

2.  select name, start_date, end_date from F_PROMOTIONAL_MENUS where code = 100;

3.

4. SELECT producer, title FROM d_cds WHERE title = 'carpe diem';

5. select title, year from d_cds where year < 2000;

6. a. ja b.

7. select studentno, fname, lname from students where sex = 'F';

8. select studentno as "Student Number" from students where major = 'PE';

9. select * from students where sex = 'M';

10. select title, year from d_cds where year != 2000;

11. select * from f_staffs where extract(year from birthdate) < 1980;

2.3

1. select * from f_staffs where salary >= 5 and salary <= 10;

2. select loc_type, comments from d_venues where loc_type = 'Private Home';

3. SELECT first_name, last_name FROM f_staffs WHERE salary >= 20.00 and salary <= 60.00;

4. select * from d_cds where substr(title, 2, 1) = 'a';

5. select * from d_partners where auth_expense_amt is null;

6. select * from employees where substr(last_name, -1, 1) = 's';

7. c

8. select * from d_songs where type_code = 77 or type_code = 12 or type_code = 1;

4.1

1. select 'Oracle '||'Internet '||'Academy' as "The Best Class" from dual;

2. select substr('Oracle Internet Academy', 13, 3) as "The Net" from dual;

3. select length('Oracle Internet Academy') as "length" from dual; (23)

4. select instr('Oracle Internet Academy', 'I', 1) as "location" from dual;

5. select rpad(lpad(replace('Oracle Internet Academy', ' ', '****'), length(replace('Oracle Internet Academy', ' ', '****'))+4, '*'), length('Oracle Internet Academy')+14, '*') from dual;

6. oskan

7. select replace('Oracle Internet Academy', 'Internet', '2013-2014') as "The Best Class" from dual;

8. select order_date||'$'||order_total as Total from f_orders

9. select upper(first_name||' '||last_name||' '||address||' '||city||', '||state||' '||zip) from f_orders

10. select substr(first_name,1,1)||last_name as "Name", salary, department_id from employees where department_id = 20;

select substr(first_name,1,1)||last_name as "Name", salary, department_id, :20  from employees where department_id = :20;

11.

12.

4.2

1. select last_name, salary, round(salary/1.55, 2) from employees where employee_id between 100 and 102;

2. select last_name, trunc(salary*1.05333,2) from employees where department_id = 80;

3. select mod(38873,2) from dual;

4. select round(845.553,1) from dual;
select round(30695.348,2) from dual;
select round(30695.348,-2) from dual;
select trunc(2.3454,1) from dual;

5. select first_name, last_name, salary, salary/3 from employees where mod(salary,3) = 0;

6. select mod(34,8) as "EXAMPLE" from dual;

7. 1000000*0.004 = sitaks ja peale

4.3

1. select name, event_date, round(months_between(sysdate, event_date)) from d_events where name = 'Vigil wedding';

6. select round(months_between(sysdate, birthdate)/12) as "Bob Miller's age" from f_staffs where first_name = 'Bob' and last_name = 'Miller';

7. select add_months(sysdate, 6) as "Appointment" from dual;

11. select add_months(sysdate, 120) as "Future" from dual;

12. sysdate




Monday, May 22, 2017

22.05.2017: andmebaasirakenduste arendaja x2 (Väino L.), rühmajuhataja tund x1 (Jaan P.)

Esimene normaalkuju:

  1. puudub ülalt alla ridade järjestus - read võivad olla ükskõik millises järjestuses
  2. puudub vasakult paremale veergude järjestus
  3. puuduvad korduvad read
  4. iga rea ja veeru lõikumiskoht sisaldab ühte väärtust
  5. kõik veerud on korrapärased ja üheväärtuselised (ridades pole varjatud osi)  - samatüüpi veerud ei kordu
Teine normaalkuju: 
  1. on esimeses normaalkujus ja tabeli veerud ei sõltu liitkandidaatvõtmest
Kolmas normaalkuju:
  1. kõik atribuudid esitavad fakte ainult olemi võtmeatribuudi kohta

Thursday, May 18, 2017

18.05.2017: andmebaasirakenduste arendaja x4 (Väino L.)

Ärireegel - reegel mis määratleb või piirab mõnda aspekti ning alati on kas tõene või väär. Struktuursed reeglid määravad struktuuri.

Struktuursed ärireeglid näitavad salvestata info tüüpe ning infoelementide vahelisi seoseid.

Protseduurilised reeglid tegelevad eeltingimuste, sammude, protsesside või töövoo nõuetega.

Paljud ärireeglid on seotud ajaga, üks protsess ei saa toimuda enne kui mõni teine on toimunud, nt enne ei saa patsienti registreerida kui ta kohale on tulnud.

Tegime ülesandeid Oracle slaididelt. Need on seotud ERD'iga.

Mida õppisin: natuke ERD lausete kirjutamist.

Monday, May 15, 2017

Videopost: kuidas APEX 5 keskkonnas Application Builder'iga sisselogimislehte teha.


15.05.2017: andmebaasirakenduste arendaja x3 (Väino L.)

Jätkasin Markusega haigla andmebaasi tööd. Õpetaja näitas meile ühte võimalikku lahendust. Hakkasin ERD skeemi ümber tegema, kuna sealt olid tähtsad osad puudu. Siis genereerisin skripti ja hakkasin seda ümber tegema. Oli vaja mitmeid asju muuta, kuna genereeritud skriptis olid sees asjad, mille ma olin ära kustutanud. Jäi pooleli.

Mida õppisin: midagi.

Thursday, May 11, 2017

11.05.2017: andmebaasirakenduste arendaja x4 (Väino L.)

Jätkasin oma koostööd Markusega. Sain valmis ERD skeemi. Markusel jäi dokumentatsiooni kirjutamine pooleli. Genereerisin andmebaasi loomise skripti. Hakkasin seda muutma, aga mul jäi see pooleli.

Mida õppisin: midagi.

Wednesday, May 10, 2017

Tuesday, May 9, 2017

09.05.2017: andmebaasirakenduste arendaja x4 (Väino L.)

Hakkasin tegema Markusega haigla kindlustuse andmebaasi ülesannet. Minu teha jäi ERD skeem. Markus teeb dokumentatsiooni. Dokumentatsioonis peab olema 1) ERDish, 2)kõikide tabelite ülesehitus, kus on märgitud primaarvõtmed, välisvõtmed ja unikaalsed võtmed ning tabelirea valikulisus (kohustuslik või mitte),  3) ärireeglid. Ei saanud valmis.

Mida õppisin: midagi.

Monday, May 8, 2017

8.05.2017: andmebaasirakenduste arendaja x3 (Väino L.)

select e.first_name, e.last_name, d.department_name from employees e inner join departments d on e.department_id = d.department_id

https://vainol.kehtna.edu.ee/sql/SQL_SELECT.pdf

http://www.sql-join.com/sql-join-types

SELECT d.department_id, e.last_name FROM
employees e, departments d WHERE
e.department_id=d.department_id(+) and
e.employee_id>170 ORDER BY d.department_id;

SELECT d.department_id, e.last_name FROM
employees e RIGHT JOIN departments d on e.department_id = d.department_id and e.employee_id>170

ORDER BY d.department_id;

select region_id, region_name, job_id, job_title from regions cross join jobs

right join ja right outer join teevad sama
full join
left join

cross join korrutab

Thursday, May 4, 2017

04.05.2017: andmebaasirakenduste arendaja x5 (Väino L.)

Jätkasin eilset tööd. Eksporditud XML faili põhjadele sai sisse kirjutatud uusi kirjeid. Igasse faili 4 uut kirjet. Siis importisin need XML failid APEX'isse uuesti sisse. Need tuli importida õiges järjekorras. Kui need importida sisse vales järjekorras, andis veateate, et on piirang ees.

Mida õppisin: midagi.

Wednesday, May 3, 2017

03.05.2017: vene keel x2 (Tatjana P. ), andmebaasirakenduste arendaja x2 (Väino L.)

Sain selle eilse töö (2.05) ERD skeemi lõplikult valmis.  Siis genereerisin relatsioonilise skeemi. Sellega midagi ei teinud. Genereerisin kogu andmebaasi loomise skripti. Siis tuli seda natuke muuta, et see korralikult töötaks. APEX keskkonnas sai see skript tööle pandud ning igasse tabelisse tuli lisada kirje, et saaks eksportida XML failid, millega hiljem uued andmed sisse importida.

Mida õppisin: kuidas APEX keskkonnas skripte jooksutada.

Tuesday, May 2, 2017

2.05.2017: andmebaasirakenduste arendaja x4 (Väino L.)

Tegime SQL Datamodeler'iga skeemi. See on sadama andmebaas. Tuli teha tabelid ning nendevahelised seosed. Siis konvertida see relatsiooniliseks mudeliks. Kõik välisvõtmed ühendada korralikult. Siis konvertida see DDL failiks.

Thursday, April 27, 2017

27.04.2017: andmebaasirakenduste arendaja x4 (Väino L.)

Tegime kuskil 100 tekstifailis olevat kirjet sql lauseteks. Oli vaja teha et sisestada need tabelisse.
Selline ülesehitus :
insert into employees values(
103,'Alexander','Hunold','AHUNOLD','590.423.4567',
to_date('1990-01-03','yyyy-mm-dd'), to_date('1959-04-21','yyyy-mm-dd'), 'IT_PROG',9000,null,102,60);

ID, eesnimi, perenimi, telefon, mingi kuupäev, mingi kuupäev, tööosakond, palk , ei tea, ei tea, ei tea.

Ma sain isegi valmis.

Mida õppisin: replace Notepadis on päris asjalik toode.

Wednesday, April 26, 2017

26.04.2017: vene keel x2 (Tatjana P.)

Vene keeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeel.

Friday, April 21, 2017

21.04.2017: andmebaasirakenduste arendaja x2 (Väino L.)

Tegime uue kasutaja Oracle 11g keskkonda. Et tabelite loomisel kasutada PL/SQL'i, ei saanud kasutada SYSDBA kontot (andmebaasi admini kontot). Süsteemiturve võtab seda kui häkkimist. Seega oli vaja luua uus konto ning anda sellele vajalikud õigused. Siis sai kasutada PL/SQL'i. Sellega panime tabelile kellaajalised piirangud peale, aga need lülitasime välja.

Mida õppisin: kuidas lisada Oracle 11g veebiliidesega uut kasutajat.

Wednesday, April 19, 2017

19.04.2017: andmebaasirakenduste arendaja x2 (Väino L.), vene keel x2 (Tatjana P.)

Tegime Oracle 11g andmebaasiga tööd. Sinna pidime lisama tabeleid. Siis pidi nende tabelite ülesehitust muutma. Seda tegime trigger'eid ning constraint'e kasutades. Ei jõudnud lõpuni.

Vene keeles õppisime vene keelt.

Mida õppisin: mitte midagi enda arust.

Monday, April 17, 2017

18.04.2017: andmebaasirakenduste arendaja x4 (Väino L.)

Kui kasutad commit käsklust, saad tehtud asju tagasi kerida.

SQL käsud pole tõusutundlikud (case-sensitive)

Tingimused pannakse eraldi reale.
Tegime tööd APEX'is.
Peale seda tegime tööd Oracle 11g andmebaasiga.

17.04.2017: andmebaasirakenduste arendaja x3 (Väino L.)

Süsteemitarkvara - OS
Rakendustarkvara - programmid
APEX - Oracle Application Express Practice environment

Tegime APEX keskkonnas SQL Commands liidesega tööd.

SQL - structured query language (sruktureeritud päringukeel)

andmebaasi objektid:
tabel: koosneb veergudest
vaade: piiratud tabeli ligipääs
jada: hoiab arvulisi väärtusi
indeks: päringute kiiruse parendamiseks

Tuesday, April 11, 2017

Monday, April 10, 2017

10.04.2017: andmebaasirakenduste arendaja x3 (Väino L.)

Olem: 

  • info, mida saab jälgida
  • tavaliselt nimisõna
  • esitatakse ristkülikukujulise kastina 

Olemi tüübid:

  • peamine - eksisteerib iseseisvalt, nt klient; juhendaja
  • iseloomulik  - eksisteerib teise olemi tõttu; nt tellimus, kursus
  • vahepealine - eksisteerib kahe või rohkema olemi olemasolu tõttu; nt tellimuse objekt, kursusele registreerimine
Olemid ja nende esindajad
  • esindaja on nii klassi kui olemi esindaja
  • olemis on esindajad
http://www3.ntu.edu.sg/home/ehchua/programming/java/j3f_oopexercises.html

alamtüüp

  • pärib kõik omadused ja seosed supertüübilt
  • joonistatakse supertüübi sisse
  • võib omada alamtüüpe
bottom-up - üldistamine
top-down - eristamine

alamtüübi reeglid:
  1. kõikehõlmavad: 
  • iga ülemtüübi esindaja on ka alamtüübi esindaja
  • MUUD alamtüüp peaks olema, et kategoriseerida olemeid mis pole defineeritud mõne teise olemasoleva alamtüübi poolt
  1. mutually exclusive
atribuutide omadused:
  • olemi kastis ERD'l
  • nimed on ainsuses ning suure algustähega või väikeste tähtedega
omaduse klassifikatsioon:
  • kohustuslik (*)
  • mittekohustusltk (väike o)
liht-ja liitomadused:
  • lihtomadusel on ainult üks väärtus
  • mitmeväärtuselisel saab olla mitu väärtust, nt aadress
Barkeri märgistused:
  • ümarate nurkadega märgistus
  • olemi nimi üleval vasakus nurgas 
  • full caps
  • ainsuses
  • tuleb kirjutada nii, et kõik saaksid aru
  • seos saab olla ainult kahe olemi vahel
  • võib olla sama olemi seos
  • seosel on kaks perspektiivi
  • seose peal on nimi
Bachmani tähistus:
  • P on UID
  • F on välisvõti
  • seosejooned on nool (varesejalg), täidetud või tühi ring (katkend- ja pidev joon)



artificial unique identifier: id, mis me ise paneme / järjekorranumber

rekursiivne seos: iseendale viitav

seoste maatriks

ERDish:
  • EACH 
  • Entity A
  • OPTINALITY (must be/ may be)
  • RELATIONSHIP NAME
  • CARDINALITY (one and only one/one or many)
  • Entity B
Miks normaliseerida:
pole korduvaid andmeid
suurendab andmeterviklust ning disaini stabiilsust
vältida mittesobivust ja anomaaliaid

Thursday, April 6, 2017

6.04.2017: Andmebaasirakenduste arendaja x2 (Väino L.), hajusrakenduste alused x2 (Triin M.)

Entity - table

attribute - column

Nimetamistavad: 
tabelinimi on olemi nimi mitmuses

UID: 

  • täiesti unikaalne ühe tabeli ulatuses
  • väärtus ei muutu eluea ulatuses


Primary key:
Eristab iga rida tabelis

liitprimaarvõti koosneb kahe või enama tulba kombinatsioonist
nt: panga number ja konto number

Seos:

  • peegeldab suhet kahe või enama olemi vahel
  • sellel on alati nimi
Välisvõti:
tulp või nende kombinatsioon mis viitab primaarvõtmele selles või teises tabelis

Triinu tunnis jätkasin UnrealIRC konfiguartsioonifaili muutmist. Selle sain enam-vähem valmis, ainult mõningad võrguga seoses muutused tuleb failis veel teha. 

Wednesday, April 5, 2017

05.04.2017: hajusrakenduste alused x2 (Triin M.), inglise keel x2 (Sirje K.)

Tegime oma projekti jaoks eraldi resource pool'i VMWare keskkonnas. Sinna tegime 6 virtuaalmasinat: 2 veebiserveri jaoks, 2 andmebaasi jaoks ning 2 IRC teenuse jooksutamiseks. Igat tuli kaks tükki teha kuna nendele tuleb failover'iga backup teha. Tegin koos Alexiga tööd. Meie osa oli IRC teenus püsti panna. Paigaldasime mõlemale virtuaalmasinale UnrealIRC ning ma hakkasin konfiguratsioonifaili muutma.

Mida õppisin: enda arust mitte midagi.

Tuesday, April 4, 2017

04.04.2017: kursusejuhataja tund x1 (Jaan P.), eesti keel x1 (Aire I.), hajusrakenduste alused x2 (Triin M.)

Jaani tund jäi ära. Eesti keeles täitsime töölehti. Triinu tunnis saime uue ülesande. Tuleb teha jututuba, mis tuleb jaotada laiali kolmele failover'iga sünkroonitud serveripaarile. Jaotasime laiali ülesanded. Jaotasime üksteist paaridesse. Teen tööd koos Alexiga.

Mida õppisin: midagi.

Monday, April 3, 2017

3.04.2017: andmebaasirakenduste arendaja x3 (Väino L.)

Dictionary sisaldab kõiki

Ärireeglid: kust andmebaasi vajadus tuleb

Kuidas ärireegleid kirjutada: SRS

Mida teevad ärireeglid:

  •  aitavad arendajal aru saada olemite seoseid ja piiranguid
  • aitab standardiseerimise protseduure mõista
  • peab olema lihtne ja kergesti arusaadav
  • peab olema pidevalt uuendatud


Normaliseerimise eesmärk:

  • korduvate andmete vältimine
  • salvestatavate andmete kooskõla
  • kergem muuta andmeid ja andmevorminguid
  • lihtsam andmeid sisestada ja kustutada
  • lihtsam andmeid turvata
Terviklus: tagab, et andmed õiged
andmed kooskõlas
saavutatakse normaliseerimise, määratud ärireeglite ning valideeritud andmete abil

Lame andmebaas:

eelised:
  • lihtne aru saada
  • lihtne teha
  • lihtne andmeid kätte saada
  • kõik kirjed ühes kohas
  • lihtne sorteerida ja filtreerida kirjeid
  • väikesed tark-ja riistvara nõuded

puudused:
  • turvamata
  • andmete ebakooskõlasus
  • andmete liiasus
  • raske jagada andmeid
  • suuremad andmebaasid on aeglased
relatiivse andmebaasi eelised:
  • vähem liiasust
  • väldib mitteühilduvust

consistency: kooskõlaslisus  -kõik andmed muutuvad igal pool samaaegselt

tabeli omadused:
  • veerus olevad kirjed on üheväärtuselised
  • veerus on sama tüüpi
  • iga rida on unikaalne
  • veergude järjekord pole tähtis
  • ridade järjestus pole tähtis
  • igal tulbal on unikaalne nimi
kontseptuuaalse modelleerimise eesmärk:
  • kui kujundad maja, tahaksid näha kuidas seda ehitatakse
  • isegi kui sa ei ehita maja, peaksid aru saama ehitajate nõuetest
  • andmebaasi konts. mudelit saab kasutada edasiseks arutamiseks disainerite, DBA ja rakeduste arendajate vahel
konts. mudel
  •  tuvastab kõrgema taseme seoseid erinevate olemite vahel
  • sisaldab seoseid olemite vahel, aga ei pruugi sisaldada mitmust ja nullitavust
  • ei määra primary key'd, aga määrab igale olemile unikaalse tuvastuse
konts. mudeli loomise sammud
  • tuvasta olemid
  • tuvasta omadused
  • tuvasta unikaalsed omadused
  • määra seosed
ERM eesmärgid:
  • vajaliku info kogumine
  • tagab, et info avaldub ainult korra
  • ei modelleerita infot korduvalt
  • paigaldada infot loogilisse, eeldatavatasse kohta 

Thursday, March 30, 2017

30.03.2017: andmebaasirakenduste arendaja x4 (Väino L.)

Oli vaja leida logi Oracle 11g's tehtud andmebaasi päringute jaoks. Ei leidnud midagi. Seega lihtsalt nokkisin seda andmebaasisüsteemi. Vaatasin mis sellega teha annab.

Wednesday, March 29, 2017

29.03.2017: hajusrakenduste alused x2 (Triin M.), vene keel x2 (Tatjana P.)

Triinu tunnis proovisime oma sots. meedia lehte lõpetada. Ei saanud valmis. 

Vene keele tunnis lahendasime ristsõna. See oli teemal "Palju maksab?". 

Mida õppisin: aja planeerimisega on meie klassil probleeme.

Tuesday, March 28, 2017

28.03.2017: andmebaasisüsteemide arendaja x2 (Väino L.), hajusrakenduste alused x2 (Triin M.)

Tegime Oracle SQL Data Modeler'iga skeemi. See oli DJ firma kohta.

Triinu tunnis andi uus ülesanne. Tuleb teha jututuba, mis jookseb IRC serveril; veebiserveri kaudu sisenetakse sinna ning kasutajaandmed on eraldi serverites. Tuleb teha failoveriga backup serverid igale serverile.

Tegime ikkagi oma sotsiaalmeedia lehte edasi.

Mida õppisin: mitte midagi

Friday, March 24, 2017

24.03.2017: andmebaasirakenduste alused x2 (Väino L.)

kontseptuaalmudel: kirjeldab andmeobjekte ja nendevahelisi seoseid
füüsiline andmemudel: kontseptuaalmudeli asjadele väärtused
olemiseose skeem: füüsilise mudeli pilt
entity: andmeobjekt
instance: konkreetne olemi esindaja
relationship: olemivahelised seosed
rekursiivne seos
normaliseerimine: relatsioonilised andmebaasid korda

lamemudel
hierarhiline mudel
võrkmudel: on seotud kirjed ja väljad
relatsioonmudel: nende abil saab seoseid luua, sisaldab välisvõtmeid mis viitavad teistele tabelitele
ruumiline mudel: OLAP, on seotud suurte andmeaitatega
objekti-põhine mudel: ainult klassid

https://vainol.kehtna.edu.ee/eandmebaas/
https://vainol.kehtna.edu.ee/eandmebaas/mudelid.html

kontseptuaalmudel:

  • kirjeldab ideaalse süsteemi
  • kirjeldab äriettevõtte infovajadusi
  • dokumenteerib äriprotsessid
  • arvestab valdkonda reguleerivaid seadusi
  • loob ettekujutuse füüsilisest mudelist
  • luuakse koostöös
  • võimaldab ennetada vigu, valestimõistmisi
Kontseptuaalmudeli loomiseks on vaja:
  • ettekujutust ettevõtte tööst
  • intervjuud töötajatega
  • ettevõttes seni kasutatud dokumentatsiooni
  • ettevõtte valmisolekut veebikeskkonda sisenemist
  • seniste protsesside kriitilist ülevaatamist
  • julgust, nutikust ja pealehakkamist
Millest mudel saadakse:
  • ettevõtte kirjeldusest joonitakse alla nimisõnad
Ärireeglid:
  • struktuursed ärireeglid:
  • tellimusi võtab vastu ainult klienditeenindaja
  • iga töötaja kohta peab olema teada tema nimi, isikukood ja telefoninumber
  • iga töötaja saab samaaegselt töötada ainult ühes osakonnas
Olem:
  • objekt mille kohta andmeid kogutakse
  • loendatava, kirjeldatava üldnimetus
  • tavaliselt nimisõna
  • füüsilises mudelis esindatud tabelina
Näide või juhtum:
  • konkreetne näide olemi juhtumist
  • füüsilises mudelis esindatud kirjena
Olemil on omadused, mis:
  • kirjeldavad
  • mõõdavad
  • piiritlevad ja iseloomustavad
  • liigitavad
  • täpsustavad ja määratlevad olemit
Seosed olemite vahel, 3 osa: 
  • kirjeldus - sõnaline väljend
  • tüübid (kohustuslik - pidev joon; valikuline - katkendjoon)
  • kordsust näitab joonte arv, üks või mitu seost

Tuesday, March 21, 2017

21.03.2017: andmebaasirakenduste alused x4 (Väino L.)

Infosüsteem on suvaline organiseeritud süsteem info kogumiseks, salvestamiseks, organmiseerimiseks ja infovahetuseks.

Andmed on ilma kontekstita suvalised asjad, infol on pealkiri ja aru on saada, millega tegemist.
Info on organiseeritud andmed.

töötlemata andmed+protsess = tähenduslik info

Süsteemi määratlus: hajussüsteem inimkeskkonnas.

Infosüsteem koosneb kolmest osast: inimene, ülesanne, rakendussüsteem.

Info on defineeritud semiootiliselt kolmetasemelisena.

Sidekanal ja/või arvutiga seotud vahendid või kokkuühendatud süsteem või alamsüsteemid vahenditest jne.

Ülesehitusega seotud aspektid:

  • ajutised või pidevad andmehoidlad nt RAM, kõvaketas
  • mittedigitaalse maailmaga suhtlevad andmevahetusliidesed nt klaviatuur, kõlarid
  • hoidlate ühenduskanalid nt siinid, kaablid


arvprogrammjuhtimine

informatsiooniprotsessor (pilt)
processor: SQL protsessor
hoidla : RAID

Infosüsteemide liike:

  • tehingute töötlus
  • otsuste toetus
  • teadmuste haldussüsteem
  • õppismise haldussüsteem
  • admebaasihaldussüsteem
  • kontori infosüsteem


ICT profiles
ICT professional profiles

Andmebaas

SQL: struktureeritud päringukeel

SQL:2016 = ISO/IEC 9075:2016

Andmebaaside liigid:

  • mälusisesed andmebaasid
  • aktiivsed andmebaasid
  • pilvepõhised andmebaasid
  • andmeaidad
  • deduktiivsed andmebaasid
  • hajusandmebaasid
  • manusandmebaas
  • lõppkasutaja andmebaas, nt MS Access
  • välised andmebaasisüsteem

http://myy.haaga-helia.fi/~dbms/dbtechnet/download/SQL-Transactions_handbook_EE.pdf

http://www.oracle.com/technetwork/developer-tools/sql-developer/sql-worksheet-commands-097146.html

Friday, March 17, 2017

17.03.2017: andmebaasirakenduste arendaja x2 (Väino L.)

Tegelesime Oracle 11g andmebaasi paigaldamisega. Paljudel ei tahtnud port listener korralikult tööd teha.

Wednesday, March 15, 2017

15.03.2017: hajusrakenduste alused x2 (Triin M.), vene keel x2 (Tatjana P.)

Triinu tunnis tegelesime sotsiaalmeedialehe KORK loomisega. Ott sai logo valmis. Ma proovisin timmida admini paneeli, aga redirect ei tööta korralikult ning see millegipärast kaotab kõik CSS'i ära ja hakkab väga kummaliselt suunama kui linkidele vajutada.

Vene keeles vastasime arvsõnu hindele.

Monday, March 13, 2017

13.03.2017 agiilsed tarkvaraarenduse metoodikad x2 (Triin M.), eesti keel x2 (Aire I.)

Tegime oma sots.meedialehte KORK edasi. Algne kujundus on lehel valmis. Adminipaneel, millega saab olemasolevaid kontosid hallata, pole valmis. Redirect töötab kummaliselt: kaotab kõik CSS'i kui teatud lingile vajutada.

Eesti keele tunnis tegime õigekeelsusharjutusi.

Friday, March 10, 2017

10.03.2017: agiilsed tarkvaraarenduse metoodikad x2 (Triin M.)

Tegime oma sotsiaalmeedia lehte. Ma tegin administreerimiskülge. Kontode haldamine. Neid sai kustutada ja mingil määral muuta.

Mida õppisin: mitte midagi.

Wednesday, March 8, 2017

8.03.2017: hajusrakenduse alused x2 (Triin M.), vene keel x2 (Tatjana P.)

Triinu tunnis hakkasime tegema veebilehte. See peab olema sotsiaalmeedia leht. Sinna tuleb kontoga sisse logimine, sõnumite saatmine ning postituste loomine. Peab olema ka piltide ja videode üles/allalaadimine. Kasutame Scrum meetodit. Minu ülesandeks jäi praegu luua projektiplaan ja eelarve (lihtsalt proovi pärast).

Vene keele tunni ajal vaatasime vene keelset filmi.

Mida õppisin: natuke Scrum'i.

Monday, March 6, 2017

Videopost: kuidas kirjutada projekti spetsifikatsiooni.

6.03.2017: hajusrakenduse alused x3 (Ain E.), tarkvara arendusprotsess x1 (Aire I.)

Aini tunnis alustasin veebilehe tegemist. Ülesehitus peab olema selline, et korraga saab sisse logida sellele lehe ainult 4 kasutajat. Kasutajaid tuleb jaotada kahe serveri vahel. Kokku peab olema 3 serverit veebilehel: keskne, mis jaotab kasutajaid ning teise kahte saadab keskne server kasutajaid. Igasse serverisse saab korraga sisse logitud olla vaid kaks inimest, kokku neli. Sisse logitud, näitab millisesse serverisse kasutaja saadeti (server 1 või server 2) ning mitu kasutajat on sisse logitud.Kui viies kasutaja proovib sisse logida siis tuleb teade et serverid täis.

Mida õppisin: mitte midagi.

Friday, March 3, 2017

3.03.2017: agiilsed tarkvaraarenduse metoodikad x3 (Väino L.)

Tarkvaraarenduse mustrid

Struktuursed mustrid

Decorator pattern

laiendatavus: on seotud raamistikega, peida keerukas kood lihtsa liidese taha
facade pattern: lihtsustatud liides tehakse juba olemasolevast liidesest

Flyweight pattern: objekt mis vähendab kasutatavat mälu

markeri muster: tühi liides metaandmete seostamiseks

Proxy pattern: klass, mis töötab kui liides millelegi teisele

Teise paaristunni ajal käis RIA'st tegelane rääkimas.


Template method: võimaldab algorimi samme ümber määrata algoritmi muutmata

balking (Tõkestav muster): objekt peab olema kindlas seisundis et meetod käivituks

binding: kombineerib mitmed vaatajad et sundida erinevaid väärtusi sünkroniseerima

blockchain: hajus andmebaas mis hoiab pidevalt kasvavat loetelu järjestatud kirjetes, kirjeid nimetatakse plokkideks


Thursday, March 2, 2017

2.03.2017: tarkvara arendusprotsess x2 (Sirje K.), agiilsed tarkvaraarenduse metoodikad x2 (Väino L.)

Sirje tunni ajal tegelesime Neljapäeva veebikeskkonna dokumentatsiooni kirjutamisega. 

Väino tunnis testisime Visual Studios MS Painti. Väino ikka nokkis mängu pärast ja ikka väidab et ma varastasin selle, copy/paste, mäng pole originaalne ning muu jura. Ajab kettasse kui väga aus olla. Arutasime midagi ise Kinecti tegemisest. Tegin oma wiki lehte. 

Mida õppisin: sittagi.

Wednesday, March 1, 2017

1.03.2017: hajusrakenduse alused x2 (Ain E.), andmebaasirakenduse arendaja x2 [vene keel] (Tatjana P.)

Aini tunnis jätkasin rakenduse tegemist. Ei teinud väga midagi. Vene keeles tegime sõnarägastikku.

Mida õppisin: mitte midagi.

Tuesday, February 28, 2017

28.02.2017: hajusrakenduse alused x2 (Ain E.), veebirakenduse loomise alused x2 (Jaan P.)

Aini tunnis tegin oma sisselogimise rakendusele lisaks CPU ja memory mõõduki (Visual Studios).

Jaani tunnis tegelesime näotuvastusrakendustega. Need tuvastasid soo, vanuse enam-vähem, kas prillid on peas ning mis tüüpi need on (lugemis- või päikeseprillid) ja mis emotsiooni nägu näitab. Minu nägu väga ei tahtnud tuvastada, sest tukk on ees. Jaan tegi skripti, mis tegi ekraanipildi iga kord kui veebikaameraga töötav näotuvastusprogramm tuvastas näo.

Mida õppisin: mitte midagi.

Monday, February 27, 2017

Monday, February 20, 2017

20.02.2017: tarkvara arendusprotsess x3 (Väino L.), rühmajuhataja tund (Jaan P.)

Tegime SDD (software design document). Eriti ei saa selle otsarbest aru. Midagi tuli kirjutada tarkvara disainist. Natuke sai isegi kirja pandud. Jaani tund jäi ära.

Mida õppisin: mitte midagi.

Friday, February 17, 2017

17.02.2017: tarkvara arendusprotsess x2 (Marko L.)

Jätkasime õpprestoran Neljapäev veebikeskkonna loomist. Pole aimugi mis valmis saime. Ikka veel pooleli. Natuke sain oma toidumenüü osa tehtud. Uut osa oli vähe. Rohkem arutati, kuidas veebilehe GUI peaks välja nägema.

Mida õppisin: mitte midagi.

Thursday, February 16, 2017

16.02.2017: tarkvara arendusprotsess x4 (Marko L.)

Käisin kaasõpilastega Olustveres "Mulle Meeldib Mõtelda" matemaatikavõistluse auhinnal järel.

Wednesday, February 15, 2017

Tuesday, February 14, 2017

14.02.2017: tarkvara arendusprotsess x4 (Väino L.)

SCM eesmärgid

  • seadistuste tuvastamine
  • seadistuste haldus
  • seisundi üle arve pidamine
  • seadistuste auditeerimine
  • kompileerimis-haldus
  • ettevõtte protsessi haldus
  • töökeskkonna haldus
  • meeskonnatöö
  • veajälitus
Versioonihaldus

Versioonihalduse tarkvarade võrdlus

Monday, February 13, 2017

Friday, February 10, 2017

9.02-10.02.2017 (veebirakenduste loomise alused) x4, x2

Esimene päev tegime Wordpressi poodi. Sinna pidi panema 1000 toodet. Siis pidime selle eksportima teise poekeskkonda. Sain hakkama. Jaan ütles et paljud ei saanud sellega hakkama.

Teisel päeval ei teinud midagi.

Mida õppisin: WordPress on vähk.

Wednesday, February 8, 2017

Tuesday, February 7, 2017

7.02.2017: veebirakenduse loomise alused x4 (Triin M.)

Jätkasime koolis mediacenter'ile telekale näidatava kujunduse tegemist. Tegin koos Alexiga. Ei saanud valmis. Seal näitab hetke tunde, Kehtna KHK FaceBook'i lehte, ERR'i RSS  feed'i ning hetke ilmateadet. Hetke tundidega vaheldumisi näitab kooli veebilehte.

Mida õppisin: midagi.

Monday, February 6, 2017

6.02.2017: tarkvara arendusprotsess x3 (Väino L.)

Liis Läll käis rääkimas meile oma nägemusest õpperestoran Neljapäev veebikeskkonna jaoks. Panime kirja kõik soovid. Tegime UML jada-skeemi ja andmevoogude skeemi. SRS'i tegin edasi

Välisliidesed - nii sisu kui vorming
  • Liidese nimi
  • Eesmärgi kirjeldus
  • Sisendandmete allikas väljundandmete sihtkoht
  • Sisendandmete lubatud piirid, täpsus ja/või hälve
  • Mõõtühikud
  • Ajastus
  • Seosed ja suhted teiste liidestega
  • Ekraani vorming/ülesehitus
  • Akna vorming/ülesehitus
  • Andmevormingud
  • Käsuvormingud
  • Lõpetav sõnum

Friday, February 3, 2017

3.02.2017: tarkvara arendusprotsess x2 (Väino L.)

Kirjutasime SRS'i Neljapäeva jaoks. Väino vaatas skripte JavaScript'i mängude jaoks. SRS'i sai ainult mõni nõue juurde.

Mida õppisin: Cookie Clicker'i autoclicer skript

Thursday, February 2, 2017

2.02.2017: tarkvara arendusprotsess x4 (Väino L.)

http://www.uml-diagrams.org/class-diagrams-overview.html

Tegime Visio'ga UML klassiskeemi.

Komponendi-põhine tarkvaraarendus (CBSE) / komponendi-põhine arendus (CBD)

NEWI

komponendi-põhised tarkvararaamistikud
  2) Maa-süsteemide modelleerimis-raamistik (ESMF)
  3) MASH IoT
  4) KOALA komponendi-mudel
  5)
Komponendi-põhine programmeerimine
  1) OSGI
  2) komponendi objektimudel (OCX,/ActiveX/COM) (OLE mudelist tulenev)
  3) TASCS
  4) Eiffel programmeerimiskeel (C# eelkäija)
  5) voolupõhine progemine - musta kasti protsessid
  6) fraktali-mudel
  7) MidCOM
  8) Oberon, Komponent Pascal, BlackBox Component Builder
  9) rCOS
  10) SOFA- tšehhide komponendisüsteem
  11) Unity
  12) UNO (OpenOffice mingi asi)
Liideste kirjelduskeeled (IDL)
  1) OSID - avatud teenuste liideste määratlus
  2) COM ja COBRA
  3) SOAP
  4) WDDX
  5) XML-RPC (remote procedure call - kaughalduse vidin)

http://www.ofnisystems.com/services/validation/functional-requirements/
Funktsionaalsed nõuded peavad sisaldama:
  1) Süsteemi sisestatavate andmete kirjeldused
  2) Iga UI tehtava päringu kirjeldus
  3) süsteemi poolt tehtavate töövoogude kirjeldus
  4)Süsteemi aruannete ning väljundite kirjeldused
  5) kes sisestab süsteemi andmed
  6) kuidas süsteem vastab rakendatavale regulatiivsetele nõuetele

http://www.cs.toronto.edu/~sme/CSC340F/slides/17-specifications.pdf
http://www.uml-diagrams.org/class-diagrams-overview.html


Wednesday, February 1, 2017

1.02.2017: vene keel (andmebaasirakenduste arendaja) x2 (Tatjana P.); tarkvara arendusprotsess x2 (Väino L.)

Vene keele tunnis õppisime vene keelt. Teise tunnipaari ajal vaatasime vene filmi "Jäämurdja".

Väino tunnis kirjutasime SRS'i õpperestoran Neljapäev veebikeskkonna kohta. Seda pidime tegema nii inglise kui ka eesti keeles. Ei saanud valmis

Mida õppisin: midagi ikka.

Monday, January 30, 2017

30.01.2017: tarkvara arendusprotsess x2 (Väino L.), veebirakenduste loomise alused (eesti keel) x2 (Aire I.)

Väino tunnis tegin UML kasutuslugu õpperestoran Neljapäev jaoks loodava veebikeskkonnale. Eesti keele tunnis tegime õigkirjaharjutusi.

Friday, January 27, 2017

27.01.2017: programmeerimine x2 (Marko L.)

Jätkasime veebilehe tegemisega õpperestoran Neljapäev jaoks. Ei saanud valmis.

Thursday, January 26, 2017

26.01.2017: hajusrakenduste alused x4 (Ain E.)

Enne lõunat tegi iga õpilane lühikese esitluse ühest tarkvarametoodikatega seotud luhendist. Ma tegin REST'ist. Ei saanud ikkagi lõpuks aru, mida see tähendab. Peale lõunat tegime kasutusjuhendit. Kasutusjuhend oli sisselogimisprogrammi kohta, mille me tegime eelmina aasta ühes Aini tunnis.

Mida õppisin: midagi ikka.

Wednesday, January 25, 2017

25.01.2017: tarkvara arendusprotsess x2 (Väino L.), vene keel x2 (Tatjana P.)

Cleanroom SE- "puhta toa" tarkvaraarendus
luua tarkvara sertifitseeritud usaldustasemega
on üles ehitatud vigade vältimisele

Kesksed põhimõtted
  1)tarkvaraarendus põhineb formaalsel matemaatikal, mis sisaldab mudelite kontrolli ja protsessi algebrat, Petri-võrku
  2)Statistiline kvaliteedi kontroll
  3)statistiliselt mõttekas kontroll

TSP- meeskonna tarkvaraprotsess
KLOC- kilorida koodi (1000 rida)
  1)plaanimise protsess
  2)PSP- personal software process
  3)ajaraamistiku hindamine
  4)meeskonna töö planeerimine
CMMI- võimekuste küpsuse mudel
  1)level 1: Algne- protsess on ettearvamatu
  2)level 2: Hallatud- protsessi viiakse projektidena läbi
  3)level 3: Määratletud- protsess on proaktiivne, sekkutakse kui vaja
  4)level 4: Kvantitatiivselt hallatud- protsesse mõõdetakse ja juhitakse
  5)level 5: Optimeeritud- fookus on protsessi parendamisel

PSP ülesanded:
  1)paranda planeerimise, kavandamise ning hindamise oskust
  2)panusta meeskonnatöösse
  3)halda projektide kvaliteeti
  4)vähenda oma vigu

PSP
  1)skriptid
    a)suurus
    b)jõupingutus
    c)kvaliteet
    d)ajakava
  2)mõõtmised
  3)standardid

MSF aluspõhimõtted
  1)avatud suhtluse edendamine
  2)ühise nägemuse poole koos töötamine
  3)meeskonnaliikmete toeatamine
  4)jagatud vastutus
  5)äriväärtuse kliendile pakkumise vastutus
  6)oota muudatusi ning ole agiilne
  7)investeeri kvaliteeti
  8)õpi oma kõikidest kogemustest
  9)ole kliendile partner

PUP (Phases of unified process)
1)inception(algatus)
2)väljatöötamine (elaboration)
3)construction (koodiuhamine)
4)transition (väljalase)

UP (unified process) tegevust
  1)ärimodelleerimine (ärireeglid)
  2)nõuded (SRS)
  3)analüüs ja disain (SDD)
  4)implementation (kood)
  5)test (STD)
  6)deployment (skriptid)
  7)config. and change management (skriptid)
  8)projektihaldus (SPMD)
  9)keskkond (EUP)

Agule Unified Process (AUP)
Basic --- (BUP)
Enterprise --- (EUP)
Essential --- (EssUP)
Open --- (OpenUP)
Rational --- (RUP)
Oracle Unified Method (OUM)

Test-driven development
  1)lisa test
  2)tee kõik testid läbi ning vaata kas test põrus läbi
  3)kirjuta koodi
  4)jooksuta teste
  5)paranda koodi

ATDD (acceptance test-driven development) - klient testib rakendust

DDD (domain-dirven design)- domeenipõhine disain / keskkonnast lähtuv disain / tegevusvaldkonnast lähtuv disain

FDD - valdkonna parimad praktikad kõik koos
BDD - kasutab valdkonnapõhist arendust

Tuesday, January 24, 2017

24.01.2017: tarkvara arendusprotsess x4 (Väino L.)

Tarkvara prototüüpimine on mittelõplike tarkvaraprogrammi versioonide loomine.

Prototüüpimise variandid:
äravisatav:
    1)kirjuta algelised nõuded
    2)disainimine
    3)prototüübi kasutamine annab uusi nõudeid
    4)kordab kui vaja
    5)kirjutab lõplikud nõuded

arenguline prototüüpimine:
    peamine eesmärk on ehitada on ehitada jäme prototüüp ning hakata seda täpsustama

inkrementaalne prototüüpimine:
eraldiseisvad prototüübid pannakse kokku lõpptooteks

ekstreemne prototüüpimine:
jaotatakse faasideks,
esimeses faasis koosneb veebirakendus peamiselt html failidest;
teises faasis luuakse kasutajaliides ning aknad;
kolmandas faasis luuakse teenused;


eelised: 
    1)hoiab kokku aega ja raha
    2)parendatud ja suurendatud kasutajate kaasatus

puudused:
    1)ebapiisav analüüs
    2)kasutajade segadus prototüübi ning lõpliku süsteemi osas
    3)kasutaja eesmärkide arendajapoolne mittemõistmine
    4)arendaja kiindumus prototüübile
    5)prototüübile liiga palju aega raisatud
    6)prototüübi liiga kõrge maksumus

DSDM: dünaamiline süsteemiarendusmeetod

Põhitehnika on prototüüpimine
ISO 9001
Prototüüp võib olla skeem, äriprotsess või tootmisse lülitatud süsteem

need prototüübid võivad olla äravisatavad või arenevad.

Neli prototüüpi:
  1)äriprototüübid
  2)kasutatavuse prototüübid (UI)
  3)jõudluse ja mittefunktsionaalsete nõuete osatähtsus
 

  1)tuvasta prototüüp
  2)lepi kokku plaani suhtes
  3)loo prototüüp
  4)vaata prototüüp üle

Neljanda gen. progemiskeelte liigid
  1)koodita programmeerimine

SOAP (simple object access protocol)
WSDL (web service description language)
DSDM - dünaamiline süsteemiarendusmeetod

DSDM põhitehnikad:

Timeboxing: projekt jaotatakse juppideks ning iga jupp saab etteantud tähtajaks valmis
MoSCoW: must have, should have, could have,  won't have
Prototüüpimine
Testimine
Töötoad
Modeleerimine
Seadistuste haldus

teostatavuse variandid:
1)tehniline
2)juriidiline
3)ajaline

http://wp1087322.server-he.de/ ->Developer

Inkrementaalne arendusmudel

eelised:
    1)peale iga iteratsiooni tuleb teha regressioonitest
    2)lihtsam testida ja vigu leida kui teiste meetoditega, sest iga iteratsiooniga tehakse vähe muudatusi
    3)klient saab reageerida muudatustele
    4)algse toote kliendile tarnimine on kiirem ja maksab vähem

puudused
    1)eelarve võib lõhki minna
    2)lisafunktsioonide korral võivad tekkida süsteemivead

V-mudel

Tarkvara arhitektuur

Spiraalmudel: riskipõhine protsessimudel

Määratle tehised samaaegselt
eeldused:
  1)nõuded olemas enne koodi kirjutamist
  2)nõuded ei sisalda kõrge risti faktoreid
  3)nõuete olemus ei muutu väga palju arenduse käigus
  4)nõuded on kooskõlas kõigi süsteemi kasutajatega
  5)süs. arhit. on kõigi poolt arusaadav
  6)aega on piisavalt


neli põhitegevust igas tsüklis

  1)arvesta võidutingimustega
  2)tuvasta ja hinda alternatiivlähenemisi
  3)tuvasta ja lahenda riskid
  4)saa huvigruppide heakskiit

vesrtapostid
  1)elutsükli ülesanded
  2)elutsükli arhitektuur
  3)algne töövõimekus


Monday, January 23, 2017

23.01.2017: programmeerimine x3 (Marko L)

Alustasime veebilehe loomisega õpperestoran Neljapäev jaoks. Meile jaotati ülesanded. Mina pean tegema menüü poolt. Pidin koos Marekuga tegema aga ta ei olnud kohal. Bert on projektijuht.
Ei saanud valmis.

Mida õppisin: midagi ikka.

Friday, January 20, 2017

20.01.2017: tarkvara arendusprotsess x2 (Väino L.)

Kasutajad ja spetsifitseerimine

Üks tagumik-tund võtab 500 kJ (120 kCal).
Tagumiktunni energiakulu taastamiseks tuleb süüa 2 burgerit.


Thursday, January 19, 2017

19.01.2017: programmeerimine x2 (Marko L.), tarkvara arendusprotsess x2 (Väino L.)

Marko tunnis tegime tööd PowerShell'iga. Tegime skripti, mis kirjutas kuni 9999 faili ning kirjutas igasse faili ühe rea. Siis kirjutas kõikide failide sisud ühte faili. Teeb töölauale ka kausta, kuhu kõik failid lähevad. Kausta nimi on skriptis ette antud. Kui töölaual on sellise nimega kaust olemas, kustutab selle sisu. Näitab ka kui kaua kogu töö tegemiseks läheb.


Tarkvara arendusprotsess

Kasutusloo mall
Kasutusjuhtumi nimi
Kirjeldus:

käsutaja(d):
  Sündmuste jada:
  Põhisündmused:
    Sündmus 1
    Sündmus 2
    .................
    Sündmus n
  Alternatiivsed sündmused:
    Sündmus 1
    Sündmus 2
    ..................
________________
Eeltingimused
Järeltingimused

http://dspace.ut.ee/bitstream/handle/10062/41862/peedo_marco.pdf

joongraafik- Gantt Chart

Tarkvara projekti näide

Mida õppisin: kuidas natuke PowerShell'i kasutada.

Wednesday, January 18, 2017

18.01.2017: programmeerimine x2 (Marko L.), andmebaasirakenduste arendaja x2 (Tatjana P.)

Marko tundides me ei teinud midagi. Tatjana tunnis õppisime vene keelt.

Mida õppisin: vene keeles enda tutvustamine (algeline).

Tuesday, January 17, 2017

17.01.2017: veebirakenduste loomise alused x4 (Triin M.), veebirakenduste loomise alused x1 (Aire I.)

Triinu tunnis tegime alguses mingit veebilehte. Hiljem hakkasime tegema peamajja telekate jaoks Xibo'ga informatiivset GUI'd. Seal näitab hetke tunde, ilmateadet, uudiste RSS feed'i, ning kooli Facebook'i. Facebooki ei näidanud see telekas. Keskkond, millega ehitasime seda GUI'd, oli lihtne kasutada.

Mida õppisin: kuidas Xibo't vähesel määral kasutada.

Monday, January 16, 2017

16.01.2017: veebirakenduste loomise alused x3 (Triin M.)

Pidime täitma ülesandeid lehel https://google-gruyere.appspot.com/. Pidime  õpetuse järgi turvaauke leidma ning nendega kurja teha. Üks ülesanne oli teha sellel lehel omale konto ning tavakasutajast admini tegema. Siis tuli üles laadida html fail skriptiga, et saada teada küpsiste formaat. Tuli ka välja uurida teiste kasutajate privaatinfot. Üks ülesannetest oli ka leida üles fail nimega "secret.txt".

Mida õppisin: ei oska öelda

Friday, January 13, 2017

Thursday, January 12, 2017

12.01.2017: tarkvara arendusprotsess x4 (Väino L.)

Tarkvara disain:
protsess, kus agent loob tarkvaratehise spetsifikatsiooni, kasutades algseid komponente

1)Algoritmi disain

Algoritmid:
1)probleemi määraimine

Jada liikmed käivad loogeliste sulgude vahele

CASE vahendid: Eclipse, NetBeans
CASE: tööriistade valdkond, mida kasutatakse tarkvara loomiseks ja disainimiseks

CASE kolm gruppi:
1)Tööriistad
2)Tööpingid
3)Keskkonnad

Tööriistad:
1)Äri ning analüüsi modelleerimine
2)Arendus, debuggerid
3)Verifitseerimine ning valideerimine; koodi analüsaatorid
4)Seadistuste haldus
5)mõõtmine; koodi analüsaatorid koodi keerukuse suhtes
6)projektijuhtimine

Tööpingid: 
integreerivad kaks või rohkem CASE tööriista

Fundamentaalsed modelleerimis kontseptid (FMC)
1)süsteemi struktuur
2)protsess süsteemis
3)domeeniväärtused süsteemis

*Liitstruktuuri skeem ehk FMC plokk-skeem
*Dünaamilise struktuuri skeem ehk FMC Petri-net
*Väärtuste raadiuse struktuuri skeem ehk FMC E/R skeem

FMC plokkskeem
Pilt (see link siin eelmisel real) on liitstruktuuri skeemi näide. Selles on agendid tellimuse protsessor (Order Processor), tarnija haldur (Supplier Manager) , tarnija (Supplier), veebipood (Online Shop), ning nimetu inimagent (Human Agent)

DAVIS 
1)disainiprotsess ei tohiks kannatada "silmaklappidest", peaks proovima erinevaid lähenemisi
2)disain peaks olema seotud ning jälitatav
3)ära leiuta jalgratast
4)disain peaks näima ühtlane,
5)peaks olema struktuurne ning peaks võimaldama muutuste sisseviimist
6)peaks olema disainitud nii, et suudaks ootamatustele vastata
7)disain pole koodimine, koodimine pole disain
8)peaks hindama disaini kvaliteetsust
9)disaini peab üle vaatama, et minimiseerida põhimõttelisi vigu

Disaini põhimõtted
1)abstraktsioon - üldistamine
2)viimistlemine/täpsustamine:
3)modulaarsus- tarkvara arhitektuur võiks olla jaotatud komponentideks
4)Tarkavara arhitektuur
5)Juhtimise hirearhia
6)jaotiste ülesehitus- programmi ülesehitus tuleks jagada horisontaalselt ning vertikaalselt juppideks
7)Andmestruktuur
8)Tarkvaraprotseduur
9)Polümorfism

Disaini kaalutlused
1)ühilduvus: tarkvara peab töötama teiste toodetega koos
2)laiendatavus: võimalus lisada uusi võimekusi
3)modulaarsus
4)hooldatavus
5)taaskasutatav
6)robustne
7)turvalisus
8)kasutatavus
9)jõudlus: asi ei tohi venima jääda
10)porditavus
11)mastaapsus

Arhitektuuri kirjeldamise keel
https://github.com/osate

camunda.org/bpmn/tutorial/

https://en.wikipedia.org/wiki/Business_Process_Model_and_Notation#Overview

EEML

Vooskeem

IDEF: modelleerimiskeelte perekond

Jackson

LePUS3: kuulub objekt-orienteeritud programmeerimiskeelte hulka

Alloy: on loodud keeruliste struktuursete piirangute kirjeldamiseks (uuri Alloy'd!)

Service-oriented modeling framework (SOMF)

hirmus UI
Disaini mustrid 

Wednesday, January 11, 2017

11.01.2017: Tarkvara arendusprotsess x2 (Väino L.), andmebaasirakenduste arendaja x2 (Tatjana P.)

Nõuete esilekutsumine:
sisaldab intervjuusid, küsimustikke, kasutaja vaatlusi, töötubasid, ajurünnakuid, kasutajalugusid, rollimänge ning prototüüpimine.

Enne kui nõudeid saab analüüsida, modelleerida või spetsifitseerida, tuleb neid koguda esilekutsumise protsessiga.

Süsteemi modelleerimis keeli on mitmesugused.

Tavaline esilekutsumisprotsess on huvigruppidega kohtumine või intervjuud. Nt esimene tähtis kohtumine oleks tarkvara arendajate ning klientide kus nad arutavad nõuete perspektiivi.

Probleemid:
1)Probleemide ulatus: ei tasu kliente terminoloogiaga segadusse ajada
2)Mõistmise probleem: kliendid ei ole kindlad, mida vaja, ei tea arvutite suutlikkust, ei suuda selgitada
3)Muutumise probleem: nõuded muutuvad ajaga.

Nõuete kvaliteedi parandamine:
1)visualiseerimine
2)kooskõlaline keel: kasuta lihtsat/loomulikku keelt nõuete kirjeldamiseks
3)reeglid: järgi ettevõttes väljakujunenud reegleid.
4)pidev mallide kasutamine
5)dokumenteerimise sõltuvused
6)muudatuste analüüs

Nõuete esiletoomise juhised:
1)hinda süsteemi ärilist ning tehnilist teostatavust
2)inimeste, kes võiksid nõuete väljaselgitamist aidata, leidmine
3)määratle tehniline keskkond, nt op-süsteem
4)tuvasta tegevusvaldkonna piirangud
5)määratle rohkem kui üks esiletõstmismeetod
6)korralda erinevate huvigruppidega kohtumisi
7)tuvasta tähtsaimad nõuded, mida on vaja prototüübi loomised
8)loo kasutuslood, et aidata klientidel tuvastada võtmenõudmisi

Sammude järjekord:
1)tuvasta reaalne probleem, võimalus või väljakutse
2)tuvasta jooksvad meetmed, mis tõestavad, et probleem on reaalne
3)tuvasta eesmärk-meetmed et tõestada probleemi olemasolu
4)tuvasta probleem olemus
5)määratle ärivaldkonna "miksid"
6)määratle tootedisain

Täiendavad lähenemised:
1)tuvasta huvigrupid
2)modelleerimise eesmärgid
3)modelleerimise kontekst
4)stsenaariumite avastamine (kasutuslugude jaoks)
5)kvaliteetide ning piirangute avastamine
6)eelduste ja kirjapaneku modelleerimine
7)sõnastiku kirjutamine
8)mõõtmete analüüsimine
9)

Analüüs:
võtame arvesse kõik vastuolud mida proovib nõuete kirjapanekul lahendada

Huvigrupid:
1)ükskõik, kes tegelevad süsteemiga (tavakasutajad ning hooldajad)
2)igaüks, kes saavad süsteemist tulu
3)igaüks, kes ostits süsteemi
4)ettevõtted, mis reguleerivad süsteemi aspekte
5)inimesed või ettevõtted kes on selle süsteemi vastu
6)ettevõtted, mis vastutavad teatud süsteemiliidese eest

Läbivad funktsionaalsused

Lepingu-stiilis nõuete loetelud
CIA: konfiguratsioon, tervikus, kättesaadavus

Kohustuslik kirjandus: "Tarkvaratehnika sissejuhatus 2008"

SRS on suhtlusvahend huvigruppide ning tarkvaraarendajate vahel

SRS eesmärgid:
1)aluseks koodiülevaatustele
2)tööulatuse kirjeldamine
3)tarvaradisaineritele annab viite
4)aluseks testimisele, testidokumendile (testiraamistik)
5)sisaldab iseärasusui kliendi nõuetega
6)on platvormiks edasiseks arenduseks

Uuri FreeMind'i

Tatjana tunnis õppisime vene keelt ning tegime harjutusi.

Mida õppisin: kes on huvigrupid.

Tuesday, January 10, 2017

10.01.2017: veebirakenduste loomise alused x4 (Jaan P.)

Esmaspäeval toodi kooli uued arvutid. Neil olid osadel BIOS lukus. Pidime BIOS luku deaktiveerima. Peale seda pidime paigaldama nendele arvutitele Windows 7. Win 7 Pro 4GB RAM'iga arvutile. Win 7 Home 2 GB RAM'iga arvutile. Ühele arvutile paigaldati Kodi MediaCenter.

Mida õppisin: kuidas BIOS lukku eemaldada.

Monday, January 9, 2017

9.01.2017: Tarkvara arendusprotsess x2 (Väino L.), veebirakenduste loomise alused x1 (Aire I.)

Tarkvaraarendus on:

1)teaduslike ja tehnoloogiliste teadmiste ja meetodite süstemaatiline rakendamine;
2)süstemaatiline, distsiplineeritud ja oluline lähenemine tarkvara arendamisele ja haldamisele;
3)kindlate arendusmeetodite rajamine ning kasutamine, et ekonoomiliselt saada tarkvara, mis on usaldusväärne ning töötab päris masinates

Nelja P meetod: product (toode), valitud meetod, people (inimested kes realiseerivad), project (projekt)

COCOMO (Constructive Cost Model)- tarkvara arendamise panus programmile, mees-aastates T, lähtekoodi ridadeni (SLOC- source lines of code). T = k*SLOC^(1+x)

Tarkvaranõuded: väli tarkvara arenduses mis tegeleb huvigruppide nõuete täitmisega.
Nõuded
1)Tingimus või võimekus mida kasutaja vajab, et lahendada probleeme või eesmärke saavutada.
2)Tingimus või võimekus millele süsteem peab vastama, standard, spetsifikatsioon
3)punktide 1 või kahe dokumenteeritud esitlus

SRS osad (SRS malli leiab siit):

(PS: osasid asju aru ei saanud, sisukord on kaos)
1)projekti muudatuste ajalugu

2)dokumendi heakskinnitajad

3)sisukord
   1)Sissejuhatus
     a)eesmärk
     b)ulatus
     c)definitsioonid, akronüümid. lühendid
     d)viited
     e)ülevaade
   2)
   3)Nõuded
      a)Välise liidese nõuded
         1)Kasutajaliidesed
         2)Riistvaraliidesed
         3)tarkvaralised liidesed
      b)Funktsionaalsed nõuded
      c)
      d)klassid/objektid
   5)Mittefunktsionaalsed nõudued (link dokumendile ria.ee's)
       1)jõudlus
       2)portimine
     f)Pöörded
     g)disainipiirangud
Andmeobjekt Register sisu ja piirangud:
  1)Sissejuhatus
  2)Sisendid
  3)Andmete töötlemine
  4)Väljundid
  5)Veakäitlus

Aire tunnis tegime arvsõnade käänamise harjutusi.

Mida õppisin: mis on nelja P meetod.