Download presentation
Presentation is loading. Please wait.
1
Programinės įrangos prototipų naudojimas
Spartus programos kūrimas reikalavimams atestuoti Programinės įrangos prototipų kūrimas Spartus programos kūrimas reikalavimams patvirtinti Rapid software development to validate requirements . [GLL]
2
Tikslai Aprašyti prototipų naudojimą skirtinguose programinės įrangos kūrimo projektų tipuose. Išanalizuoti evoliucinį ir išmetimo prototipų naudojimą. Pristatyti tris greito prototipų kūrimo metodus: kūrimas aukšto lygio kalba duomenų bazių programavimas ir komponentų pakartotinis naudojimas. Paaiškinti vartotojo sąsajos prototipų reikalingumą Tikslai Aprašyti prototipų naudojimą skirtinguose programinės įrangos kūrimo projektų tipuose. Išanalizuoti evoliucinį ir atmetimo prototipų kūrimą. Pristatyti tris greito prototipų kūrimo metodus- aukšto lygio kalbų kūrimas, duomenų bazių programavimas ir daugkartinio naudojimo komponentų rinkinys. Paaiškinti vartotojo sąsajos prototipų reikalingumą To describe the use of prototypes in different types of development project To discuss evolutionary and throw-away prototyping To introduce three rapid prototyping techniques - high-level language development, database programming and component reuse To explain the need for user interface prototyping [GLL]
3
Apžvelgiamos temos Prototipų kūrimas programinės įrangos kūrimo procese. Prototipų kūrimo metodikos. Vartotojo sąsajos prototipų kūrimas. Apžvelgiamos temos: Prototipų kūrimas programinės įrangos procese. Prototipų kūrimo technikos. Vartotojo sąsajos prototipų kūrimas. Prototyping in the software process Prototyping techniques User interface prototyping [GLL]
4
Prototipas Prototipą galima pavadinti maketu. Prieš projektuojant gamybai produktą, yra sukuriamas produkto maketas (pvz. televizorių gamyboje- prieš masinę realizaciją yra surenkamas vienas egzempliorius). Maketas dažniausiai atlieka beveik visas funkcijas, kurias darys tikras produktas. Kuriant sistemą, naudojamas prototipas- padaroma sistema, kuri darytų kažką panašaus kaip tikroji sistema. [GLL]
5
Sistemos prototipų kūrimas
Prototipo kūrimas yra spartus sistemos kūrimas. Anksčiau buvo laikoma, kad sukurtas prototipas yra žemesnio lygio programa nei reikalaujama, todėl būtinas tolimesnis sistemos vystymas. Dabar riba tarp prototipų kūrimo ir normalaus sistemos kūrimo yra ne tokia griežta ir daug sistemų yra kuriamos naudojant evoliucinį metodą. Sistemos prototipų kūrimas Prototipų kūrimas yra spartus sistemos kūrimas. Anksčiau buvo laikoma, kad sukurta sistema yra žemesnio lygio nei reikalaujama, todėl būtinas tolimesnis jos vystymas. Dabar riba tarp prototipų kūrimo ir normalaus sitemos kūrimo yra ne tokia griežta ir daug sistemų yra kuriamos naudojant evoliucinį metodą. Prototyping is the rapid development of a system In the past, the developed system was normally thought of as inferior (žemesnis) in some way to the required system so further development was required Now, the boundary between prototyping and normal system development is blurred ( sutepti) and many systems are developed using an evolutionary approach [GLL]
6
Sistemos prototipų naudojimo sritys
Dažniausiai prototipai naudojami tam, kad klientas ir sistemos kūrėjas geriau suprastų sistemos reikalavimus. Reikalavimų išgavimas. Vartotojas gali eksperimentuoti su prototipu, kad pamatytų kaip sistema atlieka reikalingą darbą. Reikalavimų atestavimas. Prototipai gali aptikti klaidas ir praleistus reikalavimus. Prototipų kūrimas gali būti laikomas kaip riziką mažinanti veikla, kuri mažina su reikalavimais susijusias rizikas. Kokiu tikslu naudojami prototipai? Sistemos prototipų naudojimo sritys Dažniausiai prototipai naudojami tam, kad klientas ir sistemos kūrėjas geriau suprastų sistemos reikalavimus. Reikalavimų išgavimas. Vartotojas gali eksperimentuoti su prototipu, kad pamatytų kaip sistema atlieka reikalingą darbą. Reikalavimų patvirtinimas. Prototipai gali aptikti klaidas ir praleistus reikalavimus. Prototipų kūrimas gali būti laikomas kaip riziką mažinanti veikla, kuri mažina su reikalavimais susijusias rizikas. The principal use is to help customers and developers understand the requirements for the system Requirements elicitation ( išgauti). Users can experiment with a prototype to see how the system supports their work Requirements validation. The prototype can reveal errors and omissions in the requirements Prototyping can be considered as a risk reduction activity which reduces requirements risks [GLL]
7
Prototipų kūrimo nauda
Nesusipratimų tarp kliento ir programinės įrangos kūrėjo išaiškinimas. Trūkstamos ir neaiškios paslaugos gali būti aptiktos. Veikianti sistema yra prieinama jau kūrimo proceso pradžioje. Prototipai gali būti kaip pagrindas sistemos specifikacijų išgavimui. Gali palaikyti vartotojų apmokymą ir sistemos testavimą. Išvardinkite kelis prototipų kūrimo privalumus Prototipų kūrimas naudos Nesusipratimų tarp kliento ir programinės įrangos kūrėjo išaiškinimas. Trūkstami ir neaiškūs servisai gali būti aptikti. Veikianti sistema yra prieinama jau kūrimo proceso pradžioje. Prototipai gali būti kaip pagrindas sistemos specifikacijų išgavimui. Sistema gali palaikyti vartotojų apmokymą ir sistemos testavimą. Misunderstandings between software users and developers are exposed Missing services may be detected and confusing services may be identified A working system is available early in the process The prototype may serve as a basis for deriving a system specification The system can support user training and system testing [GLL]
8
Prototipo kūrimo procesas
Nustatyti prototipo tikslus Apibrėžti prototipo funkcionalumą Prototipo kūrimas Prototipo įvertinimas Prototipų kūrimo planas Bendrų bruožų apibrėžimai Veikiantis prototipas Įvertinimo ataskaita Prototipo kūrimo procesai Nustatyti prototipo tikslus - prototipų kūrimo planas Apibrėžti prototipo funkcionalumą - bendrų bruožų apibrėžimai Prototipo kūrimas - veikiantis prototipas Prototipo įvertinimas - įvertinimo ataskaita [GLL]
9
Prototipų naudojimo įtaka sistemai
Pagerintas sistemos naudojamumas Sistema sukuriama artimesnė tokiai, kokios reikia. Pagerinta sistemos projekto kokybė. Palengvintas palaikymo procesas. Sumažintos bendros kūrimo pastangos. Ar prototipų naudojimas turi įtaką bendroms kūrimo pastangoms? Jei taip, kokią? Prototipų kūrimo naudos Pagerintas sistemos naudojamumas Sistema sukuriama artimesnė tokiai, kokios reikia. Pagerinta sistemos projekto kokybė. Palenvintas palaikymo procesas. Sumažintos bendros kūrimo pastangos. Improved system usability Closer match to the system needed Improved design quality Improved maintainability Reduced overall development effort [GLL]
10
Bendrų kūrimo pastangų sumažinimas naudojant prototipus
Jei prototipas nebūtų daromas, tai sistema būtų iškart kuriama. Atrodytų, kad kuriant prototipą sugaištamas laikas ir bendros kūrimo pastangos tik padidėja, tačiau taip nėra- kuriant prototipą, surenkamos klaidos, tad kuriant sistemą, trumpėja kūrimo procesas ir bendros kūrimo pastangos yra mažesnės, nepaisant papildomo darbo. [GLL]
11
Apžvelgiamos temos Prototipų kūrimas programinės įrangos procese.
Prototipų kūrimo metodikos. Vartotojo sąsajos prototipų kūrimas. Apžvelgiamos temos: Prototipų kūrimas programinės įrangos procese. Prototipų kūrimo technikos. Vartotojo sąsajos prototipų kūrimas. Prototyping in the software process Prototyping techniques User interface prototyping [GLL]
12
Prototipai programinės įrangos kūrimo procese
Evoliucinis prototipų kūrimas Sistemos kūrimo metodas, kuriame prototipas sukuriamas ir tobulinamas per daugelį etapų iki galutinio produkto. Išmetimo prototipų kūrimas Prototipas, kuris dažniausiai būna praktinė sistemos realizacija, yra sukuriamas tam, kad padėtų surasti reikalavimų problemas, ir tada išmetamas. Sistema yra kuriama naudojant kokį nors kitą kūrimo procesą. Programinės įrangos prototipų kūrimo tipai Prototipų kūrimas programinės įrangos procese Evoliucinis prototipų kūrimas Sistemos kūrimo metodas, kuriame prototipas sukuriamas ir tobulinamas per daugelį etapų iki galutinio produkto. Atmetimo prototipų kūrimas Prototipas, kuris dažniausiai būna praktinė sistemos realizacija, yra sukuriamas tam, kad padėtų surasti reikalavimų problemas, ir tada išmetamas. Sistema yra kuriama naudojant kokį nors kitą kūrimo procesą. Evolutionary prototyping An approach to system development where an initial prototype is produced and refined through a number of stages to the final system Throw-away prototyping A prototype which is usually a practical implementation of the system is produced to help discover requirements problems and then discarded (išmesti) . The system is then developed using some other development process [GLL]
13
Prototipų kūrimo tikslai
Evoliucinio prototipų kūrimo tikslas yra pateikti veikiančią sistemą jos vartotojams. Kūrimas pradedamas nuo tų reikalavimų, kurie geriausiai suprantami. Išmetimų prototipų kūrimo tikslas yra pateikti sistemos reikalavimus. Prototipų kūrimo procesas yra pradedamas nuo reikalavimų, kurie yra mažiausiai suprantami. Kokiam prototipų kūrimo tipui būdinga: a) kūrimo tikslas- pateikti veikiančią sistemą b) kūrimo tikslas- pateikti sistemos reikalavimus Prototipų kūrimo tikslai Evoliucinio prototipų kūrimo tikslas yra pateikti veikiančią sistemą jos vartotojams. Kūrimas pradedamas nuo tų reikalavimų, kurie geriausiai suprantami. Atmetimo prototipų kūrimo tikslas yra patvirtinti arba pateikti sistemos reikalavimus. Prototipų kūrimo procesas yra pradedamas nuo reikalavimų, kurie yra mažiausiai suprantami. The objective of evolutionary prototyping is to deliver a working system to end-users. The development starts with those requirements which are best understood. The objective of throw-away prototyping is to validate or derive the system requirements. The prototyping process starts with those requirements which are poorly understood [GLL]
14
Prototipų kūrimo metodai
Evoliucinis prototipų kūrimas Pateikiama sistema Bendri reikalavimai Atmetimo prototipų kūrimas Vykdomas prototipas ir sistemos specifikacija Prototipų kūrimo metodai. Evoliucinis prototipų kūrimas - Pateikiama sistema Bendri reikalavimai Atmetimo prototipų kūrimas - Vykdomas prototipas ir sistemos specifikacija [GLL]
15
Kokioms sistemoms naudojamas evoliucinis kūrimas?
Turi būti naudojamas sistemoms kur specifikacijos negali būti sukurtos iš anksto, pvz. dirbtinio intelekto sistemose ir vartotojo sąsajos sistemose. Paremtas metodais, kurie leidžia greitai gauti sistemos iteracijas. Patikrinimas neįmanomas, nes nėra specifikacijos. Atestavimas reiškia sistemos adekvatumo pademonstravimą. Kokioms sistemoms naudojamas evoliucinis kūrimas? Evoliucinis prototipų kūrimas Turi būti naudojamas sistemoms kur specifikacijos negali būti sukurtos iš anksto, pvz. dirbtinio intelekto sistemose ir vartotojo sąsajos sitemose. Paremtas metodais, kurie leidžia greitas sistemos iteracijas. Patikrinimas neįmanomas, nes nėra specifikacijos. Patvirtinimas reiškia sistemos adekvatumo pademonstravimą. Must be used for systems where the specification cannot be developed in advance e.g. AI systems and user interface systems Based on techniques which allow rapid system iterations Verification is impossible as there is no specification. Validation means demonstrating the adequacy of the system [GLL]
16
Evoliucinis kūrimas NE TAIP Ar sistema adekvati? Sukurti abstrakčias
specifikacijas Kurti prototipo sistemas Vartoti prototipų sistemą NE Ar sistema adekvati? TAIP Evoliucinis prototipų kūrimas Sukurti absrakčias specifikacijas Kurti prototipo sistemas Vartoti prototipų sistemą. Ar sistema adekvati? - Pateikti sistemą Pateikti sistemą [GLL]
17
Evoliucinio kūrimo privalumai
Greitesnis sistemos pateikimas Greitas pristatymas ir pritaikymas kartais yra svarbesni nei funkcionalumas ar ilgalaikio sistemos palaikymo paprastumas. Vartotojo dalyvavimas sistemos kūrime. Ne tik labiau tikėtina, kad sistema atitiks vartotojo reikalavimus, bet ir vartotojas tikrai naudosis kuriama sistema Evoliucinio kūrimo privalumai Evoliucinio prototipų kūrimo privalumai Greitesnis sistemos pateikimas Greitas pristatymas ir pritaikymas kartais yra svarbesni nei funkcionalumas ar ilgalaikio sistemos palaikymo paprastumas. Vartotojo dalyvavimas sistemos kūrime. Ne tik labiau tikėtina, kad sistema atiktiks vartotojo reikalavimus, bet ir vartotojas tikrai naudosis kuriama sistema. Accelerated delivery of the system Rapid delivery and deployment are sometimes more important than functionality or long-term software maintainability User engagement with the system Not only is the system more likely to meet user requirements, they are more likely to commit (įsipareigoti) to the use of the system [GLL]
18
Evoliucinio kūrimo atveju, kaip kuriama sistema?
Evoliucinis kūrimas Specifikacijų kūrimas, sistemos projektavimas ir realizavimas yra neatskiriami vienas nuo kito. Sistema kuriama kaip eilė patobulinimų, kurie pateikiami vartotojui. Naudojamos greitos sistemos kūrimo priemonės, tokios kaip CASE ir 4GL (ketvirtos kartos kalbos). Vartotojo sąsaja dažniausiai kuriama naudojant GUI (grafininės vartotojo sąsajos) kūrimo priemones. Evoliucinio kūrimo atveju, kaip kuriama sistema? Evoliucinis prototipų kūrimas Specifikacijų kūrimas, sistemos projektavimas ir realizavimas yra neatskiriami vienas nuo kito. Sistema kuriama kaip eilė patobulinimų, kurie pateikiami vartotojui. Naudojamos greitos sistemos kūrimo priemonės, tokios kaip CASE ir 4GL (ketvirtos kartos kalbos). Vartotojo sąsaja dažniausiai kuriama naudojant GUI (grafininės vartototojo sąsajos) kūrimo priemones. [GLL]
19
Evoliucinio kūrimo problemos
Valdymo problemos. Reikalingi specialistai su įgūdžiais, kurių ne visuomet būna programinės įrangos kūrimo komandose. Egzistuojantys valdymo procesai yra pritaikyti programinės įrangos kūrimo krioklio modeliui. Palaikymo problemos. Pastovūs pakeitimai dažniausiai sugadina sistemos struktūrą, todėl ilgalaikis sistemų palaikymas yra brangus. Kontrakto sudarymo problemos. Išvardinkite evoliucinio kūrimo problemas Evoliucinio prototipų kūrimo problemos Valdymo problemos. Egzistuojantys valdymo procesai yra pritaikyti programinės įrangos kūrimo krioklio modeliui. Reikalingi specialistai su įgūdžiais, kurių nevisada būna programinės įrangos kūrimo komandose. Palaikymo problemos. Pastovūs pakeitimai dažniausiai sugadina sistemos struktūrą, todėl ilgalaikis sistemų palaikymas yra brangus. Kontrakto problemos. Management problems Existing management processes assume a waterfall model of development Specialist skills are required which may not be available in all development teams Maintenance problems Continual change tends to corrupt system structure so long-term maintenance is expensive Contractual problems [GLL]
20
Evoliucinio kūrimo problemos
Kai kurių reikalavimų dalių (pvz. saugai kritinių funkcijų) prototipų kūrimas gali būti neįmanomas, ir todėl nepateikiamas specifikacijoje. Nefunkciniai reikalavimai negali būti pakankamai išsamiai patikrinti sistemos prototipe. Prototipai kaip specifikacijos Kai kurių reikalavimų dalių (pvz. funkcijų, kuriose būtinas saugumas) prototipų kūrimas gali būti neįmanomas, ir todėl nepateikiamas specifikacijoje. Realizacija neturi legalaus statuso kontrakte. Nefunkciniai reikalavimai negali būti pakankamai išsamiai patikrinti sistemos prototipe. Some parts of the requirements (e.g. safety-critical functions) may be impossible to prototype and so don’t appear in the specification An implementation has no legal standing as a contract Non-functional requirements cannot be adequately tested in a system prototype [GLL]
21
Palaipsninio (incremental) kūrimo privalumai
Sistema kuriama ir pristatoma stadijomis ( žingsniais) po to, kai nustatoma bendra sistemos architektūra. Reikalavimai ir specifikacijos gali būti kuriami kiekvienai stadijai. Vartotojas gali eksperimentuoti su pristatoma pateikiama stadija, kol kitos yra kuriamos, todėl jos tarnauja ir kaip prototipai. Skirtas išnaudoti prototipų kūrimo privalumus, tik turi labiau valdomą procesą ir geresnę sistemos struktūrą. Palaipsninis kūrimas Sistema kuriama ir pristatoma stadijomis po to, kai nustatoma bendra sistemos architektūra. Reikalavimai ir specifikacijos gali būti kuriami kiekvienai stadijai. Vartotojas gali eksperimentuoti su pristatoma pateikiama stadija, kol kitos yra kuriamos, todėl jos tarnauja ir kaip prototipai. Skirtas išnaudoti prototipų kūrimo privalumus, tik turi labiau valdomą procesą ir geresnę sistemos struktūrą. System is developed and delivered in increments after establishing an overall architecture Requirements and specifications for each increment may be developed Users may experiment with delivered increments while others are being developed. therefore, these serve as a form of prototype system Intended to combine some of the advantages of prototyping but with a more manageable process and better system structure [GLL]
22
Palaipsninio kūrimo procesas
Apibrėžti, ką sistema turi pristatyti Suprojektuoti sistemos architektūrą Specifikuoti sistemos stadijas Sukurti sistemos stadijas Atestuoti stadijas NE Palaipsninio kūrimo procesai Apibrėžti tai, ką reikia pristatyti Suprojektuoti sistemos architektūrą Specifikuoti sistemos stadijas Sukurti sistemos stadijas Patvirtinti stadijas Apjungti stadijas Patvirtinti sistemą Ar sistema baigta? Pristatyti baigtą sistemą Ar sistema baigta? Pristatyti baigtą sistemą Atestuoti sistemą Apjungti stadijas TAIP [GLL]
23
Išmetimo prototipų kūrimas
Naudojamas sumažinti sistemos reikalavimų riziką. Prototipas pradedamas kurti nuo pradinės specifikacijos, pateikiamas eksperimentavimui ir po to išmetamas. Išmetimo prototipas negali būti laikomas galutine sistema kai kurios sistemos charakteristikos gali būti praleistos nėra specifikacijų ilgalaikiam sistemos palaikymui sistema bus prastos struktūros ir sunkiai palaikoma Atmetimo prototipų kūrimas Naudojamas sumažinti sistemos reikalavimų riziką. Prototipas pradedamas kurti nuo pradinės specifikacijos, pateikiamas eksperimentavimui ir po to išmetamas. Atmetimo prototipas negali būti laikomas galutine sistema kai kurios sistemos charakteristikos gali būti atmetamos nėra specifikacijų ilgalaikiam sistemos palaikymui sistema bus prastos struktūros ir sunkiai palaikoma Used to reduce requirements risk The prototype is developed from an initial specification, delivered for experiment then discarded The throw-away prototype should NOT be considered as a final system Some system characteristics may have been left out There is no specification for long-term maintenance The system will be poorly structured and difficult to maintain [GLL]
24
Išmetimo prototipų kūrimas
Bendri reikalavimai Prototipo kūrimas Prototipo įvertinimas Specifikuoti sistemą Pakartotinai naudojami komponentai Pateikti programinės įrangos sistemą Sukurti programinę įrangą Atestuoti sistemą Atmetimo prototipų kūrimas Bendri reikalavimai Prototipo kūrimas Prototipo įvertinimas Specifikuoti sistemą Sukurti programinę įrangą Patvirtinti sistemą Pristatyti programinės įrangos sistemą (reusable components - pakartotinai naudojami komponentai) [GLL]
25
Prototipų pateikimas ( delivery)
Kūrėjai gali būti verčiami pateikti išmetamą prototipą kaip galutinę sistemą Tai nėra rekomenduojama: gali būti neįmanoma suderinti prototipą taip, kad jis atitiktų nefunkcinius reikalavimus prototipai nebus dokumentuoti sistemos struktūra degraduos dėl pakeitimų, padarytų kuriant sistemą normalūs organizacinės kokybės standartai gali būti nepritaikomi Prototipų pristatymas Kūrėjai gali būti verčiami pristatyti išmetamą prototipą kaip galutinę sistemą Tai nėra rekomenduojama: gali būti neįmanoma suderinti prototipą taip, kad jis atitiktų nefunkcinius reikalavimus prototipai nebus dokumentuoti sistemos struktūra degraduos dėl pakeitimų, padarytų kuriant sistemą normalūs organizacinės kokybės standartai gali būti nepritaikomi Developers may be pressurised to deliver a throw-away prototype as a final system This is not recommended It may be impossible to tune the prototype to meet non-functional requirements The prototype is inevitably undocumented The system structure will be degraded through changes made during development Normal organisational quality standards may not have been applied [GLL]
26
Apžvelgiamos temos Prototipų kūrimas programinės įrangos procese.
Prototipų kūrimo metodikos. Vartotojo sąsajos prototipų kūrimas. Apžvelgiamos temos: Prototipų kūrimas programinės įrangos procese. Prototipų kūrimo technikos. Vartotojo sąsajos prototipų kūrimas. Prototyping in the software process Prototyping techniques User interface prototyping [GLL]
27
Spartaus prototipų kūrimo technologijos
Įvairūs metodai gali būti naudojami greitam prototipų kūrimui: Dinamiškas kūrimas aukšto lygio kalbomis Duomenų bazių programavimas Komponentų ir programų surinkimas Tai nėra išskirtiniai metodai, jie dažnai naudojami kartu. Vizualus programavimas yra būdingas didžiajai daliai prototipų kūrimo sistemų. Spartaus prototipų kūrimo technologijos Įvairūs metodai gali būti naudojami greitam kūrimui: Dinamiškas kūrimas aukšto lygio kalbomis Duomenų bazių programavimas Komponentų ir programų surinkimas Tai nėra išskirtiniai metodai, jie dažnai naudojami kartu. Vizualus programavimas yra būdingas didžiajai daliai prototipų kūrimo sistemų. Various techniques may be used for rapid development Dynamic high-level language development Database programming Component and application assembly These are not exclusive techniques - they are often used together Visual programming is an inherent ( būdingas) part of most prototype development systems Koks programavimas yra būdingas didžiajai daliai prototipų kūrimo sistemų? [GLL]
28
Dinamiškos aukšto lygio kalbos
Kalbos, kurios turi galingas duomenų apdorojimo priemones. Reikalauja didelės vykdymo palaikymo sistemos. Normaliai nenaudojamos didelių sistemų kūrimui. Kai kurios kalbos pateikia puikias vartotojo sąsajos kūrimo priemones. Kai kurios kalbos turi integruotą paramos aplinką, kurios priemonės gali būti naudojamos prototipų kūrimui. Dinamiškos aukšto lygio kalbos Kalbos, kurios turi galingas duomenų apdorojimo priemones. Reikalauja didelės vykdymo palaikymo sistemos. Normaliai nenaudojamos didelių sistemų kūrimui. Kai kurios kalbos pateikia puikias vartotojo sąsajos kūrimo priemones. Kai kurios kalbos turi integruotą palaikymo aplinką, kurios priemonės gali būti naudojamos prototipų kūrimui. Languages which include powerful data management facilities Need a large run-time support system. Not normally used for large system development Some languages offer excellent UI development facilities Some languages have an integrated support environment whose facilities may be used in the prototype [GLL]
29
Prototipų kūrimo kalbos
Kalba Tipas Programų sritis (application domain) Smalltalk Objektiškai orientuota Interaktyvios sistemos Java Prolog Loginė Simbolinis apdorojimas Lisp Paremta sąrašais (list-based) Kokios pagrindinės programavimo kalbos naudojamos prototipų kūrimui? (išvardinkite bent 2) [GLL]
30
Prototipų kūrimo kalbos pasirinkimas
Kokia yra programos taikymų sritis? Kokia sąsaja su vartotoju reikalinga? Kokios paramos aplinkos pateikiamos kartu su kalba? Skirtingos sistemos dalys gali būti programuojamos skirtingomis kalbomis. Tačiau, gali būti problemų susijusių su ryšiais tarp kalbų. Prototipų kūrimo kalbos pasirinkimas Kokia yra programos problemų sritis? Kokia sąsaja su vartotju reikalinga? Kokios palaikymo aplinkos pateikiamos kartu su kalba? Skirtingos sitemos dalys gali būti programuojamos skirtingomis kalbomis. Tačiau, gali būti problemų susijusių su ryšiais tarp kalbų. What is the application domain of the problem? What user interaction is required? What support environment comes with the language? Different parts of the system may be programmed in different languages. However, there may be problems with language communications [GLL]
31
Duomenų bazių programavimo kalbos
Specializuotos kalbos, skirtos verslo sistemoms, kuriamoms remiantis duomenų bazių valdymo sistema. Paprastai turi duomenų bazių užklausų kalbą, formų generatorių, ataskaitų generatorių ir elektroninę lentelę. Gali būti integruotos su CASE priemonėmis. Kalba ir aplinka kartais žinoma kaip ketvirtos kartos kalba (4GL). Efektyvios kainos atžvilgiu mažoms-ir vidutinės apimties verslo sistemoms. Duomenų bazių programavimo kalbos Kalbos, skirtos verslo sistemoms, kuriamoms aplink duomenų bazių valdymo sistemą. Paprastai turi duomenų bazių užklausų kalbą, formų generatorių, ataskaitų generatorių ir elektroninę lentelę. Gali būti integruotos su CASE priemonėmis. Kalba ir aplinka kartais žinoma kaip ketvirtos kartos kalba (4GL). Apsimoka mažos- vidutinės apimties verslo sistemoms. Domain specific languages for business systems based around a database management system Normally include a database query language, a screen generator, a report generator and a spreadsheet. May be integrated with a CASE toolset The language + environment is sometimes known as a fourth-generation language (4GL) Cost-effective for small to medium sized business systems [GLL]
32
Duomenų bazių programavimas
Sąsajos generatorius Elektroninė lentelė DB programavimo kalba Ataskaitų generatorius Duomenų bazių valdymo sistema Duomenų bazių programavimas DB programavimo kalba Sąsajos su vartotoju generatorius Elektroninė lentelė Ataskaitų generatorius Duomenų bazių valdymo sistema Ketvirtos kartos kalba Ketvirtos kartos kalba [GLL]
33
Komponentų ir taikymo programų surinkimas
Prototipai gali būti greitai sukurti iš rinkinio pakartotinai naudojamų komponentų ir šiokio tokio mechanizmo, skirto tiems komponentams surišti. Sujungimo mechanizmas turi turėti kontrolės priemones ir priemones komponentų ryšiams užtikrinti. Sistemos specifikacija turi įvertinti esančių komponentų parengtumą ir funkcionalumą Komponentų ir programų surinkimas Prototipai gali būti greitai sukurti iš rinkinio pakartotinai naudojamų komponentų ir šiokio tokio mechanizmo, skirto tiems komponentams surišti. Sujungimo mechanizmas turi turėti kontrolės priemones ir priemones komponentų ryšiams užtikrinti. Sistemos specifikacija turi įvertinti esančių komponentų prieinamumą ir funkcionalumą. Prototypes can be created quickly from a set of reusable components plus some mechanism to ‘glue’ these component together The composition mechanism must include control facilities and a mechanism for component communication The system specification must take into account the availability and functionality of existing components [GLL]
34
Prototipų kūrimas su pakartotinu naudojimu
Kūrimas taikymo lygyje Visos programos sistemos yra sujungiamos su prototipu taip, kad jos dalintųsi funkcionalumu. Pavyzdžiui, jei reikia teksto redagavimo, gali būti naudojamas standartinis tekstų redaktorius. Kūrimas komponentų lygyje Atskiri komponentai yra jungiami naudojant standartinę schemą sistemai realizuoti. Schema gali būti scenarijaus kalba arba integracijos schema tokia kaip CORBA. Prototipų kūrimas su pakartotinu naudojimu Kūrimas programos lygyje Visos programos sistemos yra sujungiamos su prototipu taip, kad jos dalintųsi funcionalumu. Pavyzdžiui, jei reikalia teksto redagavimo, gali būti naudojamas standartinis tekstų redaktorius. Kūrimas komponentų lygyje Atskiri komponentai yra jungiami naudojant standartinę schemą sistemai realizuoti. Schema gali būti scenarijaus kalba arba integracijos schema tokia kaip CORBA. Application level development Entire application systems are integrated with the prototype so that their functionality can be shared For example, if text preparation is required, a standard word processor can be used Component level development Individual components are integrated within a standard framework to implement the system Frame work can be a scripting language or an integration framework such as CORBA [GLL]
35
Pakartotinio naudojimo komponentų sujungimas
komponentai Komponentų sujungimo schema Vykdomas prototipas Pakartotinio naudojimo komponentų sujungimas Pakartotinio naudojimo komponentai Komponentų sujungimo schema Kontrolės ir sujungimo kodas Vykdomas prototipas Kontrolės ir sujungimo kodas [GLL]
36
Sudėtiniai dokumentai
Kai kurioms programoms prototipas gali būti sukurtas kaip sudėtinis dokumentas. Tai yra dokumentas su aktyviais elementais (toks kaip elektroninė lentelė), kurios leidžia vartotojo skaičiavimus. Kiekvienas aktyvus elementas turi surištą programą, kuri įvykdoma, kai elementas yra pažymimas. Dokumentas yra skirtingų taikymo programų integratorius Sudėtiniai dokumentai Kai kurioms programoms prototipas gali būti sukurtas kaip sudėtinis dokumentas. Tai yra dokumentas su aktyviais elementais (toks kaip elektroninė lentelė), kurios leidžia vartotojo skaičiavimus. Kiekvienas aktyvus elementas turi surištą programą, kuri įvykdoma, kai elementas yra pažymimas. Dokumentas yra skirtingų programų apjungimo priemonė. For some applications, a prototype can be created by developing a compound ( sudėtinis) document This is a document with active elements (such as a spreadsheet) that allow user computations Each active element has an associated application which is invoked when that element is selected The document itself is the integrator for the different applications [GLL]
37
Taikymo programų ryšiai sudėtiniame dokumente
Sudėtinis dokumentas Tekstas 1 Lentelė 1 Tekstas 2 Tekstas 3 Garsas 1 Lentelė 2 Tekstas 4 Garsas 2 Tekstas 5 Programų ryšiai sudėtiniame dokumente Sudėtinis dokumentas Tekstų redaktorius Elektroninė lentelė Garso grotuvas Tekstų redaktorius Elektroninė lentelė Garso grotuvas [GLL]
38
Vizualus programavimas
Scenarijaus kalbos, tokios kaip Visual Basic palaiko vizualinį programavimą, kur prototipas sukuriamas kuriant vartotojo sąsają iš standartinių komponentų ir juos apjungiant. Didelės komponentų bibliotekos egzistuoja tam, kad palaikytų šį kūrimo tipą. Jos gali būti priderintos, kad atitiktų specifinius programos reikalavimus. Vizualus programavimas Scenarijaus kalbos, tokios kaip Visual Basic palaiko vizualinį programavimą, kur prototipas sukuriamas kuriant vartotojo sąsają iš standartinių komponentų ir juos apjungiant. Didelės komponentų bibliotekos egzistuoja tam, kad palaikytų šį kūrimo tipą. Jos gali būti pritaikomos, kad atitiktų specifinius programos reikalavimus. Scripting languages such as Visual Basic support visual programming where the prototype is developed by creating a user interface from standard items and associating components with these items A large library of components exists to support this type of development These may be tailored to suit the specific application requirements [GLL]
39
Vizualus programavimas su pakartotiniu panaudojimu
Hyperteksto vaizdavimo komponentas Datos komponentas Ribų tikrinimo programa Vartotojo priminimo komponentas + programa Laisvo braižymo komponentas Vizualus programavimas su pakartotiniu panaudojimu. Datos komponentas Hiperteksto vaizdavimo komponentas Vartotojo užklausos komponentas + scenarijaus programa Medžio vaizdavimo komponentas Laisvo braižymo komponentas Ribų tikrinimo scenarijaus programa Medžio vaizdavimo komponentas [GLL]
40
Problemos dėl vizualaus programinės įrangos kūrimo
Sunku koordinuoti komandinį ( Team-based) kūrimą. Nėra aiškios sistemos architektūros. Sudėtingi ryšiai tarp programos dalių gali sukelti palaikymo problemas. Probelmos su vizualiu programinės įrangos kūrimu. Sunku koordinuoti komandinį kūrimą. Nėra aiškios sistemos architektūros. Sudėtingi ryšiai tarp programos dalių gali sukelti palaikymo problemas Sudėtingi ryšiai tarp programos dalių gali sukelti palaikymo problemas. . [GLL]
41
Apžvelgiamos temos Prototipų kūrimas programinės įrangos procese.
Prototipų kūrimo metodikos. Vartotojo sąsajos prototipų kūrimas. Apžvelgiamos temos: Prototipų kūrimas programinės įrangos procese. Prototipų kūrimo technikos. Vartotojo sąsajos prototipų kūrimas. Prototyping in the software process Prototyping techniques User interface prototyping [GLL]
42
Vartotojo sąsajos prototipų kūrimas
Neįmanoma iš anksto efektyviai specifikuoti vartotojo interfeiso “look and feel”, todėl būtinas prototipų kūrimas. Vartotojo sąsajos kūrimas sunaudoja didžiąją dalį sistemos kūrimo kaštų. Vartotojo sąsajos generatoriai gali būti naudojami sąsajos “piešimui” ir modeliuoti jos funkcionalumą su komponentais, susietais su vartotojo sąsajos elementais. Web sąsajų prototipai gali būti kuriami naudojant web puslapių redaktorių. Kas sunaudoja didžiąją dalį sistemos kūrimo kaštų? Vartotojo sąsajos prototipų kūrimas Neįmanoma iš anksto efektyviai specifikuoti vartotojo interfeiso “look and feel”, todėl būtinas prototipų kūrimas. Vartotojo sąsajos kūrimas sunaudoja didžiąją dalį sistemos kūrimo kaštų. Vartotojo sąsajos generatoriai gali būti naudojami sąsajos “piešimui” ir modeliuoti jos funkcionalumą su komponentais, susietais su vartotojo sąsajos elementais. Web sąsajų prototipai gali būti kuriami naudojant web puslapių redaktorių. It is impossible to pre-specify the look and feel of a user interface in an effective way. prototyping is essential UI development consumes an increasing part of overall system development costs User interface generators may be used to ‘draw’ the interface and simulate its functionality with components associated with interface entities Web interfaces may be prototyped using a web site editor [GLL]
43
Esminiai aspektai Prototipas gali būti naudojamas tam, kad vartotojai susikurtų konkrečią nuomonę apie sistemos galimybes. Prototipų kūrimas vis dažniau naudojamas sistemų kūrime, kur spartus kūrimas yra būtinas. Išmetimo prototipų kūrimas yra naudojamas sistemos reikalavimų supratimui. Evoliuciniame prototipų kūrime sistema yra kuriama vystant pradinę versiją iki galutinio produkto Pagrindinės mintys. Prototipas gali būti naudojamas tam, kad vartotojai susikurtų konkrečią nuomonę apie sistemos galimybes. Prototipų kūrimas tampa vis dažniau naudojamas sistemų kūrime, kur spartus kūrimas yra būtinas. Atmetimo prototipų kūrimas yra naudojamas sistemos reikalavimų supratimui. Evoliuciniame prototipų kūrime sistema yra kuriama vystant pradinę versiją iki galutinio produkto. [GLL]
44
Esminiai aspektai Spartus prototipų kūrimas yra būtinas. Tai gali reikalauti funkcionalumo praleidimo ir/ar ne-funkcinių apribojimų nesilaikymo. Prototipų kūrimo metodai naudoja labai aukšto lygio programavimo kalbas, duomenų bazių kūrimo ir kūrimo iš pakartotinio naudojimo komponentų programinę įrangą. Prototipų kūrimas yra būtinas sistemos dalims tokioms kaip vartotojo sąsaja, kurių neįmanoma iš anksto efektyviai specifikuoti. Vartotojai turi būti įtraukiami į prototipo vertinimą. Pagrindinės mintys Spartus prototipų kūrimas yra būtinas. Tai gali reikalauti funkcionalumo praleidimo ar ne-funkinių apribojimų nesilaikymo. Prototipų kūrimo metodai reikalauja labai aukšto lygio programavimo kalbų naudojimo, duomenų bazių kūrimo ir kūrimo iš pakartotinio naudojimo komponentų. Prototipų kūrimas yra būtinas sistemos dalims tokioms kaip vartotojo sąsaja, kurių neįmanoma iš anksto efektyviai specifikuoti. Vartotojai turi būti įtraukiami į prototipo vertinimą. Rapid development of prototypes is essential. This may require leaving out functionality or relaxing non-functional constraints Prototyping techniques include the use of very high-level languages, database programming and prototype construction from reusable components Prototyping is essential for parts of the system such as the user interface which cannot be effectively pre-specified. Users must be involved in prototype evaluation [GLL]
45
Klausimai 1. Išvardinkite kelis prototipų kūrimo privalumus
2. Kokiu tikslu naudojami prototipai? 3. Ar prototipų naudojimas turi įtaką bendroms kūrimo pastangoms? Jei taip, kokią? 4. Kokiam prototipų tipui būdinga: a) kūrimo tikslas- pateikti veikiančią sistemą b) kūrimo tikslas- pateikti sistemos reikalavimus 5. Kokioms sistemoms naudojamas evoliucinis kūrimas? 6. Evoliucinio kūrimo privalumai 7. Evoliucinio kūrimo atveju, kaip kuriama sistema? 8. Išvardinkite evoliucinio kūrimo problemas 9. Koks programavimas yra būdingas didžiajai daliai prototipų kūrimo sistemų? 10. Kokios pagrindinės programavimo kalbos naudojamos prototipų kūrimui? (išvardinkite bent 2) [GLL]
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.