Finale WorldSkills, sviluppo di soluzioni IT per le aziende: cos'è, come è successo e perché i programmatori 1C hanno vinto lì

Finale WorldSkills, sviluppo di soluzioni IT per le aziende: cos'è, come è successo e perché i programmatori 1C hanno vinto lì
Competenze mondiali è un movimento internazionale che organizza competizioni professionali per giovani di età inferiore ai 22 anni.

La finale internazionale si tiene ogni due anni. Quest'anno la sede finale è stata Kazan (l’ultima finale è stata nel 2017 ad Abu Dhabi, la prossima sarà nel 2021 a Shanghai).

I WorldSkills Championships sono i più grandi campionati mondiali di abilità professionali. Hanno iniziato con le professioni dei colletti blu, e negli ultimi anni è stata prestata sempre più attenzione alle “professioni del futuro”, comprese le discipline informatiche, per le quali al campionato di Kazan è stato assegnato un enorme cluster separato.

Finale WorldSkills, sviluppo di soluzioni IT per le aziende: cos'è, come è successo e perché i programmatori 1C hanno vinto lì

Nel blocco IT esiste una competenza (uno “sport” specifico) chiamata “Soluzioni software IT per le aziende”.

In ogni competizione, l'elenco consentito degli strumenti utilizzati è limitato. E se, ad esempio, per la "progettazione del paesaggio" l'elenco dei possibili strumenti è limitato (ovviamente, senza indicare un produttore o un colore espliciti), allora nella competenza "Soluzioni software per le aziende" l'elenco delle tecnologie accettate che i partecipanti possono utilizzare è strettamente limitato, indicando tecnologie e piattaforme specifiche (.NET e Java con un insieme specifico di framework).

La posizione di 1C su questo tema è la seguente: la tecnologia dell'informazione è un'area molto dinamica, nuove tecnologie e strumenti di sviluppo appaiono costantemente nel mondo. Dal nostro punto di vista è corretto consentire agli specialisti di utilizzare gli strumenti con cui desiderano e sono abituati a lavorare.

Nell’autunno del 2018, il management di WorldSkills ci ha ascoltato. Ora dovevamo testare la metodologia per incorporare le nuove tecnologie nelle competizioni. Non è semplice.

La piattaforma 1C:Enterprise è stata inclusa nell'elenco delle infrastrutture del campionato di Kazan ed è stata organizzata una piattaforma sperimentale per soluzioni software IT per aziende Sandbox.

Finale WorldSkills, sviluppo di soluzioni IT per le aziende: cos'è, come è successo e perché i programmatori 1C hanno vinto lì

Si ricorda che la lingua ufficiale del campionato è l'inglese. Anche tutto il materiale con i risultati della risoluzione dei compiti (codici sorgente, documentazione di accompagnamento, interfacce software) doveva essere trasmesso in questa lingua. Nonostante i dubbi di alcuni (ancora!), in 1C puoi scrivere in inglese.

Finale WorldSkills, sviluppo di soluzioni IT per le aziende: cos'è, come è successo e perché i programmatori 1C hanno vinto lì

Al concorso in questo sito hanno preso parte 9 giovani ragazzi provenienti da 8 paesi (Filippine, Taiwan, Corea, Finlandia, Marocco, Russia, Kazakistan, Malesia).

La giuria, composta da un team di esperti, era presieduta da un esperto filippino, Joey Manansala.

Finale WorldSkills, sviluppo di soluzioni IT per le aziende: cos'è, come è successo e perché i programmatori 1C hanno vinto lì

Erano rappresentati esperti provenienti da Finlandia, Emirati Arabi Uniti, Costa Rica, Corea, Russia e Taiwan.

Separatamente, notiamo che i partecipanti provenienti dalla Russia (Pavkin Kirill, Sultanova Aigul) e dal Kazakistan (Vitovsky Ludwig) hanno deciso di utilizzare la piattaforma 1C:Enterprise come parte del concorso. Il resto dei partecipanti ha utilizzato .NET per desktop e Android Studio per lo sviluppo mobile. È interessante notare che i partecipanti che hanno scelto 1C sono molto giovani (Kirill è uno studente in una scuola a Stavropol, quest'anno è entrato in 11a elementare, Aigul è uno studente universitario, Kazan, Tatarstan), mentre i loro avversari erano molto più esperti ( ad esempio, un partecipante dalla Corea - vincitore del campionato WorldSkills 2013 a Lipsia; tutti hanno esperienza nella partecipazione a WorldSkills e diversi anni di esperienza professionale nel settore).

Considerando che durante la competizione i partecipanti hanno utilizzato diverse tecnologie moderne, abbiamo avuto la possibilità di testare la piattaforma 1C:Enterprise in condizioni reali di combattimento, per confrontare sia la qualità delle soluzioni ottenute con il suo ausilio sia la velocità di sviluppo raggiunta con il suo utilizzo.

Separatamente, notiamo che nell'ambito della speciale piattaforma IT Software Solutions for Business Sandbox, i partecipanti hanno completato gli stessi compiti dei partecipanti alla principale piattaforma IT Software Solutions for Business.

Il compito in sé è un compito complesso per automatizzare una determinata attività; quest'anno l'esempio di un'azienda è stata la società fittizia KazanNeft.

leggenda

Kazan Oil è una delle più grandi imprese petrolifere della Repubblica del Tatarstan, che opera come attore del mercato nazionale e come marchio riconosciuto a livello internazionale in questo campo. La sede centrale dell'azienda, specializzata nell'esplorazione di giacimenti, produzione, produzione, raffinazione, trasporto, vendita e distribuzione di petrolio, prodotti petroliferi e gas naturale, si trova a Kazan (Russia).

Finale WorldSkills, sviluppo di soluzioni IT per le aziende: cos'è, come è successo e perché i programmatori 1C hanno vinto lì

Poiché l'azienda sta attuando una strategia di rapida espansione e creazione di nuovi uffici in tutta la Russia, la direzione dell'azienda ha deciso di introdurre un nuovo software di automazione aziendale finalizzato al mantenimento e alla gestione di determinate operazioni.

Condizioni del campionato

I compiti sono stati assegnati ai partecipanti sotto forma di moduli (sessioni) con l'obbligo di completarli in un tempo limitato. C'erano 7 moduli in totale. Tre sessioni da risolvere su desktop – 2.5 ore ciascuna. Tre sessioni: sviluppo client-server, in cui il client era un'applicazione mobile e la comunicazione tra client e server veniva effettuata tramite WEB-API. Ci sono volute 3.5 ore. Ultima sessione: attività di reverse engineering del software esistente, 2.5 ore. Nell'ambito del reverse engineering, i partecipanti dovevano, sulla base delle informazioni fornite loro, progettare la struttura del database dell'applicazione (costruendo un diagramma ER), analizzare gli scenari di utilizzo del sistema (costruendo un diagramma dei casi d'uso) e anche sviluppare e progettare l'interfaccia della soluzione software in base ai requisiti funzionali forniti.

Le principali piattaforme di sviluppo utilizzate sono state .NET (C#) e Java (incluso Android Studio per lo sviluppo mobile). Il SandBox sperimentale utilizzava .NET, Java e 1C:Enterprise versione 8.3.13.

Alla fine di ogni sessione, gli esperti hanno valutato il risultato: un progetto realizzabile già pronto che implementa i compiti stabiliti all'inizio della sessione.

La particolarità dei compiti è la loro "vitalità": molti requisiti e tempo limitato. La maggior parte dei problemi non sono problemi speciali delle Olimpiadi, ma sono molto vicini ai problemi industriali reali: gli specialisti li affrontano ogni giorno. Ma i compiti sono molti e il tempo è limitato. Il partecipante deve risolvere il numero massimo di problemi che avranno il massimo beneficio per l'azienda. Non è affatto un dato di fatto che un compito complesso dal punto di vista algoritmico avrà più peso di uno elementare. Ad esempio, per un'azienda è più importante creare un sistema contabile funzionante composto da tre tabelle che un bellissimo modulo di reporting con algoritmi complessi, che senza queste tabelle è completamente inutile.

Finale WorldSkills, sviluppo di soluzioni IT per le aziende: cos'è, come è successo e perché i programmatori 1C hanno vinto lì

Abbiamo chiesto al vincitore del concorso, un partecipante russo, Kirill Pavkin, di raccontarci di più su quali fossero i compiti e come ha affrontato la loro soluzione.

Finale WorldSkills, sviluppo di soluzioni IT per le aziende: cos'è, come è successo e perché i programmatori 1C hanno vinto lì

Di seguito è riportata una descrizione del compito, la storia di Kirill su come ha risolto il compito. Abbiamo anche chiesto a Vitaly Rybalka, dipendente di 1C e uno degli esperti di IT Solutions for Business Sandbox, di commentare le soluzioni di Kirill.

Nell'ambito dell'incarico era necessario automatizzare le attività di diverse tipologie di utenti:

  • Responsabile della contabilità del patrimonio aziendale
  • Responsabile delle riparazioni straordinarie e della manutenzione programmata degli asset aziendali
  • Responsabili acquisti componenti e materiali di consumo
  • Divisioni di esplorazione e produzione petrolifera
  • Il top management aveva bisogno di report analitici

Sessione 1

Dal punto di vista degli asset (ad esempio una flotta di veicoli), è stato necessario implementarne la contabilità (stabilirne di nuovi, modificare quelli attuali), ricerca rapida e filtri di vario tipo per la visualizzazione delle informazioni, spostamento di asset tra le divisioni dell'azienda e gruppi di beni stessi. Conserva una cronologia di tali movimenti e fornisci analisi su di essi in futuro. La contabilità patrimoniale è stata implementata principalmente per i gruppi di utenti mobili.

Finale WorldSkills, sviluppo di soluzioni IT per le aziende: cos'è, come è successo e perché i programmatori 1C hanno vinto lì

Kirill: Un'attività secondaria interessante è stata l'implementazione dei pulsanti nell'elenco delle risorse. Per risolvere questo problema, abbiamo utilizzato un elenco dinamico: scriviamo una richiesta arbitraria e, quando riceviamo dati sul server, assegniamo i collegamenti di navigazione alle immagini dalla libreria di immagini ai campi richiesti.

Per convenzione, le foto possono essere allegate a una risorsa in due modi: scattare una foto (multimedia) e selezionarla dalla galleria (finestra di dialogo di selezione file).

Alcune forme dovevano essere ridisegnate quando lo schermo veniva ruotato:

Finale WorldSkills, sviluppo di soluzioni IT per le aziende: cos'è, come è successo e perché i programmatori 1C hanno vinto lì

Quando si modificano i parametri dello schermo, si modifica la visibilità dei gruppi di pulsanti.

Attività divertenti ma semplici includono filtri in un elenco dinamico, ricerca in due campi (numero e nome) e generazione di un numero di serie della risorsa.

Commento dell'esperto: dal punto di vista della soluzione sulla piattaforma 1C:Enterprise il compito è abbastanza chiaro. Oltre alla realizzazione vera e propria dell'applicazione mobile, è stato necessario occuparsi del trasferimento dei dati dal “server” DBMS (MS SQL sul desktop) all'applicazione mobile e viceversa. A tale scopo, nell'“applicazione proxy” desktop sono stati utilizzati i meccanismi delle fonti di dati esterne e dei servizi http. Per la piattaforma mobile stessa, la visualizzazione delle immagini in un elenco dinamico presentava una maggiore complessità.

Sessione 2

Era necessario istituire una gestione della riparazione dei beni della Società. Nell'ambito di questo compito, era necessario mantenere un elenco delle richieste di riparazione (per dipartimenti e gruppi), tenere conto delle priorità per l'urgenza delle riparazioni, pianificare un programma di riparazione in base alle priorità, ordinare i componenti necessari e prendere conto di quelli esistenti. Un compito secondario interessante era che alcuni componenti avessero una data di scadenza; se una parte è già stata ordinata per un determinato bene e la sua scadenza non è scaduta, per questo bene non è necessario acquistare nuovamente la stessa parte. L'interfaccia di riparazione è stata sviluppata per la componente desktop del software dell'azienda.

È stato inoltre necessario creare un modulo di autorizzazione non banale per due ruoli: il responsabile e il responsabile del servizio. La particolarità è che dopo l'autorizzazione è necessario selezionare automaticamente uno dei ruoli.

Finale WorldSkills, sviluppo di soluzioni IT per le aziende: cos'è, come è successo e perché i programmatori 1C hanno vinto lì

Di seguito si riporta il modulo di elenco a disposizione del responsabile:

Finale WorldSkills, sviluppo di soluzioni IT per le aziende: cos'è, come è successo e perché i programmatori 1C hanno vinto lì

Kirill: qui è possibile evidenziare solo l'evidenziazione delle richieste di servizio in sospeso. Risolto con la formattazione condizionale in un elenco dinamico.

Facendo clic sul pulsante nella parte inferiore dello schermo, l'utente può accedere al seguente modulo:

Finale WorldSkills, sviluppo di soluzioni IT per le aziende: cos'è, come è successo e perché i programmatori 1C hanno vinto lì

Dal punto di vista 1C, non c'è nulla di complicato in questa forma.

Di seguito il modulo a disposizione del responsabile del servizio:

Finale WorldSkills, sviluppo di soluzioni IT per le aziende: cos'è, come è successo e perché i programmatori 1C hanno vinto lì

Questo modulo è ordinato per priorità e data di richiesta. Cliccando sul pulsante sottostante l'utente potrà accedere al form della richiesta selezionata:

Finale WorldSkills, sviluppo di soluzioni IT per le aziende: cos'è, come è successo e perché i programmatori 1C hanno vinto lì

Oltre all'infallibilità, questo modulo suggeriva di implementare un elenco di pezzi di ricambio per le riparazioni. L'attività secondaria è interessante perché le parti hanno una data di scadenza. Ciò significa che se si è già verificata un'emergenza con questo bene e ne è stata ordinata una parte, il cui periodo di validità non è scaduto, allora può essere riutilizzato. Questo dovrebbe essere mostrato all'utente.

Commento dell'esperto: qui lo stesso Kirill ha posizionato correttamente gli accenti. Dal punto di vista dell'implementazione sulla piattaforma 1C:Enterprise non c'è nulla di estremamente complicato. Erano necessarie un'analisi attenta delle condizioni per la contabilità e l'utilizzo dei pezzi di ricambio e l'attuazione competente dell'attività nel suo insieme. Inoltre, era necessario registrare adeguatamente le richieste di servizio. La difficoltà principale era solo la pressione temporale di 2.5 ore.

Inoltre, come nello sviluppo mobile, il partecipante doveva acquisire con competenza i dati da un DBMS esterno (MS SQL).

Sessione 3

Per la manutenzione (manutenzione) è stato proposto di implementare un servizio di pianificazione a lungo termine. Una caratteristica interessante qui era l'obbligo di creare un programma di manutenzione per le risorse secondo i tempi, ad esempio ogni due mesi il 3. Allo stesso modo, secondo alcuni indicatori quantitativi, ad esempio secondo il contachilometri di un'auto (cambio dell'olio ogni 5000 km, sostituzione dei pneumatici ogni 20000 km). Il responsabile della manutenzione dovrebbe aver ricevuto una comoda applicazione mobile che visualizzi dinamicamente un elenco di manutenzioni scadute, attuali e completate per un periodo specificato. Inoltre, ogni tipo di manutenzione doveva essere dipinta a colori secondo regole appositamente concordate. L'applicazione mobile avrebbe dovuto garantire la creazione di nuovi programmi di manutenzione e la marcatura di quelli già eseguiti direttamente nelle officine con il tempestivo aggiornamento di tali informazioni sul server.

Finale WorldSkills, sviluppo di soluzioni IT per le aziende: cos'è, come è successo e perché i programmatori 1C hanno vinto lì

Kirill: Esistono due tipi di riparazioni: basate sul tempo e basate sull'esecuzione. La variabilità è consentita all'interno di ciascuno. Ad esempio, secondo il piano, le riparazioni dovrebbero avvenire ogni venerdì, il 13 del mese o ogni 20,000 chilometri. Un'attività è considerata completata se è presente un segno di spunta alla sua destra.

È stata fornita una condizione per ordinare le attività nell'elenco. Inoltre, ciascuna linea dovrebbe essere evidenziata a colori a seconda delle condizioni.

Cliccando sul pulsante qui sotto è possibile creare un nuovo piano di servizi:

Finale WorldSkills, sviluppo di soluzioni IT per le aziende: cos'è, come è successo e perché i programmatori 1C hanno vinto lì

I campi obbligatori vengono visualizzati in base al tipo di grafico selezionato. Se abbiamo selezionato un programma orario settimanale, allora ci verranno mostrati due campi: il numero della settimana e il giorno della settimana. Ad esempio, il martedì ogni 3 settimane.

Commento dell'esperto: come nel precedente sviluppo mobile sulla piattaforma 1C:Enterprise, qui il compito è suddiviso globalmente in 2 componenti: comunicazione con il "server" tramite web-api e visualizzazione competente di un elenco dinamico con progettazione condizionale e filtraggio (selezione) di dati. Inoltre, è stato interessante implementare l'obbligo di contabilizzare le riparazioni sia per periodo che per indicatore quantitativo.

Sessione 4

Per i componenti e i materiali di consumo è stato necessario tenere conto delle scorte, pianificare le spese e gli acquisti futuri. Inoltre, qui è apparsa la contabilità batch, ma non per tutte le merci. Tutto ciò doveva essere gestito all'interno di più magazzini, comprese ricevute, spese e movimenti. Secondo i termini dell'incarico, era necessario garantire il controllo dei saldi ed evitare conflitti quando si lavora con le scorte attuali. I responsabili degli acquisti lavorano nella versione desktop del software.

Il modulo principale è mostrato di seguito:

Finale WorldSkills, sviluppo di soluzioni IT per le aziende: cos'è, come è successo e perché i programmatori 1C hanno vinto lì

Kirill: Oltre all'ordinamento in base alla condizione, è stato proposto di dare all'utente la possibilità di ordinare in modo casuale. Su 1C non devi nemmeno pensarci. Il campo con la quantità di pezzi deve essere evidenziato in verde per le fatture.

In questa sessione è stato chiesto loro di controllare la merce rimanente nei magazzini. Pertanto, il messaggio corrispondente dovrebbe essere visualizzato quando si tenta di eliminare la fattura. Qui ricordiamo l'esame di specialista della piattaforma. La forma della fattura è la seguente:

Finale WorldSkills, sviluppo di soluzioni IT per le aziende: cos'è, come è successo e perché i programmatori 1C hanno vinto lì

Ogni parte ha una caratteristica che determina se deve essere assegnata a un lotto specifico. Per tali pezzi di ricambio è obbligatorio indicare il numero di lotto in tutti i documenti. Questa è una misurazione aggiuntiva quando si monitorano i residui delle parti. Possono anche essere spostati tra magazzini:

Finale WorldSkills, sviluppo di soluzioni IT per le aziende: cos'è, come è successo e perché i programmatori 1C hanno vinto lì

Il modulo differisce dal precedente solo per il fatto che al posto del cliente è necessario indicare il magazzino da cui verrà effettuata la consegna. L'elenco di selezione per il lotto viene compilato automaticamente dopo la selezione della parte. L'utente può generare un report sui saldi dei ricambi:

Finale WorldSkills, sviluppo di soluzioni IT per le aziende: cos'è, come è successo e perché i programmatori 1C hanno vinto lì

Qui possiamo visualizzare la merce rimanente nel magazzino selezionato. Le caselle di controllo a destra del magazzino consentono di configurare il filtraggio e l'ordinamento. L'elenco non prevede una esplicita divisione per lotto per le parti per le quali è richiesta. I saldi per ciascun numero di lotto del pezzo di ricambio selezionato possono essere visualizzati utilizzando il collegamento di navigazione a destra.

Commento dell'esperto: in questa sessione (modulo) è apparsa per la prima volta la contabilità batch. I partecipanti dovevano tenere conto dei materiali di consumo e delle merci non solo da soli, ma anche per lotto. In generale, il compito è perfetto per la piattaforma 1C:Enterprise, ma tutto doveva essere sviluppato da zero e completato in 2.5 ore.

Sessione 5

Nella quinta sessione ci è stata assegnata la funzionalità di gestione dei pozzi. Per i gruppi di esplorazione era necessario creare un'applicazione mobile che tenesse conto dei pozzi di produzione di petrolio o gas. Qui è stato necessario ricevere un elenco dei pozzi attuali dal server e visualizzare graficamente il pozzo selezionato per strati (terreno, sabbia, pietra, petrolio), tenendo conto della profondità di ciascuno strato. Inoltre, l'applicazione doveva consentire l'aggiornamento delle informazioni sul pozzo e l'aggiunta di nuovi pozzi. Per questa applicazione, il cliente ha impostato condizioni operative speciali nelle modalità offline e online (controllo della comunicazione con il server), controllando la comunicazione con il server ogni 5 secondi e modificando la funzionalità dell'applicazione in base alla disponibilità del server.

Finale WorldSkills, sviluppo di soluzioni IT per le aziende: cos'è, come è successo e perché i programmatori 1C hanno vinto lì

Kirill: Quando si seleziona un pozzo viene visualizzato un grafico a barre che evidenzia gli strati fino ai giacimenti di petrolio o gas. Per ogni livello vengono memorizzati il ​​nome, il colore e l'intervallo di occorrenze. A causa delle caratteristiche del design, i diagrammi integrati nella piattaforma non aiutano, ma il documento del foglio di calcolo affronta perfettamente l'attività. I pozzi possono essere creati e modificati:

Finale WorldSkills, sviluppo di soluzioni IT per le aziende: cos'è, come è successo e perché i programmatori 1C hanno vinto lì

A parte la protezione multipla infallibile, non c'era nulla di interessante in questo modulo.
Successivamente, è stato suggerito di controllare la connessione al server. Proviamo a connetterci ogni 5 secondi. Se non funziona, limitiamo la funzionalità dell'applicazione e visualizziamo un messaggio.

Commento dell'esperto: Il compito di questa sessione è interessante soprattutto per le sue capacità grafiche. I partecipanti che utilizzano la piattaforma 1C:Enterprise hanno risolto il problema in due modi diversi: alcuni utilizzando un meccanismo di diagrammi, altri utilizzando un foglio di calcolo. Ogni metodo ha i suoi pro e contro. Come parte della decisione del campionato WorldSkills, il tempo è stato fondamentale (ricordate ancora il limite di tempo). Un compito interessante separato è eseguire il ping del server ogni 5 secondi e modificare il comportamento dell'applicazione mobile in base alla disponibilità o indisponibilità del server.

Sessione 6

È stato proposto di creare uno spazio di lavoro per il top management – ​​Dashboard. Su uno schermo era necessario visualizzare in forma grafica e tabellare gli indicatori generali di performance dell'azienda per un determinato periodo. Il modulo principale è il resoconto dei costi:

Finale WorldSkills, sviluppo di soluzioni IT per le aziende: cos'è, come è successo e perché i programmatori 1C hanno vinto lì

Oltre alla Dashboard, è stato necessario implementare la distribuzione dei pezzi di ricambio per la riparazione degli asset utilizzando la metodologia FIFO/LIFO/“Cheapest goes first”.

Durante la distribuzione è stata presa in considerazione la contabilità batch, sono stati utilizzati il ​​controllo del saldo e la protezione contro azioni di utenti non autorizzati (“protezione dagli sciocchi”).

Kirill: Per risolvere sono state utilizzate tabelle di valori con generazione software di colonne, poiché può essercene un numero arbitrario:

  • La prima tabella è responsabile dei costi totali dei dipartimenti per mese. Le divisioni più redditizie e non redditizie sono evidenziate rispettivamente in rosso e verde.
  • La seconda tabella mostra le parti più costose e utilizzate più frequentemente per ogni mese. Se sono presenti più parti che soddisfano i criteri, devono essere visualizzate in una cella, separate da virgole.
  • I cespiti più costosi (in termini di costi dei pezzi di ricambio) vengono visualizzati nella prima riga della terza tabella. La seconda riga visualizza la divisione a cui appartiene il bene sopra indicato. Se sono presenti due asset più costosi con gli stessi costi, devono essere visualizzati nella stessa cella, separati da virgole.

I diagrammi sono stati visualizzati utilizzando i meccanismi integrati della piattaforma e compilati a livello di codice utilizzando query.

È stato inoltre proposto di attuare il sostegno al multilinguismo. Il programma carica file XML con la localizzazione degli elementi dell'interfaccia e il modulo deve essere ridisegnato quando si seleziona una lingua nell'elenco a discesa.

Quando fai clic sul pulsante nell'angolo in basso a sinistra dello schermo, si apre il modulo di gestione dell'inventario:

Finale WorldSkills, sviluppo di soluzioni IT per le aziende: cos'è, come è successo e perché i programmatori 1C hanno vinto lì

In questa forma, finalmente iniziamo a spendere parti per le riparazioni. Qui troviamo innanzitutto le parti che ci serviranno per riparare il bene. In base ai campi selezionati e al metodo di distribuzione (FIFO, LIFO o prezzo minimo), vengono visualizzate le corrispondenze trovate o un messaggio se non ci sono corrispondenze. È quindi possibile contrassegnare le parti come destinate alla riparazione di tale risorsa. Il controllo del bilanciamento è rilevante per la sessione corrente. Se abbiamo già assegnato i dettagli, non sarà più possibile trovarli.

Commento dell'esperto: sessione molto interessante. Sfrutta al massimo le capacità della piattaforma 1C:Enterprise: ecco un lavoro competente con tabelle virtuali di registri di accumulazione e un lavoro programmatico con elementi di moduli (prima di tutto - tabelle, in secondo luogo - intestazioni) e diagrammi. E anche LIFO/FIFO durante l'analisi dell'inventario, dell'analisi dei profitti/perdite, ecc.

Sessione 7

Al termine dell'attività (sessione 7), il cliente ha fornito il software (file exe) per le attività del progetto e un breve video su come utilizzarlo. È stato necessario effettuare il reverse engineering e, sulla base di questo, creare 2 diagrammi: un diagramma dei casi d'uso e un diagramma entità-relazione. Inoltre, sono stati avanzati alcuni requisiti per la creazione di software in futuro: era necessario creare un layout dell'interfaccia in base a questi requisiti.

Secondo le condizioni del concorso, per creare i diagrammi era necessario solo MS Visio.

Commento dell'esperto: in questa sessione le funzionalità della piattaforma 1C:Enterprise non sono state praticamente utilizzate. I diagrammi per le condizioni della competizione sono stati creati in MS Visio. Ma un prototipo dell'interfaccia potrebbe essere creato in una base informativa 1C vuota.

Osservazioni generali

All'inizio di ogni sessione è stato proposto di importare i dati utilizzando uno script SQL. Questo è stato lo svantaggio principale dell'utilizzo di 1C rispetto a C#, poiché abbiamo impiegato almeno mezz'ora a distillare i dati in origini dati esterne, a creare le nostre tabelle e a spostare righe da origini esterne nelle nostre tabelle. Il resto doveva semplicemente fare clic sul pulsante Esegui in Microsoft SQL Studio.

Per ovvi motivi, archiviare i dati su un dispositivo mobile non è una buona idea. Pertanto, durante le sessioni mobili abbiamo creato una base server. Hanno archiviato i dati lì e hanno fornito l'accesso ad essi tramite servizi http.

Commento dell'esperto: l'equilibrio 1C/non-1C è interessante qui - mentre i programmatori 1C:Enterprise hanno trascorso molto tempo connettendosi a un DBMS esterno (Kirill lo ha menzionato separatamente sopra), gli sviluppatori C#/Java (Android Studio per lo sviluppo mobile) hanno dedicato tempo ad altre aree – interfacce, scrivendo più codice. Pertanto, i risultati di ogni sessione erano imprevedibili ed estremamente interessanti per tutti gli esperti. E questo intrigo è rimasto fino alla fine: basta guardare il tavolo finale dei vincitori con la distribuzione dei punti.

Finale WorldSkills, sviluppo di soluzioni IT per le aziende: cos'è, come è successo e perché i programmatori 1C hanno vinto lì
Kirill ha finito la storia :)

In conclusione, va ricordato che l'esecutore non aveva bisogno di "programmare semplicemente l'attività secondo le specifiche tecniche": doveva analizzare l'attività, selezionare i blocchi per l'implementazione delle sottoattività, progettarli e decidere esattamente cosa sarebbe stato in grado di attuarlo nel tempo estremamente breve assegnato. Per tutti e 4 i giorni ho dovuto agire sotto forte pressione di tempo, spesso iniziando da zero ogni sessione successiva. Anche uno specialista per adulti con molti anni di esperienza nel settore avrà grandi difficoltà a completare il compito assegnato per la sessione al 100% entro il tempo assegnato.

Un discorso a parte merita il sistema di valutazione adottato.

Per ogni sessione, gli autori dei task sviluppano un complesso sistema di criteri, tra cui il controllo della funzionalità, del corretto funzionamento, dei requisiti per l'interfaccia dell'applicazione, e anche seguendo una guida di stile appositamente fornita ai partecipanti dall'azienda per la quale stanno sviluppando le loro soluzioni.

I criteri di valutazione sono molto dettagliati: con il costo totale dell'attività della sessione pari a decine di punti, il soddisfacimento di alcuni criteri può aggiungere decimi di punto al partecipante. Ciò raggiunge un livello estremamente elevato e oggettivo di valutazione dei risultati di ciascun partecipante al concorso.

Giudizio

I risultati finali sono stati impressionanti.

In un'aspra lotta, ha vinto Kirill Pavkin dalla Russia, che ha utilizzato la piattaforma 1C:Enterprise. Kirill ha 17 anni, è di Stavropol.

Letteralmente decimi di punto separavano il vincitore dagli inseguitori. Il secondo posto è stato preso da un partecipante di Taiwan. La tabella complessiva dei primi sei risultati si presenta così:

Finale WorldSkills, sviluppo di soluzioni IT per le aziende: cos'è, come è successo e perché i programmatori 1C hanno vinto lì

Naturalmente, Kirill ha vinto grazie al suo talento, conoscenza e abilità.

Tuttavia, notiamo che tutti e tre i partecipanti che hanno utilizzato la piattaforma 1C:Enterprise come strumento sono stati inclusi tra i primi cinque, il che è una conferma incondizionata del livello mondiale della tecnologia 1C:Enterprise.

A seguito dei risultati del concorso, i vincitori sono stati premiati presso il media center di KazanExpo, i ragazzi hanno ricevuto medaglie d'oro puro (in base al loro posto) e premi in denaro. I ragazzi hanno anche ricevuto certificati che consentono loro di svolgere uno stage presso 1C.

Finale WorldSkills, sviluppo di soluzioni IT per le aziende: cos'è, come è successo e perché i programmatori 1C hanno vinto lì

Fonte: habr.com

Aggiungi un commento