Ohjelmistokehitystyökalut. Kehittäjätyökalut – pakolliset ja yksinkertaisesti hyödylliset

Ohjelmistokehitys tehdään erilaisilla työkaluilla, jotka tarjoavat:

    alkuperäinen ohjelmointi;

    sovellusohjelmistopakettien käyttö – tietojenkäsittelytoimintoja toteuttavat standardiohjelmat;

    ohjelman kehittämisen päävaiheiden automatisointi.

Perinteisimpiä kehitystyökaluja ovat ohjelmointikielet ja -järjestelmät. Ohjelmointikielet jaetaan yleensä kone- ja algoritmikieliin.

Kone kielet sisältävät konekäskyjä, jotka vastaavat yksinkertaisimpia käsittelytoimintoja. Koneen ohjeet on sidottu tiettyyn tietokone- ja/tai käyttöjärjestelmäluokkaan.

Algoritminen Ohjelmointikielet kuvaavat ongelman algoritmia, selkeyttävät algoritmia ja helpottavat ohjelman ylläpitoa. Algoritmiset kielet jaetaan konesuuntautuneisiin, prosessisuuntautuneisiin ja ongelmakeskeisiin kieliin.

Kone-suuntautunut Ohjelmointikielet ovat matalan tason kieliä, koska ne ottavat huomioon tietokoneiden arkkitehtuurin ja tyypin. Ohjelmointi tällaisilla kielillä on työvoimavaltaista, mutta ohjelmat ovat optimaalisia tarvittavien tietokoneresurssien suhteen. Esimerkkejä konesuuntautuneista ohjelmointikielistä ovat tietyn luokan tietokoneiden erilaiset assemblerit 1 (Macro Assembler, Turbo Assembler jne.).

Menettelyllinen-suuntautunut Ohjelmointikielet, kuten Visual Basic, Pascal, C++, Ada, Cobol, PL1 jne., antavat sinun kuvata joukon prosessointiproseduureja ja toteuttaa vakiolaskentarakenteita:

1. Lohkojen sekvenssit (ohjeet): 1, 2, 3, 4 jne.

Kaikki lohkot (käskyt) suoritetaan tiukassa järjestyksessä (kuva 5 A)

2. Ehdollinen siirtyminen (kuva 5 B) - tietyn ehdon tarkistus (2) ja vaihtoehtoisen toimenpiteen valinta: jos ehto on tosi - 3, muuten - 4. Tämän jälkeen ohjaus siirtyy lohkoon 5.

3. Vaihtoehtoinen valinta (kuva 5 B) – tarkista ehto (2), jos ehto on tosi – suorita toimenpide 3, muussa tapauksessa tarkista ehto (4); jos ehto on tosi, suorita toimenpide 5 jne. Jos ehtoja ei täyty tai toimenpiteitä suoritetaan (3 tai 5 jne.), ohjaus siirtyy lohkoon 6.

A B C

Kuva 5

4. Syklinen prosessi – "vielä" sykli (kuva 6A). Jaksoa toistetaan, kunnes ehto (2) on tosi - lohko 3. Jos ehto (2) on epätosi, ohjaus siirtyy lohkoon 4.

5. Syklinen prosessi – sykli "ennen" (kuva 6B). Silmukka suoritetaan vähintään kerran - lohko 2. Kun ehdon (3) tarkistus on totta, suoritetaan lohko (2), muuten ohjaus siirtyy lohkoon 4.

Kuva 6

Ohjelmointikielet esine tyyppiä, strukturoidun ohjelmoinnin elementtejä käytetään myös objektiluokan tai tapahtumankäsittelyproseduurien ohjelmakoodissa.

Ongelmallista-suuntautunut ohjelmointikielet - korkean tason relaatiokyselykielet, raporttigeneraattorit jne. avulla voit tunnistaa ongelman, syöttö- ja lähtötiedot ilman, että määrität erityisiä käsittelymenetelmiä.

Sovellusohjelmapaketit (APP) on jaettu luokkiin:

    Ongelmakeskeinen PPP – tarjota ratkaisuja tietyn aihealueen ongelmiin;

    Menetelmäkeskeinen PPP – tukee tietyntyyppistä mallia ja menetelmiä ongelmien ratkaisemiseksi, käytetään aihealueesta riippumatta;

    Yleiskäyttöiset ohjelmistot – tarjoavat tukea tietotekniikalle (tekstityö, graafinen työ, standardilaskelmat jne.).

Ohjelmistokehitystyökalujen yleiset ominaisuudet

    Ohjelmistokehitystyökalujen yleiset ominaisuudet

    Instrumentaalijärjestelmien ohjelmointitekniikka

    CASE työkalut. Nykyaikaisten CASE-työkalujen ominaisuudet

Yleiskatsaus oliokeskeisiin työkaluihin

Olio-ohjelmointi syntyi ennen olio-analyysiä ja suunnittelua, joten nykyään on olemassa melko suuri määrä kieliä, jotka tukevat tätä tekniikkaa. Ensimmäistä niistä pidetään alkuperäpäivän mukaan kielenä Jutustelu, vaikka kielessä käytettiin monia oliolähtöisen lähestymistavan elementtejä Simula vuonna 1967 Tehokkain työkalu olioohjelmien luomiseen nykyään on kieli C++, joka on luotu strukturoidun ohjelmointikielen pohjalta C. Kieli kehittyy menestyksekkäästi Java, joka oli alun perin suunniteltu oliosuuntautuneeksi.

Suurten ohjelmistojärjestelmien kehittäminen nykyaikaisissa olosuhteissa on mahdotonta ilman automaatioohjelmistokehitystyökalujen (CASE-työkalut) käyttöä. Ei ole monia CASE-tapauksia, jotka tukevat oliolähtöistä lähestymistapaa. Tunnetuin työkalu tähän suuntaan on järjestelmä Rational Rose , joka tukee muun muassa olioanalyysin ja suunnittelun vaiheita.

Rational Rose olio CASE-työkalu

Kehittäjä Rational Rose- Rational Software Corp., joka tunnetaan kehityksestään olioteknologian alalla, joista pääasiallinen on UML-kieli. Tämä CASE-järjestelmä on suunnattu juuri tukemaan UML:ää ohjelmistosuunnittelun pääkielenä.

Kuten mikä tahansa moderni CASE-työkalu, tämä järjestelmä tukee ohjelmiston elinkaaren kaikkia vaiheita ja tarjoaa käyttäjälle laajan valikoiman toimintoja ohjelmistojen analysointiin, suunnitteluun, rakentamiseen ja ylläpitoon. Tässä tapauksessa käytetään olioteknologiaa ja graafisia malleja käytetään laajasti.

Rational Rose koostuu seuraavista pääkomponenteista: arkisto, graafinen käyttöliittymä, projektintarkastustyökalut (selain), projektinhallintatyökalut, tilastonkeruutyökalut ja dokumenttigeneraattori sekä laajennukset tukemaan erilaisia ​​ohjelmointikieliä.

Pääominaisuuksiin kuuluvat seuraavat:

    Tehokas graafinen verkkoalueen mallinnuskieli, jolla on korkea formalisointitaso ja joka tukee olio-menetelmiä.

    Kätevä navigointi mallielementtien välillä "projektitarkastajan" avulla.

    Suunnittelutulosten tallentaminen yksittäisen mallin muodossa.

    Kehitystiimin tukeminen projektin parissa.

    Tehokas järjestelmä raporttien ja projektidokumentaation laatimiseen.

    Mahdollisuus ohjelmasynteesiin lähes kaikilla nykyaikaisilla oliokielillä, mukaan lukien cross-platform Java-kieli.

    Tuki komponenttiteknologioille ohjelmistojärjestelmien rakentamiseen.

    Laajat mahdollisuudet eri arkkitehtuurien ohjelmistojen suunnitteluun yksinkertaisista ohjelmista suuriin "client-server" -järjestelmiin ja Internet-sovelluksiin.

    Mahdollisuus suunnitella mallia uudelleen ohjelman lähdekoodin perusteella. Näin varmistetaan, että suunnittelutietojen ja toteutuksen eheys säilyy.

    CASE-ympäristön toimintojen konfigurointi ja laajentaminen asentamalla laajennusmoduuleja ensisijaisesti eri ohjelmointikielien tukemiseen.

Ohjelmistojärjestelmien kehittämisen periaatteet Rational Rosessa

Oliopohjaisten järjestelmien rakentamisessa on omat erityispiirteensä. On selvää, että maksimaalisen tehokkuuden saavuttamiseksi tulisi käyttää yhtä tekniikkaa elinkaaren kaikissa vaiheissa. Tämän mahdollisuuden tarjoaa universaali mallinnuskieli UML. Rational Rose tukee kaikkia järjestelmän suunnitteluvaiheita, jotka on määritelty UML-spesifikaatiossa.

Pääasiallisena suunnittelumenetelmänä on luoda erilaisia ​​kaavioita ja spesifikaatioita, jotka määrittelevät järjestelmämallin loogisen ja fyysisen rakenteen, sen staattiset ja dynaamiset näkökohdat. Näitä ovat luokka-, tila-, komentosarja-, moduuli- ja prosessikaaviot.

Kaikissa vaiheissa on mahdollista käyttää mallin elementteihin erikoistuneita graafisia muokkausohjelmia ja navigoida sen komponenttien välillä mallin tarkastajalla. Kaikki suunnittelutiedot tallennetaan yhteen mallitiedostoon (*.mdl).

Työ alkaa käyttötapauskaavion rakentamisella, joka kuvaa suunnitellun järjestelmän päätehtävät ja ympäristö. Seuraavaksi jokaiselle käyttökaaviossa esitetylle käyttötapaukselle kehitetään sekvenssikaaviot, jotka tunnistavat järjestelmän objektit ja kuvaavat tapahtumien sarjaa, joka tapahtuu objektien välisessä kommunikaatioprosessissa. Rational Rose mahdollistaa sekvenssikaavioiden automaattisen liittämisen käyttölohkoihin.

Sekvenssikaavioissa olevat objektit määritellään järjestelmässä luokkien avulla. Luokat ja niiden suhteet määritellään luokkakaavioilla, joiden kehitystä myös tuetaan Rational Rose. Luokat on ryhmitelty paketteihin. Rationaalista Ruusu voit määrittää joukon paketteja, niiden välisiä suhteita ja esittää niiden luokkia sisäkkäisissä luokkakaavioissa.

Käytettyjen ja suoritettujen järjestelmämoduulien kokoonpano on määritelty kohdassa Rational Rose käyttämällä komponenttikaaviota. Kaavio tunnistaa komponenttien väliset riippuvuudet. Komponenteilla voi olla rajapintoja, joiden kautta riippuvuudet toteutetaan. Käyttöönottokaaviot sisään Rational Rose heijastavat suorittavan ohjelmistojärjestelmän kokoonpanoa ja koostuvat solmuista ja solmujen välisistä vuorovaikutussuhteista. Solmut sisältävät järjestelmän komponenttikaaviossa esitetyt komponentit.

Täysin määritellylle mallille on mahdollista luoda lähdeohjelmatekstejä useilla tuetuilla olio-ohjelmointikielillä Rational Rose, kuten Java tai C++.

Tuloksena olevia ohjelmatekstejä voidaan muokata ulkopuolelta Rational Rose, ja tehtyjen muutosten huomioon ottamiseksi järjestelmä mahdollistaa tekstien käännöstyön malliksi.

Ohjelmistosuunnittelu

Verkkotunnuksen mallinnus . Projektin luominen alkaa järjestelmän käyttöperiaatteiden muodostamisesta. Sisällä Rational Rose Tätä vaihetta kutsutaan "Käyttötapausnäkymäksi". Tämän vaiheen toteutus mahdollistaa ulkoisten käyttäjien, käyttölohkojen, järjestelmäobjektien ja niiden välisten yhteyksien tunnistamisen.

Laaditaan käyttökaavio, joka kuvastaa luotavan järjestelmän ulkoista toimintaa. Tämä malli on monella tapaa samanlainen kuin rakenneanalyysin tietovuokaavio. Sen pääkomponentit ovat ulkopuoliset käyttäjät (toimijat), käyttölohkot (käyttötapaukset) ja komponenttien väliset yhteydet. Luodaksesi kaavion sisään Rational Rose käytetään erikoistunutta graafista editoria.

Järjestelmä tunnistaa kaikki käyttökaavion elementit mallin itsenäisiksi komponenteiksi tässä vaiheessa, ja niitä on tarkennettava. Ensinnäkin tämä koskee käyttölohkoja, jotka heijastavat ulkoiselle käyttäjälle yhtenä kokonaisuutena esitettyjä järjestelmätoimintojen ryhmiä.

Kullekin käyttölohkolle rakennetaan sekvenssikaavio, joka näyttää tehtävää suorittavien objektien vuorovaikutuksen ajan kuluessa. Tällaiset kaaviot tunnistavat järjestelmäobjektit ja määrittelevät viestit, joiden kautta nämä objektit ovat vuorovaikutuksessa. Kaaviot laaditaan erikoistuneessa editorissa.

Jokaisen sekvenssikaavion objektin mukana on sen luokan nimi, johon se kuuluu. Tietty objekti on jonkin luokan esiintymä. Luokat muodostavat järjestelmän loogisen rakenteen.

Loogisen rakenteen kehittäminen. Kun järjestelmän käyttöperiaatteiden muodostus on valmis, alkaa sen loogisen rakenteen kehittämisvaihe. SISÄÄN Rational Rose sitä kutsutaan "Loogiseksi näkemykseksi". Tämän vaiheen tuloksena tulisi olla pääkaavio ja sen elementtien yksityiskohdat.

Tässä vaiheessa sinun tulee määrittää luokat, joita järjestelmässä tarvitaan. Näiden luokkien esiintymät on jo määritetty sekvenssikaavioissa. Luokat ja niiden yhteydet näkyvät mallissa luokkakaavion muodossa. Näiden kaavioiden luokkaryhmät voidaan ryhmitellä paketeiksi.

Loogisen rakenteen suunnittelu tulee aloittaa ydinpakettien määrittelystä. Paketti on universaali työkalu mallielementtien ryhmittelyyn. Pakettien käytön avulla voit tehdä mallista näkyvämmän. Paketit voidaan upottaa sisäkkäin. Jokaisen paketin muodostavat luokat on kuvattu mukana olevassa kaaviossa.

Sisäänrakennettu Rational Rose Luokkakaavioeditori tarjoaa käteviä työkaluja tällaisiin toimintoihin, ja Model Inspectorin avulla on helppo navigoida kaaviohierarkiassa.

Kullekin luokalle on määritetty spesifikaatio, joka kuvaa attribuuttien ja menetelmien kokoonpanon, yhteydet, mallin, johon luokka luodaan, ja toteutusominaisuudet.

Mallien olemassaolo tekee eri rakenteiden luokkien luomisesta helppoa.

Luokat voidaan tuoda järjestelmään ulkopuolelta. Rational Rose tukee ohjelmiston komponenttirakennetta ja mahdollistaa binäärikomponenttien, kuten COM ja ActiveX, käytön mallissa. Niiden esitys mallissa suoritetaan näiden komponenttien rajapintoihin perustuvilla luokilla.

Tässä vaiheessa järjestelmälogiikkaa kuvataan luokkakaavioiden lisäksi tilakaavioita, skenaariokaavioita ja muita UML-kielen elementtejä.

Suunnittele sovelluksen fyysinen rakenne. Edellisessä vaiheessa kuvatut luokat yhdistetään ohjelman fyysisiin komponentteihin komponenttikaavioiden avulla.

Komponentti on järjestelmän suoritettava moduuli, ja se liittyy lähdetiedostoon, binäärikirjastotiedostoon, objektimoduuliin tai suoritettavaan tiedostoon. Komponentit voivat sisältää muita osia.

Suunnitellun järjestelmän komponenttien visualisointiin käytetään komponenttikaavioita. Komponenttikaavioiden rakennusvaihe sisään Ruusu nimeltään "komponenttinäkymä". Se koostuu kokonaiskaavion muodostamisesta ja tarvittaessa yksittäisten komponenttien yksityiskohdista alikaavioina.

Nämä kaaviot kuvaavat ohjelmiston komponenttien välistä suhdetta. Suhde toteutetaan rajapintojen kautta, jotka näkyvät myös kaaviossa.

Kaaviot luodaan erikoistuneessa editorissa. Komponentille on määritetty sen osaluokat.

Komponentti voi luoda lähdetekstiä useilla tuetuilla ohjelmointikielillä Järkevä ruusu, tai määritä ympäristön ulkopuolella kehitettyjä ohjelmafragmentteja Ruusu. Jälkimmäisessä tapauksessa niiden käyttöliittymän on vastattava mallissa ilmoitettua.

Viimeinen vaihe ohjelmistosuunnittelussa on käyttöönottokaavion laatiminen. SISÄÄN Ruusu tätä vaihetta kutsutaan "käyttöönottonäkymäksi". Käyttöönottokaaviot näyttävät suoritettavan ohjelmistojärjestelmän kokoonpanon. Se koostuu solmuista ja solmujen ja komponenttien välisistä vuorovaikutussuhteista. Solmut voivat sisältää komponentteja ja objekteja. Solmut ovat fyysisiä ajonaikaisia ​​elementtejä.

Järjestelmän rakentaminen ja ylläpito

Lähdetekstien luominen . Kun kehitettävän järjestelmän tietyt komponentit on tunnistettu, on aika luoda ohjelmakoodi jokaiselle komponentille.

Itse asiassa, Ruusu luo ohjelmarungon, joka lähetetään myöhemmin ohjelmoijille tarkistettavaksi. Luokkien ja menetelmien määritelmät syntetisoidaan automaattisesti, ja niiden erityinen toteutus on tehtävä manuaalisesti.

Tämän toiminnon alkutiedot ovat tietoja luokista, jotka muodostavat tämän komponentin, ja valitun kielen tämän komponentin toteuttamiseksi.

Ennen kuin suoritat toimenpiteen, sinun tulee määrittää vastaanotetun koodin tallennuskokoonpano ja parametrit. Suorita seuraavaksi luonti valitsemalla haluamasi kieli. Jos virheitä ilmenee, järjestelmä ilmoittaa sinulle siitä.

On mahdollista luoda valikoivasti ohjelmakoodia yksittäisille mallikomponenteille ja mukauttaa ohjelmatiedostoihin sijoitettua tietoa. Tällä saavutetaan suuri joustavuus mallia päivitettäessä ja modifioitaessa.

Rational Rose 98 Enterprise Edition Sen avulla voit luoda lähdetekstiä Visual Basicilla, C++:lla, Javalla sekä saada kuvauksen komponenttiliitännöistä IDL:ssä ja luoda projekteja Oracle 8 -järjestelmään.

Lähdekoodeihin perustuvan mallin uudelleensuunnittelu . Kyky suunnitella uudelleen, tai, kuten sitä myös kutsutaan, "käänteinen suunnittelu", malli lähdeohjelmateksteistä näyttää olevan yksi tärkeimmistä ja tietysti hyödyllisistä toiminnoista. Ruusu. Tällaisen toimenpiteen tarve syntyy usein projektia muokattaessa ja päivitettäessä. Mallin luomia ohjelmapohjia, kun ne on siirretty ohjelmoijille, voidaan muokata ja nämä muutokset tulee ottaa mallissa huomioon. Lisäksi koska Rational Rose tukee binäärikomponenttien tuontia (COM-objektit Win32-ympäristössä), silloin tuki binäärikomponentin rajapintojen kuvaukseen perustuville luokkien rakentamiselle on yksinkertaisesti välttämätöntä.

Voit palauttaa luokkia valitsemalla ohjelmointikielen, jolla luokat on toteutettu, ja määrittämällä hakemiston, jossa lähdetiedostot sijaitsevat. Sitten voit valita tarvittavat tiedostot tai palauttaa ne kaikki. Kun suoritat näitä toimintoja, sinun on oltava varovainen ja valittava vain ne elementit, jotka voidaan todella muuntaa malliksi. Käytön aikana järjestelmä ilmoittaa sinulle virheistä.

Kun toiminto on suoritettu onnistuneesti, komponenttikaavioon ("Komponenttinäkymä") ilmestyy uusi elementti, jonka nimi vastaa lähdetiedostojen hakemistoa. Looginen näkymä -vaiheeseen siirtyminen näyttää, että kaikki luokat ja paketit, jotka muodostavat uuden komponentin, ovat myös näkyneet luokkakaavioissa.

Nyt on mahdollista tehdä lisättyjen komponenttien määräämiä muutoksia malliin ja luoda lähdetekstit uudelleen.

Kehitysvaiheen tuki

Komponentit ja mallit. Yksi mahdollisuuksista Ruusu on COM-spesifikaatiota tukevien binäärikomponenttien mallinnus. Mallissa tällaisia ​​komponentteja edustavat COM-objektin mukana tulevien IDL-tiedostojen perusteella luodut rajapintaluokat. Näin voit sisällyttää malliisi erilaisia ​​valmiita komponentteja.

Mallielementtimallien tuki yksinkertaistaa suunnitteluprosessia. SISÄÄN Ruusu Voit luoda ja käyttää malleja useimmille mallin elementeille, mukaan lukien: käyttölohkot, paketit, luokat, komponentit sekä mallin toiminnot. Kun luot uutta elementtiä, sinun on määritettävä, mitä mallia käytetään, ja elementti sisältää kaikki mallin ominaisuudet. Tämän lähestymistavan avulla voit päästä eroon rutiinityöstä ja keskittyä itse projektiin.

Työympäristöt. Looginen kehitys ajatukselle mallien ja ulkoisten binäärikomponenttien käytöstä Rational Rose oli työympäristön synty (Framework).

Työtila on mallipohja, joka määrittää ympäristön luotavalle mallille. Tämä tehdään lataamalla työpenkkiin sisältyvät pohjaelementit, joista tulee olennainen osa mallia.

Ruusu tarjoaa laajan valikoiman vakiotyöympäristöjä, ja voit myös luoda omia. Vakiotyöympäristöjen sarja on seuraava:

    Application Performance Explorer

    Normaali ympäristö. Keskityi sovellusten luomiseen Visual Basicissa. Sisältää useiden standardien VB-objektien ilmoituksen.

    Sovellusten suunnitteluympäristö Internetiin. Sisältää eri ActiveX-komponenttien ja VB-kirjastojen määritelmän.

    Sovellussuunnitteluympäristö paikallisten tietokantojen kanssa työskentelemiseen (Local Database). Sisältää DAO-järjestelmäobjektien määrityksen

    Sovelluksen suunnitteluympäristö RDO:lla (Remote Data Object). Voit käyttää RDO-objekteja asiakas-palvelinsovellusten luomiseen.

    Sovellussuunnitteluympäristö SQL-palvelimien käyttämiseen (SQL Server Distributed Management Object (SQL-DMO)), joka tukee SQL:n käyttöä OLE-Automation-objektien kautta.

    Microsoft Transaction Server -tukiympäristö

    Microsoft Outlook -tukiympäristö

    Java-sovelluskehitysympäristöt (Java JDK 114 Full ja Java JDK 114 Quick). Sisältää malleja Java-luokista ja käyttöliittymistä, jotka on saatu käänteisen suunnittelun avulla.

    Oracle8 tukiympäristö

Kehitysympäristö määritetään mallia luotaessa. Kehitysympäristöt tallennetaan mallitiedostoina (*.mdl), jotka on tarkoitettu vain luettavaksi. Uuden mallin luomisen aikana tarvittavat elementit ladataan valitusta kehitysympäristöstä, jonka jälkeen luodaan uusi malli.

Kehitysympäristöt tarjoavat erinomaisen mekanismin mukauttamiseen Ruusu tiettyä projektia varten. Voit luoda oman kehitysympäristösi, joka sisältää tarvitsemasi elementit eri vakioympäristöistä. Osa Rational Rose sisältää "mestarin" työympäristöjen luomiseen.

Kehitystiimin tuki. Minkä tahansa suuren projektin toteuttaa yleensä kehittäjäryhmä, johon kuuluu analyytikoita, suunnittelijoita ja ohjelmoijia. Kehitysprosessi koostuu peräkkäisistä iteraatioista, joissa on sykli "analyysi" - "suunnittelu" - "toteutus". Jokaisessa vaiheessa useita kehittäjiä työskentelee mallin kanssa ja vaiheet toistetaan syklisesti. Tällaisissa olosuhteissa on tarpeen säilyttää projektin eheys, ottaa huomioon eri vaiheissa tehdyt muutokset ja koordinoida vaiheita. Kaikki tämä edellyttää yhteisen arkiston käyttöä ja erityistä suunnitteluideologiaa.

Kätevän mallintarkastustyökalun kanssa, joka helpottaa vaiheiden välillä vaihtamista, Rational Rose Mekanismit kehitystiimin tukemiseksi on tunnistettu.

Luo erilaisia ​​työtiloja kehittäjille ja työtilan koko projektille. Jokainen kehittäjä tekee muutoksia omaan osioonsa (alimalliin), ja näistä muutoksista tulee globaaleja (siirretty yleiseen malliin) vasta sen jälkeen, kun projektinhallintajärjestelmä on hyväksynyt ne. Projektin ohjaajina sisään Ruusu ulkoisia järjestelmiä voidaan käyttää, esim ClearCase Ja Microsoft SourceSafe.

Laajennusmoduulien käyttö . SISÄÄN Rational Rose Joustava mekanismi järjestelmän ominaisuuksien määrittämiseen ja mukauttamiseen on otettu käyttöön. On olemassa erilaisia ​​laajennusmoduuleja, joihin voidaan asentaa Ruusu ja erilaisten ongelmien ratkaisemiseen. Laajennusmoduuleita on kahta päätyyppiä: ohjelmointikieliä tukevat laajennukset ja ympäristön toiminnallisuuden laajennukset.

Kun lisäät uuden laajennuksen, se integroituu järjestelmään lisäämällä kohteita järjestelmävalikoihin ja asentamalla tarvittavat kirjastot ja suoritettavat tiedostot. Lisäksi jokainen laajennus voi lisätä järjestelmään omia tyyppejä ja malleja.

Tarvittavat laajennukset lisätään yleensä järjestelmän alkuasennuksen yhteydessä, mutta ne voidaan asentaa myöhemminkin. Laajennusten jakelua Internetin kautta tuetaan

Voit hallita laajennuksia Ruusu Siellä on laajennushallinta. Sen avulla voit aktivoida ja deaktivoida erilaisia ​​laajennusmoduuleja.

Rational Rosen hyvät ja huonot puolet

Tällä CASE-työkalulla voidaan luoda erilaisia ​​oliopohjaisia ​​ohjelmistoja ensisijaisesti Windows-alustalle sekä monialustaiselle Java-kielelle.

UML-kieltä käytetään kaikissa kehitysvaiheissa ja ohjelmistoprojekti on yksi malli.

Tärkeitä etuja ovat räätälöinnit eri ohjelmointikielille ja ohjelmistojärjestelmäarkkitehtuureille sekä mahdollisuus "käänteiseen suunnitteluun" lähdetekstien perusteella eri ohjelmointikielillä. Suunnitellun järjestelmän komponenttien eri fyysisten toteutusmenetelmien tuki on olemassa.

Mahdollisuus määrittää järjestelmä laajennusmoduuleilla on erittäin hyödyllinen. Itse asiassa ainoa tapa kirjoittaa sovellus muulle kuin Windows-käyttöjärjestelmälle on käyttää Java-kieltä.

Instrumentaaliohjelmiston olemus ja käsite

Instrumentaaliohjelmisto (IPO) on ohjelmisto, joka on tarkoitettu ohjelmien suunnitteluun, kehittämiseen ja ylläpitoon.

Työkaluja käytetään kehitysvaiheessa. Työkaluohjelmisto on kokoelma ohjelmia, joita käytetään auttamaan ohjelmoijia heidän työssään, auttamaan ohjelmistokehitysjohtajia heidän pyrkimyksissään hallita kehitysprosessia ja tuloksena olevia tuotteita. Tämän ohjelmiston osan tunnetuimmat edustajat ovat ohjelmointikielien käännösohjelmat, jotka auttavat ohjelmoijia kirjoittamaan konekäskyjä. Instrumentaaliohjelmat ovat kääntäjiä kieliltä Fortran, Cobol, Joe-vial, BASIC, APL ja Pascal. Ne helpottavat uusien työohjelmien luomista. Kielenkääntäjät ovat kuitenkin vain instrumentaaliohjelmien tunnetuin osa; niitä on paljon.

Tietokoneiden käyttäminen uusien ohjelmien luomiseen on kaikkea muuta kuin itsestään selvää ihmisille, jotka eivät ole ammattiohjelmoijia. Usein käy niin, että ammattilaiset puhuvat työkaluohjelmistoista (kehitysvaihe) ja järjestelmäohjelmistoista (käyttövaihe) samassa hengityksessä olettaen, että ne, jotka eivät ole perehtyneet ammatinsa salaisuuksiin, ovat tietoisia tästä työkaluohjelmiston roolista. Kuten käyttövaiheessa (sovellusohjelmille), myös järjestelmäohjelmisto toimii kehitysvaiheessa, mutta vain työkalujen yhteydessä. Työkaluohjelmistot tai ohjelmointijärjestelmät ovat järjestelmiä, joilla automatisoidaan uusien ohjelmien kehittäminen ohjelmointikielellä.

Yleisimmässä tapauksessa, jotta voit luoda ohjelman valitulla ohjelmointikielellä (järjestelmän ohjelmointikieli), sinulla on oltava seuraavat komponentit:

1. Tekstieditori tiedoston luomiseen ohjelman lähdetekstillä.

2. Kääntäjä tai tulkki. Lähdeteksti käännetään väliobjektikoodiksi kääntäjäohjelmalla. Suuren ohjelman lähdekoodi koostuu useista moduuleista (lähdetiedostoista). Jokainen moduuli kootaan erilliseksi tiedostoksi objektikoodilla, joka sitten on yhdistettävä yhdeksi.

3. Linkkieditori tai -asentaja, joka linkittää objektimoduuleita ja tuottaa toimivan sovelluksen ulostulo-suoritettavana koodina.

Suoritettava koodi on täydellinen ohjelma, jota voidaan käyttää missä tahansa tietokoneessa, jossa on käyttöjärjestelmä, jota varten ohjelma luotiin. Tuloksena olevan tiedoston tunniste on yleensä .EXE tai .COM.

Viime aikoina Windows-sovellusten luomiseen tähtäävät visuaaliset ohjelmointimenetelmät (käyttäen komentosarjakieliä) ovat yleistyneet. Tämä prosessi on automatisoitu nopeissa suunnitteluympäristöissä. Tässä tapauksessa käytetään valmiita visuaalisia komponentteja, jotka konfiguroidaan erityisillä editoreilla.

Suosituimmat editorit (visuaalisia työkaluja käyttävät ohjelmaohjelmointijärjestelmät) visuaaliseen suunnitteluun:

Borland Delphi - suunniteltu ratkaisemaan melkein kaikki sovellusohjelmointiongelmat.

Borland C++ Builder on erinomainen työkalu DOS- ja Windows-sovellusten kehittämiseen.

Microsoft Visual Basic on suosittu työkalu Windows-ohjelmien luomiseen.

Microsoft Visual C++ - tämän työkalun avulla voit kehittää mitä tahansa sovelluksia, jotka toimivat käyttöjärjestelmäympäristössä, kuten Microsoft Windowsissa

Näin ollen instrumentaaliohjelmiston ydin on luoda mikä tahansa suoritettava ohjelma muuntamalla muodolliset loogiset lausekkeet suoritettavaksi konekoodiksi sekä sen ohjaus ja säätö.

Työkaluohjelmiston tehtävät ja toiminnot

Instrumentaalisille ohjelmistoille erityisenä ohjelmistotyyppinä on yleinen ja yksityinen

toimintoja, kuten kaikki ohjelmistot yleensä. Yleisiä toimintoja käsitellään edellä, ja vain tämän tyyppisille ohjelmille ominaisia ​​erikoistoimintoja ovat:

1. Kehitettävän ohjelman tekstin luominen käyttämällä erityisesti määritettyjä koodisanoja (ohjelmointikieli), sekä tiettyjä merkkejä ja niiden sijaintia luodussa tiedostossa - ohjelman syntaksia.

2. Luodun ohjelman tekstin kääntäminen konesuuntautuneeksi koodiksi, joka on käytettävissä tietokoneiden tunnistamista varten. Jos luodun ohjelman volyymi on merkittävä, se jaetaan erillisiin moduuleihin ja jokainen moduuli käännetään erikseen.

3. Yksittäisten moduulien yhdistäminen yhdeksi suoritettavaksi koodiksi tarvittavan rakenteen mukaisesti varmistaen yksittäisten osien keskinäisen vuorovaikutuksen koordinoinnin.

4. Luodun ohjelman testaus ja valvonta, muoto-, loogisten ja syntaktisten virheiden tunnistaminen ja poistaminen, ohjelmien tarkistaminen kiellettyjen koodien varalta sekä luodun ohjelman suorituskyvyn ja potentiaalin arviointi.

Työkaluohjelmistojen tyypit

Instrumentaaliohjelmistolle annettujen tehtävien perusteella voimme erottaa suuren määrän erilaisia ​​instrumentaaliohjelmistoja:

Tekstieditorit

Integroidut kehitysympäristöt

Kääntäjät

Tulkit

Linkittäjät

Jäsentimet ja jäsennysgeneraattorit (katso Javacc)

Kokoonpanijat

Debuggerit

Profiloijat

Dokumentaatiogeneraattorit

Koodipeittoanalyysityökalut

Jatkuva integrointityökalut

Automaattiset testaustyökalut

Versionhallintajärjestelmät jne.

On huomattava, että myös työkaluohjelmat luovat kuoret sovellusohjelmien luomiseen, joten ne voidaan luokitella sovellusohjelmiksi. Tarkastellaanpa lyhyesti joidenkin instrumentaaliohjelmien tarkoitusta.

Tekstieditorit.

Tekstieditori on tietokoneohjelma, joka on suunniteltu käsittelemään tekstitiedostoja, kuten luomaan ja tekemään muutoksia.

CAD-kokoonpano

CAD on tekniset välineet, matematiikan ja ohjelmistot yhdistävä järjestelmä, jonka parametrit ja ominaisuudet valitaan suunnittelu- ja rakentamistehtävien erityispiirteet mahdollisimman tarkasti huomioiden. CAD varmistaa ohjelmien helppokäyttöisyyden käyttämällä insinöörin ja tietokoneen välisiä operatiivisia viestintävälineitä, erityisiä ongelmalähtöisiä kieliä sekä tieto- ja referenssitietokannan saatavuutta.

CAD:n rakennekomponentit ovat alijärjestelmiä, joilla on kaikki järjestelmien ominaisuudet ja jotka on luotu itsenäisiksi järjestelmiksi. Nämä ovat tiettyjen ominaisuuksien mukaan tunnistettuja CAD-järjestelmien osia, jotka varmistavat tiettyjen suoritettujen suunnittelutehtävien toteuttamisen vastaavien suunnitteluratkaisujen ja suunnitteluasiakirjojen vastaanotolla.

CAD-alijärjestelmät jaetaan käyttötarkoituksensa perusteella kahteen tyyppiin: suunnittelu ja ylläpito.

Suunnittelun osajärjestelmiä ovat ne, jotka suorittavat suunnitteluprosesseja ja -operaatioita, esimerkiksi:

· koneen layout-alijärjestelmä;

· kokoonpanoyksiköiden suunnittelun osajärjestelmä;

· osien suunnittelun osajärjestelmä;

· ohjauspiirin suunnittelun osajärjestelmä;

· teknologisen suunnittelun osajärjestelmä.

Huoltoalijärjestelmiin kuuluvat osajärjestelmät, jotka on suunniteltu ylläpitämään suunnittelualijärjestelmien toimivuutta, esimerkiksi:

· suunnitteluobjektien graafisen esittelyn alijärjestelmä;

· dokumentointiosajärjestelmä;

· tiedonhaun alijärjestelmä jne.

Suunnitteluobjektin suhteesta riippuen erotetaan kahdentyyppisiä suunnittelualijärjestelmiä:

· oliosuuntautunut (oliopohjainen);

· objektista riippumaton (invariantti).

Objektialijärjestelmät sisältävät alijärjestelmiä, jotka suorittavat yhden tai useamman suunnittelutoimenpiteen tai toiminnon, jotka ovat suoraan riippuvaisia ​​tietystä suunnitteluobjektista, esimerkiksi:

· teknisten järjestelmien suunnittelun osajärjestelmä;

· alajärjestelmä dynamiikan mallintamiseen, suunniteltu rakenne jne.

Muuttumattomiin alijärjestelmiin kuuluvat alijärjestelmät, jotka suorittavat yhtenäisiä suunnitteluproseduureja ja -toimintoja, esimerkiksi:

· osajärjestelmä koneenosien laskemista varten;

· osajärjestelmä leikkaustilojen laskemiseksi;

· osajärjestelmä teknisten ja taloudellisten indikaattoreiden laskemiseksi jne.

Suunnitteluprosessi toteutetaan osajärjestelmissä tietyn suunnittelumenettely- ja toimintosarjan muodossa. Suunnittelumenettely vastaa osaa suunnitteluosajärjestelmästä, jonka seurauksena tehdään tietty suunnittelupäätös. Se koostuu perussuunnitteluoperaatioista, sen toteuttamisjärjestys on tiukasti vakiintunut ja sen tavoitteena on paikallisen tavoitteen saavuttaminen suunnitteluprosessissa. Suunnitteluoperaatiolla tarkoitetaan tavanomaisesti valittua suunnitteluprosessin osaa tai elementtitoimintoa, jonka suunnittelija suorittaa suunnitteluprosessin aikana. Esimerkkejä suunnittelumenetelmistä ovat työstökoneen kinemaattisen tai asettelukaavion, tuotteen prosessointitekniikan jne. kehittämistoimenpiteet, ja esimerkkejä suunnitteluoperaatioista ovat rajoitusten laskeminen, yhtälön ratkaiseminen jne.

CAD-alijärjestelmien rakenteellinen yhtenäisyys varmistetaan erityyppisten ohjelmistojen välisten yhteyksien tiukan säätelyn avulla, jota yhdistää tietylle osajärjestelmälle yhteinen kohdetoiminto. Seuraavat suojatyypit erotellaan:

· metodologinen tuki - asiakirjat, jotka kuvastavat suunnittelun automaatiotyökalujen koostumusta, valintaa ja käyttöä koskevia sääntöjä;

· kielellinen tuki - suunnittelukielet, terminologia;

· ohjelmistot - menetelmät, matemaattiset mallit, algoritmit;

· ohjelmistot - asiakirjat, joissa on ohjelmatekstejä, ohjelmat tietokonemedialla ja operatiiviset asiakirjat;

· tekninen tuki - tietokone- ja organisaatiolaitteet, tiedonsiirtolaitteet, mittaus- ja muut laitteet ja niiden yhdistelmät;

· tietotuki - asiakirjat, jotka sisältävät kuvauksen vakiosuunnittelumenettelyistä,, standardielementeistä, komponenteista, materiaaleista ja muista tiedoista;

· organisaatiotuki - määräykset ja ohjeet, tilaukset, henkilöstöaikataulut ja muut asiakirjat, jotka säätelevät osastojen organisaatiorakennetta ja niiden vuorovaikutusta suunnittelun automaatiotyökalujen kanssa.

· 64 CALS-teknologiaa.

CALS-teknologiat toimivat keinona integroida teolliset automatisoidut järjestelmät yhdeksi monitoimijärjestelmäksi. Automaattisten suunnittelu- ja ohjausjärjestelmien integroinnin tavoitteena on tehostaa monimutkaisten laitteiden luomista ja käyttöä.

Globaalin tietoyhteiskunnan nykyaikaisissa olosuhteissa tieto- ja tietotekniikan rooli tulevan asiantuntijan valmistelemisessa kasvaa merkittävästi. Lähitulevaisuudessa yhteiskunnan strateginen potentiaali eivät ole energiaresurssit, vaan tieto ja tieteellinen tieto. Tiedosta tulee yhteiskunnan tieteellisen, teknisen ja sosioekonomisen kehityksen pääresurssi, se vaikuttaa merkittävästi tieteen, teknologian ja eri toimialojen nopeutuneeseen kehitykseen ja sillä on merkittävä rooli koulutuksen modernisointiprosessissa. Yliopistokoulutuksen ja asiantuntijoiden ammatillisen toiminnan arvosemanttiset ominaisuudet tulisi ilmaista sellaisen älyllisen ammatillisen ympäristön muodostumisessa, joka toteuttaa parhaiten tutkimus- ja suunnittelutoiminnan tehtävät.

Kaikentyyppisen ihmisen toiminnan laajalle levinnyt tietokoneistaminen: perinteisistä tieteellisistä älyllisistä tehtävistä tuotannon, kaupan, kaupallisen, pankkitoiminnan ja muun tyyppisten toimintojen automatisointiin lisää tuotannon tehokkuutta. Markkinataloudessa vain nykyaikaista tietotekniikkaa toiminnassaan käyttävät yritykset kestävät menestyksekkäästi kilpailua.

Tietotekniikat yhdessä edistyneiden materiaalituotannon tekniikoiden kanssa mahdollistavat merkittävästi työn tuottavuuden ja tuotteiden laadun lisäämisen ja samalla vähentävät merkittävästi aikaa, joka kuluu kuluttajien tarpeita ja odotuksia vastaavien uusien tuotteiden lanseeraukseen. Kaikki edellä mainittu koskee ensisijaisesti monimutkaisia ​​korkean teknologian tuotteita, mukaan lukien tekniset tuotteet.

Erilaisten autonomisten tietojärjestelmien käyttöönottoprosessista saatu kokemus mahdollisti tarpeiden integroida eri tietoteknologioita yhdeksi kokonaisuudeksi, joka perustuu integroidun tietoympäristön luomiseen yrityksen tai yritysryhmän (virtuaaliyrityksen) sisällä. kaikki valmistettujen tuotteiden elinkaaren vaiheet. Ammattiympäristö paljastaa täydellisimmin mahdollisuudet ammatilliseen kehittymiseen käyttämällä uutta tietotekniikkaa tieteessä ja tuotantoprosessien hallinnassa. Tietojenkäsittelyteollisuuden innovatiiviset teknologiat CALS-teknologian (Continuous Acquisition and Life Cycle Support) käyttöönoton myötä - jatkuva tietotuki suunnitellun kohteen elinkaarelle, nostaa tuotantoprosessin hallinnan automatisoinnin uudelle tasolle.

CALS-ideologiaan pohjautuvan tietotekniikan käyttö on yksi automatisoidun yrityksen johtamisjärjestelmän tehokkaampaan toteutukseen vaikuttavista tekijöistä.

CALS-teknologiat toimivat keinona integroida teolliset automatisoidut järjestelmät yhdeksi monitoimijärjestelmäksi. Automaattisten suunnittelu- ja ohjausjärjestelmien integroinnin tavoitteena on tehostaa monimutkaisten laitteiden luomista ja käyttöä.

CALS-konseptin ydin on tietotuen periaatteiden ja tekniikoiden soveltaminen tuotteen elinkaaren kaikissa vaiheissa, mikä perustuu integroidun tietoympäristön käyttöön, joka tarjoaa yhtenäiset tavat hallita prosesseja ja kaikkien tämän syklin osallistujien vuorovaikutusta: tuoteasiakkaat (mukaan lukien valtion virastot ja osastot), toimittajat (valmistajat) ) tuotteet, käyttö- ja huoltohenkilöstö. Nämä periaatteet ja teknologiat toteutetaan kansainvälisten johtamis- ja vuorovaikutussääntöjä koskevien standardien vaatimusten mukaisesti ensisijaisesti sähköisen tiedonsiirron kautta.

CALS-teknologiaa käytettäessä tuotteiden laatu paranee johtuen käytettävissä olevan tiedon kattavammasta huomioimisesta suunnittelussa ja johtamispäätöksiä tehtäessä sekä vähentää materiaali- ja aikakustannuksia tuotteiden suunnittelussa ja valmistuksessa. Tämän teknologian käyttöönoton yhteydessä automatisoidussa yrityksen hallintajärjestelmässä (EMS) tehtyjen päätösten validiteetti on korkeampi, jos päätöksentekijällä ja vastaavilla hallintaohjelmilla on nopea pääsy AMMS-tietokantaan, mutta myös muiden yritysten tietokantoihin. automatisoidut järjestelmät ja siksi se voi optimoida työsuunnitelmia, hakemusten sisältöä, esiintyjien jakautumista, rahoituksen kohdentamista jne. Samanaikaisesti online-käyttöä ei tulisi ymmärtää vain mahdollisuutena lukea tietoja tietokannasta, vaan myös niiden oikean tulkinnan helppoudeksi, ts. syntaksin ja semantiikan johdonmukaisuus automaattisissa ohjausjärjestelmissä käytettyjen protokollien kanssa. Teknisten osajärjestelmien tulee havaita ja tulkita oikein suurella tarkkuudella automatisoiduista suunnittelualijärjestelmistä tuleva data. Tämä ei ole niin helppoa, jos pääyritys ja siihen liittyvät organisaatiot työskentelevät erilaisten automatisoitujen järjestelmien kanssa. Lisäksi ongelmasta, joka koskee tietojen suojaamista teknisten osajärjestelmien koko kehällä, on tulossa kiireellinen.

CALS-teknologioiden käyttö voi vähentää merkittävästi suunnittelutyötä, koska kuvaukset aiemmin valmistuneista komponenttien ja laitteiden onnistuneista kehityshankkeista, monista aikaisemmin suunnitelluista laitteiden, koneiden ja järjestelmien komponenteista tallennetaan verkkopalvelintietokantoihin, jotka ovat kaikkien käyttäjien saatavilla. CALS-tekniikkaa. Saatavuus ja suojaus varmistetaan jälleen muotojen, menetelmien ja ohjeiden johdonmukaisuudella koko integroidun järjestelmän eri osissa. Lisäksi yritysten erikoistumismahdollisuudet ovat suuremmat, jopa virtuaalisten yritysten luominen, mikä myös auttaa vähentämään kustannuksia.

CALS-teknologian käyttöönottoprosessissa käyttökustannukset pienenevät merkittävästi integroitujen logististen tukitoimintojen käyttöönoton ansiosta. Se helpottaa huomattavasti huollettavuusongelmien ratkaisemista, tuotteiden integrointia erilaisiin järjestelmiin ja ympäristöihin, sopeutumista muuttuviin käyttöolosuhteisiin jne. Nämä tiedon integroinnin edut saavutetaan käyttämällä nykyaikaisia ​​CALS-tekniikoita.

Teollisuuden automatisoidut järjestelmät voivat toimia itsenäisesti, ja tällä hetkellä tuotannonohjausprosessin organisointi tapahtuu tältä pohjalta. Automatisoinnin tehokkuus on kuitenkin huomattavasti korkeampi, jos jossain järjestelmässä syntyvä tieto on saatavilla muissa järjestelmissä, koska niissä tehdyt päätökset muuttuvat tietoisemmiksi.

CALS-teknologian käyttöönotosta saadut kokemukset osoittavat, että teollisuuden automatisoitujen järjestelmien välisen vuorovaikutuksen oikean tason saavuttamiseksi on tarpeen luoda yhtenäinen tietotila sekä yksittäisten yritysten sisällä että mikä tärkeämpää, yritysyhdistyksen puitteissa. Yhtenäinen tietoavaruus varmistetaan yhdistämällä sekä muodoltaan että sisällöltään tiedossa tiettyjä tuotteita niiden elinkaaren eri vaiheissa.

Lomakkeen yhtenäistäminen saavutetaan käyttämällä vakiomuotoja ja kieliä tiedon esittämiseen ohjelmien välisessä vaihdossa ja dokumentoinnissa.

Sisällön yhtenäistäminen, joka ymmärretään tiettyä tuotetta koskevien tietojen yksiselitteisenä oikean tulkinnana sen elinkaaren kaikissa vaiheissa, varmistetaan CALS-sovellusprotokolliin kirjattujen sovellusten ontologioiden (metakuvausten) kehityksellä.

CAD - mikä se on?

Mitä ovat tietokoneavusteiset suunnittelujärjestelmät? CAD tarkoittaa automatisoituja järjestelmiä, jotka on suunniteltu toteuttamaan yhtä tai toista tietotekniikkaa suunnittelun kautta. Käytännössä CAD-järjestelmät ovat teknisiä järjestelmiä, jotka mahdollistavat projektien kehittämisen prosessien automatisoinnin ja toimivuuden. Asiayhteydestä riippuen CAD voi tarkoittaa:

ohjelmistot, joita käytetään asianomaisen infrastruktuurin pääelementtinä;

Joukko teknisiä ja henkilöstöjärjestelmiä (mukaan lukien ne, jotka sisältävät CAD:n käytön ohjelmistojen muodossa), joita käytetään yrityksessä automatisoimaan projektin kehitysprosessia;

Siten on mahdollista erottaa kyseessä olevasta termistä laaja ja suppeampi tulkinta. On vaikea sanoa, kumpaa näistä tulkinnoista käytetään useammin liiketoiminnassa. Kaikki riippuu tietokoneavusteisten suunnittelujärjestelmien erityisestä käyttöalueesta sekä tehtävistä, joihin näitä järjestelmiä on tarkoitus käyttää. Joten esimerkiksi yhden tuotantopajan yhteydessä CAD:n oletetaan olevan tietokoneavusteisen suunnittelun erityinen ohjelma. Jos puhumme organisaation kehittämisen strategisesta suunnittelusta, niin CAD-konsepti vastaa todennäköisesti laajamittaista infrastruktuuria, jota käytetään erilaisten projektien kehittämisen tehokkuuden lisäämiseen. On huomattava, että termi CAD itsessään on lyhenne, joka voidaan tulkita eri tavoin. Yleensä tämä lyhenne vastaa sanojen "tietokoneavusteinen suunnittelujärjestelmä" yhdistelmää. On myös muita vaihtoehtoja tämän lyhenteen tulkitsemiseen. Esimerkiksi vaihtoehto "suunnitteluautomaatiojärjestelmä" on melko yleinen. Merkityksellisesti termin CAD englanninkielinen vastine on lyhenne CAD, joissain tapauksissa käytetään myös CAX.. Tarkastellaanpa tarkemmin seuraavaa kysymystä: mihin tarkoituksiin koneenrakennuksessa voidaan luoda tietokoneavusteisia suunnittelujärjestelmiä ja muilla aloilla?

CAD: luomistavoitteet

CAD-kehityksen päätavoitteena on lisätä yritysten asiantuntijoiden työvoimatehokkuutta, joka ratkaisee erilaisia ​​tuotantoongelmia, mukaan lukien suunnittelusuunnitteluun liittyvät ongelmat. Tässä tapauksessa tehokkuutta voidaan lisätä seuraavista tekijöistä johtuen:

Suunnitteluprosessin työvoimaintensiteetin vähentäminen;

Projektin toteuttamisajan lyhentäminen;

Suunnittelu- ja käyttökustannusten vähentäminen;

Varmistetaan suunnitteluinfrastruktuurin laadun parantaminen.

Vähennä testaus- ja simulointikustannuksia.

CAD on työkalu, jonka avulla voit saavuttaa havaitut edut seuraavista tekijöistä:

Tehokas tietotuki projektikehitykseen osallistuville asiantuntijoille;

Dokumentaation automatisointi;

Rinnakkaisten suunnittelukonseptien soveltaminen;

Erilaisten ratkaisujen yhdistäminen;

Matemaattisen mallinnuksen soveltaminen vaihtoehtona kalliille testauksille;

Suunnittelumenetelmien optimointi;

Liiketoiminnan johtamisprosessien laadun parantaminen.

Katsotaan nyt rakennetta, jossa automaattinen suunnittelujärjestelmä voidaan esittää.

CAD: luokitukset

Yleisimmät CAD-luokituksen kriteerit ovat toimiala. Seuraavat tyypit erotellaan:

  1. koneenrakennusinfrastruktuurin automatisoitu suunnittelu;
  2. CAD elektroniikkalaitteille;
  3. CAD rakentamisen alalla.

Ensimmäisen tyyppisiä CAD-järjestelmiä voidaan käyttää useilla eri aloilla: lentokoneiden valmistuksessa, autoteollisuudessa, laivanrakennuksessa ja kulutustavaroiden valmistuksessa. Vastaavan infrastruktuurin avulla voidaan myös kehittää sekä yksittäisiä osia että erilaisia ​​mekanismeja erilaisilla lähestymistavoilla mallinnuksen ja suunnittelun puitteissa.

Toisen tyyppisiä CAD-järjestelmiä käytetään valmiiden elektronisten laitteiden ja niiden yksittäisten elementtien, kuten integroitujen piirien, prosessorien ja muun tyyppisten laitteistojen, suunnitteluun.

Kolmannen tyypin CAD:llä voidaan suunnitella erilaisia ​​rakenteita, rakennuksia ja infrastruktuurielementtejä.

Toinen kriteeri, jonka mukaan tietokoneavusteiset suunnittelujärjestelmät voidaan luokitella, on käyttötarkoitus. Tässä he korostavat:

Suunnittelutyökalut, joita käytetään kaksi- tai kolmiulotteisten geometristen mallien automatisointiin suunnitteludokumentaation luomista varten;

Järjestelmät, joita käytetään erilaisten piirustusten kehittämiseen;

Geometriseen mallinnukseen suunnitellut järjestelmät;

Järjestelmät, jotka on suunniteltu automatisoimaan laskelmia suunnitteluprojekteissa ja dynaamisessa mallintamisessa;

Automaatiotyökalut, joita käytetään projektien teknologiseen optimointiin;

Järjestelmät, jotka on suunniteltu erilaisten projektien parametrien tietokoneanalyysiin.

Tätä luokitusta pidetään ehdollisena.

Tietokoneavusteinen prosessisuunnittelujärjestelmä voi sisältää laajan valikoiman toimintoja edellä luetelluista. Tietyn CAD-ominaisuuksien luettelon määrittää ensisijaisesti järjestelmän kehittäjä. Katsotaanpa, mitä tehtäviä se voi ratkaista.

Ohjelmiston kehitystyökalu Järjestelmätyökaluohjelmisto

Essee

OHJELMISTO - joukko tietojenkäsittelyjärjestelmäohjelmia ja näiden ohjelmien toimintaan tarvittavia ohjelmadokumentteja (GOST 19781-90). Myös - joukko ohjelmia, menettelyjä ja sääntöjä sekä tietojenkäsittelyjärjestelmän toimintaan liittyvä dokumentaatio (ST ISO 2382/1-84).

TYÖKALUOHJELMISTO – ohjelmisto, joka on tarkoitettu ohjelmien suunnitteluun, kehittämiseen ja ylläpitoon. Tyypillisesti tätä termiä käytetään korostamaan eroa tämän luokan ohjelmistojen ja sovellus- ja järjestelmäohjelmistojen välillä.

COMPILER – kääntäjä, joka muuntaa lähdekielellä kirjoitetun ohjelman objektimoduuliksi.

TULKKI - ohjelma (joskus laitteisto), joka analysoi komentoja tai ohjelmakäskyjä ja suorittaa ne välittömästi.

KÄYTTÖJÄRJESTELMÄ - joukko ohjaus- ja käsittelyohjelmia, jotka toisaalta toimivat rajapintana tietokonejärjestelmän laitteiden ja sovellusohjelmien välillä ja toisaalta on suunniteltu ohjaamaan laitteita, hallitsemaan laskentaprosesseja, jakamaan tehokkaasti laskentaresursseja laskentaprosesseja ja luotettavan laskennan järjestämistä .

SOVELLUSOHJELMA - ohjelma, joka on suunniteltu suorittamaan tiettyjä käyttäjän tehtäviä ja suunniteltu suoraan vuorovaikutukseen käyttäjän kanssa.

VISUALBASIC on Microsoft Corporationin kehittämä ohjelmistokehitystyökalu, joka sisältää ohjelmointikielen ja kehitysympäristön.

VISUALBASICFORAPPLICATION on hieman yksinkertaistettu Visual Basic -ohjelmointikielen toteutus, joka on sisäänrakennettu Microsoft Office -tuotesarjaan (mukaan lukien Mac OS:n versiot) sekä moniin muihin ohjelmistopaketteihin, kuten AutoCAD, SolidWorks, CorelDRAW, WordPerfect ja ESRI ArcGIS.

Työn tarkoituksena on tutkia ohjelmistojen tyyppejä ja toimintoja, erityisesti instrumentaaliohjelmistoja.

Ohjelmistoluokitus:

Työkaluohjelmistotyypit:

1) Tekstieditorit

4) Kääntäjät

5) Tulkit

6) Linkkerit

8) Kokoonpanijat

9) Debuggerit

10) Profiloijat

11) Dokumentaatiogeneraattorit

Jotta voit luoda ohjelman valitulla ohjelmointikielellä, sinulla on oltava seuraavat komponentit:

2. Kääntäjä tai tulkki. Lähdeteksti käännetään väliobjektikoodiksi kääntäjäohjelmalla.

Työn tulos: Käsitellään ohjelmisto, sen toiminnot ja tyypit, erityisesti instrumentaaliohjelmistot, sen olemus ja tehtävät. Kolmannessa luvussa käsitellään Microsoft Visual Basicia ohjelmistokehitystyökaluna ja sen murretta - Microsoft Visual Basic for Application. Kurssityössä toteutetaan algoritmi taloudellisen ja taloudellisen ongelman ratkaisemiseksi Pascal-ohjelmointikielellä.

Johdanto

Nykymaailmassa useampi kuin yksi ihminen, joka on maistanut sivilisaation edut, ei voi kuvitella elämäänsä ilman tietokonetekniikan käyttöä. Sitä käytetään kaikilla ihmisen toiminnan aloilla: tuotanto, kauppa, koulutus, viihde ja ihmisten viestintä, heidän tieteellinen ja kulttuurinen toiminta. Kaikki tämä johtuu kyvystä valita tietokonelaitteet minkä tahansa, jopa monimutkaisimman ongelman ratkaisemiseksi.

Sekä tietotekniikan monipuolisuus että erikoistuminen varmistetaan kuitenkin käyttämällä erilaista ohjelmistoa lähes minkä tahansa tietokoneen pohjalta, joka tarjoaa ratkaisun mihin tahansa annettuun tehtävään.

Me kaikki näemme tietokoneohjelmien valtavan valikoiman ja niiden kasvun ja parantamisen huikean vauhdin, ja vain pieni osa meistä ymmärtää niiden suunnittelun, kehityksen ja luomisen näkymätöntä puolta. Tämä tietokonetekniikan alue on kuitenkin mielestämme tärkein, koska tietotekniikan tulevaisuus riippuu sen kehityksestä.

Ja koska minkä tahansa tietokoneohjelman kehittäminen tapahtuu instrumentaaliohjelmistolla, haluan kurssityössämme käsitellä sitä yksityiskohtaisesti korostaen sitä kaikista ohjelmistoista ja paljastaen sen olemuksen ja ominaisuudet.

Selvyyden vuoksi tarkastellaan instrumentaalisia ohjelmistoja (tutkimuskohde) VisualBasicforApplication-ohjelmistopaketin (tutkimusaihe) esimerkillä, jota käytetään ohjelmointiin Microsoft Office -ympäristössä - yleisin ja suosituin toimistopaketti.

1. Ohjelmisto

1.1 Ohjelmiston käsite ja olemus

Ohjelmisto on olennainen osa tietokonejärjestelmää. Se on looginen jatko minkä tahansa tietokoneen teknisille keinoille. Tietyn tietokoneen käyttöalue määräytyy sille luodun ohjelmiston mukaan. Itse tietokoneella ei ole tietoa mistään sovelluksesta. Kaikki tämä tieto on keskittynyt tietokoneissa toimiviin ohjelmiin, joissa on tiettyjä toimintoja ja jotka on suunniteltu suorittamaan tiettyjä, useimmissa tapauksissa erittäin erikoistuneita toimintoja, kuten graafisten kuvien tai äänitiedostojen luomista ja käsittelyä.

Ohjelmistot sisältävät tällä hetkellä satoja tuhansia ohjelmia, jotka on suunniteltu käsittelemään monenlaista tietoa monenlaisiin tarkoituksiin.

Ohjelmisto sisältää myös koko ohjelmistosuunnittelun ja -kehityksen toiminta-alueen:

1) ohjelmasuunnittelutekniikka (esim. ylhäältä alas -suunnittelu, strukturoitu ja oliosuunnittelu);

2) ohjelmien testausmenetelmät;

3) menetelmät ohjelmien oikeellisuuden osoittamiseksi;

4) ohjelmien laadun analysointi;

5) ohjelmien dokumentointi;

6) ohjelmistojen suunnittelua helpottavien ohjelmistotyökalujen kehittäminen ja käyttö ja paljon muuta.

Ohjelmistoille on monia erilaisia ​​määritelmiä. Yleensä ohjelmisto on joukko tietojenkäsittelyjärjestelmän ohjelmia ja ohjelmadokumentteja, jotka ovat välttämättömiä näiden ohjelmien toiminnalle (GOST 19781-90). Myös - joukko ohjelmia, menettelyjä ja sääntöjä sekä tietojenkäsittelyjärjestelmän toimintaan liittyvä dokumentaatio (ST ISO 2382/1-84).

Ohjelmisto on yksi tietokonejärjestelmän tukityypeistä sekä tekninen (laitteisto), matemaattinen, informaatio-, kielellinen, organisatorinen ja metodologinen tuki.

Tietokoneslangissa sanaa ohjelmisto käytetään usein englanninkielisestä sanasta software, jota tässä mielessä käytti ensimmäisen kerran Princetonin yliopiston matemaatikko John W. Tukey American Mathematical Monthly -lehdessä vuonna 1958.

Muut määritelmät:

1) OHJELMISTO on joukko ohjelmia, jotka mahdollistavat tietojen automaattisen käsittelyn tietokoneessa.

2) OHJELMISTO (elektronisen tietokoneen matemaattinen tuki), tietojenkäsittelyjärjestelmän ohjelmasarja ja ohjelmadokumentit, joita tarvitaan ohjelmien toteuttamiseen sähköisessä tietokoneessa.

3) OHJELMISTO - joukko ohjelmia tietokoneen toiminnan ohjaamiseksi ja ohjelmoinnin automatisoimiseksi.

4) OHJELMISTO - joukko tietokoneohjelmia, jotka mahdollistavat tietojen käsittelyn tai siirron.

Kaikki määritelmät ovat samanlaisia ​​ja heijastavat ohjelmiston ydintä - laitteiston (teknisen) osan vuorovaikutuksen järjestäminen erilaisten sisäänrakennettujen solmujen ja oheislaitteiden muodossa, niiden ohjaus ja tietokonejärjestelmän yleisen vuorovaikutuksen koordinointi keskenään. ja käyttäjän kanssa.

1.2 Ohjelmiston toiminnot

Yllä olevat ohjelmistokäsitteet määrittävät ohjelmistojen suorittamat toiminnot tietokonelaitteiden toiminnan aikana. Näiden toimintojen luettelo on hyvin monipuolinen, mutta ne voidaan karkeasti jakaa seuraaviin viiteen tyyppiin:

1. Laitteisto ja mekaaninen. Ne yhdistävät tietokoneen eri komponentteja ja varmistavat laitteistosignaalin siirron komponentista toiseen.

2. Konelooginen. Käsittele ja tulkitse joukko sähkömagneettisia pulsseja laitteistosta loogisesti tietoiseksi ohjelmistokoodiksi, jolla on tietty rakenne ja ominaisuudet.

3. Tiedot ja komento. He tarkistavat ohjelmakoodin yhteensopivuuden järjestelmän periaatteiden kanssa ja luovat tiedoille loogisen rakenteen ja suorittavat sen suorittamisen.

4. Käyttöliittymä. Tarjoa ohjelmakoodin käsittely ja tulkinta käyttäjän käytettävissä olevaan näyttömuotoon. Luo suotuisan ympäristön "tietokone-ihminen, ihminen-tietokone" -vuorovaikutukselle.

5. Sovellettu. Suorittaa matemaattisia, loogisia, fyysisiä ja muita toimintoja saatavilla olevan tiedon joukolla, toisin sanoen käsittelee saatavilla olevaa tietoa tiettyjen ongelmien ratkaisemiseksi.

Tämä luettelo ei ole läheskään täydellinen, mikä osoittaa ohjelmiston suorittamien toimintojen monimuotoisuuden ja moniselitteisyyden.

1.3 Ohjelmistotyypit

Tietyn tietokonekomponentin tarjoamista toiminnoista riippuen on tarpeen luoda sille oma erikoisohjelmisto, joka on perusmotiivi erityyppisten ohjelmistojen luomiselle, kuten kuvassa (kuva 1):

a) Sovellusohjelmat, jotka tukevat suoraan käyttäjien vaatimien töiden suorittamista;

b) järjestelmäohjelmat, jotka on suunniteltu ohjaamaan tietokonejärjestelmän toimintaa, suorittavat erilaisia ​​aputoimintoja, esimerkiksi:

1) tietokoneresurssien hallinta;

2) kopioiden tekeminen käytetyistä tiedoista;

3) tietokonelaitteiden toimivuuden tarkistaminen;

4) viitetietojen antaminen tietokoneesta jne.;

c) instrumentaaliset ohjelmistojärjestelmät, jotka helpottavat uusien tietokoneohjelmien luomista.

Järjestelmäohjelmisto varmistaa tietokoneen toiminnan ja ylläpidon sekä uusien ohjelmien luontiprosessin automatisoinnin. Järjestelmäohjelmisto sisältää: käyttöjärjestelmät ja niiden käyttöliittymät; ohjelmistotyökalut; huoltojärjestelmät.

Käyttöjärjestelmä on pakollinen osa erikoisohjelmistoa, joka varmistaa henkilökohtaisen tietokoneen tehokkaan toiminnan eri tiloissa, organisoi ohjelmien suorittamisen sekä käyttäjän ja ulkoisten laitteiden vuorovaikutuksen tietokoneen kanssa.

Käyttöliittymä (palveluohjelmat) ovat ohjelmistolisäosia käyttöjärjestelmään (kuori ja ympäristö), jotka on suunniteltu yksinkertaistamaan käyttäjän viestintää käyttöjärjestelmän kanssa.

Ohjelmat, jotka tarjoavat käyttöliittymän, säilyttävät viestintämuodon (dialogi) käyttäjän ja käyttöjärjestelmän välillä, mutta vaihtavat viestinnän kieltä (yleensä komentokieli muunnetaan valikkokieleksi). Palvelujärjestelmät voidaan jakaa rajapintajärjestelmiin, käyttöjärjestelmän kuoriin ja apuohjelmiin.

Käyttöliittymäjärjestelmät ovat tehokkaita, useimmiten graafisia palvelujärjestelmiä, jotka parantavat paitsi käyttäjän, myös käyttöjärjestelmien ohjelmarajapintaa, erityisesti toteuttamalla joitain lisätoimenpiteitä lisäresurssien jakamiseksi.

Käyttöjärjestelmän kuoret tarjoavat käyttäjälle laadullisesti uuden käyttöliittymän verrattuna käyttöjärjestelmän toteuttamaan käyttöliittymään ja tekevät tiedon viimeksi mainitusta valinnaiseksi.

Apuohjelmat automatisoivat tiettyjen vakiomuotoisten, usein käytettyjen toimenpiteiden suorittamisen, joiden toteuttaminen vaatisi käyttäjältä erityisohjelmien kehittämistä. Monilla apuohjelmilla on kehitetty interaktiivinen käyttöliittymä käyttäjän kanssa, ja ne lähestyvät kommunikaatiotasoa kuoriin.

Ohjelmistotyökalut (ohjelmointijärjestelmät) ovat pakollinen osa ohjelmistoa, jolla ohjelmia luodaan. Ohjelmistotyökaluihin kuuluvat työkalut ohjelmien kirjoittamiseen (tekstieditorit); välineet ohjelmien muuntamiseksi tietokoneella suoritettavaksi sopivaan muotoon (kokoajat, kääntäjät, tulkit, lataajat ja linkkieditorit), välineet ohjelmien valvontaan ja virheenkorjaukseen.

Tekstieditorien avulla voit kätevästi muokata, muodostaa ja yhdistää ohjelmatekstejä, ja joidenkin avulla voit hallita luotujen ohjelmien syntaksia.

Algoritmisella kielellä kirjoitettu ohjelma on muutettava konekielellä (binäärikoodilla) kirjoitetuksi objektimoduuliksi. Tällaisen muunnoksen suorittavat kääntäjät (assembler - Assembler-kielestä ja kääntäjät - korkean tason kielistä). Joillekin algoritmikielille käytetään tulkkeja, jotka eivät luo objektimoduulia, vaan kääntävät jokaisen ohjelman jokaisen peräkkäisen suorituksen yhteydessä sen yksittäiset rivit tai lauseet konekielelle. Objektimoduulia käsittelee latausohjelma - linkkieditori, joka muuntaa sen suoritettavaksi koneohjelmaksi.

Vianetsintätyökalujen avulla voit jäljittää ohjelmia (vaiheittainen suoritus ja tiedot suoritustuloksista), tarkistaa ohjelman syntaksin ja välitulokset keskeytyspisteissä ja muokata muuttujien arvoja näissä kohdissa.

Ylläpito- ja huoltojärjestelmät ovat ohjelmistotyökaluja tietokoneen, levyjen jne. toiminnan valvontaan, diagnosointiin ja palauttamiseen.

Sovellusohjelmisto tarjoaa ratkaisuja käyttäjien ongelmiin. Avainkonsepti tässä on sovelluspaketti.

Sovellusohjelmistopaketti on joukko ohjelmia, joilla ratkaistaan ​​useita tiettyä aihetta tai aihetta koskevia ongelmia. Seuraavat sovelluspaketit erotetaan toisistaan:

1) yleiskäyttöinen - keskittyy useiden käyttäjätehtävien automatisointiin (tekstinkäsittelyohjelmat, taulukkolaskentaohjelmat, tietokannan hallintajärjestelmät, graafiset prosessorit, julkaisujärjestelmät, suunnittelun automaatiojärjestelmät jne.);

2) menetelmäkeskeinen - erilaisten taloudellisten ja matemaattisten menetelmien toteuttaminen ongelmien ratkaisemiseksi (matemaattinen ohjelmointi, verkon suunnittelu ja hallinta, jonoteoria, matemaattiset tilastot jne.);

3) ongelmakeskeinen - jolla pyritään ratkaisemaan tietty tehtävä (ongelma) tietyllä aihealueella (pankkipaketit, kirjanpitopaketit, taloushallinto, lakiviitejärjestelmät jne.).

Sovellusohjelmisto sisältää palveluohjelmistot, jotka järjestävät käyttäjälle mukavan työympäristön sekä suorittavat aputoimintoja (tiedonhallinnat, kääntäjät jne.).

Ohjelmistoluokitusta laadittaessa on otettava huomioon se, että laskentatekniikan nopea kehitys ja tietokonesovellusten laajeneminen ovat kiihdyttäneet ohjelmistokehitysprosessia voimakkaasti. Jos aiemmin oli helppo luetella ohjelmistojen pääkategoriat - käyttöjärjestelmät, kääntäjät, sovellusohjelmistopaketit, nyt tilanne on muuttunut radikaalisti. Ohjelmistokehitys on mennyt sekä syvemmälle (uusia lähestymistapoja käyttöjärjestelmien rakentamiseen, ohjelmointikieliä jne. on ilmaantunut) että laajalle (sovellusohjelmat ovat lakanneet soveltamasta ja ovat saaneet itsenäistä arvoa). Tarvittavien ohjelmistotuotteiden ja markkinoilla olevien ohjelmistotuotteiden suhde muuttuu erittäin nopeasti. Jopa klassiset ohjelmistotuotteet, kuten käyttöjärjestelmät, kehittyvät jatkuvasti ja niillä on älykkäitä toimintoja, joista monet aiemmin liittyivät vain ihmisen älyllisiin kykyihin.

2. Työkaluohjelmisto

2.1 Ohjelmistotyökalujen olemus ja käsite

Instrumentaaliohjelmisto (IPO) on ohjelmisto, joka on tarkoitettu ohjelmien suunnitteluun, kehittämiseen ja ylläpitoon.

Työkaluja käytetään kehitysvaiheessa. Työkaluohjelmisto on kokoelma ohjelmia, joita käytetään auttamaan ohjelmoijia heidän työssään, auttamaan ohjelmistokehitysjohtajia heidän pyrkimyksissään hallita kehitysprosessia ja tuloksena olevia tuotteita. Tämän ohjelmiston osan tunnetuimmat edustajat ovat ohjelmointikielien käännösohjelmat, jotka auttavat ohjelmoijia kirjoittamaan konekäskyjä. Instrumentaaliohjelmat ovat kääntäjiä kieliltä Fortran, Cobol, Joe-vial, BASIC, APL ja Pascal. Ne helpottavat uusien työohjelmien luomista. Kielenkääntäjät ovat kuitenkin vain instrumentaaliohjelmien tunnetuin osa; niitä on paljon.

Tietokoneiden käyttäminen uusien ohjelmien luomiseen on kaikkea muuta kuin itsestään selvää ihmisille, jotka eivät ole ammattiohjelmoijia. Usein käy niin, että ammattilaiset puhuvat työkaluohjelmistoista (kehitysvaihe) ja järjestelmäohjelmistoista (käyttövaihe) samassa hengityksessä olettaen, että ne, jotka eivät ole perehtyneet ammatinsa salaisuuksiin, ovat tietoisia tästä työkaluohjelmiston roolista. Kuten käyttövaiheessa (sovellusohjelmille), myös järjestelmäohjelmisto toimii kehitysvaiheessa, mutta vain työkalujen yhteydessä. Työkaluohjelmistot tai ohjelmointijärjestelmät ovat järjestelmiä, joilla automatisoidaan uusien ohjelmien kehittäminen ohjelmointikielellä.

Yleisimmässä tapauksessa, jotta voit luoda ohjelman valitulla ohjelmointikielellä (järjestelmän ohjelmointikieli), sinulla on oltava seuraavat komponentit:

1. Tekstieditori tiedoston luomiseen ohjelman lähdetekstillä.

2. Kääntäjä tai tulkki. Lähdeteksti käännetään väliobjektikoodiksi kääntäjäohjelmalla. Suuren ohjelman lähdekoodi koostuu useista moduuleista (lähdetiedostoista). Jokainen moduuli kootaan erilliseksi tiedostoksi objektikoodilla, joka sitten on yhdistettävä yhdeksi.

3. Linkkieditori tai -asentaja, joka linkittää objektimoduuleita ja tuottaa toimivan sovelluksen ulostulo-suoritettavana koodina.

Suoritettava koodi on täydellinen ohjelma, jota voidaan käyttää missä tahansa tietokoneessa, jossa on käyttöjärjestelmä, jota varten ohjelma luotiin. Tuloksena olevan tiedoston tunniste on yleensä .EXE tai .COM.

Viime aikoina Windows-sovellusten luomiseen tähtäävät visuaaliset ohjelmointimenetelmät (käyttäen komentosarjakieliä) ovat yleistyneet. Tämä prosessi on automatisoitu nopeissa suunnitteluympäristöissä. Tässä tapauksessa käytetään valmiita visuaalisia komponentteja, jotka konfiguroidaan erityisillä editoreilla.

Suosituimmat editorit (visuaalisia työkaluja käyttävät ohjelmaohjelmointijärjestelmät) visuaaliseen suunnitteluun:

1) Borland Delphi - suunniteltu ratkaisemaan melkein kaikki sovellusohjelmointiongelmat.

2) Borland C++ Builder on erinomainen työkalu DOS- ja Windows-sovellusten kehittämiseen.

3) Microsoft Visual Basic on suosittu työkalu Windows-ohjelmien luomiseen.

4) Microsoft Visual C++ - tämän työkalun avulla voit kehittää mitä tahansa sovelluksia, jotka toimivat käyttöjärjestelmäympäristössä, kuten Microsoft Windowsissa

Näin ollen instrumentaaliohjelmiston ydin on luoda mikä tahansa suoritettava ohjelma muuntamalla muodolliset loogiset lausekkeet suoritettavaksi konekoodiksi sekä sen ohjaus ja säätö.

2.2 Työkaluohjelmiston tehtävät ja toiminnot

Instrumentaalisille ohjelmistoille erityisenä ohjelmistotyyppinä on yleinen ja yksityinen

toimintoja, kuten kaikki ohjelmistot yleensä. Yleisiä toimintoja käsitellään edellä, ja vain tämän tyyppisille ohjelmille ominaisia ​​erikoistoimintoja ovat:

1. Kehitettävän ohjelman tekstin luominen käyttämällä erityisesti määritettyjä koodisanoja (ohjelmointikieli), sekä tiettyjä merkkejä ja niiden sijaintia luodussa tiedostossa - ohjelman syntaksia.

2. Luodun ohjelman tekstin kääntäminen konesuuntautuneeksi koodiksi, joka on käytettävissä tietokoneiden tunnistamista varten. Jos luodun ohjelman volyymi on merkittävä, se jaetaan erillisiin moduuleihin ja jokainen moduuli käännetään erikseen.

3. Yksittäisten moduulien yhdistäminen yhdeksi suoritettavaksi koodiksi tarvittavan rakenteen mukaisesti varmistaen yksittäisten osien keskinäisen vuorovaikutuksen koordinoinnin.

4. Luodun ohjelman testaus ja valvonta, muoto-, loogisten ja syntaktisten virheiden tunnistaminen ja poistaminen, ohjelmien tarkistaminen kiellettyjen koodien varalta sekä luodun ohjelman suorituskyvyn ja potentiaalin arviointi.

2.3 Ohjelmistotyökalujen tyypit

Instrumentaaliohjelmistolle annettujen tehtävien perusteella voimme erottaa suuren määrän erilaisia ​​instrumentaaliohjelmistoja:

1) Tekstieditorit

2) Integroidut kehitysympäristöt

4) Kääntäjät

5) Tulkit

6) Linkkerit

7) Jäsentimet ja jäsennysgeneraattorit (katso Javacc)

8) Kokoonpanijat

9) Debuggerit

10) Profiloijat

11) Dokumentaatiogeneraattorit

12) Koodipeittoanalyysityökalut

13) Jatkuvan integroinnin työkalut

14) Automaattiset testaustyökalut

15) Versionhallintajärjestelmät jne.

On huomattava, että myös työkaluohjelmat luovat kuoret sovellusohjelmien luomiseen, joten ne voidaan luokitella sovellusohjelmiksi. Tarkastellaanpa lyhyesti joidenkin instrumentaaliohjelmien tarkoitusta.

Tekstieditorit.

Tekstieditori on tietokoneohjelma, joka on suunniteltu käsittelemään tekstitiedostoja, kuten luomaan ja tekemään muutoksia.

Tekstieditorien tyypit.

Perinteisesti on olemassa kahdenlaisia ​​muokkausohjelmia: suoratoistotekstieditorit ja interaktiiviset.

Stream-tekstieditorit ovat tietokoneohjelmia, jotka on suunniteltu käsittelemään automaattisesti tekstitiedostosta saatua syötetekstidataa käyttäjien ennalta määrittämien sääntöjen mukaisesti. Useimmiten säännöt ovat säännöllisiä lausekkeita tietylle tekstieditorille ominaisessa murteessa. Esimerkki tällaisesta tekstieditorista on Sed-editori.

Interaktiiviset tekstieditorit ovat tietokoneohjelmien perhe, jotka on suunniteltu tekemään muutoksia tekstitiedostoon interaktiivisesti. Tällaisten ohjelmien avulla voit näyttää tiedoston nykyisen tekstitietojen tilan ja suorittaa sille erilaisia ​​toimintoja.

Usein interaktiiviset tekstieditorit sisältävät merkittäviä lisätoimintoja, jotka on suunniteltu automatisoimaan osan muokkaustoimista tai muuttamaan tekstitietojen näyttöä niiden semantiikan mukaan. Esimerkki jälkimmäisestä toiminnallisuudesta on syntaksin korostus.

Tekstieditorit on suunniteltu tekstiasiakirjojen luomiseen ja muokkaamiseen. Yleisimmät ovat MS WORD, Lexicon. Tekstieditorien päätoiminnot ovat:

1) työstää asiakirjan fragmentteja,

2) muissa ohjelmissa luotujen objektien lisääminen

3) asiakirjan tekstin jakaminen sivuiksi

4) taulukoiden syöttäminen ja muokkaaminen

5) kaavojen syöttäminen ja muokkaaminen

6) kappaleen muotoilu

7) automaattinen luetteloiden luominen

8) sisällysluettelon automaattinen luominen.

Tunnetaan kymmeniä tekstieditoreja. Helpoimpia ovat NOTEPAD (muistilehtiö), WORDPAD, WORD. Tietyn tekstieditorin toiminnan määräävät yleensä toiminnot, joiden tarkoitus näkyy valikkokohdissa ja ohjejärjestelmässä.

Integroitu kehitysympäristö

Integrated Development Environment, ISD, on ohjelmistojärjestelmä, jota ohjelmoijat käyttävät ohjelmistojen kehittämiseen. Tyypillisesti kehitysympäristö sisältää:

1) tekstieditori

2) kääntäjä ja/tai tulkki

3) kokoonpanoautomaatiotyökalut

4) debuggeri.

Joskus se sisältää myös työkaluja integrointiin versionhallintajärjestelmiin ja erilaisia ​​työkaluja graafisen käyttöliittymän suunnittelun yksinkertaistamiseksi. Monet nykyaikaiset kehitysympäristöt sisältävät myös luokkaselaimen, objektitarkistusohjelman ja luokkahierarkiakaavion oliopohjaisessa ohjelmistokehityksessä. Vaikka kehitysympäristöjä on suunniteltu useille ohjelmointikielille - kuten Eclipse, NetBeans, Embarcadero RAD Studio, Qt Creator tai Microsoft Visual Studio, kehitysympäristö on yleensä tarkoitettu yhdelle tietylle ohjelmointikielelle - kuten Visual Basic, Delphi, Dev. -C++.

ISR:n erikoistapaus on visuaalinen kehitysympäristö, joka sisältää mahdollisuuden visuaalisesti muokata ohjelman käyttöliittymää.

SDK.

SDK (englanninkielisestä SoftwareDevelopmentKitistä) tai "devkit" on kehityspaketti, jonka avulla ohjelmistoasiantuntijat voivat luoda sovelluksia tietylle ohjelmistopaketille, ydinkehitysohjelmistolle, laitteistoalustalle, tietokonejärjestelmälle, videopelikonsoleille, käyttöjärjestelmille ja muille alustoille.

Ohjelmoija saa pääsääntöisesti SDK:n suoraan kohdeteknologian tai -järjestelmän kehittäjältä. Usein SDK jaetaan Internetin kautta. Monet SDK:t jaetaan ilmaiseksi kannustaakseen kehittäjiä käyttämään tiettyä tekniikkaa tai alustaa.

SDK-toimittajat joskus korvaavat termin Software in Software Development Kit tarkemmalla sanalla. Esimerkiksi Microsoft ja Apple tarjoavat Driver Development Kit (DDK) laiteajurien kehittämiseen, ja PalmSource kutsuu kehitystyökalupakettiaan PalmOS Development Kitiksi (PDK).

SDK-esimerkkejä :

5) Java-kehityspaketti

6) Opera Devices SDK

Kääntäjät.

Kääntäjä -

1) Ohjelma tai tekninen työkalu, joka suorittaa kääntämisen.

2) Kääntämiseen käytetty koneohjelma.

3) Kääntäjä, joka muuntaa lähdekielellä kirjoitetun ohjelman objektimoduuliksi.

4) Ohjelma, joka kääntää ohjelmatekstin korkean tason kielellä vastaavaksi konekieliseksi ohjelmaksi.

5) Ohjelma, joka on suunniteltu kääntämään korkean tason kieli absoluuttiseksi koodiksi tai joskus kokoonpanokieleksi. Kääntäjälle syötettävä tieto (lähdekoodi) on algoritmin tai ohjelman kuvaus ongelmalähtöisellä kielellä ja kääntäjän tulos on vastaava kuvaus algoritmista konesuuntautuneella kielellä (oliokoodi).

Kokoelma -

1) Ohjelman kääntäminen kielelle, joka on lähellä konekieltä.

2) Lähdekielellä kirjoitetun ohjelman kääntäminen objektimoduuliksi. Suorittaa kääntäjä.

Käännä - käännä koneohjelma ongelmalähtöisestä kielestä konesuuntautuneeksi kieleksi.

Kääntäjätyypit :

1) Vektorisointi. Kääntää lähdekoodin konekoodiksi tietokoneissa, joissa on vektorisuoritin.

2) Joustava. Modulaarinen, taulukkokäyttöinen ja ohjelmoitu korkean tason kielellä tai toteutettu kääntäjien kääntäjällä.

3) Vuoropuhelu.

4) Inkrementaalinen. Lähettää uudelleen ohjelman fragmentteja ja lisäyksiä siihen kääntämättä koko ohjelmaa uudelleen.

5) Tulkinta (askel askeleelta). Suorittaa peräkkäin itsenäisen käännöksen jokaisesta lähdeohjelman yksittäisestä käskystä (komennosta).

6) Kääntäjien kääntäjä. Kääntäjä, joka hyväksyy ohjelmointikielen muodollisen kuvauksen ja luo kääntäjän tälle kielelle.

7) Debug. Poistaa tietyntyyppiset syntaksivirheet.

8) Asukas. Asuu pysyvästi keskusmuistissa ja on käytettävissä uudelleen useissa tehtävissä.

9) Itse koonnut. Kirjoitettu samalla kielellä, josta lähetys suoritetaan.

10) Universaali. Perustuu muodolliseen syöttökielen syntaksin ja semantiikan kuvaukseen. Tällaisen kääntäjän komponentit ovat: ydin, syntaktiset ja semanttiset latausohjelmat.

Kokoonpanotyypit :

1) Erä. Useiden lähdemoduulien kääntäminen yhdeksi tehtäväksi.

2) Rivi riviltä.

3) Ehdollinen. Kokoelma, jossa käännetty teksti riippuu lähdeohjelmassa määritetyistä ehdoista. Joten, riippuen tietyn vakion arvosta, voit kytkeä ohjelman tekstin osan kääntämisen päälle tai pois.

Kääntäjän rakenne.

Kokoamisprosessi koostuu seuraavista vaiheista:

1) Leksinen analyysi. Tässä vaiheessa lähdetiedoston merkkisarja muunnetaan merkkijonoksi.

2) Syntaktinen (kielioppi) analyysi. Tokenien sarja muunnetaan jäsennyspuuksi.

3) Semanttinen analyysi. Jäsennyspuuta käsitellään sen semantiikan (merkityksen) määrittämiseksi - esimerkiksi tunnisteiden sitominen niiden ilmoituksiin, tyyppeihin, yhteensopivuuden tarkistaminen, lauseketyyppien määrittäminen jne. Tulosta kutsutaan yleensä "väliesitys/koodi" ja sitä voidaan laajentaa jäsennyspuu, uusi puu, abstrakti komentosarja tai jokin muu kätevä jatkokäsittelyä varten.

4) Optimointi. Tarpeettomien rakenteiden poistaminen ja koodin yksinkertaistaminen säilyttäen samalla sen merkityksen. Optimointi voi olla eri tasoilla ja vaiheissa - esimerkiksi välikoodissa tai lopullisessa konekoodissa.

5) Koodin luominen. Väliesityksen perusteella generoidaan koodi kohdekielellä.

Tietyissä kääntäjätoteutuksissa nämä vaiheet voidaan erottaa tai yhdistää tavalla tai toisella.

Lähetys ja jälkituotanto.

Tärkeä kääntäjän historiallinen piirre, joka näkyy sen nimessä (englanniksi: compile - koota, muodostaa), että se pystyi myös linkittämään (eli se sisälsi kaksi osaa - kääntäjän ja linkittäjän). Tämä johtuu siitä, että erillinen käännös ja linkittäminen erillisenä kokoonpanovaiheena syntyivät paljon myöhemmin kuin kääntäjien tulo. Tässä suhteessa termiä "kääntäjä" käytetään joskus synonyyminä "kääntäjä" -sanan sijaan: joko vanhassa kirjallisuudessa tai kun halutaan korostaa sen kykyä kääntää ohjelma konekoodiksi (ja päinvastoin, termiä "kääntäjä" käytetään korostamaan kykyä kääntää useista tiedostoista yksi).

Tulkit.

Tulkki (ohjelmointikieli) -

1) Ohjelma tai tekninen työkalu, joka suorittaa tulkinnan.

2) Kääntäjätyyppi, joka suorittaa lähdeohjelman tai kyselyn käskykohtaisen (komentokohtaisesti) käsittelyn ja suorittamisen (toisin kuin kääntäjä, joka kääntää koko ohjelman suorittamatta sitä).

3) Ohjelma (joskus laitteisto), joka analysoi komentoja tai ohjelmakäskyjä ja suorittaa ne välittömästi.

4) Kieliprosessori, joka analysoi lähdeohjelman rivi riviltä ja suorittaa samanaikaisesti määrätyt toiminnot sen sijaan, että se luo konekielellä käännetyn ohjelman, joka suoritetaan myöhemmin.

Tulkkien tyypit.

Yksinkertainen tulkki analysoi ja suorittaa välittömästi (varsinaisen tulkinnan) ohjelman komento-komento (tai rivi riviltä), kun sen lähdekoodi saapuu tulkin tuloon. Tämän lähestymistavan etuna on välitön vastaus. Haittapuolena on, että tällainen tulkki havaitsee virheet ohjelmatekstissä vain silloin, kun yritetään suorittaa virheellinen komento (tai rivi).

Kääntäjätyyppinen tulkki on järjestelmä, joka koostuu kääntäjästä, joka kääntää ohjelman lähdekoodin väliesitykseen, esimerkiksi tavukoodiksi tai p-koodiksi, ja tulkista itsestään, joka suorittaa tuloksena olevan välikoodin (ns. kutsutaan virtuaalikoneeksi). Tällaisten järjestelmien etuna on suurempi ohjelman suoritusnopeus (johtuen lähdekoodianalyysin poistamisesta erilliseksi, kertaluonteiseksi siirroksi ja tämän analyysin minimoimisesta tulkissa). Haitat ovat suurempi resurssivaatimus ja vaatimus lähdekoodin oikeellisuudesta. Sitä käytetään kielissä, kuten Java, PHP, Python, Perl (käytetään tavukoodia), REXX (lähdekoodin jäsentämisen tulos tallennetaan) sekä erilaisissa DBMS-järjestelmissä (käytetään p-koodia).

Jos kääntäjätyyppinen tulkki jaetaan komponentteihin, tuloksena on kielen kääntäjä ja yksinkertainen tulkki, jonka lähdekoodianalyysi on vähäinen. Lisäksi tällaisen tulkin lähdekoodin ei tarvitse olla tekstimuodossa tai tavukoodia, jonka vain tämä tulkki ymmärtää, vaan se voi olla jonkin olemassa olevan laitteistoalustan konekoodi. Esimerkiksi virtuaalikoneet, kuten QEMU, Bochs, VMware, sisältävät konekooditulkkeja x86-perheen prosessoreille.

Jotkut tulkit (esimerkiksi kielille Lisp, Scheme, Python, BASIC ja muille) voivat työskennellä dialogitilassa tai ns. read-eval-printloop (REPL) -tilassa. Tässä tilassa tulkki lukee täydellisen kielirakenteen (esimerkiksi s-lausekkeen Lispissä), suorittaa sen, tulostaa tulokset ja jatkaa sitten odottamaan, että käyttäjä syöttää seuraavan rakenteen.

Ainutlaatuinen on Forth-kieli, joka pystyy toimimaan sekä syöttötietojen tulkinta- että käännöstiloissa, jolloin voit vaihtaa näiden tilojen välillä milloin tahansa sekä lähdekoodin kääntämisen aikana että ohjelmien ollessa käynnissä.

On myös huomattava, että tulkintatilat löytyvät paitsi ohjelmistosta, myös laitteistosta. Siten monet mikroprosessorit tulkitsevat konekoodia käyttämällä sisäänrakennettua laiteohjelmistoa, ja x86-perheen prosessorit, alkaen Pentiumista (esimerkiksi Intel P6 -arkkitehtuurissa), konekoodin suorittamisen aikana esikääntävät sen sisäiseen muotoon. (mikrooperaatioiden sarjaksi).

Algoritmi yksinkertaiselle tulkille :

2. analysoida ohjeet ja määrittää asianmukaiset toimenpiteet;

3. ryhtyä asianmukaisiin toimiin;

4. Jos ohjelman lopetusehtoa ei saavuteta, lue seuraavat ohjeet ja siirry vaiheeseen 2.

Tulkkien edut ja haitat.

1) Parempi tulkittujen ohjelmien siirrettävyys - ohjelma toimii millä tahansa alustalla, jolla on sopiva tulkki.

2) Pääsääntöisesti edistyneemmät ja visuaaliset keinot lähdekoodien virheiden diagnosointiin.

3) Ohjelman lähdekoodien virheenkorjauksen yksinkertaistaminen.

4) Pienemmät koodikoot verrattuna tavanomaisista kääntäjistä saatuun konekoodiin.

1) Tulkittua ohjelmaa ei voi suorittaa erikseen ilman tulkkiohjelmaa. Itse tulkki voi olla hyvin kompakti.

2) Tulkittu ohjelma toimii hitaammin, koska lähdekoodin välianalyysi ja sen suorituksen ajoittaminen vaativat lisäaikaa verrattuna sen konekoodin suoritukseen, johon lähdekoodi voitaisiin kääntää.

3) Koodioptimointia ei käytännössä ole, mikä johtaa ylimääräisiin menetyksiin tulkittujen ohjelmien nopeudessa.

Linkki.

Linkkeri (myös linkkieditori, linkijä) - linkitystä suorittava ohjelma - ottaa syötteeksi yhden tai useamman objektimoduulin ja kokoaa niistä suoritettavan moduulin.

Linkittäjä käyttää moduulien linkittämistä nimitaulukoita, jotka kääntäjä on luonut kussakin objektimoduulissa. Tällaisia ​​nimiä voi olla kahta tyyppiä:

1) Määritetyt tai viedyt nimet - funktiot ja muuttujat, jotka on määritelty tietyssä moduulissa ja jotka on asetettu muiden moduulien käyttöön.

2) Määrittämättömät tai tuodut nimet - funktiot ja muuttujat, joihin moduuli viittaa, mutta ei määrittele niitä sisäisesti.

Linkittäjän tehtävänä on selvittää viittaukset määrittelemättömiin nimiin kussakin moduulissa. Jokaisen tuodun nimen määritelmä löytyy muista moduuleista, nimen maininta korvataan sen osoitteella.

Linkkeri ei yleensä tarkista proseduurien ja toimintojen parametrien tyyppejä ja lukumäärää. Jos sinun on yhdistettävä ohjelmien objektimoduuleja, jotka on kirjoitettu vahvasti kirjoittamalla, lisäapuohjelman on suoritettava tarvittavat tarkistukset ennen linkkieditorin käynnistämistä.

Kokoonpanija.

Assembler (englanniksi assembler - assembler) on tietokoneohjelma, kokoonpanokielellä kirjoitetun ohjelman lähdetekstin kääntäjä konekieliseksi ohjelmaksi.

Kuten itse (kokoonpano)kieli, assemblerit ovat tyypillisesti erityisiä tietylle arkkitehtuurille, käyttöjärjestelmälle ja kielen syntaksin variantille. Samaan aikaan on olemassa monialustaisia ​​tai jopa universaaleja (tarkemmin sanottuna rajoitettu-universaalisia, koska laitteistosta riippumattomia ohjelmia on mahdotonta kirjoittaa matalan tason kielellä) kokoajia, jotka voivat toimia eri alustoilla ja käyttöjärjestelmillä. Jälkimmäisistä voidaan erottaa myös ryhmä ristiinkokoonpanolaitteita, jotka kykenevät keräämään konekoodia ja suoritettavia moduuleja (tiedostoja) muille arkkitehtuureille ja käyttöjärjestelmille.

Kokoonpano ei välttämättä ole ensimmäinen tai viimeinen vaihe suoritettavan ohjelmamoduulin hankkimisessa. Siten monet kääntäjät korkean tason ohjelmointikielistä tuottavat tuloksen kokoonpanokieliohjelman muodossa, jonka kokoaja käsittelee edelleen. Kokoonpanon tulos ei myöskään voi olla suoritettava, vaan konekoodin ja ohjelmatiedon erillisiä ja toisiinsa liittymättömiä osia sisältävä objektimoduuli, josta (tai useista objektimoduuleista) voidaan myöhemmin koota linkkiohjelman ("linker") avulla. suoritettava tiedosto.

Debuggeri tai debuggeri on kehitysympäristömoduuli tai erillinen sovellus, joka on suunniteltu etsimään ohjelman virheitä. Debuggerin avulla voit suorittaa vaiheittaisen jäljityksen, seurata, asettaa tai muuttaa muuttujaarvoja ohjelman suorittamisen aikana, asettaa ja poistaa keskeytyskohtia tai pysäytysehtoja ja niin edelleen.

Luettelo debuggereista.

1) AQtime on kaupallinen virheenkorjausohjelma sovelluksille, jotka on luotu .NET Frameworkin versioille 1.0, 1.1, 2.0, 3.0, 3.5 (mukaan lukien ASP.NET-sovellukset), sekä Windows 32- ja 64-bittisille sovelluksille.

2) DTrace - dynaaminen jäljityskehys Solaris-, OpenSolaris-, FreeBSD-, Mac OS X- ja QNX-käyttöjärjestelmille.

3) Electric Fence - muistin debuggeri.

4) GNU Debugger (GDB) - ohjelman debuggeri GNU-projektista.

5) IDA on tehokas purkuohjelma ja matalan tason virheenkorjausohjelma Windows- ja Linux-käyttöjärjestelmille.

6) Microsoft Visual Studio - ohjelmistokehitysympäristö, joka sisältää Microsoftin vianetsintätyökalut.

7) OllyDbg on ilmainen matalan tason virheenkorjausohjelma Windows-käyttöjärjestelmille.

8) SoftICE on matalan tason virheenkorjausohjelma Windows-perheen käyttöjärjestelmille.

9) Sun Studio - ohjelmistokehitysympäristö, mukaan lukien dbx-debuggeri Solaris- ja Linux-käyttöjärjestelmille, Sun Microsystems Corporationilta.

10) Dr. Watson on tavallinen Windows-debuggeri, jonka avulla voit luoda muistivedoksia.

11) TotalView on yksi kaupallisista UNIX-virheenkorjausohjelmista.

12) WinDbg on ilmainen virheenkorjausohjelma Microsoftilta.

Documentation Generator on ohjelma tai ohjelmistopaketti, jonka avulla voit hankkia ohjelmoijille (API-dokumentaatio) ja/tai järjestelmän loppukäyttäjille tarkoitettua dokumentaatiota erityisesti kommentoitulle lähdekoodille ja joissain tapauksissa suoritettaville moduuleille (saatu lähdössä kääntäjästä).

Tyypillisesti generaattori analysoi ohjelman lähdekoodia korostaen merkittäviä ohjelmaobjekteja (tyypit, luokat ja niiden jäsenet/ominaisuudet/menetelmät, menettelyt/funktiot jne.) vastaavat syntaktiset rakenteet. Analyysissä käytetään myös ohjelmaobjektien metatietoa, joka esitetään dokumentoivien kommenttien muodossa. Kaiken kerätyn tiedon perusteella luodaan valmiita dokumentaatioita, yleensä jossakin yleisesti hyväksytyistä muodoista - HTML, HTMLHelp, PDF, RTF ja muut.

Kommenttien dokumentointi.

Dokumentointikommentti on erityisesti muotoiltu kommentti ohjelmaobjektiin, joka on tarkoitettu tietyn dokumentaation luontiohjelman käyttöön. Kommenttien dokumentoinnissa käytettyjen konstruktien syntaksi riippuu käytetystä dokumentaatiogeneraattorista.

Dokumentointikommentit voivat sisältää tietoja koodin tekijästä, kuvailla ohjelmaobjektin tarkoitusta, toiminnon/proseduurin syöttö- ja lähtöparametrien merkitystä, käyttöesimerkkejä, mahdollisia poikkeustilanteita ja toteutusominaisuuksia.

Dokumentointikommentit muotoillaan yleensä monirivisiksi C-tyylisiksi kommenteiksi. Kussakin tapauksessa kommentin on oltava ennen dokumentoitavaa elementtiä. Kommentin ensimmäisen merkin (ja kommenttirivien alussa) on oltava *. Lohkot erotetaan tyhjillä viivoilla.

3. Visual Basic sovelluksille

ohjelmiston käyttöjärjestelmä

3.1 VisualBasicin ydin ja sen lyhyt historia

Microsoft Visual Basic (VB) on Microsoft Corporationin kehittämä ohjelmistokehitystyökalu, joka sisältää ohjelmointikielen ja kehitysympäristön. Visual Basic -kieli peri esi-isänsä hengen, tyylin ja osittain syntaksin - BASIC-kielen, jossa on monia murteita. Samaan aikaan Visual Basic yhdistää olio- ja komponenttisuuntautuneiden ohjelmointikielten proseduurit ja elementit. VB-kehitysympäristö sisältää työkalut käyttöliittymien visuaaliseen suunnitteluun. (katso taulukko).

Visual Basic (tärkeimmät ominaisuudet)

Visual Basicia pidetään hyvänä työkaluna nopeaan ohjelmaprototyyppien kehittämiseen, tietokantasovellusten kehittämiseen ja yleensäkin komponenttipohjaiseen menetelmään Microsoft Windows -perheen käyttöjärjestelmissä toimivien ohjelmien luomiseen.

Evoluutioprosessissa Visual Basic kävi läpi useita peräkkäisiä vaiheita, joiden ansiosta siitä tuli yksi suosituimmista ohjelmointikielistä nykyään. Evoluutio siis VisualBasic toimi seuraavasti:

1. Toukokuu 1991 - Visual Basic 1.0 julkaistiin Microsoft Windowsille. QBasic-syntaksi otettiin kielen perustaksi ja innovaatio, joka myöhemmin toi kielelle valtavan suosion, oli kielen ja graafisen käyttöliittymän välinen yhteysperiaate.

2. Syyskuu 1992 - Visual Basic 1.0 DOS:lle julkaistiin. Se ei ollut täysin yhteensopiva VB:n Windows-version kanssa, koska se oli QuickBASICin myöhempi versio ja toimi tekstipohjaisessa näyttötilassa.

3. Marraskuu 1992 - Visual Basic 2.0 julkaistiin. Kehitysympäristöstä tuli helpompi käyttää ja nopeampi.

4. kesällä 1993 - Visual Basic 3.0 julkaistiin Standard- ja Professional-versioina. Lisäksi pakettiin on lisätty moottori Access-tietokantojen kanssa työskentelemiseen.

5. Elokuu 1995 - Visual Basic 4.0 - versio, joka voi luoda sekä 32- että 16-bittisiä Windows-ohjelmia.

6. Helmikuu 1997 - Visual Basic 5.0 - tästä versiosta alkaen tuli mahdolliseksi tavallisten sovellusten lisäksi kehittää COM-komponentteja.

7. Vuoden 1998 puolivälissä julkaistiin Visual Basic 6.0. Tämän jälkeen Microsoft muutti dramaattisesti peruskieliä koskevaa käytäntöään. Visual Basicin kehittämisen sijaan luotiin kokonaan uusi kieli, Visual Basic .NET.

8. Vuonna 2005 Visual Basicista julkaistiin uusi versio, joka oli mukana Visual Studiossa. Hän oli tyytyväinen uuteen käyttöliittymään ja ominaisuuksiin. Kieli perustuu Visual Basic.NETiin.

9. Vuoden 2007 lopussa Microsoft julkaisi Visual Basicista uuden version - Visual Basic 2008, joka myös perustui Visual Basic.NETiin.

Sovelluksen toiminnallisuuden ja erityispiirteiden perusteella voidaan erottaa seuraavat tämän ohjelman tyypit:

1. Klassinen Visual Basic (versiot 5-6) Tämä kieli on erittäin vahvasti sidottu kehitysympäristöönsä ja Windows-käyttöjärjestelmään, koska se on yksinomaan työkalu Windows-sovellusten kirjoittamiseen

2. VisualBasicforApplications (VBA) Tämä on ohjelmointityökalu, joka ei käytännössä eroa klassisesta Visual Basicista, joka on suunniteltu makrojen ja muiden sovellusohjelmien kirjoittamiseen tiettyjä sovelluksia varten. Se saavutti suurimman suosion, koska sitä käytettiin Microsoft Office -ohjelmistopaketissa. Visual Basic for Applications -sovelluksen laaja käyttö yhdistettynä siihen, että tietoturvakysymyksiin ei ensin kiinnitetty huomiota, on johtanut makrovirusten laajaan käyttöön.

3. VisualBasicScriptingEdition (VBScript) Skriptikieli, joka on jonkin verran katkaistu versio tavallisesta Visual Basicista. Käytetään ensisijaisesti Windows-järjestelmien hallinnan automatisointiin sekä ASP-sivujen ja komentosarjojen luomiseen Internet Explorerille.

3.2 VisualBasicforApplication-käyttöliittymä, tärkeimmät toiminnot ja ominaisuudet

Luomalla VisualBasicforApplicationin Microsoft Corporation asetti päätavoitteekseen sellaisten työkalujen luomisen, jotka ovat sellaisten käyttäjien saatavilla, jotka eivät ole ammattiohjelmoijia, mutta jotka ovat samalla riittävän päteviä kehittämään ja suunnittelemaan sovellusohjelmia ja Microsoft Office -pohjaisia ​​sovelluksia. Tämän ongelman ratkaisemiseksi kehittäjät loivat VBA:n ja antoivat sille useita ainutlaatuisia ominaisuuksia. Yksi näistä, käyttäjälle arvokkain, on kyky luoda ja käyttää ohjelmissa ei-standardeja (mukautettuja) valintaikkunoita lisäämällä projektiin UserForm-objekti sekä kätevä käyttöliittymä.

VisualBasicforApplication-ohjelman käyttöliittymä koostuu joukosta erilaisia ​​ikkunoita ja välilehtiä, joita käytetään luotavan sovelluksen suunnittelussa, joista tärkeimmät ovat:

1) Projekti-ikkuna (Kuva 2), joka näyttää luodun projektin rakenteen.

2) Ohjelmakoodi-ikkuna (kuva 3), joka näyttää luodun projektin ohjelmakoodin ja mahdollistaa ohjelman kirjoittamisen perinteisellä tavalla sisäänrakennetulla koodisanaeditorilla, jota on yli 16 tuhatta VBA. Tässä ikkunassa voit myös muokata koodia ja tarkistaa sen virheiden varalta.

3) Ominaisuudet-välilehti (kuva 4), joka näyttää määritetylle objektille asetetut parametrit ja mahdollistaa määritettyjen asetusten muuttamisen.

Siirtymällä ikkunoiden ja välilehtien välillä käyttäjä voi helposti muokata luotua projektia.

VBA:n käyttäjien luomilla lomakkeilla voit luoda mukautettuja valintaikkunoita tietojen näyttämiseksi tai arvojen vastaanottamiseksi ohjelman käyttäjältä ohjelman tarpeita parhaiten vastaavalla tavalla. Voit esimerkiksi luoda testin, näyttää valintaikkunan monivalintakysymyksiä varten ja antaa käyttäjän valita yhden vastausvaihtoehdoista, jonka hän uskoo olevan oikea.

Epätyypillisten valintaikkunoiden avulla ohjelma voi olla vuorovaikutuksessa käyttäjän kanssa mitä monimutkaisimmalla tavalla ja tarjota monipuolisia tiedonsyöttö- ja tulostusmuotoja.

Mukautettu valintaikkuna luodaan VBA:ssa lisäämällä projektiin UserForm-objekti. Tämä objekti edustaa tyhjää valintaikkunaa; siinä on otsikkopalkki ja sulkemispainike, mutta siinä ei ole muita säätimiä. Mukautettu valintaikkuna luodaan lisäämällä säätimiä UserForm-objektiin, ja sitä kutsutaan yleensä yksinkertaisesti lomakkeeksi (kuva 5).

Jokaisella UserForm-objektilla on ominaisuuksia, menetelmiä ja tapahtumia, jotka se perii UserForm-objektiluokasta.

Jokainen UserForm-objekti sisältää myös luokkamoduulin, johon käyttäjä lisää omia menetelmiään ja ominaisuuksia tai kirjoittaa tapahtumankäsittelyproseduurit tietylle lomakkeelle.

Mahdollisuus luoda oma käyttöliittymä sovellusympäristöstä, kuten Excelistä, näyttölomakkeiden avulla on yksi VBA:n arvokkaimmista ominaisuuksista.

Näyttölomakkeet ovat käyttäjän sovellustaan ​​varten luomia eri tarkoitusten ja tyyppisiä ikkunoita. Ne sisältävät säätimiä, joiden avulla käyttäjä voi vaihtaa tietoja sovelluksen kanssa.

VBA käyttää luotua lomakkeen graafista suunnittelua - lomakkeen ominaisuuksien ja säätimien asetuksilla - saadakseen kaikki valintaikkunan näyttämiseen tarvittavat tiedot: valintaikkunan mitat, siinä olevat säätimet jne. Tämän seurauksena VBA mahdollistaa valintaikkunalomakkeen näyttämisen yhdellä lauseella.

Voit näyttää mukautetun valintaikkunan käyttämällä UserForm-objektin Näytä-menetelmää. Jos lomaketta ei ole ladattu muistiin, Näytä-menetelmä lataa lomakkeen ja näyttää sen. Jos lomake on jo ladattu, Näytä-menetelmä yksinkertaisesti näyttää sen.

Yhden valintaikkunan näyttäminen ei yleensä riitä tehtävän suorittamiseen. Haluat melkein aina määrittää valintaikkunan säätimien tilan saadaksesi selville, mitä tietoja tai vaihtoehtoja käyttäjä on valinnut. Jos esimerkiksi valintaikkunan avulla saadaan käyttäjältä tietoja siitä, minkä sarakkeiden ja rivien mukaan laskentataulukko tulee lajitella, sinun on pystyttävä selvittämään, mitä arvoja käyttäjä on syöttänyt valintaikkunan sulkemisen jälkeen ja ennen tilaustoiminta alkaa itse asiassa.

Muissa tapauksissa saatat haluta muuttaa dynaamisesti valintaikkunan painikkeiden (tai muiden säätimien) otsikoita, päivittää dynaamisesti laskuriin liittyvää tarraa tai kenttää tai tarkistaa dynaamisesti valintaikkunaan syötetyt tiedot.

VBA:ssa on mahdollista laajentaa merkittävästi vakiosovellukseen, kuten Microsoft Exceliin, sisäänrakennettua toimintosarjaa sekä luoda toimintoja, joiden arvot riippuvat tietyistä olosuhteista ja tapahtumista.

VBA:n avulla voit ohjelmoida taulukkofunktioita. Jos haluat luoda erillisen laskentataulukon ohjelmamoduulille, käytä Visual-valikon Lisää moduuli -välilehteä ja Lisää makro -valikon Moduuli-komentoa. Tämän jälkeen näkyviin tulee uusi laskentataulukko "Modele1". Ohjelmamoduulissa sinun on kuvattava funktio VBA:ssa. Voit työskennellä ohjelmamoduuli-ikkunassa kuin olisit pienessä tekstieditori-ikkunassa.

Toimintojen upottaminen suoritetaan Näytä-valikon Object Browser -komennolla. Käyttäjän määrittämiä toimintoja käsitellään ohjelmassa itsenäisinä objekteina. VBA:ssa on merkittävä joukko sisäänrakennettuja toimintoja, jotka jakavat ne tyyppeihin.

Visual Basicin avulla voit varata muuttujia koolla tai ilman, työskennellä eri tietotyyppien kanssa, käyttää vakioita, työskennellä matemaattisten operaattoreiden ja funktioiden kanssa sekä käyttää lisäoperaattoreita. Käytetään silmukkaoperaattoreita For Next, Do ja "ajastin"-tyyppisiä objekteja (näkymätön sekuntikello ohjelmassa). Ajan asettamisen tarkkuus ohjelmassa on 1 millisekunti tai 1/1000 sekuntia. Käynnistetty ajastin on jatkuvasti käynnissä - ts. vastaava keskeytyskäsittely suoritetaan tietyllä aikavälillä - kunnes käyttäjä pysäyttää ajastimen tai poistaa ohjelman käytöstä.

VBA:ssa voit määrittää lomakkeelle minkä tahansa ominaisuuden, mukaan lukien otsikon, koon, reunuksen tyypin, taustan ja merkkien värit, tekstin fontin ja taustakuvan.

Jos teemme yhteenvedon kaikista ohjelman toiminnoista, Visual Basic forApplication antaa sinun:

1) Työskentele säätimien kanssa

Edut :

1. Nopea luoda sovelluksia graafisella käyttöliittymällä MS Windowsille.

2. Yksinkertainen syntaksi, jonka avulla voit hallita kielen hyvin nopeasti.

3. Mahdollisuus kääntää sekä konekoodiksi että P-koodiksi (ohjelmoijan valinnan mukaan). Virheenkorjaustilassa ohjelma käännetään aina (valinnasta riippumatta) P-koodiksi, jonka avulla voit keskeyttää ohjelman, tehdä merkittäviä muutoksia lähdekoodiin ja jatkaa sitten suorittamista ilman ohjelman täydellistä uudelleenkääntämistä ja uudelleenkäynnistystä. .

4. Suojaus osoittimien käyttöön ja muistin käyttöön liittyviltä virheiltä. Tämä näkökohta tekee Visual Basic -sovelluksista vakaampia, mutta on myös kritiikin kohteena.

5. Mahdollisuus käyttää useimpia WinAPI-toimintoja sovelluksen toimivuuden laajentamiseen. Tätä ongelmaa on tutkinut täydellisimmin Dan Appleman, joka kirjoitti kirjan "Visual Basic Programmer's Guide to the Win32 API".

Kritiikkiä :

1. Visual Basicin näkökohtia arvostellaan usein, kuten kykyä poistaa käytöstä ilmoitettujen muuttujien seuranta, kyky implisiittisesti muuntaa muuttujia ja "Variant"-tietotyypin olemassaolo. Kriitikoiden mukaan tämä mahdollistaa erittäin huonon koodin kirjoittamisen. Toisaalta tätä voidaan pitää plussana, koska VB ei pakota "hyvää tyyliä", vaan antaa ohjelmoijalle enemmän vapautta.

2. Osoittimien puute, matalan tason muistin käyttö, ASM-lisäkkeet. Huolimatta siitä, että Visual Basic -paradigma sallii keskimääräisen VB-ohjelmoijan pärjätä ilman kaikkea tätä, myös näistä asioista tulee usein kritiikkiä. Ja vaikka käyttämällä dokumentoimattomia ominaisuuksia ja tiettyjä temppuja, kaikki tämä voidaan toteuttaa VB:ssä (esimerkiksi käyttämällä funktioita osoittimien VarPtr(), StrPtr() ja ObjPtr() hankkimiseen); Näiden temppujen käyttäminen on paljon vaikeampaa kuin esimerkiksi C++:ssa.

On kuitenkin syytä huomata, että kaikki kielen haitat johtuvat sen pääedusta - graafisen käyttöliittymän kehittämisen helppoudesta. Siksi monet ohjelmoijat käyttävät Visual Basicia käyttöliittymän kehittämiseen ja ohjelman toiminnallisuuden toteuttamiseen toisella kielellä (useimmiten C++) kirjoitettujen dynaamisten linkkikirjastojen (DLL) muodossa.

4. Käytännön osa

4.1 Ongelman kuvaus

Piirrä lohkokaavio ja kirjoita ohjelma Pascalilla. Laske arvopapereiden itseisarvo. Omaisuuserän sisäinen arvo määräytyy kyseisestä omaisuudesta tulevan tulovirran mukaan.

pv – osakkeen nykyinen sisäinen arvo

c – odotettu saaminen kyseisestä omaisuuserästä

r – tuottoprosentti, jota sijoittaja odottaa vastaavalla riskitasolla

n – aikatekijä (kuukausina).

Suorita markkina-analyysi ja lajittele tulokset saatujen tietojen nousevaan järjestykseen.

4.2 Ohjelmateksti Pascal-kielellä

pv: array of real;

writeLn('Anna odotettu kuitti kohteesta ',i,'th omaisuus c:');

writeLn('Anna sijoittajan odottama tuottoprosentti r:');

pv:=c/exp(ln(1+r)*i);

writeLn('omaisuuden nykyinen sisäinen arvo on', pv[i]:1:3);

writeLn('Omaisuuden sisäinen arvo on', s);

j:=1 - 4 tee

jos pv[j] > pv sitten

writeLn('Omaisuuden arvo lajiteltu nousevaan järjestykseen');

i:=1 - 5 tee

writeLn(pv[i]:1:3);

4.3 Testitapaus

4.4 Ohjelman suorittamisen tulos testiesimerkillä

Johtopäätös

Joten yhteenvetona kaikki edellä mainitut, on huomattava, että työkaluohjelmisto on yksi ohjelmistotyypeistä, jolla on yleiset tehtävänsä ja toiminnonsa.

Koska se on kuitenkin erittäin erikoistunut ohjelmistotyyppi, sillä on tietty joukko ainutlaatuisia ominaisuuksia ja toimintoja, jotka tarjoavat ratkaisuja sen erityisiin ongelmiin.

On huomioitava nouseva suuntaus ohjelmointiprosessin yksinkertaistamiseen ja tietyn alaluokan luomiseen - puoliammattimainen ohjelmointi soveltuviin tarkoituksiin.

Näin kokenut tietokoneen käyttäjä, mutta ei ammattiohjelmoija, voi luoda tiettyjä Microsoft Office -ympäristössä suoritettavia sovelluksia ja pieniä tiedostoja, joita käytetään ensisijaisesti kirjanpitoon ja dokumenttien käsittelyyn pienissä yrityksissä.

Tätä tarkoitusta varten Microsoft kehitti VisualBasicforApplication-ohjelmistopaketin, joka yksinkertaistaa ohjelmointiprosessia ja mahdollistaa käyttäjien ohjelmoijien sijaan sovellusohjelmoinnin. Tämä ominaisuus toteutettiin ensisijaisesti luomalla ohjelmaosio - "Script Editor" ja mahdollisuus tallentaa ja suorittaa "Makroja" erillisenä graafisesti ohjelmoitavana moduulina. Mahdollisuus luoda graafisella käyttöliittymällä varustettuja sovelluksia MS Windowsille on otettu käyttöön. Toinen tämän tyyppisen työkaluohjelmiston etu on sen yksinkertainen syntaksi, jonka avulla voit nopeasti hallita kielen ja käyttää sitä ohjelmointiin kaikissa Microsoft Office -sovelluksissa.

Siksi on vaikea yliarvioida työkalujen merkitystä yleensä ja VisualBasicforApplicationin erityisesti, vaikka puutteita, kuten edellä mainittiin, on myös olemassa. Mutta nämä eivät ole edes tuotteen negatiivisia puolia, vaan suuntaviivat ohjelmiston edelleen parantamiseen VisualBasicforApplicationin muodossa.

1. Reaaliaikaiset algoritmikielet / Ed. Yanga S. / 2004

2. PC Magazine venäläinen painos nro 2 2008 Tietokone tänään.

3. Tietojenkäsittelytiede. /Toim. Mogilev A.V., Pak N.I., Henner E.K./ - M.: ACADEMIA, 2000.

4. Tietojenkäsittelytiede ja tietotekniikka: Oppikirja / Toim. Romanova D.Yu. / Eksmo Publishing House LLC, 2007.

5. Henkilökohtaisen tietokoneen uusin tietosanakirja / Toim. Leontyeva V. /Moskova, 1999. – 271 s.

6. Uudet ohjelmointikielet ja niiden kehitystrendit / Toim. Ushkova V. / 2001

7. Pedagogiikka / Toim. Pidkasistogo P.I./ – M.: Pedagogical Society Russia, 2000.

8. Ohjelmointi Microsoft Excel 2000:lle 21 päivässä. /Toim. Kharisa M./ – M.: Williams, 2000.

9. Simonovich S. Informatiikka: peruskurssi. Oppikirja yliopistoja varten. Pietari, Pietari, 2002

10. Ei ongelmia Excel 2000:n kanssa. /Toim. Kowalski/ – M.: Binom, 2000.

11. "Tehokasta työtä Windows 98:ssa" / Ed. Stinson K. / 2000. – 247 s.

12. Ohjelmointikielet. kirja 5 /Toim. Vaulina A.S. / 2003

13. Ohjelmointikielet: kehitys ja toteutus / Toim. Terrence P. / 2001

14. Tietojenkäsittelytieteen sähköinen oppikirja. Alekseev E.G. http://www.stf.mrsu.ru/economic/lib/Informmatics/text/Progr.html\

Ohjelmointitekniikka yleensä ja ohjelmistokehityksen tukityökalut erityisesti kehittyvät niin nopeasti, että jopa pelkkä tärkeimpien työkalujärjestelmien luettelointi veisi liikaa tilaa tässä kirjassa. Tästä syystä alla jäämme lyhyesti esille vain muutamassa ohjelmointitekniikan alan projektissa, jotka ovat kiinnostavia tämän julkaisun yhteydessä.

Jokaisen kehitetyn teknologisen järjestelmän on tuettava suunnitellun ohjelmistopaketin luomisen kaikkia päävaiheita. Tämän tavoitteen saavuttamiseksi yleisessä rakenteessa tyypillinen teknologian kehittämisen tukijärjestelmä(Kuva 6.3) ovat yleensä eristettyjä projektin tietokanta; suunnittelu ja ohjelmointi automaatio osajärjestelmä; virheenkorjaus-, dokumentointi- ja ylläpitoalijärjestelmät, A myös alijärjestelmä projektin etenemisen hallintaan.


Riisi. 6.3. Tyypillisen teknologian kehittämisen tukijärjestelmän yleinen rakenne

Kehitettyjä kirjastojen kehittämisen tukijärjestelmiä käytetään tällä hetkellä kaikkialla maailmassa kaikissa vakavissa ohjelmistoprojekteissa. Mutta useimmissa tapauksissa tällaiset järjestelmät ovat saavuttaneet pätevien ohjelmoijien helppokäyttöisyyden. Olemme ensisijaisesti kiinnostuneita järjestelmistä ja projekteista, jotka edustavat selkeästi teknistä tietoa, vaikka ne eivät perustuisi tekoälyn ideoihin ja menetelmiin.

Yksi näistä projekteista, Gandalf, keskittyy ohjelmistokehitysjärjestelmien automatisoituun sukupolveen. Gandalf-projektissa tehty tutkimus koskee ohjelmistosuunnittelun tuen kolmea aspektia: projektinhallintaa, versionhallintaa ja inkrementaalista ohjelmointia sekä niiden integrointia yhdeksi ympäristöksi. Gandalf-ympäristön hallinta perustuu oletukseen, että kehitettävää projektia tulee käsitellä abstraktien tietotyyppien joukkona, jolle voidaan suorittaa vain tiettyjä operaatioita. Työkalu, joka toteuttaa tämän konseptin, oli SDC (Software Development Control) -järjestelmä, joka on sarja ohjelmia, jotka toteutettiin alun perin Shell-kielellä UNIX-järjestelmässä ja käännettiin myöhemmin C-kielelle.

Versionhallinnan alan tutkimuksen aloitti L. Kooprider FAFOS-projektin pohjalta, jossa alun perin analysoitiin mahdollisuuksia luoda käyttöjärjestelmäperhe. Muodostettiin merkintä, joka kuvaa alijärjestelmien välistä vuorovaikutusta, kuvailee osajärjestelmien eri versioita (lähde- ja objektikoodi, dokumentaatio jne.) sekä kuvailee kehitysvaiheessa toimivia mekanismeja (kääntäminen, linkkien muokkaaminen jne.). Sitten luotiin erityinen kieli, Intercol, kuvaamaan järjestelmän moduulien suhdetta ja versioita. Ja lopuksi tieto järjestelmän rakentamisesta osista rakennettiin järjestelmään pakottamatta käyttäjää tekemään sitä. Tämän työn jatkona SUCE luotiin seuraamaan eroja toteutusten (versiot, jotka todella tarjoavat koodin määrityksille) ja koostumusten (versiot, jotka määrittelevät uudet alijärjestelmät olemassa olevien osajärjestelmien ryhmiksi) välillä.



LOIPE (Language-Oriented Incremental Programming Environment) -järjestelmässä inkrementaalinen käännös suoritetaan yksittäisen proseduurin tasolla. Tämän lähestymistavan etuna on, että kun proseduuria korjataan paikallisten objektien tai tyyppien tasolla, vain kyseinen proseduuri käännetään uudelleen. Jos määritys muuttuu, kaikki siitä riippuvat menettelyt käännetään uudelleen. Käyttöliittymä LOIPE-järjestelmän kanssa perustuu syntaktisesti suuntautuneeseen muokkausalijärjestelmään ALOE (A Language-Oriented Editor). Tämän osajärjestelmän kehittämisen tarkoituksena oli tutkia mahdollisuuksia luoda ja käyttää syntaktisesti suuntautuneita editoreja ohjelmointiympäristöjen perustana.

Viime vuosien ohjelmointiteknologian kirjallisuuden analyysi osoittaa, että monimutkaisten ja merkittävien ohjelmistojärjestelmien teollisen kehittämisen ja toteutuksen teknologiassa on uusi ala. CASE-tekniikkaa(Computer Aided Software Engineering).

Aluksi CASE-teknologia ilmestyi teollisten tietojenkäsittelyjärjestelmien luomiseen liittyvissä projekteissa. Tämä seikka jätti jälkensä CASE-teknologian työkaluihin, joissa eniten huomiota kiinnitettiin ainakin varhaisissa CASE-järjestelmissä tietovirtojen suunnittelun tukemiseen. Tällä hetkellä keskittyminen tietojenkäsittelyjärjestelmiin on siirtymässä pois, ja CASE-teknologian työkalut ovat yhä monipuolisempia.

Kaikki CASE-teknologian tukityökalut on jaettu kahteen suureen ryhmään: CASE-työkalusarjat Ja CASE-Työpöydät. Näille termeille ei ole hyviä venäläisiä vastineita. Ensin mainittuja kutsutaan kuitenkin usein ”työkalulaatikoiksi” (kehittäjäpaketit, teknologiapaketit) ja jälkimmäisiä ”ohjelmiston tuotantokoneiksi” (tuotantolinjoiksi).

A-priory CASE-Toolkit - kokoelma integroituja ohjelmistotyökaluja, jotka tarjoavat automaattista apua samantyyppisten ongelmien ratkaisemisessa ohjelmien luontiprosessissa.

Tällaiset paketit käyttävät yhteistä "varastoa" kaikille projektin teknisille ja hallinnollisille tiedoille (arkisto), on varustettu yhteisellä käyttöliittymällä ja yhtenäisellä käyttöliittymällä paketin yksittäisten työkalujen välillä. Tyypillisesti CASE-Toolkit keskittyy tukemaan yhden ohjelmatuotannon vaiheen tai yhden tyyppisen sovellusongelman kehittämistä.

Kaikki yllä oleva pätee myös CASE-WorkBenchiin. Mutta tässä lisäksi tarjotaan automaattista tukea ratkaistavien ohjelmistotuotannon tehtävien analysointiin, mikä perustuu yleisiin oletuksiin tällaisten toimintojen prosessista ja tekniikasta; Työtulosten automaattista siirtoa vaiheesta toiseen tuetaan suunnitteluvaiheesta alkaen ja päättyen luodun ohjelmistotuotteen hävittämiseen ja sen ylläpitoon.

Täten, CASE-WorkBench on luonnollinen "sulkeminen" ohjelmistojen kehittämisen, toteutuksen ja ylläpidon teknologialle.

Tällä hetkellä "tyypillisessä" CASE-teknologian tukijärjestelmässä on kuvan 2 mukaiset toiminnot. 6.4

Riisi. 6.4 Tyypillisen CASE-teknologian tukijärjestelmän toimivuus

Kuten tästä H-kaaviosta seuraa, CASE-ympäristön tulee tukea kaikkia ohjelmistojärjestelmien luomisprosessien kehittämisen ja ylläpidon päävaiheita. Tällaisen tuen taso vaihtelee kuitenkin huomattavasti. Jos esimerkiksi puhumme analyysi- ja suunnitteluvaiheista, useimmat työkalupaketit tukevat näyttö- ja raportointilomakkeita, prototyyppien luomista ja virheiden havaitsemista. Merkittävä osa näistä varoista on tarkoitettu tietokoneille. Monet tukevat laajalti käytettyjä menetelmiä, kuten DeMarco tai Gane/Sarson rakenneanalyysi, Yourdan/Jackson rakennesuunnittelu ja monet muut. Tietojärjestelmien luomiseen on erikoistuneita kehityspaketteja, esimerkiksi Ana Tool (Advanced Logical Software) Macintoshille; CA-Universe/Prototype (Computer Associates International) PC:lle. On olemassa CASE-ympäristöjä, jotka tukevat reaaliaikaisten järjestelmien kehitystä.

Ohjelmistokehittäjillä on kaksi arviota tästä lähestymistavasta: jotkut heistä uskovat, että CASE-tekniikka muuttaa radikaalisti ohjelmistokehityksen ja -toiminnan prosesseja, toiset kiistävät tämän ja jättävät vain rutiinityön automatisoinnin CASE-työkaluille. Kirjallisuuden analyysi osoittaa kuitenkin, että CASE-työkalut edelleen "siirtävät" ohjelmistokehitystekniikoita projektinhallinnasta prototyyppien tekniikkaan. Ja tämä muutos on mielestämme erittäin tärkeä trendi nykyaikaisessa ohjelmointitekniikassa.

Aiheeseen liittyviä julkaisuja