Program pentru a crea un program de lecție. Problema automatizării complete în crearea unui program școlar

Există opt modificări principale ale programului pentru diferite instituții de învățământ:
. Scoala AVTOR - pentru licee, licee si gimnazii;
. Colegiul AVTOR - pentru colegii, scoli tehnice si scoli profesionale;
. Colegiul de Artă AVTOR - pentru școli de artă și cultură;
. Liceul AVTOR - pentru universitati ( Cu normă întreagă Instruire);
. Liceul Semestrial AVTOR - pentru universităţi (cursuri prin corespondenţă);
. Liceul AVTOR M Semestrial - pentru universități militare;
. Centre educaționale AVTOR - pentru centre de formare, programe educaționale și programe educaționale;
. AVTOR High Shool Pro - pentru universități cu mai multe clădiri academice la distanță, ținând cont de timpul de călătorie dintre ele (forme de studiu cu normă întreagă și cu fracțiune de normă, versiune de rețea).

Istoria creării și dezvoltării sistemului.
. Prima versiune a programului AUTOR-2 (pentru MS DOS) a fost dezvoltată de cercetătorul RSU Igor Gubenko în aprilie 1993. Programul a fost inițial destinat programării la un liceu multidisciplinar la RSU cu studiu intensiv. limbă străină, informatică și multe discipline speciale (unde clasele sunt împărțite în 2-4 subgrupe și pot fi combinate în fluxuri). Deja prima versiune a programului a făcut posibilă construirea de programe corecte.
. Apoi, programul a fost testat în mai multe școli din Rostov-pe-Don. S-a luat în considerare experiența multor directori și specificul programelor diferitelor școli. Programul a fost îmbunătățit semnificativ și implementat pe parcursul a 2 ani în peste zece școli, licee și gimnazii.
. Până în 1996, autorul a reușit să dezvolte un algoritm unic pentru construirea și optimizarea automată a programelor, ceea ce a făcut posibilă creșterea semnificativă a puterii programului. În același an, prima versiune a AUTOR-2 a fost lansată pentru colegii și pentru o mică universitate.
. În 1997-98 autorul dezvoltă și implementează cu succes prima versiune a programului pentru o universitate mare cu mai multe clădiri academice (RGUE „RINH”).
. În 2000, prima versiune WIN a programului AVTOR-2000 a fost lansată pentru toate tipurile de instituții de învățământ.
. În 2001, a fost lansată o versiune a programului cu o interfață în trei limbi: rusă, ucraineană și engleză.
. În 2001 a fost pusă în funcțiune prima versiune universitară pentru învățământ la distanță.
. În 2002, a apărut o versiune de rețea a programului pentru universități cu mai multe stații de lucru și o bază de date comună de audiențe.
. În 2003, AVTOR-2003 a fost integrat cu succes într-un singur pachet cu PPP „Plany” (YURGUES), ceea ce a făcut posibilă automatizarea introducerii bazei de date în program și construirea unui program complet al acestei universități în 2 ore! În YURGUES (Shakhty) există 7 clădiri educaționale, două dintre ele fiind situate departe. Anterior, același program era alcătuit manual de doi metodologi în 2-3 luni.
. În 2004, a fost dezvoltată o versiune a programului AVTOR pentru universitățile militare.
. În 2005, a fost lansată o versiune a AVTOR pentru școlile de cultură și artă, precum și pentru centrele de formare.


Clienții.

În prezent, programul AVTOR este utilizat cu succes de peste trei sute de instituții de învățământ din Rusia, Ucraina, Belarus, țările baltice și Kazahstan. Printre acestea: Gimnaziul Don Real (școala secundară nr. 62), Liceul clasic la Universitatea de Stat Rusă, școala secundară nr. 104, nr. 38, nr. 67, nr. 81, nr. 52, nr. 92, nr. 27, nr. 46, nr. 69, nr. 83 (Rostov-pe-Don), școala secundară nr. 297, nr. 1117 (Moscova), școala secundară nr. 315, nr. 17, Gimnaziul de limbi orientale (Kiev), școala secundară nr. 44 (Zaporozhye), Colegiul Tikhoretsky de Transport Feroviar, Colegiul Pedagogic Beloyarsk, Colegiul de Inginerie Mecanică Rostov, RGUE "RINH", IUBiP, SKAGS, RGASHM, RGSU (Rostov-pe-Don), YURGUES ( Shakhty), RGAU numit după Timiryazev (Moscova), Ministerul Afacerilor Interne al MU al Rusiei (Moscova), Universitatea de Stat Irkutsk, Institutul de Limbi Străine, USPU, USU (Ekaterinburg), SGSEU (Saratov), ​​precum și zeci de alte școli, licee, gimnazii, colegii și universități.

Specificații.
Durata de rulare a programului depinde de mărimea instituției de învățământ și de puterea computerului. Un calcul complet și optimizare a orarului pentru o școală de dimensiuni medii cu date inițiale complexe (40 de clase, 80 de profesori, peste 10 profesori cu fracțiune de normă; două schimburi; deficit de săli de clasă) durează aproximativ 2-3 minute pe un Celeron- computer din 2000.

AVTOR vă permite să:

    construiește un program fără „ok”El„ la ore (grupe de studiu);

    optimizați în program„ferestrele” profesorilor;

    ia în considerare intervalul necesar de zile/ore pentru cursuri, pentru profesori și pentru săli de clasă;

    ia în considerare natura muncii și dorințele atât ale angajaților cu normă întreagă, cât și ale lucrătorilor cu normă parțială;

    plasarea optimă a orelor în sălile de clasă (auditorii), ținând cont de caracteristicile claselor, materii, prioritățile profesorilor și capacitatea sălii de clasă;

    introduceți programul apelurilor;

    instalaretimp de tranziție (timp de tranziție)ezda) între clădirile academice;

    optimizarea numărului de tranziții de la cabinet la cabinăT, și din trup în trup;

    conectați cu ușurință orice clase (grupuri de studiu) în fluxuri atunci când desfășurați oricăror clase;

    împărțiți clasele (grupe de studiu) atunci când desfășurați cursuri într-o limbă străină, educație fizică, muncă, informatică (și orice alte materii) în orice număr de subgrupe (până la zece!);

    introduceți lecții combinate pentru subgrupe (cum ar fi „știința străină/informatică”) la orice materii;

    introduce (pe lângă disciplinele principale) cursuri speciale și opțiuni;

    optimizarea uniformității și intensității muncii a programului;

    introduceți și ajustați ușor și rapid datele sursă;

    au orice număr de opțiuni de program;

    convertiți automat programele atunci când baza de date se modifică;

    ușor de salvat în arhive, copiat și trimis prinE- Poștăbaze de date complete și opțiuni de program (volumul arhivei bazei de date complete a programelor de liceu este de 10-30K, universitate mare - 50-70K);

    faceți rapid toate ajustările necesare la program;

    găsi înlocuitori pentru profesorii absenți temporar;

    controlează automat programul, eliminând orice „suprapuneri” și contradicții;

    afișați programele sub formă de documente convenabile și vizuale: text,Cuvânt, HTML, precum și fișieredBaseși cărțiexcela;

    postați programe gata făcute retea localași pe paginile publice de internet.

Diferența față de analogi.
O analiză comparativă a activității programului AVTOR și a programelor de la alți dezvoltatori a fost efectuată în mod repetat de specialiști din diverse instituții de învățământ. Rezultatele cercetării sunt publicate pe site-uri de internet renumite, precum și în rapoarte la conferințe și cursuri de master. S-a ajuns la concluzia că AVTOR are cel mai puternic algoritm pentru crearea și optimizarea automată a programelor: lucrând de 10-20 de ori mai rapid decât analogii săi, programul construiește programe mai bune după multe criterii. De exemplu, numărul de „ferestre” din programul profesorilor este de 2-3 ori mai mic decât atunci când se utilizează alte programe.
AVTOR este un program cu capabilități unice. Principalele avantaje în comparație cu programe similare CIS:
. viteza, compactitatea fișierelor de sistem și capacitatea de a lucra în foartemareinstituții de învățământ cu programe complexe;
. nivel inalt automatizare (găzduiește 100% din clasele posibile);
. performanta ridicata:cSistemul vă permite să creați un nou program în timpul unei sesiuni de lucru, apoi să ajustați, să salvați și să imprimați rapid diverse opțiuni de program, modificându-le dacă este necesar pe parcursul anului universitar;
. EDITOR DE PROGRAMARE automat puternic,carevă permite să efectuați cu ușurință ORICE acțiuni cu programul (adăugarea, ștergerea, rearanjarea cursurilor, calcularea și optimizarea programului, vestiarele, înlocuirea profesorilor etc.). În același timp, programul sugerează în mod clar și convenabil diverse opțiuni pentru rearanjamente (modificări) programului și compară calitatea acestora;
. Disponibilitate statistici detaliateși evaluarea obiectivă a calității oricărei opțiuni de program;
. capacitatea de a sprijini orice limbă națională (la cererea clientului).

Adaptarea si configurarea programului.
La cererea clientului, AVTOR este modificat și personalizat pentru a se potrivi condițiilor unei anumite instituții de învățământ (ținând cont de specificul procesului de învățământ, modul de funcționare, forma documentelor etc.).

Descărcați-l pe telefon, astfel încât să nu uitați nimic și să nu întârziați la nimic.

Android

Orarul

Aplicație de control frumoasă și intuitivă viata de scoala. Vă puteți introduce programul, temele, examenele și chiar vacanțele. Aplicația se poate sincroniza cu toate dispozitivele Android, iar în timpul orelor va intra în modul silentios.

Jurnal școlar

În acest jurnal electronic puteți ține un program, indicând numele și numărul de telefon al profesorului, precum și locația lecției. Pentru a vă asigura că nu uitați nimic, aplicația are widget-uri pentru ecranul de pornire al telefonului dvs. De asemenea, este posibil să luați notițe pe subiecte și să le notați. Dar poate cea mai plăcută caracteristică este să tai temele terminate.

LightSchool

Vă permite nu numai să mențineți un program și să înregistrați temele, ci și să urmăriți timpul înainte de începerea sau sfârșitul lecției. O caracteristică specială este prezența materialelor teoretice. Dacă ați uitat brusc cum să găsiți sinusul unui unghi, îl puteți căuta direct în aplicație.

Inscrie-te

Aplicație nu foarte colorată, dar multifuncțională. Puteți crea un program în acesta și îl puteți exporta în calendarul de pe dispozitiv. Puteți vizualiza programul cursului pentru o săptămână sau mai multe deodată și puteți afișa un widget cu mementouri pe ecranul de pornire. În timpul unei lecții, aplicația pornește automat modul silențios și puteți seta date limită pentru teme.

Program – planificator școlar

Esența aplicației: un utilizator își publică programul școlar, astfel încât colegii săi să poată găsi apoi un program de clasă gata făcut. Confortabil! Păcat că încă nu mulți oameni folosesc serviciul. Dar există un widget și un scanner de coduri QR.

iOS

iSchool

Vă permite să creați un program frumos multicolor, indicând sălile în care vor avea loc cursurile. Este convenabil să notați sarcinile: puteți pur și simplu să faceți o fotografie a tablei sau să dictați prin voce. Și încă o funcție super utilă: poți introduce note la materii și poți calcula scorul mediu. Aplicația acceptă limba rusă, sincronizarea cu iCloud funcționează.

iStudiez pro

Vă permite să creați un program cu lecții repetate. Fiecărui subiect i se poate atribui propria culoare - acest lucru va facilita navigarea în program în viitor. Puteți adăuga sărbători și weekenduri în calendar și, de asemenea, puteți salva Informatii utile despre colegii de clasă și profesorii.

Orarul cursurilor

Planificator curcubeu pentru studenți. Setul standard de funcții include un program cu mementouri și o listă de teme. Dar există și caracteristică interesantă: Aplicația funcționează nu numai pe iPhone și iPad, ci și pe Apple Watch. Este convenabil dacă, pe lângă studii, există și sectii sportiveși trebuie să fii la timp peste tot.

Grad Hound

Calendar pentru școlari și elevi cu capacitatea de a marca subiectele după culoare și de a atribui note la materii. Punctul culminant: grafice de timp care arată cât timp veți petrece pe un anumit subiect. Minus: nu acceptă limba rusă.

Programul cursului – Orar

Un alt ajutor pentru elevii lipsiți de organizare. Puteți crea un program de studiu cu săptămâni repetate sau alternante, îl puteți împărtăși prietenilor și puteți nota temele pentru acasă. Datorită widget-ului convenabil, nici măcar nu trebuie să deblocați dispozitivul pentru a vă verifica rapid programul.

Orarul Foxford

Programul cursurilor clasă cu clasă în Foxford Home School și studii externe se află pe site-ul în secțiunea „ Procesul educațional».

Selectați clasa dvs. și faceți clic pe „Mai multe detalii”. Veți vedea în ce zi a săptămânii și la ce oră are loc această sau acea lecție și veți putea introduce programul în planificatorul dumneavoastră electronic.

De asemenea, la începutul anului școlar, elevii primesc orare sub forma unor tabele pdf convenabile.

Toate temele sunt păstrate Cont personal student. Trebuie doar să selectați un număr de curs și lecție.

Tabloul de bord vă va aminti sarcinile noi și deja finalizate. De acolo puteți trece la finalizarea sarcinii cu un singur clic.

Ei bine, dacă un student uită de o lecție sau de teme, i se va aminti imediat de aceasta. Mai fiabil decât orice aplicație! :)

adnotare

Acest articol prezintă cititorului un algoritm unic, recent apărut, pentru compilare orarul școlii. Sunt raportate rezultatele testării singurului program din lume care nu poate crea, dar poate crea un astfel de program într-un mod complet automat. Pe baza rezultatelor a zeci de milioane de teste (orare școlare construite), mitul despre imposibilitatea întocmirii unui orar școlar fără participarea umană este dezmințit. Se fac prognoze pentru dezvoltarea ulterioară a acestui software. Se discută despre modelul de afaceri SaaS pentru utilizarea sa. Pentru a înțelege conținutul principal al articolului, nu este necesară o pregătire matematică specială, așa că articolul se adresează unei game largi de cititori interesați.

1. Introducere

În ultimul deceniu în Federația Rusă Au fost susținute cel puțin o duzină de disertații pe teme legate de sarcina de a întocmi orarele educaționale. În deceniul precedent, numărul disertațiilor susținute nu a fost mai mic. Deși disertațiile sunt susținute în principal pentru titlul de Candidat în Științe Tehnice și sunt luate în considerare problemele întocmirii unui orar de curs pentru o instituție de învățământ superior, totuși, acest fapt indică faptul că tot mai mulți cercetători acordă atenție problemelor întocmirii unui orarul școlii. Poate că acest flux de muncă este asociat cu progresul constant și disponibilitatea universală a tehnologiei de calcul. Într-adevăr, procese cu adevărat uimitoare au loc în fața ochilor noștri. Cu doar douăzeci și cinci de ani în urmă, doar o întreprindere mare, de obicei de apărare, își putea permite să achiziționeze un astfel de computer electronic precum EC1066. Un astfel de computer era amplasat într-o cameră cu o suprafață de până la câteva sute metri patrati, echipat cu un sistem puternic de alimentare neîntreruptibilă și un sistem de suport pentru microclimat. Astfel de calculatoare electronice au fost destinate în primul rând să rezolve probleme științifice și tehnice unice care au avut un impact asupra capacității de apărare a țării. Astăzi mulți oameni au case birouri sunt calculatoare personale. Dar gândește-te la asta. RAM Există de 125 - 250 de ori mai multe astfel de computere personale în comparație cu gigantul menționat mai sus. Performanța este de peste 1000 de ori mai rapidă. Și aceasta nu este o greșeală de tipar. De mai mult de o mie de ori.

2 generații de software de planificare

Primele publicații pe tema folosirii tehnologiei informatice pentru automatizarea pregătirii orelor de curs au apărut la începutul anilor 60 ai secolului precedent, astfel încât sarcina de a crea un program educațional folosind tehnologia computerului are o istorie destul de lungă. Peste aproape 50 de ani de cercetare intensivă, mii de specialiști din întreaga lume au desfășurat o muncă intelectuală enormă. Cu toate acestea, sarcina de a crea orare educaționale, atât atunci, cât și acum, este încă o nucă greu de spart. Nu este deloc surprinzător faptul că programele pentru crearea unui program școlar au apărut și s-au îmbunătățit odată cu dezvoltarea tehnologiei informatice. Prin urmare, să ne întoarcem (în mod firesc într-un stil telegrafic) la perioadele foarte condiționate ale acestei dezvoltări. Fără a intra prea mult în cercetarea istorică și fără a risca să facem o mare greșeală, apariția unui computer (calculator electronic) este posibilă până în 1945. Această apariție (din nou fără a risca multe erori) poate fi atribuită nevoii de calcul militar. Una dintre primele sarcini care au fost rezolvate pe primele computere a fost sarcina de a compila tabele balistice pentru artilerie și aviație. Nu cel mai mic rol în nevoile armatei l-a jucat sarcina de a studia exploziile atomice și termonucleare. Din motivele de mai sus, însuși faptul existenței unui calculator și principiile funcționării acestuia au rămas inițial clasificate. A fost nevoie de aproximativ zece ani pentru a aduce informații despre „caracteristicile tactice și tehnice” ale primelor computere unei game largi de specialiști îngusti - matematicieni implicați în metode numerice. Rezultatul nu a întârziat să apară. Din 1955, a avut loc o creștere explozivă într-o astfel de ramură a cunoștințelor științifice precum matematica aplicată. Sute și mii de probleme practic importante au devenit subiect de cercetare de către matematicieni care folosesc tehnologia de calcul electronică, ceea ce a condus la dezvoltarea unor metode numerice complet noi pentru rezolvarea acestor probleme. Din cauza faptului că costul calculatoarelor era complet incomparabil cu efectul economic pe care acestea l-ar putea aduce pentru o întreprindere industrială civilă, singurii utilizatori ai acestei tehnologii erau militarii și un cerc foarte restrâns de oameni de știință. Cu alte cuvinte, acei oameni care nu cunoșteau cuvintele - scump, costuri sau fraze - efect economic. Dar timpul a trecut. Tehnologiile pentru producerea și proiectarea tehnologiei informatice s-au dezvoltat într-un ritm rapid. Drept urmare, performanța computerelor a crescut într-un ritm fără precedent, iar costurile acestora au scăzut rapid. Prețurile computerelor se mutau constant de la astronomic la pământesc (deși încă exorbitante). Până în 1965, cercul de oameni de știință care aveau acces la tehnologia computerizată pentru cercetare creștea destul de mult. Până în acest moment (începutul anilor șaizeci), așa cum s-a menționat mai sus, primele publicații pe tema elaborării unui program școlar pe computerele mainframe datează din această perioadă. Este destul de firesc că lucrarea a fost la început pusă în scenă în natură, iar mai târziu teoretică. A fost nevoie de aproximativ cincisprezece ani pentru a veni cu tot ce se putea gândi cu ușurință în legătură cu sarcina de a întocmi un orar școlar. Această perioadă (din 1965 până în 1980) evocă sentimente ascuțite amestecate. Pe de o parte, au fost propuse modele matematice frumoase și originale ale problemei alcătuirii unui program școlar (colorarea vârfurilor graficelor, colorarea marginilor graficelor), iar pe de altă parte, fără nicio îndoială, aceste modele ar trebui clasificate ca fiind foarte versiune simplificată a problemei. Cu alte cuvinte, problema nu a fost rezolvată complet și nici măcar formulată în detaliu. Mai mult, în 1976, a apărut o lucrare a matematicienilor israelieni în care, în opinia lor, s-a dovedit dificultatea fundamentală a rezolvării problemei întocmirii unui orar școlar. Deci, până în 1980, în ciuda faptului că productivitatea calculatoarelor creștea constant și costul acestora scădea în mod constant, ca urmare a faptului că întreprinderile industriale civile trecuseră deja în categoria utilizatorilor activi ai tehnologiei informatice, problema noastră a rămas încă nu complet. rezolvată, iar tehnologia informatică pentru principalul utilizator - școli, a rămas indisponibilă. Poate că primele programe de generație pentru programarea cursurilor ar putea fi atribuite acestei perioade. Datorită celor două motive de mai sus (dificultatea de a rezolva problema și indisponibilitatea tehnologiei computerizate pentru utilizatorul final), interesul pentru programarea automată a cursurilor a scăzut considerabil (și poate chiar s-a stins complet). Superior unități de învățământ , care folosesc acest software, au trecut de la elaborarea efectivă a programelor de curs la înregistrarea și monitorizarea progresului elevilor. Să subliniem încă o dată că majoritatea covârșitoare a administrațiilor școlare nici măcar nu știau de existența unor astfel de programe. Cu toate acestea, în acest moment (în mod firesc în străinătate) printre unii studenți „cu cap de ou”, a apărut o modă pentru trusele de construcție realizate din componente radio. Era computerelor personale a început. Moda s-a dovedit a fi foarte lipicioasă, iar cercul „capetelor de ou” se extindea în mod constant. Este foarte probabil ca proiectanții de componente radio ar fi rămas lotul unui pumn de „nu normali” dacă cel mai mare producător de mașini de scris la acea vreme și unul dintre cele mai comune computere la acea vreme, corporația americană IBM, în jurul anului 1985 , dacă nu mi-aș fi dat seama, cu perspicacitate, că acești designeri, dacă li s-ar fi dat forma unei mașini de scris, ar putea înlocui aceste mașini de scris. Și nu doar înlocuiți, ci faceți o mașină de scris super inteligentă dintr-o mașină de scris, concurând cu „tehnologii de vârf” în publicare. Desigur, la acea vreme, nimeni, cu excepția poate cel mai vizionar, nu și-ar fi putut imagina că designerii fabricați din componente radio vor putea vreodată să concureze cu dispozitive de calcul reale. Cu toate acestea, matrița a fost turnată și a început producția de masă a ucigașilor de mașini de scris. Nu a durat mult până să apară ideile de producție, mai întâi „două într-un” (mașină de scris plus asistentul unui om de afaceri - o foaie de calcul), apoi „trei în unu” (tot plus un program de contabilitate), apoi „patru într-unul” , și așa mai departe și așa mai departe. așa mai departe și așa mai departe. Elevii de ieri, cu ajutorul unei baghete magice, au început să se transforme în miliardari, iar foștii designeri de componente radio au început să semene din ce în ce mai mult cu adevăratele computere electronice. Abrevierea respectuoasă „PC” a intrat în limbajul tehnic și de afaceri, care însemna un computer personal, iar deja la începutul anilor 90 ai secolului XX, nimeni nu se îndoia că aveau pe birou nu o jucărie, ci una complet reală. calculator. Tendințe opuse - creșterea explozivă a productivității fostelor jucării, pe de o parte, și scăderea rapidă a prețurilor acestora, pe de altă parte, și-au făcut treaba. În unele școli avansate, după standardele de astăzi, pupitrele conducătorilor aveau acum, după standardele actuale, monitoare uriașe care țipau ca un reproș viu: „Umple-mă cu software-ul necesar”. Nu este de mirare că mi-am amintit ideea aparent complet uitată de a programa sesiunile de antrenament. Mii de iubitori de bani ușori s-au grăbit să scrie programe pentru școli, garantând automatizarea completă a tot ceea ce puteau pune mâna. Această perioadă, poate, poate fi atribuită programelor de a doua generație care automatizează procesul de întocmire a programelor școlare. În anii 1990, industria computerelor personale a cunoscut o creștere incredibilă. Productivitatea computerelor personale s-a dublat aproape în fiecare an și în fiecare an a adus produse software inovatoare. Cei care lucrează în acest domeniu „le-au rupt tălpile pantofilor”. Dar programele de întocmire a orarelor școlare nu au vrut cumva să funcționeze corect... Acum, desigur, este greu de spus dacă producătorii de programe de întocmire a orarelor școlare au știut sau nu de moștenirea pe care le-au lăsat-o predecesorii lor. în anii 1965 - 1980 ai secolului trecut și despre avertismentul matematicienilor israelieni din 1976 că această problemă era greu de rezolvat, dar rămâne faptul că administrația instituțiilor de învățământ șterge încet vechile mașini de scris bune, înlocuindu-le cu calculatoare personale. . Programul era încă, cu câteva excepții, compilat manual. LA începutul lui XXI secolul, odată cu dominația finală a sistemelor de operare cu interfețe grafice cu utilizatorul, vine și sfârșitul programelor de planificare școlară de a doua generație care foloseau interfața pseudo-grafică a epocii trecute. sistem de operare MS-DOS. Industria calculatoarelor personale și-a oprit cu succes dezvoltarea rapidă și a trecut la notoria „stabilitate”. Tehnologia de calcul personală a depășit nivelul de performanță al computerelor mari la mijlocul anilor 80 ai secolului trecut, totul era pregătit pentru dezvoltarea programelor de a treia generație. Și într-adevăr, chiar la sfârșitul secolului trecut, un număr incredibil de producători, încă o dată, dar deja, după cum li se părea, la un nou nivel tehnic și tehnologic, s-au ocupat de dezvoltarea unor programe pentru întocmirea unui program școlar. Pe fondul încetării creșterii vizibile (deși treptate) a productivității computerelor personale și al stabilizării ideilor în domeniul software-ului, au dezvoltat programe care ar putea fi clasificate ca programe de a treia generație. Caracteristica principală a acestor programe, ni se pare, este că ar putea fi dezvoltate luând în considerare atât erorile, cât și constatările originale ale predecesorilor lor. Aici ne referim în primul rând la dezvoltatorii anilor '90. Cu rezultatele matematice din anii șaizeci, șaptezeci și optzeci, situația este mai simplă. Dacă știi despre ele, atunci le folosești; dacă nu știi, atunci „inventezi o nouă roată”. O altă caracteristică este că aceste programe au fost dezvoltate folosind o nouă interfață grafică cu utilizatorul la acel moment. Nu există nicio îndoială că interfața grafică oferă dezvoltatorului oportunități fundamental mai mari în comparație cu cea pseudografică (text). Dar, în același timp, există pericol în asta. Dacă începem să comparăm programele de orar școlar disponibile pe piață (în uz), vom descoperi o varietate absolut uimitoare de modalități de a genera (introduce) datele inițiale necesare calculului, deși din punct de vedere matematic toate programele nu fac. (sau conform macar, ar trebui să facă) exact același lucru. Astfel, calitatea programelor de orar școlar a început să fie influențată semnificativ de consistența și comoditatea interfeței cu utilizatorul. Astăzi (2013) este de remarcat faptul că, în comparație cu programele din anii 90, programele de generația a treia (zero) au devenit destul de „înțelepte”. Optimismul dezvoltatorilor s-a diminuat considerabil. Nimeni (sau aproape nimeni) nu promite automatizarea completă a tot ceea ce vine la îndemână. Multe dintre proiectele începute la sfârşitul anilor '90 au încetat să mai existe din cauza lipsei de cerere. Alții continuă să se dezvolte și să se îmbunătățească. Alții și-au înghețat dezvoltarea în ultimii zece ani. Dar, după cum s-a menționat anterior, este încă prea devreme să vorbim despre o soluție definitivă și irevocabilă a problemei întocmirii unui program școlar.

3 Sunt necesare astfel de programe?

De obicei, atunci când se vorbește despre beneficiile (necesitatea) utilizării unui program de programare automată, ele indică un astfel de factor precum o reducere de ordin de mărime a costurilor de muncă (timp) ale directorului la întocmirea programului de învățământ. Deseori se indică faptul că programul poate fi obținut folosind un computer cea mai buna calitate. Deși acest argument, ținând cont de cele spuse mai jos, nu este lipsit de controverse. În opinia noastră, ar trebui să fim de acord că calcularea orarului folosind un calculator va, pe lângă economisirea de timp și obținerea unui program de mai bună calitate, pe de o parte, exclude aprecierile subiective și simpatiile personale ale directorului în raport cu profesorul (partea cadrelor didactice), la întocmirea programului, în includerea în repartizarea sarcinii didactice, iar pe de altă parte, se va elimina complet acuzațiile nemeritate la adresa directorului din partea profesorilor de asemenea aprecieri subiective și simpatii, întrucât este evident că computerul este „o persoană care nu este interesată” (computerul este „de vină” pentru tot) . Astfel, calcularea repartizării sarcinii didactice și a programului pe calculator poate îmbunătăți climatul psihologic din cadrul corpului didactic (respectarea principiilor corectitudinii și egalității), la fel cum arbitrul de meci îmbunătățește starea de spirit a jucătorilor unei echipe de fotbal după ce a decis dreptul de a lovi mingea mai întâi folosind o remiză. În 2001, compania Chronobus a efectuat un sondaj asupra a aproape 1000 de școli din Moscova cu privire la necesitatea de a crea și implementa un loc de muncă automatizat (a) „Orar”. Rezultatele sondajului au arătat că toate școlile au dorința sinceră de a utiliza un astfel de program, dar nimeni nu o face. Mai mult, motivul nesocotirii unanime a unor astfel de instrumente de automatizare nu este lipsa echipamentelor sau banilor necesari, ci calitatea programelor oferite pe piata. Expresia: „Dacă mi s-ar oferi să-mi măresc salariul de o dată și jumătate pentru că folosesc un astfel de program de program școlar, atunci aș refuza această ofertă” nu era neobișnuită. Cu alte cuvinte, potrivit directorilor, software-ul pentru orar școlar este un software cu costuri negative. Astăzi, la doisprezece ani de la sondajul sus-menționat, potențialii utilizatori ai programelor de întocmire a programelor educaționale - directori de școli - au dezvoltat o atitudine negativă persistentă, și adesea agresivă, față de astfel de programe într-o măsură și mai mare și nu lipsită de minuțiozitate. Publicitatea înșelătoare despre „spațiul de informare școlar” impus creează o imagine a autorilor acestui spațiu ca escroci care vând bunuri putrede. Potrivit directorilor de școli cu o vastă experiență de lucru, practica arată că aceste programe pot fi folosite doar ca instrument pentru aranjarea inițială a obiectelor cu finisare manuală ulterioară, precum și pentru stocarea informațiilor și tipărirea acestora. După distribuirea automată a obiectelor (programul, de regulă, aranjează de la 40 la 70%), este practic imposibil să se ia în considerare cerințele de igienă pentru programul de lecție, deoarece este necesar nu numai să se livreze obiectele rămase nearanjate. , dar și să schimbe semnificativ (până la 60%) aranjarea automată a obiectelor după principiul „doar pentru a-l aranja”. Maeștri experimentați ai meșteșugului lor recomandă începătorilor, atunci când creează un orar de lecție, să folosească o duzină sau mai multe sfaturi, dovedite de mulți ani de experiență și practică, folosind, în loc de computer, machete de tabel de orar de lecție realizate din foi de carton, hârtie colorată , bandă largă transparentă, lipici, buzunare și așa mai departe. Și cu siguranță au dreptate. Utilizarea unui computer în modul editor obișnuit (cum ar fi un editor de text familiar) sau utilizarea programelor care pornesc procesul de aranjare a activităților în situații de blocaj când nu este posibil să se încadreze o singură lecție în program teoretic, nu poate aduce decât dificultăți nejustificate, neplăceri și furie. Așteptările utilizatorilor unor astfel de programe (directori) sunt fără îndoială. În opinia lor, programele pentru alcătuirea unui program școlar, după introducerea tuturor datelor inițiale, ar trebui, într-un mod complet automat, să creeze un program de calitate superioară unui program manual. Inadecvarea așteptărilor utilizatorilor și a rezultatelor obținute din astfel de programe dă naștere unei atitudini agresive a utilizatorilor față de aceste programe și, împreună cu acestea, față de sistemele de automatizare „extinde spațiul informațional al școlii”. Trebuie remarcat faptul că dezvoltatorii de programe pentru întocmirea programelor școlare au fost împărțiți în trei grupuri în cursul „selecției naturale”. Prima grupă susține public punctul de vedere că problema calculării automate a programului școlar nu poate fi rezolvată în principiu. Și de aceea ei „nu fi prost” nici măcar nu încearcă să o facă. Iar cei care încearcă, după părerea lor, sunt complet ignoranți. „Nu avem un program de calcul al programului școlar, ci un editor al programului școlar. Noi nu construim un program în locul unei persoane, ci ajutăm o persoană să-și construiască propriul program (manual)”, declară ei cu mândrie. Cel de-al doilea grup de dezvoltatori își declară scopul de a fi automatizarea completă a programului școlar, dar în materialele publicitare și manualele de utilizare ei tac din punct de vedere diplomatic cu privire la atingerea acestui obiectiv. „Programul nostru poate construi un program în modul automat, modul manual și modul mixt (semi-automat)”, afirmă ei fără a înșela utilizatorii. Acești dezvoltatori nu concentrează atenția potențialilor utilizatori asupra faptului că un cal poate bea apă din râu, dar nu o poate bea, iar programul poate construi un program automat, dar nu o poate construi. În opinia noastră, aceasta este o poziție foarte echilibrată și demnă, care, în ciuda puțină viclenie, nu poate decât să inspire respect. Sau, cel puțin, nu provoacă o atitudine agresivă față de dezvoltatori din partea utilizatorilor. Și în sfârșit, al treilea grup de dezvoltatori. „Introduceți datele inițiale, faceți clic pe butonul de calcul, iar în câteva minute aveți garantat că veți primi un program cu aranjarea tuturor cursurilor fără excepție. Nu există restricții cu privire la dimensiunea problemei. Cel puțin 99 de clase Cel puțin 216 profesori Cel puțin jumătate cu jumătate de normă. Vom împărți clasa în grupuri de cel puțin 256 de grupuri. Există restricții pentru profesori și materii. Fiecare profesor își alege zilele și orele de lucru care îi sunt convenabile. Nu există ferestre pentru profesori. Cursurile la materii se țin numai în orele permise pentru aceste materii. Respectarea strictă a paralelelor. Fiecărui subiect i se atribuie scoruri de dificultate. Respectarea exactă a standardelor sanitare de distribuție a complexității totale a articolelor în timp este garantată.” – spun ei fără ezitare. Apropo, această mișcare simplă este luată de dezvoltatorii celor mai neajutorate programe în ceea ce privește programarea automată și, în plus, neglijent ca aspect (deși există unul care arată foarte atractiv). Microsoft a numit astfel de programe „câini de mâncare”. Este dificil de spus ce anume motivează oamenii care se angajează în înșelăciune directă și simplă a consumatorilor. Această înșelăciune devine întotdeauna evidentă prima dată când programa școlară este introdusă în program. Conform legislației ruse, în conformitate cu art. 179 din Codul civil al Federației Ruse, tranzacțiile efectuate sub influența înșelăciunii pot fi declarate nule de către instanță, în timp ce înșelatorul returnează toți banii primiti celui înșelat, îl compensează pe cel înșelat pentru prejudiciul real și, în plus, trebuie să transfere la venitul statului aceeași sumă pe care a primit-o din vânzarea programului.

4 Câteva despre complexitatea problemei care se rezolvă

Merită să spuneți câteva cuvinte despre complexitatea rezolvării problemei creării unui program școlar. Pentru utilizatorii calificați ai unui computer personal care cred în omnipotența acestuia, se pare că sarcina de a crea un program școlar este aproape mai dificilă decât sarcina de a crea, de exemplu, un editor video sau un editor de sunet de înaltă calitate. Cu toate acestea, după cum am menționat mai devreme, numărul de cercetători care au studiat această problemă într-un fel sau altul este greu de numărat. Printre aceștia se numără zeci de doctori în științe tehnice și fizice și matematice, sute de candidați la științe, nu numai tehnice, ci și fizice și matematice, ca să nu mai vorbim de mii de iubitori obișnuiți ai puzzle-urilor matematice, care include cu siguranță o mare armată de studenți în domeniile de studiu tehnic și fizic și matematic. Printre cercetătorii problemei întocmirii unui program școlar pot fi menționați doi academicieni - V.S. Tanaev și V.S. Mikhalevich, s-ar putea numi și oameni de știință străini de renume mondial. Pe lângă oamenii de știință, oamenii de afaceri remarcabili nu au ignorat sarcina de a întocmi programele școlare. Și totuși, în ciuda, fără exagerare, a eforturilor titane ale cercetătorilor, nu este nevoie să vorbim despre o soluție completă și cuprinzătoare (sau cel puțin satisfăcătoare) a problemei întocmirii unui program educațional. Pentru a confirma cele spuse, oferim un citat de la un matematician rus celebru. ... Deoarece sarcina de a crea programe este bine cunoscută de toată lumea din viața școlii, în fiecare curs există unul sau mai mulți elevi copleșiți de ideea de a algoritmiza crearea unui program de clasă. Prin urmare, trebuie să vă avertizez că aceasta este o sarcină foarte dificilă. ... Există o știință specială - teoria programării, care studiază și sistematizează probleme de acest fel, precum și diverse metode aproximative de rezolvare a acestora (aproape că nu există nicio speranță pentru metode exacte). Un loc special printre ele îl ocupă metodele euristice, în care se încearcă descrie logica și tehnica acțiunilor dispecerului. ... O observație interesantă. Dar mai întâi, să mai dăm un citat. Ipoteza celor patru culori poate fi numită pe bună dreptate „boala cu patru culori”, deoarece este similară în multe privințe cu o boală. Este foarte contagioasă. Uneori devine relativ ușor, dar în unele cazuri devine prelungit sau chiar amenințător. Nu există vaccinări împotriva ei; Cu toate acestea, persoanele cu un corp destul de sănătos după un focar scurt dobândesc imunitate pe viață. O persoană poate face această boală de mai multe ori și uneori este însoțită de dureri severe, dar nu au fost înregistrate decese. Există cel puțin un caz cunoscut de transmitere a bolii de la tată la fiu, deci poate fi ereditară. Aici, un matematician american remarcabil bate joc de vechea problemă a colorării harta politicăîn patru culori, în care țările care au o graniță comună ar trebui colorate Culori diferite. Se pare că tot ceea ce a spus poate fi pus pe seama sarcinii de a întocmi un orar școlar. Așadar, autorul acestor rânduri a decis, în măsura în care a putut, să urmărească viitoarele cariere ale oamenilor care și-au susținut disertațiile pe tema relevantă. S-ar părea că „Dumnezeu însuși” i-a ordonat noului om de știință promovat să-și transforme realizările științifice în bani. Adică, adu cumva creația ta pe piață, deoarece aproape întotdeauna după susținerea unei dizertații rămâne un program sau o parte dintr-un sistem automat de programare a cursurilor. Deci nu. Toate cunoscut de autor cazurile de susținere a unei disertații pe această temă se termină într-un fel - după susținere, autorul disertației renunță la această sarcină și, de regulă, începe (sau continuă) o carieră ca profesor la o universitate. Cu alte cuvinte, el dobândește o imunitate de-a lungul vieții, de durată la sarcina de a crea un curriculum. Pentru a încheia discuția noastră generală despre complexitatea rezolvării problemei întocmirii unui program școlar, să ne referim la încă două opinii. Dar mai întâi, să fim atenți la cine își exprimă această opinie. Nu este un secret pentru nimeni că unii profesori de informatică din școală, în crize de experimente didactice, îi atribuie școlarilor ca „ teme pentru acasă» dezvoltați un program de programare a cursurilor pentru școala preferată. Scolarii, firesc, isi sufleca manecile si preiau cu entuziasm aceasta sarcina. Ca urmare a acestei idei, pe internet se pot găsi numeroase discuții și teoretizări pe această temă din contingentul mai sus menționat. Ce nu vin Pionierii și ce fel de opinii nu își exprimă... Acest subiect provoacă nu mai puțin entuziasm în rândul persoanelor cu studii tehnice în încercările de a automatiza activitățile dispecerilor la universitatea lor preferată. Dar aceste opinii, ca să spunem ușor, mare interes nu-ti imagina. Matematicienii profesioniști, specialiști în teoria orarelor, vorbesc extrem de rar despre problema întocmirii unui program educațional. Prin urmare (sau chiar mai mult) părerea lor în această chestiune pare foarte interesantă. Asa de. Sotskov Yuri Nazarovici, doctor în fizică și matematică. Științe, profesor, cercetător șef la Institutul Comun de Probleme de Informatică al Academiei Naționale de Științe din Belarus, Minsk, unul dintre cei mai de seamă specialiști în domeniul teoriei orarului, autor al unui număr de monografii despre teoria orarului. În articolul său, în special, el scrie: ... Din punct de vedere matematic, problema construirii unui program optim de antrenament este destul de complexă, deoarece aparține clasei așa-numitelor probleme NP-hard. ... Acest articol arată cum colorarea vârfurilor unui grafic poate fi folosită pentru a construi un program de antrenament. ... ... Problema de colorare a vârfurilor grafului este NP-hard și, prin urmare, generalizarea sa descrisă în Sect. 2 este, de asemenea, o problemă NP-hard. ... Mai departe. Lazarev Alexander Alekseevich, doctor în fizică și matematică. Științe, profesor, cercetător șef la Institutul de Probleme de Management care poartă numele. V.A.Trapeznikova RAS, Moscova, unul dintre cei mai de seamă specialişti în domeniul teoriei orarului, autor al unui număr de monografii despre teoria orarului. În articolul său, în special, el scrie: ... Problema programării educaționale este o problemă de optimizare combinatorie bine-cunoscută numită „orar”. Chiar și găsirea unui program fezabil este o problemă puternică NP-hard. Prin urmare, la rezolvarea acesteia, este necesar să se utilizeze metode matematice pentru rezolvarea problemelor de optimizare combinatorie. ... Pe scurt: - „Scurgeți apa, uscați vâslele, stingeți luminile...”

5 Piața de software pentru orar

Piața software-ului de planificare, care s-a dezvoltat împreună cu piața oricărui software pentru computere personale, pare pur și simplu unică, sau cel puțin surprinzătoare, sau în cel mai rău caz foarte ciudată. Deci, ce îl face unic sau ciudat? Ați văzut vreodată o reclamă ca aceasta: - „Cumpărați aspiratorul nostru care nu poate aspira praful.” Sau acesta: „Toate vasele pe care vi le putem oferi sunt pline de găuri”. Sau acesta: „Televizorul nostru este unic - nu arată niciodată nimic.” Și iată reclama: „Cumpărați programul nostru pentru crearea unui program școlar, care nu îl poate crea, dar îl poate crea”, trebuia să vedem cât ne doream. „Ei bine, cumpără-l, cumpără-l, cumpără-l. Programul nostru poate crea și un program. Ea va aranja aproape toate cursurile pentru tine, dar hai să ne ocupăm noi de restul. Ieșirea dintr-o fundătură este atât de interesantă. Ei bine, cel puțin pentru 15 dolari. Nu sunt mulți bani, am muncit atât de mult...” Deci, cât costă un aspirator care nu aspiră praf, o tigaie cu găuri sau un televizor care nu arată niciodată nimic? Înainte de a răspunde la această întrebare dificilă, să încercăm să estimăm numărul de potențiali cumpărători și să-l comparăm cu numărul de școli (directori) care și-au făcut deja achiziția. Demografii au descoperit că aproximativ 16% din populația țărilor dezvoltate sunt școlari. Această cifră este folosită la construirea de noi școli în noi zone de dezvoltare. În continuare, vom efectua calcule aritmetice folosind Federația Rusă ca exemplu (patria noastră, până la urmă). Deci, populația este de aproximativ 140 de milioane de oameni. Astfel, sunt aproximativ 22 de milioane de școlari, sunt aproximativ 50 de mii de școli, ceea ce înseamnă că numărul mediu de elevi într-o școală este de 440 de persoane. Dar aceasta este o sumă medie. Se știe că în ultimii 60 - 70 de ani, școlile pentru 1000 - 1400 de elevi au fost considerate proiecte școlare standard. De aici concluzia - există un număr mare de școli cu un număr de elevi mult mai mic decât media noastră - 440 de persoane. Evident, acestea sunt școli din mediul rural sau din zonele foarte sărace orase mari. Prin urmare, o concluzie mai puternică este că un număr mare de școli nu au nevoie de programe pentru programarea orelor, în principiu. Este, desigur, foarte greu de estimat numărul de școli care nu au nevoie de astfel de programe în principiu. Cu toate acestea, dacă ne uităm cu atenție la tavan, vom vedea o cifră acolo - 70%. Din care rezultă că 30% din școli au o populație de elevi de 500 sau mai mult, iar pentru astfel de școli un program care nu poate crea un program școlar, dar poate crea unul, nu ar strica. Obținem cifra finală - 15 mii de școli. Aceasta este, probabil, capacitatea potențială a pieței pentru Federația Rusă. Dar ce avem în realitate astăzi? Întrebarea nu este simplă. Nu există statistici de încredere. În primul rând, îmi vine în minte un program, care a fost „gratuit” pentru toate școlile din Federația Rusă. Dezvoltarea acestui program a început în 1998, iar sfârșitul ( ultima versiune) până în 2003. De aspect, mai ales pentru timpul său, programul cu siguranță nu este rău. În comparație cu alte programe similare, are o interfață de utilizator foarte logică și atentă. În opinia noastră subiectivă, cea mai bună interfață cu utilizatorul. Cu toate acestea, deși există un buton Creați un program, programul este absolut neajutorat în ceea ce privește programarea automată (fără intervenție umană). Nu este capabil să rezolve nici măcar acele subsarcini simple pe care alte programe le pot gestiona cu ușurință. Judecând după recenziile de pe Internet, aproape nimeni nu folosește acest program. Deci, să luăm în considerare" radiații de fond» care nu afectează situația generală a pieței. Sa trecem peste. Să punem această întrebare. Există pe piață programe care să ofere directorului cel puțin o oarecare asistență în crearea unui program? De exemplu, mulți directori întocmesc manual un program în două etape. În prima etapă, după expresia lor: - „Au de-a face cu străinii”. Cu alte cuvinte, creează un program pentru profesori și cursuri atunci când studiază o limbă străină. A doua etapă este orice altceva. Cel puțin două programe de pe piață fac față de invidiat bine acestei prime etape. Aici puteți planifica calendarul cursurilor opționale. În acest caz, de la 10 la 40 la sută din clase sunt aranjate. Deci, desigur, există unele beneficii de la utilizarea unui computer echipat cu aceste programe. Mai mult decât atât, unul dintre aceste programe încearcă în mod foarte agresiv și persistent să finalizeze programul. În unele cazuri, deși rare, ea reușește. Celălalt, la finalizarea programului, este absolut neajutorat. Deci, câți oameni folosesc astăzi software pentru programarea cursurilor în Federația Rusă? Unii producători de astfel de software publică informații despre clienții lor pe site-urile lor web. Adevărat, aceste informații ar trebui tratate cu mare atenție. După cum s-a menționat mai sus, unii producători, în „crize de marketing”, recurg la o înșelăciune foarte simplă a potențialilor clienți. Și totuși, separând grâul de pleava, obținem o cifră de aproximativ 1.500 de școli. Ceea ce reprezintă aproximativ 10% din capacitatea potențială a pieței. Prin urmare, 90% dintre clienții potențiali nu au fost încă convertiți. Acum să ne îndreptăm atenția către piața mondială. După cum rezultă din calculele anterioare, o modalitate foarte convenabilă de a calcula numărul de clienți potențiali este această metodă. Luăm populația țării, aruncăm patru zerouri și obținem numărul de clienți potențiali. Asta vom face. Europa - 500 de milioane de oameni. SUA - 300 de milioane de oameni. Canada - 30 de milioane de oameni. Japonia - 125 de milioane de oameni. Australia - 20 de milioane de oameni. Alte tarile dezvoltate - 25 de milioane de oameni. Iată-l - „miliardul de aur”. Aruncăm patru zerouri. Avem 100 de mii de clienți potențiali. Acum întrebarea este: „Câte școli din acest miliard de aur folosesc software pentru a crea un program școlar?” Aplicăm aceeași metodologie, separând grâul de pleavă, ca și pentru Federația Rusă. Obținem o cifră - aproximativ 30 de mii de școli. Care reprezintă 30% din piață. În același timp, 70% sunt deschiși către marketing agresiv (hilling). Acum nu mai rămâne decât să transformăm cantitatea în calitate. Adică, înmulțiți numărul de potențiali clienți cu prețul unei licențe software. Cu alte cuvinte, estimați capacitatea pieței mondiale în ruble americane. Dar pentru a face acest lucru trebuie să știți prețul unei astfel de licențe. Mă întreb dacă cititorul a ținut vreodată în mâini o carte groasă cu ceva ca acest titlu: - „Cost of Software”. Dar a trebuit. De fapt, formula este foarte simplă. Software-ul, oricât de complex sau mare ar fi, costă exact cât plătește clientul (utilizatorul) pentru el. Cel mai clar exemplu în acest sens este sistemul de operare Windows de la Microsoft. Probabil puțini oameni au crezut că în ceea ce privește cantitatea de muncă, talent, cunoștințe etc., aterizarea unui om pe Lună, în comparație cu acest sistem de operare, este o farsă copilărească. Și totuși, o sută cincizeci de dolari pe baril și ești un utilizator legal. Singura problemă este că numărul de clienți potențiali - utilizatori ai sistemului de operare și programul de creare a unui program școlar - nu este comparabil, nici în prima și nici în a doua aproximare. De aici concluzia: - „În pofida faptului că unii cer 15 dolari pentru vase care nu au scurgeri, un program care ar putea rezolva cu adevărat majoritatea problemelor directorilor trebuie să fie scump.” Tot ce rămâne este să răspundem la întrebarea: - „Ce este scump?” Desigur, toată lumea are propriile idei despre „Scump”. Dar probabil, pentru un profesor principal (sau o funcție similară, dacă vorbim de piața globală), salariul lui lunar este scump. Adică de la 1000 la 5000 de dolari SUA. Aceasta este ceea ce observăm de fapt, sau cel puțin observat anterior, în realitate. La început, aceste programe costă exact atât de mult pe piața mondială. Scăderea prețurilor, ni se pare, s-a produs tocmai pentru că s-a dovedit brusc că o tigaie cu găuri a fost cumpărată cu 5.000 de dolari. Și, în cele din urmă, înmulțind cantitatea cu prețul, obținem capacitatea aproximativă a pieței globale de software pentru crearea unui program școlar - de la 100 la 500 de milioane de dolari SUA. Adică, piața nu este mai puțin intensivă în bani decât, să zicem, piața diverse sisteme proiectare asistată de calculator în industrie și construcții. Și apropo, nu mai puțin intensiv în știință.

6 Algoritmul „Egipteanul antic” pentru rezolvarea problemei

În primăvara lui 2012, un arheolog a apelat la niște programatori pe care îi cunoștea cu o cerere ciudată. Potrivit acestuia, în timp ce descifra manuscrisele egiptene antice, a dat peste o descriere a unui algoritm pentru alcătuirea unui program școlar. Autoritatea algoritmului a fost atribuită unei preotese egiptene pe nume Anush. De fapt, cererea lui a fost să verifice pe un computer modern dacă acest algoritm este într-adevăr capabil să creeze un program școlar. La început, prietenii lui au râs de el. Dar după ce am citit cu atenție înregistrările ciudate, am decis totuși să le verificăm. Deci, să începem să descriem ideea acestui algoritm, de fapt, la un scurt rezumat al traducerii unui manuscris antic. Să spunem mai întâi că însăși terminologia acestui algoritm și organizarea școlii egiptene antice sunt de interes istoric separat, dar deoarece acest articol nu este destinat istoricilor, vom prezenta algoritmul în terminologia modernă familiară oamenilor care trăiesc astăzi. Principala diferență dintre algoritmul egiptean antic (în continuare vom omite cuvântul egiptean antic) din abordările moderne este că problema este împărțită în părți, sau mai precis, într-o serie de probleme rezolvate secvențial și fiecare problemă rezolvată la pasul anterior este o constrângere pentru ca problema să fie rezolvată la pasul următor. În terminologia modernă se utilizează metoda de descompunere a problemei care se rezolvă. Trebuie remarcat faptul că fiecare problemă individuală care este rezolvată secvenţial în timpul algoritmului nu este NP-hard (nerezolvabilă). Aceasta permite, prin rezolvarea secvențială a unei serii de probleme ușor de rezolvat, să se rezolve întreaga problemă a creării unui program școlar. Pe primul pas ar trebui să alegeți modul de funcționare al instituției de învățământ, și anume să decideți câte zile pe săptămână va funcționa școala (5 sau 6) și să decideți asupra numărului de lecții ținute pe zi de școală (7 sau, respectiv, 6). De asemenea, trebuie să setați numărul de clase de elevi din școală. În continuare, trebuie să interziceți acele ore în care nu se țin lecțiile. Acestea sunt ultimele ore ale fiecărei zile de școală. Pentru clasele junioare (în terminologia noastră, asta începe din clasa a V-a) există mai multe astfel de interdicții, pentru clasele medii sunt mai puține, iar pentru cei mai mari (clasa a XI-a) aceste interdicții lipsesc cu desăvârșire. Care respectă standardele noastre sanitare. Tabelul de interdicții pentru desfășurarea lecțiilor, care va fi folosit pe tot parcursul algoritmului, este amintit. La a doua treaptă se construiește un program pentru lucrătorii cu fracțiune de normă. S-a dovedit că instituțiile de învățământ egiptene antice nu disprețuiau munca cu fracțiune de normă. Principala caracteristică a acestei sarcini este că lucrătorilor cu normă parțială li se permite să declare într-un ultimatum zilele în care vor lucra. În plus, unor lucrători cu fracțiune de normă li se permite să refuze munca la prima lecție din toate zilele lucrătoare când lucrează. Se pare că acești lucrători cu fracțiune de normă erau femei și nu puteau veni devreme la școală. Problema este rezolvată folosind un algoritm pentru colorarea prescrisă a vârfurilor unui graf obișnuit. Puteți face cunoștință cu acest model matematic în detaliu folosind articolul deja menționat sau cu ajutorul a numeroase alte articole de jurnal, de exemplu, [,], precum și prin familiarizarea cu cărțile [,]. În continuare, pentru fiecare lecție (clasă, profesor, timp), folosind un algoritm pentru rezolvarea problemei de atribuire, este selectată o cameră pentru desfășurarea acestei lecții. Algoritmul pentru rezolvarea problemei de atribuire este descris în multe manuale moderne; în special, vă puteți familiariza cu acesta în carte. Sfârșitul celui de-al doilea pas este operația de combinare a unui tabel de interdicții privind desfășurarea lecțiilor, construit în conformitate cu restricțiile sanitare și programul rezultat pentru lucrătorii cu fracțiune de normă. Astfel, obținem un nou tabel de interdicții privind desfășurarea lecțiilor, care va fi una dintre restricțiile pentru următorul pas al algoritmului. Al treilea pas constă în rezolvarea problemei desfășurării orelor la alegerea studenților (în terminologia noastră, cursuri opționale). Particularitatea acestei sarcini este că un anumit număr de clase, la o anumită oră de școală, sunt combinate în fluxuri, iar apoi la acea oră se dispersează la cursurile lor opționale. Construcția orarului va consta în faptul că fiecărui flux i se va atribui o oră la care se vor desfășura cursuri opționale, dar profesorii vor fi numiți după finalizarea întregului program. Adică, la acest pas, profesorii nu sunt desemnați să conducă cursuri opționale. La construirea programului, regula este respectată - pentru orice flux într-o zi academică, nu poate fi atribuită mai mult de o oră academică pentru a conduce un curs opțional. În plus, se respectă o altă regulă - cursurile opționale nu pot fi programate pentru mai mult de un flux la un moment dat. Această regulă (restricție) pare destul de rezonabilă, deoarece atunci când desfășurați cursuri opționale, nevoia de spații pentru desfășurarea cursurilor crește brusc. A fost introdus tocmai cu scopul de a preveni o situație în care mai multe fire au nevoie un numar mare de spatiu liber. În această etapă, premisele pentru desfășurarea cursurilor opționale, precum și cadrele didactice, nu sunt selectate; acestea vor fi selectate împreună cu profesorii după construirea întregului program. Algoritmul pentru rezolvarea problemei desfășurării cursurilor opționale este algoritmul pentru colorarea prescrisă a vârfurilor unui graf obișnuit, pe care l-am subliniat când am descris pasul anterior. Noul tabel de interdicții privind desfășurarea lecțiilor este construit exact în același mod ca în pasul precedent. Programul rezultat este combinat cu tabelul de interdicții. La a patra treaptă algoritm pentru a construi un program pentru lecțiile de învățare a unei limbi străine. O caracteristică specială a acestei sarcini este că clasa poate fi împărțită în grupuri. Profesorii nu pot declara ca ultimatum ce zile vor lucra. Cu toate acestea, pentru profesorii cu sarcini uşoare, una sau două zile libere sunt garantate şi le vor fi acordate. La fel ca în a doua etapă a algoritmului, unii profesori care predau o limbă străină pot solicita să fie eliberați de lecții în prima oră a zilei de lucru când lucrează. Problema programării profesorilor/claselor pentru studiul unei limbi străine, la fel ca în pasul al doilea și al treilea, este rezolvată folosind un algoritm de colorare prescrisă a vârfurilor unui grafic obișnuit. La fel ca și în a doua etapă, folosind un algoritm de atribuire a fiecărei lecții, sau mai bine zis, fiecărui grup de elevi și profesorul lor, se selectează o sală pentru desfășurarea acesteia. Sfârșitul celui de-al patrulea pas, precum și al doilea și al treilea, este operația de combinare a tabelului de interdicții privind desfășurarea lecțiilor cu programul rezultat. Deci primim noua optiune acest tabel, pe care îl vom folosi în pasul al șaselea. După parcurgerea celui de-al 4-lea pas al algoritmului, în funcție de programa școlară, se atribuie de obicei de la 15% la 40% din întreaga sarcină didactică prevăzută de acest plan. Pe treapta a cincea Sarcina determinată de curriculum este calculată pentru spațiile care sunt insuficiente pentru școală. Astfel de spații sunt, de regulă, săli de sport, ateliere de desfășurare a lecțiilor de muncă (tehnologie), săli dotate cu calculatoare pentru desfășurarea lecțiilor de informatică. Acest calcul este efectuat cu scopul de a încărca maxim posibilă („timp de nefuncționare”) a unor astfel de spații. Pe treapta a șasea se construiește un orar pentru toate disciplinele rămase, cu excepția celor predate în localuri rare. Profesorii nu au posibilitatea de a declara un ultimatum cu privire la ce zile vor lucra, dar pentru acei profesori al căror volum de muncă este redus, le sunt garantate una sau două zile libere, iar pentru unii profesori există posibilitatea de a refuza să lucreze în timpul primei lecții. . Această problemă este rezolvată folosind un algoritm de colorare a muchiilor prescris pentru un multigraf bipartit. Vă puteți familiariza cu ideea acestui algoritm dintr-o carte sau din articole de jurnal [, , , ,]. Programul construit este format din patru - clasă, profesor, subiect, timp. În același pas, toate cele patru, folosind un algoritm pentru rezolvarea problemei de atribuire, sunt potrivite cu premisele în care se vor ține aceste clase (patru). După parcurgerea acestui pas, întregul program este completat, cu excepția orelor desfășurate în spații rare. Cu toate acestea, „găurile” rămase în program sunt programul de desfășurare a cursurilor în spații rare. Astfel, putem considera că la acest al șaselea pas, într-un sens, se construiesc simultan două orare - pentru profesorii/clasele obișnuite și pentru spațiile/clasele rare. La a șaptea treaptă orele sunt împărțite în grupe în funcție de subiecte care se vor desfășura în spații rare. De regulă, la discipline precum educația fizică, munca (tehnologie) și informatica, clasele sunt împărțite în grupuri. Dacă setul de profesori pentru care a fost construit programul în pasul precedent se intersectează cu setul de profesori care desfășoară cursuri în spații rare, atunci se formează un tabel pentru orele de lucru interzise ale profesorilor, care este intersecția acestor seturi. Folosind un algoritm pentru rezolvarea problemei temei, profesorii sunt selectați pentru fiecare grupă. Ultimul pas- Al optulea. La acest pas, toate orarele obținute anterior sunt combinate, adică se formează programul final. Pentru a efectua acest pas, nu sunt necesari algoritmi, sunt suficiente operații aritmetice simple. După primirea programului final, fiecare profesor poate decide singur când este convenabil pentru el să conducă cursuri opționale. Timpul pentru ei a fost rezervat la pasul 3 al algoritmului. Și dacă acest profesor poate recruta un grup de studenți, atunci își va pune în mod independent cursul opțional în program, împreună cu localurile alese de el. Regula generală pentru toți pașii descriși anterior, cu excepția celui de-al cincilea, este regula - fiecare clasă nu poate avea mai mult de o lecție la orice materie într-o zi. In afara de asta, regula generala pentru profesori este că fiecare profesor poate preda cursuri la mai multe materii, inclusiv o clasă.

7 Testarea algoritmului

După cum se poate vedea din secțiunea anterioară, nu este nimic greu de înțeles în funcționarea algoritmului pentru construirea unui program școlar. Una după alta, problemele individuale ușor de rezolvat (non-NP-hard) sunt rezolvate, interconectate, până când sunt toate epuizate. Cu toate acestea, nu exista niciun temei pentru a afirma cu încredere că fiecare dintre aceste probleme ar putea fi rezolvată. În absența oricărei justificări teoretice pentru algoritm, a fost posibil să se testeze performanța acestuia doar experimental, mai ales că aceasta a fost tocmai sarcina pusă de savantul arheolog care a dat peste manuscrisul antic și l-a tradus. Este destul de firesc ca primul gând care le-a venit în minte programatorilor a fost să creeze o aplicație obișnuită pentru sistemul de operare. sisteme Windows . Dar ce este o aplicație câștigătoare obișnuită? Odată activat (lansat pentru execuție), acesta așteaptă evenimente de la utilizator, de exemplu, introducerea datelor inițiale. Cum pot fi obținute aceste date inițiale și introduse ulterior în program? Slavă Domnului, sau mai bine zis SUA, acum o școală mai mult sau mai puțin care se respectă și-a deschis site-ul pe internet și primul lucru care apare pe acest site, fără a număra fotografiile de la diverse evenimente festive, este programa școlară. Rămâne doar să îl copiați și să îl introduceți în program ca date inițiale pentru calcularea programului. Întrebare. Cât timp ai nevoie pentru asta? Practica utilizării programelor de orar școlar oferite în prezent pe piață a arătat că intrarea într-un curriculum împreună cu formarea unui tabel pentru distribuirea sarcinii didactice necesită de la 8 la 10 ore, muncă minuțioasă, ca să spunem ușor. Să presupunem că acest curriculum a fost introdus și s-a format tabelul de repartizare a sarcinii didactice și iată... orarul a fost construit. Ce înseamnă acest lucru? Absolut nimic. Nu există nicio garanție că următoarea sarcină va fi rezolvată. Acum, dacă programul nu ar fi fost construit, atunci asta ar spune multe și anume că algoritmul nu rezolvă problema. Cu alte cuvinte, o aplicație câștigătoare obișnuită este, într-un sens, practic netestabilă. Cum să fii? Din nou, mulțumesc lui Dumnezeu, sau mai degrabă slavă Microsoft, versiunile moderne ale sistemului de operare Windows acceptă așa-numitul mod de aplicație consolă. Apropo, pentru unii tineri, aceasta este o revelație completă; ei nu au văzut niciodată ferestre negre cu linii de text curgând în interiorul acestor ferestre. Într-adevăr, acesta este stilul computerelor mainframe din trecutul îndepărtat și de mult dispărut de la scenă - MS-DOS. Dar aceste ferestre au un avantaj. Se pot agăța pe ecranul computerului, făcând calculele necesare, fără nicio intervenție umană, o zi, o lună și... nu pot spune cât timp. Acesta este exact ceea ce a fost necesar pentru a testa algoritmul. Următorul curs de raționament a fost următorul. Scrierea unui generator de date sursă (în general, un curriculum pentru o școală tipică și un tabel de distribuție a sarcinii didactice) va dura, desigur, ceva timp, dar odată scris, vă va permite să obțineți un număr nelimitat de sarcini de testare pentru a testa algoritmul; va fi suficient doar după rezolvarea următoarelor sarcini pentru a transfera controlul către acest generator pentru a construi o nouă (următoarea) sarcină. Se vor putea obține date statistice sigure despre calitatea algoritmului testat. De exemplu, 80 la sută din probleme sunt rezolvate, dar 20 nu, sau invers. Trebuie doar să faceți numărul de sarcini de rezolvat suficient de mare. Acesta este exact ceea ce trebuia făcut - o aplicație de consolă, aceasta a fost calea de ieșire din această situație. După cum se spune, un basm se spune rapid, dar lucrurile nu se fac repede. A veni cu un generator de date sursă care reflectă în mod adecvat toate situațiile practice, chiar și într-o școală tipică, s-a dovedit a nu fi o sarcină atât de ușoară. Dar într-o zi vise nebune s-au împlinit..., mai devreme sau mai târziu..., indiferent cât de mult ar fi legat șirul... Generatorul de date sursă este terminat, algoritmul egiptean antic este programat, „toate erorile sunt corectate”, sunt stabilite capcane pentru erori, sunt instalate verificări ale rezultatelor calculului. La început, programul oferea un număr mic de clase pentru programare - de la 9 la 14 (școală mică). Soluțiile au apărut ca dintr-o mitralieră. Cu o creștere a numărului de clase - de la 15 la 21 ( liceu) deciziile s-au tras repede, dar nu mai ca dintr-o mitralieră... mai mult ca dintr-un pistol. Mai departe. Iată... o școală mare, până la patru clase în paralel, numărul total de clase de la 22 la 28. Frânele erau clar puse... Procesul a început să semene cu o rață leneșă care se cântă din picior în picior. Dar un lucru a fost plăcut - linia: „Numărul de probleme nerezolvate =” a arătat constant zero. A devenit clar. Pentru a obține date fiabile din punct de vedere statistic care confirmă posibilitatea de a rezolva orice problemă rezonabilă într-un mod complet automat, un computer nu este suficient. Mici calcule aritmetice au arătat că pentru a opera cu numere de șase sau mai multe cifre despre numărul de probleme rezolvate, sunt necesare cel puțin o duzină de calculatoare. Iar pentru o duzină de computere (puteți estima cantitatea de căldură generată de aceste computere și zgomotul constant emis de ventilatoare) este necesară o cameră separată. Dar nimic, nu ne poți opri... O duzină, nu o duzină, dar șapte computere cu patru nuclee au fost în curând puse în funcțiune. Drept urmare, după un an de „acțiuni violente” ale algoritmului egiptean antic în legătură cu venerabilii șapte quad-core și după zeci de milioane de probleme rezolvate, putem spune cu încredere: - „Orice, fără excepție, rezonabil , sarcină corect specificată pentru calcularea programului școlar, poate fi rezolvată fără intervenția umană într-un mod complet automat.” Totodată, timpul total de calcul pentru 1000 de probleme este aproximativ următorul: pentru un grup de probleme de la 9 la 14 clase = 20 de minute, pentru un grup de probleme de la 15 la 21 de clase = 40 de minute, pentru un grup de probleme de la 22 la 28 de ore timpul de calcul este de la 6 la 8 ore, i.e. pentru acest grup, în medie, aproximativ o jumătate de minut per sarcină. Astfel, a fost finalizat cu succes un experiment de peste un an de verificare (testare) a algoritmului de compilare a unui program școlar într-un mod complet automat, fără participarea umană, pentru care au fost rezolvate zeci de milioane de sarcini de testare. Pentru aproape toate sarcinile de testare (date inițiale), a fost construit un program complet care a îndeplinit toate restricțiile.

8 Model logic al viitorului software

După finalizarea testării anuale a algoritmului de program școlar, a apărut întrebarea: „Ce urmează?” În primul rând, ceea ce este izbitor este că o aplicație de consolă nu poate convinge pe nimeni că problema creării unui program școlar chiar se rezolvă... cu excepția poate programatorului care a scris această aplicație. Chiar și un elev de clasa a cincea cu performanțe scăzute poate crea o fereastră neagră cu linii precum: „Număr de probleme rezolvate = 12547564” care apar din când în când acolo. Astfel, o persoană normală pur și simplu nu va crede un astfel de program, ca să spunem așa, și va face ceea ce trebuie. Este imposibil să faci fără o aplicație câștigătoare cu drepturi depline. Dar mai întâi, nu ar fi o idee rea să decideți asupra obiectivelor creării unei astfel de aplicații. Cel puțin două astfel de ținte sunt la vedere. Aceasta este crearea unui software cu drepturi depline cu toate consecințele care decurg și crearea unei aplicații care demonstrează funcționarea algoritmului, care este mai bine sau mai rău capabilă să convingă o persoană că nu este înșelată. Și este clar pentru toată lumea că, în ceea ce privește intensitatea muncii, aceste două proiecte pur și simplu nu sunt comparabile. Este destul de firesc că s-a luat decizia de a merge pe calea ușoară. Bine: - „Ce se cere de la o astfel de aplicație de demonstrație câștigătoare?” În primul rând, poți chiar să pui o altă întrebare: „Ce ar trebui să fie?” In primul rand. Durerea de cap a unei interfețe de utilizator convenabilă, înțeleasă, practică și frumoasă este imediat ușurată. Pentru un astfel de demo, o interfață foarte primitivă este suficientă. Singurul lucru important este că utilizatorul vede datele inițiale care sunt oferite programului pentru calcul (generate în mod natural la întâmplare) și rezultatele acestui calcul. Cel puțin teoretic, utilizatorul va avea ocazia să verifice consistența datelor sursă și rezultatul obținut cu ajutorul programului. Este dificil un astfel de test?... Răspunsul este fără echivoc: „Da, nu e ușor...”. Mai ales dacă știi câte capcane și verificări sunt conținute în aplicația de consolă pentru verificarea constantă a rezultatelor obținute, precum și dimensiunea codului acestor verificări și capcane. Există și alte metode de persuasiune?... Poate, transferând tuturor celor interesați... codul sursă al programului. Dar, de exemplu, acest lucru nu este acceptat la Microsoft. În al doilea rând. Problema fișierului de ajutor, manualului de utilizare și a altor clopote și fluiere absolut necesare pentru software-ul cu drepturi depline este eliminată. Asta au făcut. Pe forma principală a aplicației au fost blocate peste douăzeci de butoane, dintre care doar unul este activ la fiecare etapă a calculului, fără a număra butoane precum - Despre program, Începe o nouă sarcină, Închide-mă. Când faceți clic pe acest buton, apare o fereastră cu un buton Generare date. Faceți clic pe Generare de date, iar datele generate apar într-o fereastră pe fundal alb. Închidem fereastra. Butonul care tocmai a fost apăsat se stinge (nu mai este activ), următorul care trebuie apăsat devine activ. Clic. Se deschide următoarea fereastră. Și există un buton Creați un program. Faceți clic pe Build program, apare programul construit. Oricine poate verifica dacă programul este construit corect sau nu. Și așa mai departe până când toți pașii algoritmului au fost finalizați. Și apoi puteți face clic pe butonul mare Start a new task. Și așa mai departe într-un cerc. Sau faceți clic pe butonul Închide-mă. La prima vedere poate părea: „Tot acest program demonstrativ este opera unei maimuțe”. Dar asta nu este adevărat. Din cel puțin trei motive. In primul rand. În timpul dezvoltării demo-ului, sa decis destul sarcină importantă dezvoltarea viitoarei arhitecturi software cu drepturi depline. Și anume. Necesar în cel mai brutal mod separați „creierul” de „tors”. Pentru a spune mai clar, separați codul algoritmului de calcul al programului de codul generatorului de date sursă și codul interfeței cu utilizatorul. Întregul cod al algoritmului de calcul al programului este concentrat într-o bibliotecă legată dinamic, astfel încât interfața cu utilizatorul, în calitate de client, poate trimite sarcini către biblioteca dinamică, care acționează ca un server, pentru a construi diverse programe compilate la diferiți pași ai algoritmului . Acest lucru va permite pe viitor, fără a atinge codul algoritmului de calcul al orarului, să experimenteze diferite opțiuni de interfață până când utilizatorii sunt complet și complet mulțumiți. În al doilea rând. În ciuda caracterului său primitiv, interfața demo este un model logic al viitoarei interfețe de utilizator convenabile, ușor de înțeles, practice și frumoase. De exemplu, implementează capacitatea de a reveni la pasul anterior al algoritmului, iar această capacitate, la rândul său, a influențat structura datelor programului. În plus, interfața demo acceptă o astfel de caracteristică a algoritmului cum ar fi trecerea de la pas la pas într-o secvență strictă, care asigură integritatea datelor și protecția acestora împotriva modificărilor incorecte. Al treilea. Din nou, repetăm, în ciuda caracterului său primitiv, interfața de utilizator existentă este potrivită pentru analiză model matematic situaţii practice care apar la întocmirea programului şcolar adoptat în această programă. O astfel de analiză sau examinare ar putea fi efectuată de specialiști care sunt bine familiarizați cu tema, de exemplu, directori cu suficientă experiență de lucru care predau matematică la școală. Pentru a înțelege detaliile calculului, desigur, calificările lor nu sunt suficiente (și nimeni nu ar avea o asemenea dorință), dar datorită culturii matematice generale pe care au dobândit-o, ei pot discerne omisiuni evidente în formularea problemei mult. mai bun decât orice matematician profesionist care este familiarizat cu munca școlii doar prin auzite sau prin diverse publicații. "Deci ce urmează?" Și apoi dezvoltarea de software cu drepturi depline, în conformitate cu toate legile și regulile ingineriei software, care acum, în complexitate, nu depășește software-ul convențional pentru sistemele ERP. Doar nu întrebați: - „Cât va dura acest lucru și care este intensitatea muncii pentru dezvoltarea unui astfel de software?...”. Și mai ales nu întrebați: - „Cât va costa o astfel de dezvoltare?...”.

9 Probleme cu modelul de afaceri

După cum s-a estimat anterior, piața globală a software-ului pentru programul școlar, într-un mod complet automat, variază între 100 de milioane și 500 de milioane de dolari SUA. Cu toate acestea, această piață, după cum spun investitorii de risc, trebuie încă „cresificată”. Și aici, cel puțin două probleme apar destul de clar. O problemă este: - „Scusit”. Ne-am oprit deja acolo. Și un altul, în opinia noastră mai serios, este: - „Reputația unui astfel de software”. Pentru a folosi o metaforă, reputația unui astfel de software amintește de o groapă de gunoi murdară, cu gunoi de grajd și fumegătoare, ca după bătălia de pe Câmpul Kulikovo. Mai mult decât atât, fumul este atât de acru încât vrei să închizi ochii și să nu mai respiri. După cum am menționat mai devreme, atunci când vorbiți cu potențiali clienți ai software-ului de programare școlară, conversația se poate transforma cu ușurință în înjurături. „Ne-am săturat... de automatizarea noastră, de spațiul de informare al școlii și de agendele electronice, să lucrăm în pace...” Ce se poate face pentru a schimba reputația unui astfel de software și atitudinea directorilor față de acesta de la ostil la cel puțin neutru? Nu vom vorbi încă despre o imagine pozitivă. În urmă cu vreo zece ani, încă se mai putea spune că computerele din birourile directorilor erau pentru mobilier, ca un accesoriu indispensabil al bursei și al progresivității. Că, în cel mai bun caz, se folosește un computer în locul unei mașini de scris (deși, așa cum am menționat mai devreme, tocmai această circumstanță a contribuit la o înflorire atât de rapidă a industriei computerelor personale). În prezent situația s-a schimbat. Mulți au încercat deja... Tocmai am discutat despre rezultatele unor astfel de teste. Tot ce rămâne este să o luăm de la capăt. Și anume. Din modelul de afaceri al distribuirii unor astfel de programe. Chiar și fără să priviți foarte atent, puteți observa că acest model de afaceri a rămas practic neschimbat în ultimii 15 ani. Găsiți site-ul programului, descărcați versiunea demo, emiteți o factură de plată... Totul pare să fie clar cu factura de plată. De asemenea, este imposibil să faci fără site-ul web al programului. Dar ce zici de versiunile demo? Dar cu versiunile demo totul este diferit. Opțiunea unu. Versiunea noastră demo nu diferă de versiunea de lucru a programului, dar nu puteți salva datele introduse și nu puteți imprima rezultatele obținute. Și așa, totul funcționează. Este posibil să folosiți o astfel de versiune demo pentru a evalua toate avantajele și dezavantajele programului? După cum s-a menționat mai devreme, pentru a introduce toate datele inițiale, oricât de scârțâitoare este anunțul de aproximativ o oră, maxim o oră și jumătate, de fapt, este nevoie de minim 8 - 10 ore de muncă continuă și minuțioasă (plictisitoare ca naiba). O persoană normală, și cu atât mai mult un utilizator care începe să lucreze cu un program pentru prima dată, atunci când trebuie să învețe simultan cum să lucreze cu programul și cu precizie, fără erori, să introducă un munte de date inițiale, nu va putea pentru a face asta dintr-o singură mișcare. Este nevoie de cel puțin două, sau chiar trei zile (ori). Acum imaginați-vă teama începătorului că puterea se va opri cu siguranță sau ceva se va reporni. Ei bine... nu va apărea persoana normala dorința de a folosi o astfel de versiune demo. Așadar, fie decideți să cumpărați un „porc într-o pistă”, știind despre „potrivele de marketing” ale unor dezvoltatori, fie, așa cum se întâmplă cel mai adesea, apăsați tasta Del cu amărăciune pentru timpul pierdut. Pentru a fi corect, trebuie menționat că aceiași dezvoltatori au venit cu o altă opțiune. Am făcut un „breaker” pentru programul nostru. Un utilizator nebănuit și bun, care și-a oprit anterior conștiința cu o cheie mică, descarcă o copie ilegală (demo + hack). Se instalează, se întrerupe și... totul funcționează... După cum se spune, folosește-l pentru sănătatea ta... Adevărat, după aproximativ jumătate de an, programul te va anunța că intră în modul demo și pentru salvați-vă datele, vă rog să fiți atât de amabili..., contactați dezvoltatorul pentru o factură... Privind din afară astfel de trucuri, această opțiune pare, până la urmă, mai sinceră. Deși, desigur, utilizatorul încearcă să înșele producătorul, producătorul îl înșală pe utilizator..., de altfel, promițându-i că în câteva minute după introducerea tuturor datelor inițiale va primi un program gata făcut. Este sigur să spunem că marea majoritate a utilizatorilor nu vor ști niciodată că datele lor au fost expuse unei amenințări reale. După ce a petrecut 15 - 20 de ore lucrând cu programul și convins de inutilitatea acestuia, strigând: - „Toate programele, ca și bărbații, sunt așa...” potenţiali cumpărătorișterge cu furie acest program de pe computerul lor. Și după o oră sau o oră și jumătate, liniștiți, ținându-și răsuflarea, își spun: „Ce deștept sunt... la urma urmei, sunt deștept că nu plătesc bani pentru asta..., mama mi-a spus: „Nu iei un porc într-o picătură”. Varianta a doua. Versiunea noastră demo nu diferă de versiunea de lucru, există o singură limitare, suma maxima clase - cinci. Și așa, totul funcționează. Ca urmare, o astfel de declarație apare pe forum. „Am văzut programul tău, dacă pot să spun asta. Și a introdus asta, nimic - patru clase. Și ea mi-a spus: „Nu pot să-mi fac un program”. Poți să-l bagi în... naibii de speculatori.” Aici ne confruntăm cu un caz în care dezvoltatorii au găsit aventuri pe „... (capul)” lor. Cei care cred că a crea un program pentru o școală cu patru clase este mult mai ușor decât, de exemplu, cu douăzeci, se înșală profund. Din acest motiv, la testarea algoritmului de programare „Egipteanul antic”, s-a decis ca la generarea datelor de testare, pentru numărul minim de clase, să se aleagă numărul nouă. Acest lucru se explică uneori prin imposibilitatea întocmirii automate a unui tabel pentru distribuirea sarcinii didactice. Mai simplu spus, distribuiți sarcina între un număr mic de clase și, în consecință, un număr mic de profesori. Aparent, astfel de trucuri pot fi executate doar de o mână (sau ochi, dacă doriți) foarte experimentat al unei persoane. Opțiunea trei. Bine atunci. Utilizați programul nostru. Dar, două săptămâni. Și în două săptămâni totul s-a terminat. „Oprim apa...” Este posibil să stăpânești programul în două săptămâni și să-i evaluezi toate avantajele și dezavantajele? Să punem mâna pe inimile noastre: „Poate că este posibil...”. Dar cu o singură condiție. Trebuie să încetezi să faci orice altceva. A cuvântul preferat director: - „Ocupat”. „Oh, ocupat. Sunt atât de ocupat încât nici nu am timp să respir.” Va renunța directorul la tot ce există în lume timp de două săptămâni și se va scufunda într-un program de orar pentru această perioadă? După cum spun oamenii de știință: „Este greu de spus...”. Pe scurt, totul este rău... Și atât de rău, și atât de incomod... Unde să cauți o ieșire? Poate chiria?

10 Model de afaceri pentru utilizarea software-ului SaaS

Inițial, întreaga industrie a calculatoarelor a folosit un model de afaceri de închiriere - primele computere costau mulți bani și puterea lor de calcul era închiriată clienților. Odată cu apariția Internetului, vechiul model de afaceri a fost reînviat, dar pe o bază tehnologică fundamental diferită. SaaS(Engleză) software ca serviciu - software ca serviciu) - un model de afaceri pentru vânzarea și utilizarea software-ului în care furnizorul dezvoltă o aplicație web și o gestionează în mod independent, oferind clientului acces la software prin Internet.

Principala diferență dintre SaaS și modelul vechi este că anterior clienții accesau computerele direct, în loc să folosească rețele globale. Deoarece modelul SaaS este axat pe furnizarea de servicii prin Internet, dezvoltarea lui este direct legată de dezvoltarea rețelei globale. Au apărut primele companii care au oferit software ca serviciu tarile vesticeîn 1997 - 1999, iar acronimul SaaS a intrat în uz pe scară largă în 2001. Se pare că în „cazul nostru dificil”, acest model de afaceri este cel mai optim, și poate chiar singurul acceptabil. Acesta va salva clienții potențiali de a-și asuma riscuri cu privire la o sumă mare bani atunci când plătiți pentru un produs software dintr-un grup de produse cu o reputație aproape complet deteriorată. Folosind un model de afaceri de închiriere, clientul se poate convinge calm și treptat că produsul oferit este ceea ce are cu adevărat nevoie și că așteptările sale de la utilizarea produsului coincid cu ceea ce primește de fapt. Am vorbit anterior în detaliu despre așteptările directorilor de la acest tip de program.

11 În loc de concluzie

Uneori, unii oameni întreabă sarcastic: „Ai un plan de afaceri?...” Da. Și, în același timp, foarte simplu. „Rezolvați în mod constant problemele emergente pe măsură ce apar...” În ultimă instanță, puteți utiliza modelul SaaS (plan de afaceri - la cerere). Dacă cineva are nevoie de el, se va putea planifica totul în detaliu și nici un contabil nu va găsi vina!

Bibliografie

Baltak S.V., Sotskov Yu.N. Construirea unui program de antrenament pe baza colorării vârfurilor graficului // Informatică, 2006, Nr. 3, p. 58 - 69. Borodin O.V. Colorări și reprezentări topologice ale graficelor // Analiză discretă și cercetare operațională. 1996, Vol. 3, Nr. 4, p. 3 - 27. Borodin O.V. Generalizarea teoremei lui Kotzig și colorarea prescrisă a muchiilor graficelor plane // Note matematice. 1990, Volumul 48, Numărul 6, p. 22 - 28. Vizing V.G. Colorarea vârfurilor graficului sub restricții majoritare privind culorile utilizate // Analiză discretă și cercetare operațională. 2009, Vol. 16, Nr. 4, p. 21 - 30. Vizing V.G. Cu privire la colorarea conexă a graficelor în culori prescrise // Analiză discretă și cercetare operațională. 1999, Seria 1, Volumul 6, Nr. 4, p. 36 - 43. Gafarov E.R., Lazarev A.A. Metode matematice de optimizare în întocmirea orarelor educaţionale // Noile tehnologii informaţionale în educaţie. Culegere de lucrări științifice. - M.: 1C-Publishing, 2013, Part 2, p. 51 - 55. Gary M., Johnson D. Calculatoare și probleme greu de rezolvat. - M.: Mir, 1982. - 416 p. Distel R. Teoria grafurilor: Trans. din engleza - Novosibirsk: Editura Institutului de Matematică, 2002. - 336 p. Emelichev V.A., Melnikov A.I., Sarvanov V.I., Tyshkevich R.I. Prelegeri despre teoria grafurilor. - M.: Știință. Ch. ed. fizica si matematica lit., 1990. - 384 p. Ichbana D., Knepper S. Bill Gates și crearea Microsoft. - Rostov-pe-Don: Editura Phoenix, 1997. - 352 p. Karpov D.V. Colorări regulate dinamice ale vârfurilor graficului. // Note ale seminariilor științifice ale POMI. 2010, Volumul 381, p. 47 - 77. Magomedov A.M., Magomedov T.A. Interval muchie regulată 5-colorarea unui grafic bipartit pe o parte // Matematică discretă aplicată. 2011. Nr. 3(13), p. 85 - 91. Papadimitrou H., Steiglitz K. Optimizare combinatorie. Algoritmi și complexitate. Pe. din engleza - M.: Mir, 1985. - 512 p. Romanovsky I.V. Analiză discretă. Tutorial pentru studenții specializați în matematică aplicată și informatică. - Ediția a II-a, revizuită. - Sankt Petersburg: Dialectul Nevski, 2000. - 240 p. Swami M., Thulasiraman K. Grafice, rețele și algoritmi: Trans. din engleza - M.: Mir, 1984. - 455 p. Smirnov V.V. scoli si cladiri scolare Pererburg. Istoria construcției școlilor din Sankt Petersburg - Petrograd - Leningrad 1703 - 2003. - Sankt Petersburg: Editura „Ruso-Baltică centru de informatii„BLITZ”, 2003. - 144 p. Stetsenko O.P. Pe un tip de colorare a muchiilor graficului în culori prescrise // Matematică discretă. 1997. Volumul 9, numărul 4, 92 - 93. Urnov V.A. Program - cea mai populară stație de lucru din educație // Informatică și educație. 2001, nr. 4, p. 47 - 52. Harari F. Teoria grafurilor. - M.: Mir, 1973. - 302 p. Chiar S., Itai A., Shamir A. Despre complexitatea orarului și problemelor fluxului multicommodity // SIAM J: Comput. Vol. 5, nr. 4, decembrie 1976, 691-703

Linkuri:

Prin urmare, întregul etaj unde se afla un astfel de computer a fost acoperit cu o plasă metalică fină pentru a exclude posibilitatea „spionării electronice” din partea inamicilor jurați ai regimului sovietic. Însăși sarcina de a întocmi un orar educațional (fără ajutorul tehnologiei informatice) este aparent veche de cel puțin trei sute de ani. Au fost înregistrate cazuri când directorii – în general, cultural și oameni educați, după ce au auzit fraza: „Un program pentru crearea unui program școlar”, au trecut imediat la înjurături. Aici nu ne vom opri asupra teoriei problemelor NP-hard, deoarece o discuție a acestei probleme ar îndepărta cititorul mult de subiectul care ne interesează și ar fi, de asemenea, în mod evident prematură și superficială. Cititorului interesat i se poate recomanda să apeleze la poate cea mai citată publicație pe această temă din țara noastră. Pentru a înțelege pe deplin acest articol, problemele NP-hard pot fi înțelese ca probleme practic de nerezolvat, deși aceasta nu este o „traducere” complet exactă. Aceasta se referă la publicațiile în limba rusă, dintre care nu sunt atât de multe în comparație cu cele în limba engleză. Cel mai probabil, numărul acestora nu depășește contribuția totală a Federației Ruse în domeniul înaltei tehnologii, care este estimată la 0,4 - 0,6% (de la zero virgulă patru la sută la zero virgulă șase la sută) din totalul global. Adevărat, există un ordin de mărime mai puține științe fizice și matematice. Vyacheslav Sergeevich Tanaev (1940 - 2002) - matematician belarus, director al Institutului de Cercetare Cibernetică al Academiei Naționale de Științe a Republicii Belarus, doctor în științe fizice și matematice (1978), profesor (1980), membru titular al Naționalului Academia de Științe din Belarus (2000). Domeniu de interese științifice: cercetare operațională, teoria orarului, metode de optimizare. Mikhalevich Vladimir Sergeevich (1930 - 1994) - matematician și cibernetician ucrainean, academician al Academiei de Științe a Ucrainei, academician al Academiei de Științe din Rusia (1991; academician al Academiei de Științe a URSS din 1984). Lucrează pe teoria soluțiilor statistice optime, analiza sistemului, cibernetica teoretică și economică. Premiul de Stat URSS (1981). Cu toate acestea, transferul codului generator de date sursă și codul pentru verificarea corectitudinii programului compilat este destul de posibil, deoarece acest cod nu reprezintă nicio valoare comercială. În onoarea vechii preotese egiptene Anush, programul, în manieră rusă, a fost numit Annushka.

Și chiar... poate... Dar ce! un vis gol.
Nu se va întâmpla asta.
Soarta este invidioasă și diabolică!
Oh, de ce nu sunt tutun!... LA FEL DE. Pușkin

Fișier tradus din T E X de T T H, versiunea 4.03.
Pe 27 iulie 2013, ora 00:53.