Engineer Laid Off After 2 Months First Job Site Www.Reddit.Com Information Technology Problem Solving – The 6 Principles of Scientific Problem Solving

You are searching about Engineer Laid Off After 2 Months First Job Site Www.Reddit.Com, today we will share with you article about Engineer Laid Off After 2 Months First Job Site Www.Reddit.Com was compiled and edited by our team from many sources on the internet. Hope this article on the topic Engineer Laid Off After 2 Months First Job Site Www.Reddit.Com is useful to you.

Information Technology Problem Solving – The 6 Principles of Scientific Problem Solving

Questo documento spiegherà un approccio scientifico alla risoluzione dei problemi. Sebbene sia stato scritto per affrontare problemi relativi all’Information Technology, i concetti potrebbero essere applicabili anche in altre discipline. I metodi, i concetti e le tecniche descritti qui non sono una novità, ma è scioccante il numero di “risolutori di problemi” che non li usano. Nel mezzo includerò alcuni esempi di vita reale.

Perché i risolutori di problemi indovinano invece di seguire un approccio scientifico alla risoluzione dei problemi? Forse perché sembra più veloce? Forse una mancanza di esperienza nella risoluzione efficiente dei problemi? O forse perché sembra un duro lavoro farlo scientificamente? Forse mentre continui a indovinare e non risolvi davvero, generi più entrate e aggiungi un po ‘di sicurezza sul lavoro? O forse perché violi il primo principio del problem solving: capire il problema.

Principio n. 1. Comprendi il *vero* problema.

Non è ovvio che prima di poter risolvere, devi capire il problema? Forse. Ma la maggior parte delle volte il risolutore inizierà a risolvere senza conoscere il vero problema. Ciò che il cliente o l’utente descrive come “Il problema” normalmente è solo il sintomo! “Il mio computer non vuole accendersi” è il sintomo. Il vero problema potrebbe essere che l’intero edificio è senza corrente. “Ogni volta che provo ad aggiungere un nuovo prodotto, ricevo un messaggio di errore” è il sintomo. Qui il vero problema potrebbe essere “Solo gli ultimi 2 prodotti che ho provato ad aggiungere hanno dato un errore ‘Prodotto già esistente'”. Un altro esempio classico: “Non funziona niente”…

Inizi la tua indagine definendo il “vero problema”. Ciò comporterà porre domande (e talvolta verificarle) e fare alcuni test di base. Poni all’utente domande come “quando è stata l’ultima volta che ha funzionato correttamente?”, “Da quanto tempo usi il sistema?”, “Funziona su un altro PC o un altro utente?”, “Qual è il messaggio di errore esatto? ” ecc. Chiedere se possibile una serigrafia dell’errore. I tuoi test di base saranno per garantire che l’attrezzatura end-to-end sia attiva e funzionante. Controlla il PC dell’utente, la rete, il server Web, i firewall, il file server, il back-end del database, ecc. Nel migliore dei casi, individuerai già il problema. Nel peggiore dei casi è possibile eliminare molte aree per la causa del problema.

Un esempio di vita reale. Il sintomo secondo l’utente: “Il sistema si blocca in orari casuali quando effettuo ordini”. L’ambiente: l’utente inserisce i dettagli dell’ordine in un modulo in un’applicazione mainframe. Quando tutti i dettagli sono stati completati, l’utente eliminerà il modulo. Il mainframe invia quindi questi dettagli tramite il software di comunicazione a un sistema client/server Oracle presso l’impianto. Il sistema Oracle eseguirà la pianificazione della capacità e restituirà un errore o una data di ordine prevista al sistema mainframe. Questo problema è abbastanza serio, perché puoi perdere clienti se provano a fare ordini e il sistema non li accetta! Per tentare di risolvere questo problema, le persone hanno iniziato indagando: 1) Il carico e la capacità dell’hardware del mainframe 2) Monitorare il carico di rete tra il mainframe e il sistema Oracle 3) Assumere consulenti per eseguire il debug del software di comunicazione 4) Debug della capacità di Oracle sistema di pianificazione Dopo aver trascorso un paio di mesi non sono riusciti a risolvere il problema.

È stato chiamato lo “Scientific Problem Solver”. Ci è voluto meno di un giorno e il problema è stato risolto! Come? Il risolutore trascorre la giornata dall’utente per vedere quale fosse il “vero problema”. È stato riscontrato che il problema si verifica solo con gli ordini di esportazione. Esaminando la schermata di acquisizione e le azioni dell’utente, è emerso che con gli ordini di esportazione l’ultimo campo del modulo è sempre lasciato vuoto e l’utente non ha toccato questo campo. Il sistema non si bloccava, attendeva che l’utente premesse “tab” un’altra volta. Problema risolto. Si può notare che lo “Scientific Problem Solver” aveva una conoscenza molto limitata del mainframe, del sistema di cattura degli ordini, del software di comunicazione e del sistema di pianificazione della capacità Oracle. E questo ci porta al principio n. 2.

Principio n. 2. Non aver paura di iniziare il processo di risoluzione, anche se non capisci il sistema.

Quante volte hai sentito “Non posso toccare quel codice, perché è stato sviluppato da qualcun altro!”, o “Non posso aiutarti perché sono un consulente delle risorse umane e questo è un problema finanziario”? Se la tua lavatrice non vuole accendersi, non è necessario essere un ingegnere elettrico, uno specialista nella riparazione di lavatrici, un tecnico o qualsiasi altro specialista per eseguire una ricerca guasti di base. Assicurati che la spina funzioni. Controlla l’interruttore di scatto, ecc. “Non ho mai visto questo errore prima” non dovrebbe impedirti di tentare di risolvere. Con il messaggio di errore e un motore di ricerca su Internet, puoi ottenere molti punti di partenza.

In ogni sistema complesso ci sono un paio di principi fondamentali di funzionamento. Il sistema A che legge i dati dal sistema B può essere terribilmente complesso (forse uno spettrometro da laboratorio che legge i dati da un computer logico programmabile tramite una porta RS-232). Ma alcune nozioni di base da testare: entrambi i sistemi sono alimentati? C’è un messaggio di errore nel registro eventi su uno di questi sistemi? Puoi “pingare” o rintracciare un pacchetto di rete da un sistema all’altro? Prova un cavo di comunicazione diverso. Cerca su Internet il messaggio di errore.

Una volta stabilito qual è il problema, è necessario iniziare a risolverlo. A volte l’indagine iniziale ti indirizzerà direttamente alla soluzione (accendi l’alimentazione, sostituisci il cavo difettoso, ecc.). Ma a volte il vero problema è di per sé complesso, quindi il prossimo principio è risolverlo in modo semplice.

Principio n. 3. Conquistalo semplice.

Iniziamo questa sezione con un esempio di vita reale. In determinate condizioni, una stored procedure si bloccherà. La stored procedure richiede normalmente circa un’ora per essere eseguita (quando non è sospesa). Quindi, lo sviluppatore ha provato a eseguire il debug. Apporta alcune modifiche e attendi un’altra ora circa per vedere se il problema è stato risolto. Dopo alcuni giorni lo sviluppatore si arrese e il “Problem Solver” prese il sopravvento. Il “Problem Solver” aveva a sua disposizione la conoscenza in condizioni streghe che la stored procedure si sarebbe bloccata. Quindi, è stato un semplice esercizio fare una copia della procedura, e poi con questa copia rimuovere tutto il codice non necessario. Tutti i parametri sono stati modificati con valori codificati. I bit di codice sono stati eseguiti alla volta e i set di risultati sono stati quindi nuovamente codificati nella copia della procedura. Entro 3 ore il problema è stato risolto. È stato scoperto un ciclo infinito.

Quello che ha fatto il “Problem Solver” è stato replicare il problema e allo stesso tempo ha cercato di isolare il codice che ha causato il problema. In tal modo, la procedura memorizzata complessa (e dispendiosa in termini di tempo) è diventata qualcosa di semplice e veloce.

Se il problema è all’interno di un’applicazione, creare una nuova applicazione e provare a simulare il problema all’interno della nuova applicazione nel modo più semplice possibile. Se il problema si verifica quando viene chiamato un determinato metodo per un determinato controllo, provare a includere solo questo controllo nell’applicazione vuota e chiamare tale metodo con valori hardcoded. Se il problema riguarda l’SQL incorporato all’interno di un’applicazione C#, provare a simulare l’SQL all’interno di uno strumento di query del database (come SQL*Plus per Oracle, Query Analyzer per SQL Server o utilizzare il codice in MS Excel tramite ODBC nel database ).

Nel momento in cui puoi replicare il problema in modo semplice, sei sulla buona strada per risolverlo per oltre l’80%.

Se non sai dove si trova il problema nel programma, usa DEBUG.

Principio n. 4. Debug.

La maggior parte degli strumenti di sviluppo delle applicazioni viene fornita di serie con un debugger. Se è Macromedia Flash, Microsoft Dot Net, Delphi o qualsiasi altro ambiente di sviluppo ci sarà una sorta di debugger. Se lo strumento non viene fornito di serie con un debugger, puoi simularne uno.

La prima cosa da fare con il debugger è determinare dove si trova il problema. Puoi farlo aggiungendo punti di interruzione nelle aree chiave. Quindi esegui il programma in modalità debug e saprai tra quali punti di interruzione si è verificato il problema. Approfondisci e troverai il punto. Ora che sai dov’è il problema, puoi “conquistarlo in modo semplice”

Un’altra bella caratteristica della maggior parte dei debugger include la possibilità di guardare variabili, valori, parametri, ecc. mentre si procede nel programma. Con questi valori noti in determinati passaggi, puoi codificarli nella tua “versione semplificata” del programma

Se uno strumento di sviluppo non supporta il debug, puoi simularlo. Inserisci i passaggi nel programma che emette valori variabili e messaggi “ciao sono qui” sullo schermo, su un file di registro o su una tabella di database. Ricordati di rimuoverli quando il problema è risolto … non vuoi che il tuo file system sia ingombrato o pieno di file di registro!

Principio n. 5. C’è una ricchezza di informazioni sul back-end del database che aiuterà a risolvere un problema.

Il “Problem Solver” è stato chiamato per aiutare a risolvere un problema molto complicato. Un progetto stava migrando il sistema da un mainframe alla tecnologia client-server. Tutto è andato bene durante i test, ma quando i sistemi sono entrati in funzione, all’improvviso ci sono stati parecchi e abbastanza casuali “Errori di protezione generale”. (L’errore GPF era la trappola di errore generale in Windows 95 e 98). Si è tentato di semplificare il codice, si è tentato il debug, ma è stato impossibile replicare. In ambiente LAB il problema non si verificherebbe! Il debug dei messaggi di traccia nei file di registro ha indicato che il problema si è verificato in modo molto casuale. Alcuni utenti l’hanno sperimentato più di altri, ma alla fine tutti gli utenti li capiranno! Problema interessante.

Il “Problem Solver” ha risolto questo problema dopo aver iniziato ad analizzare il back-end del database. Non sono sicuro se sia stato per caso o perché si è sistematicamente mosso nella giusta direzione a causa di un approccio scientifico. Tracciando ciò che sta accadendo a livello di back-end, è emerso che tutte queste applicazioni creavano sempre più connessioni al database. Ogni volta che un utente avvia una nuova transazione, viene stabilita un’altra connessione al database. La somma totale delle connessioni è stata rilasciata solo quando l’applicazione è stata chiusa. Man mano che l’utente passa a nuove finestre all’interno della stessa applicazione, vengono aperte sempre più connessioni e, dopo un numero specifico di connessioni, l’applicazione ne avrà abbastanza e quindi si bloccherà. Si trattava di un errore di programmazione in un modello utilizzato da tutti gli sviluppatori. La soluzione era verificare innanzitutto se un cursore per il database è già aperto, prima di riaprirlo.

Come si traccia sul database di back-end cosa sta succedendo? I principali fornitori di database dispongono di strumenti GUI che consentono di tracciare o analizzare quali query vengono attivate sul database. Ti mostrerà anche quando le persone si connettono, si disconnettono o non sono state in grado di connettersi a causa di violazioni della sicurezza. La maggior parte dei database include anche alcune tabelle del dizionario di sistema che possono essere interrogate per ottenere queste informazioni. Queste tracce a volte possono raccontare tutta la storia del perché qualcosa non funziona. Il codice di query recuperato dalla traccia può essere di aiuto per “semplificare la ricerca”. Puoi vedere dalla traccia se il programma stabilisce un contatto riuscito con il database. Puoi vedere quanto tempo impiega una query per essere eseguita.

Da aggiungere al Principio#2 (non aver paura di iniziare…); puoi analizzare queste informazioni di traccia, anche se potresti non sapere nulla sui dettagli dell’applicazione.

Ricorda però che queste tracce di back-end possono mettere a dura prova le risorse di back-end. Non lasciarli correre per troppo tempo.

Principio n. 6. Usa occhi nuovi.

Questo è l’ultimo principio. Non dedicare troppo tempo al problema prima di chiedere assistenza. L’assistenza non deve provenire da qualcuno più anziano di te. Il principio è che hai bisogno di un paio di occhi nuovi per una nuova prospettiva e talvolta un po’ di aria fresca prendendoti una pausa. L’altra persona guarderà e poi farà una o due domande. A volte è qualcosa di molto ovvio che è stato perso. A volte solo rispondendo alla domanda ti fa pensare in una nuova direzione. Inoltre, se passi ore a guardare lo stesso pezzo di codice, è molto facile iniziare a esaminare uno stupido errore. Molti problemi di equilibrio finanziario vengono risolti davanti a una birra. Potrebbe essere un cambio di scenario e/o l’atmosfera rilassata che farà emergere la soluzione. Forse è l’ossigeno fresco che è andato al cervello mentre camminava verso il pub. Forse è perché il problema è stato discusso con qualcun altro.

Conclusione

Dopo aver letto questo documento, l’autore spera che li proverai la prossima volta che incontri un problema da risolvere. Si spera che applicando questi sei principi ti renderai conto dei vantaggi che portano, piuttosto che “indovinare” la tua strada verso una soluzione.

Video about Engineer Laid Off After 2 Months First Job Site Www.Reddit.Com

You can see more content about Engineer Laid Off After 2 Months First Job Site Www.Reddit.Com on our youtube channel: Click Here

Question about Engineer Laid Off After 2 Months First Job Site Www.Reddit.Com

If you have any questions about Engineer Laid Off After 2 Months First Job Site Www.Reddit.Com, please let us know, all your questions or suggestions will help us improve in the following articles!

The article Engineer Laid Off After 2 Months First Job Site Www.Reddit.Com was compiled by me and my team from many sources. If you find the article Engineer Laid Off After 2 Months First Job Site Www.Reddit.Com helpful to you, please support the team Like or Share!

Rate Articles Engineer Laid Off After 2 Months First Job Site Www.Reddit.Com

Rate: 4-5 stars
Ratings: 7993
Views: 63004564

Search keywords Engineer Laid Off After 2 Months First Job Site Www.Reddit.Com

Engineer Laid Off After 2 Months First Job Site Www.Reddit.Com
way Engineer Laid Off After 2 Months First Job Site Www.Reddit.Com
tutorial Engineer Laid Off After 2 Months First Job Site Www.Reddit.Com
Engineer Laid Off After 2 Months First Job Site Www.Reddit.Com free
#Information #Technology #Problem #Solving #Principles #Scientific #Problem #Solving

Source: https://ezinearticles.com/?Information-Technology-Problem-Solving—-The-6-Principles-of-Scientific-Problem-Solving&id=995417

Related Posts

default-image-feature

Does.Filing Out Tax Papers During Hiring Mean You Got The.Job Got Office Organization Mess Stress? Here Are 5 Easy Steps For Organizing An Office!

You are searching about Does.Filing Out Tax Papers During Hiring Mean You Got The.Job, today we will share with you article about Does.Filing Out Tax Papers During…

default-image-feature

Does Your Employer Have To.Keep Your Job If Joining.Army Reaerve Rpoints – Earn Money Whilst Online, Get Paid Cashback For Any Purchases Made Online, Find Freebies

You are searching about Does Your Employer Have To.Keep Your Job If Joining.Army Reaerve, today we will share with you article about Does Your Employer Have To.Keep…

default-image-feature

Does Being Exhausted From Doing 2.Jobs Good For Ur.Mental Health 7 Main Reasons to Drink More Water

You are searching about Does Being Exhausted From Doing 2.Jobs Good For Ur.Mental Health, today we will share with you article about Does Being Exhausted From Doing…

default-image-feature

Do You Have To.List.A Job On Resume That Lasted Two.Months 10 Ways to Improve Family Law Courts

You are searching about Do You Have To.List.A Job On Resume That Lasted Two.Months, today we will share with you article about Do You Have To.List.A Job…

default-image-feature

Do You Have To Be A.Patient.Care.Tech.To.Get.A.Job.As.A.Nurse Hospital Information Software: Bang for the Buck

You are searching about Do You Have To Be A.Patient.Care.Tech.To.Get.A.Job.As.A.Nurse, today we will share with you article about Do You Have To Be A.Patient.Care.Tech.To.Get.A.Job.As.A.Nurse was compiled and…

default-image-feature

Do I Have To.Repay My.Check N Go If I.Lose.My Job 11 Tips For Avoiding Foreclosure In South Florida

You are searching about Do I Have To.Repay My.Check N Go If I.Lose.My Job, today we will share with you article about Do I Have To.Repay My.Check…