Friday 17 November 2017

Rational System Trading Llc


Selvinteresse BREAKER NED Selvinteresse I en markedsøkonomi har enkeltpersoner mesteparten av ressursene tilgjengelig, arbeidskraft, land og kapital, og bruker frivillige beslutninger, gjort av egeninteresse, for å kontrollere markedsplassen. I denne typen system spiller regjeringen en liten rolle, og økonomien er formet av to styrker, selvinteresse og konkurranse. Egeninteresse er uten tvil det største motivet for økonomisk aktivitet. Adam Smith beskriver i sin bok om temaet, The National Wells, Adam Smith det på denne måten: Det er ikke fra slakterens, bryggerens eller bakerens velvilje at vi forventer middagen vår, men av hensyn til deres egen interesse. Adam Smith, moderne økonomi og egeninteresse Smith er mest kjent i dag for sin forklaring på rasjonell egeninteresse i en fri markedsøkonomi, og hvordan dette kan føre til et generelt økonomisk velvære for de som selger varer og tjenester og de som som kjøper dem. Smiths grunnleggende stilling og undervisning peker på at selv om det ikke er vanlig tenkt på slike måter, virker mennesker rasjonelt og dermed vanligvis handler i egen egeninteresse. Beslutninger gjøres vanligvis basert på økonomisk forsiktighet og iboende tilfredshet. Disse forutsetningene er nøkkelen til økonomisk analyse og kommersiell suksess. I form av et markedsøkonomisk system, ellers kjent som kapitalisme, utveksles varer og tjenester fritt, og verdien for varer og tjenester som tilbys bestemmes av markedsinteraksjon. Den grunnleggende forutsetningen er at både produsenter og forbrukere handler rasjonelt og i egen interesse. Da disse partene samhandler i en markedsøkonomi, skjer frivillige utvekslinger, utvekslinger som i stor grad er basert på handlinger i egeninteresse som i sin tur klarer alle de involverte partene til gode. Konseptet med rasjonell egeninteresse er begrepet som forklarer handlingene produsenter og forbrukere tar, og gjør utvekslinger som gir begge parter bedre resultater enn før utvekslingen begge parter fordeler, enten iboende eller økonomisk eller begge deler. Den usynlige hånden Dette konseptet, introdusert av Smith i det 18. århundre, refererer til ideen om at når partier handler eller samhandler, basert på egeninteresse, produseres utilsiktede fordeler. Dette er grunnlaget for det underliggende konseptet til Smiths overordnet forklaring på viktigheten av egeninteresse i økonomi. Kvartitativ handel Hva er kvantitativ handel Kvantitativ handel består av handelsstrategier basert på kvantitativ analyse. som er avhengige av matematiske beregninger og nummerkrepping for å identifisere handelsmuligheter. Som kvantitativ handel er generelt brukt av finansinstitusjoner og hedgefond. Transaksjonene er vanligvis store i størrelse og kan innebære kjøp og salg av hundre tusen aksjer og andre verdipapirer. Imidlertid blir kvantitativ handel mer vanlig brukt av individuelle investorer. BREAKING DOWN Kvantitativ handel Pris og volum er to av de vanligste datainngangene som brukes i kvantitativ analyse som hovedinngangene til matematiske modeller. Kvantitative handelsmetoder inkluderer høyfrekvent handel. algoritmisk handel og statistisk arbitrage. Disse teknikkene er hurtigbrann og har vanligvis kortsiktige investeringshorisonter. Mange kvantitative handelsfolk er mer kjent med kvantitative verktøy, for eksempel bevegelige gjennomsnitt og oscillatorer. Forstå kvantitativ handel Kvantitative handelsfolk utnytter moderne teknologi, matematikk og tilgjengeligheten av omfattende databaser for å gjøre rasjonelle handelsbeslutninger. Kvantitative handelsfolk tar en handelsteknikk og lager en modell av det ved hjelp av matematikk, og deretter utvikler de et dataprogram som bruker modellen til historiske markedsdata. Modellen blir deretter testet og optimalisert. Dersom gunstige resultater oppnås, implementeres systemet i sanntidsmarkeder med reell kapital. Måten kvantitative handelsmodeller fungerer best kan beskrives ved hjelp av en analogi. Tenk på en værmelding der meteorologen regner med en 90 sjanse for regn mens solen skinner. Meteorologen oppnår denne motstridende konklusjonen ved å samle og analysere klimadata fra sensorer over hele området. En datastyrt kvantitativ analyse avslører spesifikke mønstre i dataene. Når disse mønstrene blir sammenlignet med de samme mønstrene som er avslørt i historiske klima data (backtesting), og 90 av 100 ganger resultatet er regn, kan meteorologen trekke konklusjonen med tillit, derved 90-prognosen. Kvantitative handelsfolk bruker samme prosess til finansmarkedet for å foreta handelsbeslutninger. Fordeler og ulemper med kvantitativ handel Målet med handel er å beregne den optimale sannsynligheten for å utføre en lønnsom handel. En typisk handelsmann kan effektivt overvåke, analysere og foreta handelsbeslutninger på et begrenset antall verdipapirer før mengden av innkommende data overstyrer beslutningsprosessen. Bruken av kvantitative trading teknikker belyser denne grensen ved hjelp av datamaskiner for å automatisere overvåking, analyse og handelsbeslutninger. Overvinne følelser er en av de mest gjennomgripende problemene med handel. Det er frykt eller grådighet, når handel, følelser tjener bare å kvele rasjonell tenkning, som vanligvis fører til tap. Datamaskiner og matematikk har ikke følelser, så kvantitativ handel eliminerer dette problemet. Kvantitativ handel har problemer. Finansmarkedene er noen av de mest dynamiske enhetene som eksisterer. Derfor må kvantitative handelsmodeller være like dynamiske for å være konsekvent vellykket. Mange kvantitative handelsfolk utvikler modeller som er midlertidig lønnsomme for markedsforholdene de ble utviklet for, men de svikter til slutt når markedsforholdene endres. Verdien av modellering Sammendrag Denne vitboken omhandler hvordan modellering kan påvirke programvare og systemutvikling positivt. Tiltenkt publikum inkluderer både teknisk og ikke-teknisk personell knyttet til programvareutviklingsprosessen. Modellering kan være en effektiv måte å håndtere kompleksiteten til programvareutvikling. Det muliggjør kommunikasjon, design og vurdering av krav, arkitekturer, programvare og systemer. Til tross for disse dydene har vanlige programvareutvikling ennå ikke utnyttet modellering i hverdagen. Dette hvite papiret undersøker hvordan modellering gir ikke bare visuell, men også tekstlig innhold, og hvorfor kombinasjonen er viktig. Det forklarer også hvordan man skal modellere gjennom de ulike faser av programvareutviklingens livssyklus og hvilke modelleringstyper som passer for hver fase. Selv om fokuset vil være på modellering som en disiplin i seg selv, vil Unified Modeling Language (UML) bli brukt som felles middel for å uttrykke modellene. Denne hvitboken diskuterer verdien av modellering i sammenheng med programvareutvikling. Begrepene som presenteres her, er ikke nyskapende programvareprofessorer har praktisert modellering i mange år. Men i det vanlige programvareutviklingssamfunnet, modellerer bare en brøkdel av programvareutviklere formell programvare. Dette hvite papiret undersøker grunnleggende om hva som motiverer bruken av modelleringsprogramvare. For de som er kunnskapsrike om programvaremodellering, de som ikke vet noe om det eller de som vet om det, men aldri har tatt imot det, har denne hvitboken til hensikt å forklare fordelene og verdiene som denne praksisen kan tilby. Hva er modellering I mange år har forretningsanalytikere, ingeniører, forskere og andre fagfolk som bygger komplekse strukturer eller systemer, skapt modeller for hva de bygger. Noen ganger er modellene fysiske, for eksempel skalede oppslag av fly, hus eller biler. Noen ganger er modellene mindre konkrete, sett i forretningsmessige finansmodeller, markedssimuleringer og elektriske kretsdiagrammer. I alle tilfeller fungerer en modell som en abstraksjon - en omtrentlig representasjon av det virkelige elementet som bygges. Hvorfor modell Hvorfor skal du modellere noe før du bygger det Kanskje du ikke burde det. Enkelte ting trenger ikke nødvendigvis en modell før konstruksjonen, for eksempel et enkelt tjekbokregister, et valutaomregningsverktøy, et hus eller en enkel makro i en tekstbehandler som åpner et sett med rutinemessige filer. Slike prosjekter deler alle eller de fleste av følgende egenskaper: Problemdomenet er velkjent. Løsningen er relativt enkel å konstruere. Svært få mennesker trenger å samarbeide for å bygge eller bruke løsningen (ofte bare en). Løsningen krever minimal kontinuerlig vedlikehold. Omfanget av fremtidige behov er usannsynlig å vokse vesentlig. Men antar at ingen av disse egenskapene gjelder. Hvorfor bryter noen faglige disipliner til å lage modeller Hvorfor bygger de ikke bare den virkelige tingen med en gang Svaret har å gjøre med kompleksiteten, risikoen og det faktum at originale utøvere ikke alltid er passende eller til og med tilgjengelige for å fullføre oppgaven. Det er verken teknisk vis eller økonomisk praktisk å bygge bestemte typer komplekse systemer uten først å lage et design, en tegning eller en annen abstrakt representasjon. Selv om profesjonelle arkitekter kan bygge et hundhus uten et designdiagram, ville de aldri bygge en 15-etasjers kontorsbygning uten å først utvikle en rekke arkitektoniske planer, diagrammer og en slags mock-up for visualisering. Modeling gir arkitekter og andre muligheten til å visualisere hele systemene, vurdere ulike alternativer og formidle design tydeligere før de tar på seg risikoene - teknisk, økonomisk eller ellers - av selve konstruksjonen. Hvorfor modellprogramvare I årevis var utøvelsen av programvareutvikling unntatt fra mange av disse modelleringsproblemene. Av sin natur kan programvare enkelt opprettes og enkelt endres. Det kreves lite kapitalutstyr, og nesten ingen produksjonskostnader påløper. Disse egenskapene dyrket en gjør-det-selv-kultur - forestill deg det, bygg det og endre det så ofte som nødvendig. Det er ikke noe slutt system uansett, så hvorfor prøve å tenke på en før du skriver kode. I dag har programvare systemer blitt svært komplekse. De må integreres med andre systemer for å kjøre de elementene som brukes i hverdagen. Biler, for eksempel, er nå tungt utstyrt med datamaskiner og tilhørende programvare for å styre alt fra motor og cruise control til alle slags nye navigasjons - og kommunikasjonssystemer om bord. Programvare er også sterkt vant til å automatisere forretningsprosesser av alle slag - de som ses og oppleves av kunder og de som er på bakkontoret. Noen programvare systemer støtter viktige helsemessige eller eiendomsrelaterte funksjoner, noe som gjør dem nødvendigvis komplekse for å utvikle, teste og vedlikeholde. Og selv de systemene som ikke er kritiske for menneskers helse eller eiendom, kan være avgjørende for bedrifter. I mange organisasjoner er programvareutvikling ikke lenger et kostnadsberettiget overhead line item - det er en integrert del av selskapets strategiske forretningsprosesser. For disse selskapene har programvare blitt en nøkkeldiskriminator i konkurranse på markedet. Av disse grunnene og mer trenger utviklere en bedre forståelse av hva de bygger, og modellering gir en effektiv måte å gjøre det på. Samtidig må modellering ikke senke tingene nedover. Kunder og bedriftsbrukere forventer fortsatt at programvare leveres i tide og å utføre som forventet på forespørsel. For å oppnå dette raske og gode målet ser IBM fire nødvendigheter for programvareutvikling: utvikle iterativt, fokusere på arkitektur, kontinuerlig sikre kvalitet og administrere forandringer og eiendeler. De samme grunnleggende grunnene til at andre komplekse systemer med høyrisiko modelleres, gjelder også programvare - for å håndtere kompleksiteten og forstå design og tilhørende risikoer. Mer spesifikt, ved hjelp av modelleringsprogramvare, kan utviklere: Lag og formidle programvareutforminger før du legger til ytterligere ressurser. Spor konstruksjonen tilbake til kravene, og sørg for at de bygger riktig system. Øv det iterativ utvikling, hvor modeller og andre høyere nivåer av abstraksjon legge til rette for raske og hyppige endringer Hvorfor velger noen utviklere ikke å modellere programvare Til tross for de mange grunner og dyder bak modellering, bruker det store flertallet av programvareutviklere fortsatt ingen form for abstraksjon høyere enn kildekoden. Hvorfor Som tidligere beskrevet, garanterer den faktiske kompleksiteten av problemet eller løsningen det ikke. Igjen, hvis du bygger et hundhus, trenger du ikke å ansette en arkitekt eller bygge en byggherre for å produsere et sett med designspesifikasjoner. Men i programvareverdenen begynner systemer ofte enkelt og godt forstått, og da blir de mer og mer komplekse gjennom den naturlige utviklingen av en vellykket implementering. I andre tilfeller velger utviklere ikke å modellere fordi de ganske enkelt ikke oppfatter behov for det før mye for sent. Mange vil hevde at motstanden mot modelleringsprogramvare er mer kulturell enn noe annet. Tradisjonelle programmerere er svært dyktige ved konvensjonelle kodeteknikker. Selv når uventet kompleksitet begynner å krenke, er de fleste utviklere komfortable ved å holde seg til deres integrerte utviklingsmiljø (IDE) og debugger og bare jobbe flere timer på problemet. Fordi modellering krever tilleggsopplæring og verktøy, er det nødvendig med en tilsvarende investering i tid, penger og innsats - ikke i tide, men tidlig i en prosjekts utviklings livssyklus. Grunnen til at tradisjonelle utviklere ikke er mer proaktive i denne forbindelse er at de tror modellering vil dempe dem. Det neste avsnittet har til hensikt å bidra til å fjerne denne oppfatningen. Når modeller jeg Modeling komplekse applikasjoner har flere generelle fordeler. Noen spesifikke situasjoner der modelleringsarbeidet er verdt, er: For bedre å forstå forretnings - eller ingeniørsituasjonen ved hånden (som modell) og å lage et bedre system (å være modell) Å bygge og designe en systemarkitektur For å lage visualiseringer av kode og andre former for implementering Modellering er ikke et helt eller ingenting forslag. Modeller kan spille en rolle i programvareutviklingsprosessen på mange måter. Figur 1 illustrerer spekteret av måter å utøve modelldrevet utvikling på. Figur 1: Et spektrum av tider, steder og måter å modellere. Integrerte utviklingsmiljøer. I det løseste begrepet modellering kan IDEs betraktes som et inngangspunkt i praksis med modelldrevet utvikling. Moderne IDEer tilbyr flere mekanismer som øker nivået av abstraksjon når det gjelder å opprette og vedlikeholde kode. Verktøy som språkfølsomme redaktører, veivisere, formbyggere og andre GUI-kontroller er ikke modeller i strengere forstand. Likevel kan de øke nivået av abstraksjon over kildekoden, gjøre utviklere mer produktive, bidra til å skape mer pålitelig kode og aktivere en mer effektiv vedlikeholdsprosess. Alle disse egenskapene er essensen av modelldrevet utvikling. Kodevisualisering og visuell redigering. Et trinn over de grunnleggende IDE-funksjonene er evnen til å visualisere kildekoden i grafisk form. Her er et bilde verdt tusen linjer med kode, på en måte. Utviklere har brukt grafiske former for abstraksjon over sin kode i mange år. Tradisjonelle flytdiagrammer er en vanlig metode for å skildre algoritmisk kontrollflyt av kode. Strukturdiagrammer, eller til og med enkle blokkdiagrammer med piler, brukes ofte på tavler - ved hjelp av bokser for å representere funksjoner og delprogrammer, piler for å indikere anropsavhengigheter og så videre. For objektorientert programvare, bokser angir vanligvis klasser og linjer mellom bokser angir forhold mellom disse klassene. Koblet nært med kodevisualisering er visuell redigering, der utviklere redigerer kode gjennom diagrammene i stedet for gjennom konvensjonelle IDE-tekstvinduer. Visuell redigering passer godt for endringer som har systematiske effekter på andre kodestykker. For eksempel, i et objektorientert system som har et sett med klasser som er relatert til arvshierarki, kan enkelte funksjoner i klassene (feltdelene, metodene eller funksjonene) kanskje bli omorganisert i forskjellige klasser (en prosess som kalles refactoring) som søknaden utvikler seg. Ved hjelp av konvensjonelle kode redaktører å vedta slike endringer kan være kjedelig og feilaktig. Men en effektiv visuell editor lar utviklere, for eksempel, dra og slippe en medlemsfunksjon fra en klasse til baseklassen og juster automatisk all kode som påvirkes av en slik endring. I en forstand er kodevisualisering og visuell redigering ganske enkelt alternative metoder for visning og redigering av koden. Endringer i koden gjenspeiles umiddelbart i tilsvarende diagrammer og omvendt. Selv om noen kan hevde at slike bilder ikke utgjør en modell, er essensen av modellering abstraksjon, og enhver visualisering av kode er faktisk en abstraksjon - selektivt eksponering av viss informasjon mens undertrykking av detaljer anses som unødvendig eller uønsket. Noen utøvere foretrekker å bruke vilkår som kode modell, implementeringsmodell eller plattformsspesifikke modell (PSM) for å kvalifisere slike abstraksjoner fra andre modeller på høyere nivå, som ikke har slike direkte relasjoner til koden. Modellering og rundtursteknikk. Det neste trinnet på modelleringsspekteret representerer tilstanden til konvensjonell modelldrevet utvikling. Her blir visuelle modeller laget av en metodologisk prosess som begynner med krav og delves i en arkitektonisk designmodell på høyt nivå. Utviklere lager deretter en detaljert designmodell hvorfra skeletkoden er generert til en IDE. IDE brukes til å fullføre den detaljerte kodingen. Eventuelle endringer som er gjort i koden som påvirker designmodellen synkroniseres tilbake til modellen. Enhver modellendring synkroniseres med eksisterende kode. Eldre integrasjon. Når utviklere er klare til å integrere systemene alle arv eller noen nye systemer - de må forstå systemene på plass, vite hvordan virksomheten har til hensikt for disse systemene å samarbeide og prioritere disse integrasjonene. Modellering av arvsystemer betyr ikke nødvendigvis at hele systemet og alle dets komponenter må innlemmes, men utviklere skal forstå arvsystemarkitekturene, hvordan de fungerer og hvordan de grensesnittet med andre. Å forstå hva systemet gjør, og hvilken annen programvare som er avhengig av det, vil bidra til å bestemme egnede skritt fremover. Flere metoder kan brukes til å modellere arvssystemer. Utviklere kan konvertere kode til modeller for å forstå dem, modell dem manuelt eller bruke en kombinasjon av dem. Rapid Application Development (RAD). Utøvelsen av RAD har eksistert siden tidlig på 1980-tallet. Forutsetningen er bare å gi svært produktive måter å generere og vedlikeholde kode. RAD er oppnådd gjennom brukervennlige, høyt grafiske egenskaper av en avansert IDE. RAD, forskjellig fra både kode-sentrisk og modelldrevet utvikling, øker nivået av abstraksjon over koden, men bruker ikke modeller i seg selv. Forretningsmodellering og modellutførelse. Før behovet for å utvikle programvare er selv kjent, finner forretnings - og ingeniøranalytikere det ofte nyttig å skape som-er modeller av hvordan deres systemer fungerer i dag. Fra den modellen kan de analysere hva som fungerer og hva som må forbedres. Spesialverktøy kan simulere disse modellene langs flere nøkkelvariabler, for eksempel tid, kostnad og ressurser. Fra analysen kan modellene bygges for å foreskrive hvordan nye, forbedrede prosesser skal fungere. Generelt er det nødvendig med ny programvareutvikling for å implementere de nye prosessene, og de to-be-modellene tjener som nøkkeldrivere for den videre utviklingen. For enkelte applikasjonsdomener er de to-be-modellene spesifisert til en slik strenghet at komplette applikasjoner kan genereres fra modellene. Modellering på dette abstraksjonsnivået gir størst potensial for produktivitet og integrasjon mellom forretnings - eller ingeniørproblemdomenene og teknologien eller implementeringsdomenene. Hvordan modellerer jeg Programvareindustrien har vedtatt Unified Modeling Language som standardmiddel for å representere programvaremodeller og relaterte gjenstander. Programvarearkitekter, designere og utviklere bruker UML for å spesifisere, visualisere, konstruere og dokumentere alle aspekter av et programvaresystem. Nøkkelledere fra IBM Rational ledet den opprinnelige utviklingen av UML. I dag administreres UML av Object Management Group (OMG), som består av representanter over hele verden for å sikre at spesifikasjonen fortsetter å tilfredsstille de dynamiske behovene til programvaresamfunnet. Å vedta en standard notering som UML er et viktig skritt i å ta en modelldrevet tilnærming til programvareutvikling. UML er mer enn bare en grafisk notasjonsstandard - det er et modelleringsspråk. Som i alle språk definerer UML syntaks (både grafisk og tekstlig, i dette tilfellet) og semantikk (de underliggende betydningen av symbolene og teksten). Å ha et sant modelleringsspråk i stedet for bare en standard notasjon er avgjørende for å standardisere bruken av UML, så vel som for å bidra til at automatiserte verktøy på riktig måte kan håndheve reglene bak symbolene. UML - et sant modelleringsspråk - har hjulpet det til å bli programvarebransens mest anerkjente og allment anvendte modelleringsstandard. Hva folk sier om verdien av modellering Som alle teknologier hadde UML tidligere adoptere som ledet avgiften i å oppdage verdien. Her er bare noen få kommentarer fra IBM Rational174 kunder om verdien som modellering bidro til sine virksomheter: Vi prøver å redusere den totale kostnaden for forsikring til våre medlemmer. En av måtene å gjøre det på er å gjenbruke informasjon og gjenbruk de eiendelene vi bygger når vi går gjennom forretningsmodelleringen. Modelldrevet arkitektur er egentlig selve kjernepunktet i det som skjedde fra et forretningsmodelleringsperspektiv. Når vi starter prosjekter fra et programvareutviklingsperspektiv uten en klar forretningsmodell, uten et klart sett med forretningsmessige mål eller forretningsmål, finner vi at kundene ikke får det de tror de har bedt om. - Sue Nelson, direktør for virksomheten modellering for Blue Cross og Blue Shield of Florida Jeg tror visuell modellering er bare et nøkkelelement i noen utviklere verktøykasse. Det gjør det mulig for oss å ta med spesialisert kompetanse, for eksempel sikkerhetsanalyse av et produkt. Ved å ha en felles modelleringsteknikk som alle vet hvordan de skal leses, kan vi ta med vår bedriftssikkerhetsekspert, og den personen kan veldig enkelt gjennomgå produktet og påpeke eventuelle hull. Nanette Brown, direktør for anvendt arkitektur og kvalitetssikring på Pitney Bowes Enterprise arkitektur presenterer sine egne svært unike modelleringsutfordringer. Du modellerer på flere nivåer. Du modellerer med store grupper av mennesker og forskjellige lag. Og modellene på hvert nivå pleier å måtte tilpasses for de enkelte interessenttypene. Modellering med UML ga oss fleksibilitet til å møte våre unike behov og krav på hvert nivå av virksomhetsarkitekturen. - Frank Armor, president for ArmourIT, LLC. Testimonials som disse kan vise de reduserte risikoen for andre som nettopp har begynt med modellering og kan i siste instans bidra til å plassere modellering nærmere hovedspekteret av programvareutvikling. Trender og fremtiden Spør noen programvareutvikling profesjonell, Hvor er programvareindustrien overskriften, og du vil sannsynligvis få et bredt spekter av svar. Men en trend ser ut til å være ganske vanlig: Programvareutvikling fortsetter å vokse i kompleksitet, og utviklere må jobbe på stadig høyere nivåer av abstraksjon for å takle denne kompleksiteten. Modelleringsprogramvare er og vil fortsette å være en viktig måte at utviklere jobber på de høyere nivåene. Følgende spesifikke trender er bemerkelsesverdige nå. Utover visuell modellering. UML har tradisjonelt vært assosiert med et grafisk middel for å skildre programvareartefakter. Selv om dette fortsatt er sant, er det en voksende betydning i modellering under hetten. Meta-modellering er disiplinen av å ha modeller av modeller. Den mest åpenbare og praktiske anvendelsen av meta-modellering kan ses i UML versjon 2, som danner grunnlaget for hvordan automatiserte verktøy deler data og samarbeider med hverandre. Dette gjelder ikke bare modelleringsverktøy, men også verktøy for kravstyring, kompilatorer, testing, konfigurasjonsstyring og andre aspekter av livscyklusen for programvareutvikling. Alle disse områdene kan bli bedre integrert som et resultat av en felles underliggende metamodell, som den som tilbys av UML 2 og tilhørende modelleringsstandarder. Unifying programvare, data og forretningsmodellering. Denne hvitboken har først og fremst fokusert på verdien av modelleringsprogramvare. Men datamodellering og forretningsmodellering har vært i praksis for enda lenger i noen form. Problemet er at disse typer modellering tradisjonelt har vært involvert i helt forskjellige verdener av modelleringsspråk og praksiskulturer. Nå er løftet om å forene disse tre verdenene tydeligvis ikke nødvendigvis med et enkelt modelleringsspråk eller verktøy, men gjennom en kombinasjon av flere åpne industristandarder som er konvergerende. Modellering over hele livssyklusen. Som standarder fortsetter å utvikle seg, vil modellering bli gjeldende for et enda bredere spekter av aktiviteter i hele livscyklusen for programvareutvikling. Programmering av modellering er allerede kjøringstesting og andre aspekter ved kvalitetssikring tidligere i livssyklusen. Og ettersom forretningsmodellering blir mer standardisert og integrert med data og programvare, vil en modelldrevet forretningsintegrasjonsdisiplin trolig oppstå. Domenespesifikke modelleringsspråk. UML og andre modelleringsspråk tillater utviklere å fokusere på nivåer av abstraksjon over implementeringsdetaljer. Som vist tidligere i figur 1, inkluderer modellering et bredt spekter av nivåer, selv når de fjernes fra den aktuelle koden. Tatt til det høyeste nivået av abstraksjon, fokuserer en forretnings - eller domenemodell ikke på programvare, men på arten av det aktuelle problemet. Her skal modellen bruke vilkår og ikoner som er kjent for folk og systemer i det aktuelle forretnings - eller applikasjonsfeltet. Bransjen beveger seg mot domenespesifikke språk - spesialmodellmodell språk dedikert til deres respektive anvendelsesområde. Oftere utvides imidlertid generelle formålsmodell språk - spesielt UML - på vanlige måter å møte domenespesifikke modelleringsbehov gjennom innovasjoner som profiler. Begge tilnærmingene stemmer overens med verdien av modellering generelt: Å gi abstraksjoner for å spesifisere problemer og løsninger på en mer produktiv og effektiv måte. Virksomheten til programvareutvikling. Mange har kalt programvareutvikling en lagsporter. En følgesvenn uttalelse ville være at det er en internasjonal lagsporter. Med dagens teknologi har programvareutviklingen ingen geografiske grenser. Virksomheten til programvareutvikling vil trolig fortsette å bli distribuert og global. Modellering og andre høyere former for abstraksjon vil være avgjørende for å hjelpe utøveren til å håndtere den tilhørende kompleksiteten. Modelldrevet arkitektur (MDA): Det neste trinnet. MDA er et initiativ ledet av Object Management Group. Mens det fortsatt er tidlig i adopteringsstadiet, kan MDA betraktes som det neste logiske skrittet i utviklingen av modellering og modelldrevet utviklingsteknologi. MDA, basert på UML og andre relaterte standarder, fokuserer på å definere modeller på varierende nivåer av abstraksjon og på transformasjoner definert mellom disse forskjellige nivåene. Automatisert verktøystøtte er avgjørende for utviklingen og vellykket bruk av MDA. Klikk her for å se artikkelen som PDF. Nedlastbare ressurser

No comments:

Post a Comment