ecosmak.ru

Diagrama structurală a utilizării pachetului software. Diagrama bloc a programului

În concept structuri de program (program structura) include compoziția și descrierea legăturilor tuturor modulelor care implementează funcțiile independente ale programului și descrierea purtătorilor de date de intrare și de ieșire, precum și a datelor implicate în schimbul dintre subrutinele individuale.

Pentru a dezvolta programe mari și complexe, un programator trebuie să stăpânească tehnici speciale pentru obținerea unei structuri de program raționale, care oferă o reducere de aproape două ori a cantității de programare și o reducere multiplă a

Subordonarea modulelor de program se reflectă în schema ierarhică. Cu toate acestea, acestea din urmă nu reflectă ordinea în care sunt apelate sau modul în care funcționează programul. Diagrama ierarhică poate arăta ca cea prezentată în Fig. 5. De obicei este completată de decodarea funcțiilor realizate de module.

Înainte de a întocmi diagrama ierarhică, este indicat să se întocmească specificațiile externe ale programului și să se întocmească descrierile funcționale ale programului împreună cu descrierea variabilelor purtătoare de date. O atenție deosebită trebuie acordată ierarhiei tipurilor de date structurate și comentariilor acestora.

Împărțirea programului în subprograme se realizează după principiul de la general la particular, mai detaliat. Procesul de scriere a unei descrieri funcționale și de întocmire a diagramei ierarhice este iterativ, iar alegerea cea mai bună opțiune este multicriterială. Dezmembrarea ar trebui să ofere o comandă convenabilă pentru punerea în funcțiune a pieselor.

Diagramei ierarhice i se poate da orice tipar topologic. Fragmente cu apeluri verticale pot fi convertite în apeluri de același nivel prin introducerea unui modul suplimentar, care poate să nu îndeplinească nicio funcție utile din punct de vedere al algoritmului programului. Funcția unui nou modul poate fi doar monitorizarea, adică apelarea altor module într-o anumită ordine.

Fragmente cu apeluri orizontale la un nivel pot fi convertite în apeluri verticale la module de diferite niveluri prin introducerea unor variabile suplimentare care nu au putut fi obţinute prin descompunerea descrierii funcţionale în subfuncţii. Aceste variabile suplimentare sunt de obicei întregi sau booleene și se numesc steaguri, semafore, chei de evenimente. Semnificația lor este de obicei caracterizată de fraza: în funcție de următorul istoric al acțiunilor, efectuați astfel de acțiuni.

În timpul procesului de proiectare, trebuie să faceți mai multe iterații de proiectare, generând de fiecare dată o nouă schemă de ierarhie și să comparați aceste ierarhii în funcție de criteriile date pentru a selecta cea mai bună opțiune.

cheie - valoarea unei variabile folosită pentru a valida autoritatea de a accesa anumite informații sau rutină.

Steag- o variabilă a cărei valoare indică faptul că o componentă hardware sau software este într-o anumită stare sau că o anumită condiție este îndeplinită pentru aceasta. Indicatorul este folosit pentru a implementa ramificarea condiționată și alte procese de luare a deciziilor.

Semafor - tip de date motiv special, care este un mijloc de control al accesului la o resursă critică prin cooperarea proceselor secvențiale.

Doar două operații pot fi efectuate pe un semafor (fără a lua în considerare crearea și anularea): operațiune de așteptare(clasele) și funcţionarea alarmei(eliberare). Semaforul acceptă o valoare întreagă, care nu poate fi negativă. Operația de așteptare decrește valoarea semaforului cu una atunci când se poate face fără a obține o valoare negativă, indicând că este utilizată o resursă liberă. Operația de semnalizare crește valoarea semaforului cu unul pentru a elibera resursa.

Resursa critică O resursă care este utilizată de cel mult un proces la un moment dat. Când sunt necesare mai multe procese asincrone pentru a-și coordona accesul la o resursă critică, se folosește accesul controlat printr-un semafor.

În această metodă, împărțirea unui sistem complex în mai multe subsisteme se numește „ împărțiți și domniți» (divide et impera), descompunere ierarhică sau funcțională etc. În acest caz, principiile de bază sunt:

a) „împarte și cuceri”;

b) Design de sus în jos - de la enunțul general al problemei la sub-sarcini individuale etc.;

c) principiul ordonării ierarhice, care presupune organizarea părților constitutive ale sistemului în structuri arborescente ierarhice cu adăugarea de noi detalii la fiecare nivel.

Proces complex de proiectare softwareîncepe cu o rafinare a structurii sale, adică definiții componente structuraleși legăturile dintre ele. Rezultatul perfecționării structurii poate fi prezentat sub formă de diagrame structurale și/sau funcționale și descrieri (specificații) componente.

Diagrama bloc a software-ului dezvoltat

Structural numiți o schemă care reflectă compoziția și interacțiunea în gestionarea părților software-ului dezvoltate. De obicei, astfel de scheme sunt dezvoltate pentru fiecare program al unui pachet mare, iar lista de programe este determinată prin analizarea funcțiilor specificate în termenii de referință.

Cel mai simplu tip de software este un program care poate include doar subrutine și biblioteci de resurse ca componente structurale. Dezvoltarea diagramei bloc a programului este de obicei realizată prin metoda detalierii pas cu pas.

Componentele structurale ale unui sistem software sau complex pot fi programe, subsisteme, baze de date, biblioteci de resurse etc.

Deci, schema pachetului software demonstrează transferul controlului de la programul dispecer în programul corespunzător, așa cum se arată în Fig. 4.1. Programele complexului, de regulă, sunt slab conectate. Prin urmare, un dispecer este folosit pentru a-și organiza munca în comun.

Orez. 4.1. Un exemplu de diagramă bloc a unui pachet software.

Schema structurala sistem software, de regulă, arată prezența subsistemelor sau a altor componente structurale. Spre deosebire de un complex, părți individuale (subsisteme) ale unui sistem software schimbă intens date între ele și, eventual, cu programul principal. Diagrama bloc a sistemului software, de regulă, nu arată acest lucru, așa cum se poate vedea din Fig. 4.2.


De obicei, este o schemă ierarhică pe mai multe niveluri de interacțiune între subrutinele de control. Pe stadiul inițial diagrama afișează două niveluri de ierarhie, adică arată structura de ansamblu programe. Cu toate acestea, aceeași metodă permite obținerea de diagrame bloc cu o cantitate mare niveluri.


Metoda de pas implementează o abordare de sus în jos și se bazează pe structurile de bază ale programării structurate. Aceasta implică dezvoltarea pas cu pas a algoritmului, așa cum se arată în Figura 4.3. Fiecare pas în acest caz include descompunerea funcției în subfuncții. Deci, în prima etapă, este descrisă soluția sarcinii, evidențiind subsarcinile comune. Pe următorul, subsarcinile sunt descrise în mod similar, în timp ce se formulează elementele nivelului următor. Astfel, la fiecare pas, funcțiile software-ului proiectat sunt rafinate. Procesul continuă până când ajung la subsarcini, algoritmi ale căror soluții sunt evidente.

În acest caz, este necesar, în primul rând, detalierea proceselor de control, lăsând în final rafinarea operațiunilor cu date. Acest lucru se datorează faptului că detalierea cu prioritate a proceselor de control simplifică foarte mult structura componentelor tuturor nivelurilor ierarhiei și face posibilă nu separarea procesului decizional de implementarea acestuia. După ce s-a determinat condiția pentru alegerea unei alternative, modulul care o implementează este apelat imediat.

Diagrama functionala sau schema de date (GOST 19. 701-90) - o diagramă a interacțiunii componentelor software cu o descriere a fluxurilor de informații, compoziția datelor în fluxuri și o indicație a fișierelor și dispozitivelor utilizate. Pentru a descrie aceste scheme, sunt utilizate denumiri speciale stabilite de standard.

Diagramele funcționale sunt mai informative decât cele structurale. Pe fig. 4.4 pentru comparație sunt diagrame funcționale ale sistemelor și sistemelor software.



b)

Orez. 4.4. Exemple de diagrame funcționale: a - un set de programe, b - un sistem software.

Toate componentele diagramelor structurale și funcționale trebuie descrise. Cu o abordare structurată, specificațiile interfeței de interprogramare trebuie elaborate cu atenție, deoarece de ele depind cele mai costisitoare erori.

Proiectarea structurală utilizează trei tipuri principale de modele (diagrame):

1) SADT (Tehnica de Analiză și Proiectare Structurată - metoda analiză structuralăși design) - modele și diagrame funcționale corespunzătoare;

2) DFD (Data Flow Diagrams) - diagrame de flux de date;

3) ERD (Entity-Relationship Diagrams) - diagrame „entity-relationship”.

Model SADT funcțional afișează structura funcțională a obiectului, adică acțiunile pe care le efectuează și conexiunile dintre aceste acțiuni.

Componenta principală a modelului este diagramă . Pe acesta, toate funcțiile și interfețele sunt prezentate sub formă de blocuri și, respectiv, arce. Punctul de conectare al arcului cu blocul determină tipul de interfață. Informații de control incluse în bloc de mai sus. intrare informația în curs de procesare este afișată cu stânga partea blocului și rezultat(ieșire) - cu dreapta. Mecanism(persoană sau sistem automatizat) care efectuează operația este reprezentată printr-un arc inclus în bloc de desubt(Fig. 4.5).

Construcția modelului SADT începe cu reprezentarea întregului sistem sub forma celei mai simple componente - un bloc și arce care descriu o interfață cu funcții în afara sistemului. Apoi acest bloc este detaliat pe o altă diagramă folosind mai multe blocuri conectate prin arcuri de interfață. Noile blocuri definesc principalele subfuncții ale funcției originale, care, la rândul lor, pot fi detaliate și așa mai departe. (vezi figura 4.6).


Orez. 4.6

Diagramele fluxului de date(DFD) sunt principalele mijloace de modelare a cerințelor funcționale pentru sistemul proiectat. Cu ajutorul lor, aceste cerințe sunt prezentate sub formă de ierarhii de componente funcționale (procese) conectate prin fluxuri de date. Scopul principal al acestei reprezentări este de a arăta modul în care fiecare proces își transformă intrările în ieșiri și de a dezvălui relațiile dintre aceste procese.

Principalele componente ale diagramelor de flux de date sunt:

a) entitati externe;

b) sisteme și subsisteme;

c) procese;

d) dispozitive de stocare a datelor;

e) fluxul de date.

entitate externă reprezintă un obiect material sau un individ care este sursă sau receptor de informaţie. Este reprezentat ca un dreptunghi tridimensional cu o inscripție, așa cum se arată în Figura 4.7.

Subsistemul(vezi figura 4.8) sau proces(Fig. 4.9) sunt reprezentate printr-un dreptunghi cu marginile rotunjite. Acesta conține trei câmpuri:

a) numere;

c) Implementare fizică.

Subsistemul și procesul diferă ca nume. Primul conține numele subsistemului, iar al doilea conține verbul care definește ceea ce face procesul.

Orez. 4.8. STI - Inspectoratul Fiscal de Stat

Stocare a datelor este un dispozitiv abstract pentru stocarea informațiilor. Este reprezentat așa cum se arată în Fig. 4.10. Denumirea sa începe cu litera D.

Flux de date pe diagramă este reprezentată printr-o linie care se termină cu o săgeată care arată direcția curgerii. Fiecare flux de date are un nume care reflectă conținutul său.

Un exemplu de diagramă de flux de date este prezentat în fig. 4.11.

O diagramă de flux de date mai complexă este prezentată în fig. 4.12.

Diagramele ER vor fi discutate mai târziu.

În proiectul de curs, pe lângă diagrama funcțională, este necesar să se prezinte algoritmi pentru cele mai complexe funcții (de exemplu, sortarea și căutarea).

După luarea în considerare a cerințelor tehnice pentru software, devine posibilă rafinarea structurii acestuia, adică definirea componentelor structurale și a conexiunilor dintre acestea. Ca urmare a dezvoltării structurii se va obține o diagramă funcțională și o descriere a componentelor.

Dezvoltarea structurii software

Structura software-ului poate fi reprezentată ca o diagramă bloc cu o descriere a componentelor.

Diagrama bloc reflectă compoziția și interacțiunea în gestionarea părților software-ului dezvoltate.

Sistemul constă din trei module software interconectate:

modul cont personal;

Modulul de afișare a orarului este proiectat să primească de la utilizator informații despre programul solicitat și să îl afișeze sau să îl imprime.

Schema bloc completă a software-ului proiectat este prezentată în Figura 2.1.

Figura 2.1 - Schema bloc a software-ului

O examinare detaliată a fiecărui modul ne permite să-l prezentăm sub forma următoarelor elemente:

„Introduceți parametrii cererii” - vă permite să specificați date pentru cerere.

„Afișare pagină de programare” - formarea unei pagini cu datele solicitate pe ecran.

„Formarea documentelor electronice” - formarea de dosare cu datele solicitate.

„Trimiterea programului” - trimiterea datelor cu modificări atunci când se fac modificări.

Elaborarea unei diagrame funcționale

Diagrama funcțională sau diagrama de date (GOST 19.701-90) - o diagramă a interacțiunii componentelor software cu o descriere a fluxurilor de informații, compoziția datelor din fluxuri și o indicație a fișierelor și dispozitivelor utilizate. Pentru a descrie diagramele funcționale, sunt utilizate denumiri speciale stabilite de standard.

Diagramele funcționale sunt mai informative decât cele structurale. Toate componentele diagramelor structurale și funcționale trebuie descrise. Cu o abordare structurală, specificațiile interfețelor interprograme sunt deosebit de atent elaborate, deoarece numărul celor mai scumpe erori depinde de calitatea descrierii lor. Cele mai scumpe sunt erorile găsite în timpul testării complexe, deoarece eliminarea lor poate necesita modificări serioase ale textelor deja depanate.

Astfel, este, de asemenea, împărțit în trei module de program:

modul de afișare a programului;

modul cont personal;

Schema funcțională a software-ului vedere generala prezentat în Figura 2.2.

Figura 2.2 - Schema funcțională a software-ului

Informațiile pe care va funcționa sistemul informațional sunt organizate sub forma unei baze de date create cu ajutorul instrumentelor MySQL (Figura 16).

Figura 16 Schema bazei de date creată folosind MySQL

Formalizarea calculelor (algoritmi de calcul și rezolvare de probleme)

Pentru a obține documentația de ieșire, datele de intrare sunt convertite conform unui anumit algoritm.

La calcularea costului de instalare tavan întins este necesar să completați formularul „Cost”, care conține 3 câmpuri și introducerea datelor: lățimea plafonului, lungimea plafonului, textura materialului. După completarea acestor câmpuri, programul solicită din baza de date MySQL, date privind costul materialului cu această factură. Costul se calculează înmulțind suprafața acoperirii tavanului cu costul materialului pe 1 m2.

În formularul „Cheltuieli”, când dați clic pe butonul „Rămăși”, modulul de program calculează cantitatea de material rămasă în depozit. La completarea a două câmpuri în formularul „Rămășițe”: data primirii materialului, data consumului materialului, datele sunt preluate din baza de date MySQL cu o interogare despre cantitatea de material primit într-o lună dată și cantitatea de consum în această lună. Restul materialului se calculează prin diferența dintre primirea și consumul de material pentru o anumită perioadă de timp.

Diagrama bloc a utilizării pachetului software (arborele de dialog)

Meniul de sistem – este principala formă de dialog în sistemele aplicate de prelucrare a datelor, conținând comenzi concepute pentru a îndeplini sarcini specifice.

Aplicația dezvoltată are un meniu intuitiv. Pentru a lucra cu tabele de baze de date, modulul IS „Managementul întreprinderii” este format din.

După introducerea datelor, este necesar să se ofere utilizatorului posibilitatea de a imprima formularul de certificat și o copie a clientului. această operație trebuie efectuată fără greșeală. Imprimarea se poate face pe două tipuri de imprimante: impact (matrice) și inkjet. Ajutorul de imprimare pe imprimantele laser nu este posibil din cauza cerințelor crescute pentru calitatea hârtiei. Când imprimați ajutor pe o imprimantă cu matrice de puncte, puteți imprima două copii (ajutor + copie) într-o singură trecere folosind hârtie carbon. O imprimantă cu jet de cerneală trebuie să imprime fiecare copie separat. Prin urmare, este necesar să furnizați un contor modificabil de utilizator pentru numărul de copii sau o funcție specială de setare pentru tipul de imprimantă.

Fig.2 Schema de interacțiune și legături de date

Dezvoltarea unei scheme funcționale a programului.

Compoziția funcțională a programului ar trebui să ofere la maximum setul necesar de capabilități pentru ca casierul să le realizeze atributii oficiale legate de introducerea datelor, înregistrarea tranzacțiilor și pregătirea documentelor de raportare. Pentru a face acest lucru, vom compila o listă aproximativă de funcții care ar trebui implementate în sistemul nostru.

Lista aproximativă a funcțiilor sistemului.

1) Înregistrarea unei operațiuni de schimb

Introducerea datelor privind achiziția de monedă

Introducerea datelor privind vânzarea de monedă

Introducerea datelor despre conversia valutară

・Tipărește referința clientului

2) Vizualizați documentele

· Vizualizați lista documentelor zilei

Vizualizați o listă de documente arhivate

3) Întreținerea directoarelor

· Introducerea datelor prin coduri valorice

· Introducerea datelor pe tipuri de documente

Introducerea datelor prin coduri valutare

Introducerea cursurilor de schimb în funcție de dată

4) Generarea documentelor de raportare

· Tipărirea registrului de numerar valută străină achiziționată pentru ruble numerar;

· Tipărirea registrului de numerar valuta străină vândută pentru ruble numerar;

· Tipărirea registrului de schimb (conversie) valută străină numerar;

5) Alte funcții

Introducerea datelor în câmpul de intrare din director

Conversia unui număr din digital în minuscule (cantitate în cuvinte)

· Modificarea aspectului cursorului

Salvarea datelor în fișiere de arhivă

Această listă acoperă toate procedurile descrise în secțiune proces tehnologic OP și completat cu unele funcții care vor fi necesare în procesul de introducere și corectare a datelor.

Dezvoltarea diagramei bloc a programului.

Schema bloc a pachetului software definește în termeni generali și aspect a sistemului proiectat și a principiilor de interacțiune cu utilizatorul. Schema sistemului proiectat va fi o structură arborescentă ierarhică care descrie procedurile de intrare, procesare și ieșire a datelor. Construirea programelor clasei de informații și referințe conform acestui principiu face destul de ușoară modificarea sistemului în ansamblu și facilitează percepția și înțelegerea principiului programului. Pentru a construi o diagramă bloc, este necesar să se determine ierarhia și conexiunea procedurilor de prelucrare a datelor enumerate mai sus. Este firesc să se stabilească o ierarhie a procedurilor în forma în care au fost descrise în capitolul precedent, întrucât o astfel de schemă corespunde schemei de „importanță” și „utilizabilitate” a procedurilor. Diagrama bloc a programului, ținând cont de toate cele de mai sus, este prezentată în Figura 2.

Dezvoltarea interfeței ecran a programului

Abordări existente în proiectarea interfeței ecranului

Interfața de ecran a programului determină în mare măsură confortul utilizatorului și este unul dintre factorii importanți care afectează eficiența muncii sale. Un program care îndeplinește toate funcțiile care îi sunt atribuite și are viteză mare poate fi complet nepotrivit pentru lucru din cauza unei interfețe de utilizator inacceptabile. Cu doar câțiva ani în urmă, a existat un editor de text care ilustra perfect această abordare a designului software. Este puțin probabil ca cineva să placă un editor de text în care, pentru a insera un caracter într-o linie, trebuie să tastați un cod de comandă de inserare cu o singură literă, numărul liniei care este procesată (din fericire nu este binar), numărul caracter după care va fi introdus noul caracter și acest caracter însuși. Desigur, această abordare este complet inacceptabilă.

Cele mai practice și mai ușor de utilizat sunt sistemele care au o interfață cu ecran construită pe baza unui sistem de meniu pop-up. Cele mai comune în prezent sunt două ideologii (adică aplicații DOS), care includ atât o anumită formă de ferestre pe ecran, cât și o schemă de culori și apariția unor liste pop-up. Acestea sunt mediile de instrumente Borland și Norton Operating Shell de la Symantec. Ambele ideologii prevăd o anumită împărțire a spațiului ecranului în zone sau zone destinate obiectelor și acțiunilor informaționale specifice. Zonele pot fi reconfigurate într-o oarecare măsură la cererea utilizatorului: dimensiunile și poziția de pe ecran sunt modificate. Comenzile de prelucrare a datelor sunt apelate din sistemul de meniu, prezente permanent pe ecran (Borland), sau apelate de tasta funcțională (Symantec).

În ambele cazuri, toate comenzile de sistem sunt distribuite în funcție de caracteristicile lor funcționale în grupuri, iar în meniul principal există

numele efective ale grupurilor de comandă. Prin selectarea unui grup, utilizatorul are acces la lista de comenzi de grup, care poate include și comenzi grupate în grupuri de nivel al doilea etc.

Astfel, este creat un sistem de meniu pop-up pe mai multe niveluri. Folosirea unei astfel de ideologii asigură confortul orientării într-un sistem care are un meniu destul de complex, pe mai multe niveluri, cu multe opțiuni. Desigur, creșterea cuibării și a dimensiunii listelor de selecție ar trebui să aibă limite rezonabile, care, din fericire, sunt sub forma unui spațiu limitat de ecran al monitorului. În majoritatea sistemelor, există și posibilitatea de a personaliza paleta de culori la cererea utilizatorului. Shell-ul de operare Norton oferă o gamă de gamă de selecție din mai multe opțiuni standard, în sistemele Borland vă puteți crea propria gamă de culori, până la cel mai mic detaliu. Vedere aproximativă unele obiecte de ecran sunt prezentate în Fig.4,5.

Alegerea ideologiei interfeței ecranului

Se încarcă...