se leksion01 b

41
Aspekte Ekonomike Perdoren teknika ekonomike Psh. Metoda e re e Kodimit MK re eshte 10% me e shpejte sesa metoda qe perdoret aktualisht MK vjeter . A duhet perdorur MK re menjehere?

Upload: lione-milan

Post on 11-Nov-2015

228 views

Category:

Documents


3 download

DESCRIPTION

8

TRANSCRIPT

  • Aspekte EkonomikePerdoren teknika ekonomike

    Psh. Metoda e re e Kodimit MKre eshte 10% me e shpejte sesa metoda qe perdoret aktualisht MKvjeter . A duhet perdorur MKre menjehere?

  • Pergjigja e nje arsyetimi te thjeshte ->> Sigurisht!

    Pergjigja e Software Engineering >> Konsidero efektin e MKre mbi Mirembajtjen!

  • Mirembajtja eshte shume e rendesishme;

    eshte nje aspekt kryesor ne inxhinerine e software qe bazohet ne - teknika, mjete dhe praktika, te cilat cojne ne ulje te shpenzimit te pergjithshem.

  • Kostoja relative e perafert e fazave te nje cikli-jetesor softwareMirembajtja 67%

  • Zhvillimi I SoftwareKoncepti I Ciklit-jetesor (Software Lifecycle)

    Perfshin menyren sesi prodhohet software, duke permbledhur

    Modelin e lifecycle (ciklit-jetesor)IndividetMjete CASE te perdorura

  • Roli evolues i SoftwareSoftware eshte produkti, si dhe mjeti per te shperndare nje produkt apo sherbim

    Produkti me i rendesishem i kohes eshte : informacioni

    Avancimet ne performancen e hardware rezulton ne rritje te kompleksitetit te aplikimeve software

  • Sfida te Zhvillimit te Software Kompleksiteti- Sistemet e Software jane te hapura per fushat e aplikimeve te reja- Sistemet e Software mbeshtesin punet me kompleksitet ne rritje - Kerkesat qe lidhen me funksionalitetin dhe eficencen jane ne rritje te vazhdueshme

  • Cilesia- Software eshte I hapur per fushat e zbatimit te problemeve kritika nga siguria - Mosfunksionim i Software shkakton humbje ekonomike - Perdorimi (usebility) eshte nje kriter shume I rendesishem - Perdoruesit presin nje cilesi specifike e cila percatohet nga kritere te ndryshueshme.

  • Produktiviteti- Kerkese ne rritje per sisteme te reja- Rritje e produktivitetit dhe madhesise se stafit nuk mund ta uli disnivelin ndermjet kerkeses dhe furnizimit- Software standart behen gjithmone e me shume te rendesishem, por ato nuk mund te pershtaten per cdo kerkese specifike

  • Mirembajtja- Jetegjatesia e larte e sistemeve te software (shpesh here 20 vjet dhe me shume)- Software duhet te pershtatet vazhdimisht me kerkesat e reja dhe te ndryshueshme- Sistemet e Software te se sotmes jane sistemet trasheguese te se nesermes!

  • Kostot e Sistemit

  • Gjate 1980-s, mirembajtja e software perbente 60 perqind te buxhetit per software te nje sistemi informatizimi per nje organizate.of the software budget for an information systemVlera e matur per 1990-n ishte 80%.

  • Programimi kundrejt Inxhinierise se SoftwareProjekt I vogelJuNderton cfare doNje produktPak ndryshime te njepasnjeshmeJete-shkurterI lirePasoja te voglaProjekt I madhEkipNderton cfare te tjeret duanFamilje produkteshShume ndryshime paraleleJete-gjateI kushtueshemPasoja te medha

  • Ndryshime nga Programimi Software Engineering perfshin percaktimin e asaj qe nderton organizimin e ekipeve per te ndertuar sisteme ne bashkepunim analize dhe testim inxhineri te sistemeve pergjate Ciklit-jetesor (lifecycle) Arkitekture te software Zhvillimi i Software nuk eshte thjesht programim!

  • Tregu Boteror i Software

  • Software si % e prodhimit te pergjithshem1964

  • Software si % e prodhimit te pergjithshem1998

  • Pse ka rendesi Software Engineering

    Kontributi I Software ne ekonomine e SHBA (shifra te 1996-s)

    - Mbivlere e madhe exportuese ne tregeti: $24B software exportuar, $4B importuar $20B mbivlere

  • Krahasim- Agrikulture: 26-14 12 - Aerospace: 11-3 8 - Kimikate: 26-19 7 - Mjete/makineri (vehicles): 21-43 -22- mjete te prodhuara/fabrikuara: 200-265 -65(nga Software Conspiracy, Mark Minasi, McGraw Hill, 2000)

  • Cilesia e Software

    Njesi matjeje: bugs/kloc (Lines Of Code)

    - te matura pas perfundimit- mesatarja ne industri eshte perafersisht 10- cilesi e larte : 1 ose me pak

    kloc = mijera rreshta kod

  • Shembull. sistemi Praxis CDIS (1993)Sistemi I kontrollit te trafikut ajror ne UK per hapesiren e terminalit te aeroportit- eshte perdorur gjuhe specifikimi precize, shume e ngjashme me modelet qe ne do te studiojme- asnje rritje ne koston neto - ritme gabimesh (bugs) shume te zvogeluara: rreth 0.75 defekte/kloc - madje ofruan dhe siguri per klientin!

  • Sigurisht, cilesia nuk lidhet vetem me gabimet (bugs).

    Ju mund te testoni software dhe te eleminoni pjesen me te madhe te gabimeve qe e bejne ate te mos funksionoje (crash), por te perfundoni me nje program qe eshte I pamundur te perdoret, dhe deshton pjesen me te madhe te kohes per te bere ate qe pritet.

  • Per te adresuar kete problem, ju duhet te ndertoni dhe kerkoni cilesine qe nga fillimi, psh te verifikohen specifikimet e kerkesave, te zbatohen teknika rigoroze testimi etj.

  • 10 Arsyet Kryesore pse Projektet e Software deshtojne

    - Kerkesa te paplotesuara

    - Mungese e perfshirjes se perdoruesit

    - Mungese burimesh

    - Prentendime JoRealiste

    - Mungese mbeshtetjeje zbatuese

  • - Ndryshimi I kerkesave dhe specifikimeve- Mungesa e planifikimit- Software per te cilin nuk ka me nevoje - Mungese menaxhimi ne Teknologjine Informative (IT)- Moslexueshmeria/gabimet e Teknologjive

  • Lloji I DeshtimitArsyejaKomenteProbleme CilesieProblemi i gabuar u adresuaSistemi kishte konflikte me strategjine e biznesitNdikime me te gjera u neglizhuanKultura e organizates mund te jete neglizhuarZhvillimi u be jo korrektEkipi nuk ka aftesi te mira, apo ka burime te pamjaftueshmeProjekti u ndermorr per arsye te gabuaraDeshtim Teknologjie ose shtytje politike

  • Lloji I DeshtimitArsyejaKomenteProjekti u ndermorr per arsye te gabuaraDeshtim Teknologjie ose shtytje politikeProbleme ProduktivitetiPerdoruesit ndryshuan mendjeGjera te jashtme ndryshuan mjedisinLegjislacion i riZbatimi nuk ishte I mireNuk mund te dihet derisa projekti te niseKontroll I varfer I projektitMenaxher projekti pa pervoje

  • Qellimi i Inxhinierimit te SoftwareSpecifikime dhe Aspekte Modelimi(Design)

    Specialiset e Software jane njerez,dhe njerezit mund te gabojne.Fakti qe shume gabime behen heret ne software lifecycle (ciklin-jetesor) duhen theksuar aspekte te rendesishme dhe teknika qe lidhen me specifikime dhe modelime(designs) me te mira.

  • Aspekte te programimit ne Ekip

    Me shume software jane zhvilluar dhe mirembajtur nga nje ekip inxhinieresh per softwareQellimi(Scope) i inxhinierimit te software duhet te perfshije teknika per te siguruar qe ekipet jane te organizuar dhe menaxhuar saktesisht.Per shembull, programimi ne ekip con ne (probleme nderfaqeje) interface problems mes komponenteve te kodit, dhe probleme komunikimi mes anetareve te ekipit.

  • Teknika te shumta jane sugjeruar per te ndihmuar zgjidhjen e krizes se software.

    -1970s-1980s: Paradigmi i StrukturimitDizenjim dhe Analize Sistemesh i Strukturuar, Programim i StrukturuarCoi ne permiresime te medha per industrine e software.

  • Por I mire vetem per programe te vogla ( 5,000-50,000 lines of codes (LOC))Jo i pershtatshem per programe te medha te sotme (500,000-5,000,000 LOC)Jo i mire per aspektet e mirembajtjes se software

  • 1990s-sot: Paradigmi i Objekt-Orientuar (Object-Oriented Paradigm) Nje objekt eshte nje komponent software i unifikuar qe inkorporon te dhenat dhe veprimet qe operojne me keto te dhena (data+operation) Fshehje Informacioni and inkapsulim (encapsulation) - mbrojtje Lejon zhvillimin e komponenteve te riperdorshem (reusable components) Dekompozim

  • Dekompozim Objekt-Orientuar (Object-oriented decomposition) Sistemi dekompozohet ne klasa (objekte) Cdo klase eshte nje abstragim (abstracion) kryesor ne fushen e aplikimit Klasat mund te dekompozohen ne klasa me te vogla

  • Permbledhje e Zhvillimit te Software

  • Software DevelopmentFlow DiagramGatheringandAnalysisSoftwareModeling

  • Inxhinierimi i Software perfshin Aplikim te teknikave per menaxhim projektiPerkujdesje ndaj organizimit ne ekip Zhvillim i bazuar-ne-kerkesa Perdorim Sistematik I metodave, teknikave dhe mjetevePerdorim i drejtimit modular per ndertim sistemesh faza

  • Berje testimi formal, te plote te moduleve dhe sistemitKalim me detajne ne fazen e quality assurance (sigurim cilesie)Precizion dhe qartesi ne dokumentimPerdorim njohurie, arkitekture dhe komponenteshInxhinierimi i Software perfshin

  • Software Engineering Involves Shume dokumentimdhe pak kodim

  • Pyetje?