How Much Math Do I Need To Know For Progrmaming Why Software Engineering Isn’t Like Other Engineering Disciplines and How it Changes the Game

You are searching about How Much Math Do I Need To Know For Progrmaming, today we will share with you article about How Much Math Do I Need To Know For Progrmaming was compiled and edited by our team from many sources on the internet. Hope this article on the topic How Much Math Do I Need To Know For Progrmaming is useful to you.

Why Software Engineering Isn’t Like Other Engineering Disciplines and How it Changes the Game

S’ha estimat que hi ha més d’11 milions de desenvolupadors de programari professionals a tot el món a partir del 2014. Quan vaig començar com a programador l’any 1973, un dels barbes grisos de la primera empresa per a la qual vaig treballar em va donar alguns consells. Va dir: “Aprèn les coses que mai canvien”.

Quan vaig començar la universitat sis anys abans, l’any 1967, l’escola a la qual vaig assistir no tenia una especialitat anomenada Informàtica i, per tant, vaig fer els meus treballs de grau i postgrau en Matemàtiques fent uns quants cursos de programació d’ordinadors al llarg del camí. Aquesta va ser la manera com molts de nosaltres vam començar com a desenvolupadors de programari als anys 70.

El terme enginyeria del programari era nou en aquell moment, encunyat a la Conferència d’enginyeria del programari de l’OTAN de 1968. Aleshores es pensava que havíem d’aplicar els mètodes d’enginyeria existents al desenvolupament de programari per abordar els problemes comuns de pressupost, calendari i qualitat que en aquell moment es coneixien com la “crisi del programari”. Com a resultat, el que la majoria de la gent ha arribat a pensar com a enginyeria del programari implica activitats que s’assemblen molt a altres disciplines d’enginyeria, com ara l’enginyeria civil, mecànica i elèctrica.

A primera vista, aquesta idea sembla tenir sentit. Quan construïu alguna cosa utilitzant les altres disciplines d’enginyeria (per exemple, un pont, un edifici, una peça de maquinari especialitzada, una placa de circuit elèctric), heu d’esbrinar els requisits, dissenyar una solució, implementar-la i provar-la. Tots aquests passos també tenen sentit per al programari. Per tant, des d’aquesta perspectiva, es podria argumentar que l’enginyeria del programari s’hauria de semblar a aquestes altres disciplines d’enginyeria. Tanmateix, quan observeu més de prop el que hem après sobre el desenvolupament de programari durant els darrers quaranta anys, així com com ho ensenyem als desenvolupadors de programari actuals, aquesta analogia es trenca ràpidament.

Quan va arribar la dècada de 1990, com que la programació informàtica s’havia convertit en una part tan gran del que es deia Ciències de la Computació, moltes universitats havien afegit un curs amb un títol d'”Enginyeria de programari” al seu pla d’estudis d’Informàtica. Els llibres de text populars que s’utilitzaven en aquell moment per impartir aquests cursos incloïa el llibre de text d’Ian Sommerville titulat: “Enginyeria de programari”. De 1992 a 1994 vaig utilitzar la quarta edició d’aquest llibre de text per ensenyar Enginyeria del programari a la Universitat de Binghamton. Avui, el llibre de text d’Ian Sommerville encara s’utilitza a moltes universitats d’arreu del món, ara en la seva novena edició. Això porta a una pregunta:

Per què hem de revisar un llibre de text aproximadament cada 3-4 anys que suposadament està ensenyant als nostres estudiants els fonaments de l’enginyeria del programari?

Si mireu els llibres de text utilitzats en enginyeria civil, enginyeria mecànica i enginyeria elèctrica, la gran majoria d’aquests llibres no requereixen revisions tan sovint. Per entendre per què és així, hem de mirar més de prop el que s’ensenya a la majoria d’universitats d’arreu del món sota el nom d'”Enginyeria de programari”.

Quan mireu més de prop, trobareu que estem ensenyant a la nostra propera generació de professionals del programari tot allò que actualment és popular en termes de pràctiques i mètodes de programari. Les pràctiques i mètodes de programari populars d’avui són coneguts per paraules de moda com Agile, Use Cases, User Stories, RUP, XP, Scrum Lean, PSP, TSP i la llista continua i continua…

El problema d’aquest enfocament per a l’ensenyament de l’enginyeria del programari és que les pràctiques i els mètodes de programari sovint vénen i van i seguiran venint i anant i per això Sommerville ha d’actualitzar contínuament el seu llibre de text. Això porta a una altra pregunta:

Què passa amb aquell barba gris de la primera empresa en què vaig treballar l’any 1973 que em va dir que aprenés les coses que mai canvien? Em va donar un mal consell? Si no, què estem ensenyant a la nostra propera generació de professionals del programari respecte a les coses que mai canvien de l’enginyeria del programari?

Abans de respondre aquestes preguntes, primer donem un pas enrere i fem algunes preguntes diferents:

Existeix realment un conjunt de coses que mai canvien en l’enginyeria del programari?

Si existeixen, sabem què són?

Si sabem què són, els estem ensenyant de manera coherent a la nostra propera generació de professionals del programari perquè quan surtin de la Universitat estiguin preparats per comportar-se com a professionals del programari?

Aquest conjunt d’elements essencials d’enginyeria de programari existeix de fet. Aquesta creença ha motivat un grup internacional de voluntaris a assumir la tasca de codificar aquests elements essencials. La intenció és que aquests aspectes essencials s’ensenyin a la nostra propera generació de desenvolupadors de programari ajudant-los a preparar-los com a veritables professionals del programari.

Els voluntaris implicats en aquesta iniciativa (coneguda com a SEMAT – Software Engineering Method and Theory) treballen en aquesta tasca des de l’any 2010. L’any passat SEMAT va assolir una fita important amb l’anunci del Object Management Group, un consorci internacional d’estàndards, que han adoptat “Essence” com a estàndard OMG oficial.

Així que això porta a unes quantes preguntes més:

Què tan diferent és l’estàndard Essence del que s’està ensenyant als nostres desenvolupadors de programari avui i s’ha ensenyat durant els últims 40 anys sota el nom d’Enginyeria de programari?

I:

Les diferències realment ajudaran amb els problemes que molts creuen que encara afecten la indústria del programari pel que fa al pressupost comú, i programar els excés i la mala qualitat del programari?

Des d’una perspectiva, el que capta Essence no és nou. L’estàndard Essence inclou paraules habituals com ara, Stakeholders, Oportunity, Requirements, Software System, Team, Work i Way of Work. Però des d’una altra perspectiva el que captura Essence és dramàticament nou. De fet, alguns ho diuen com un “canvi de paradigma” que molts de la “vella guàrdia” tindran moltes dificultats fins i tot per comprendre.

Per fer-vos una idea dels canvis implicats en utilitzar Essence, torno a pensar en els meus primers dies com a programador a finals dels anys setanta. En aquells dies vaig treballar en el domini de la simulació de vol desenvolupant sistemes de programari per entrenar pilots per volar avions d’alt rendiment. Una de les meves àrees d’experiència va ser escriure programari per proporcionar capacitats de gravació/reproducció per ajudar els instructors a entrenar a joves pilots d’avions en habilitats de vol.

Recordo un projecte específic en el qual vaig treballar i un instructor pilot amb el qual vaig treballar. Després d’explicar-li com podia utilitzar el meu programari d’enregistrament/reproducció per ajudar-lo a demostrar als seus estudiants pilots on havien comès errors, va escriure emocionat una sèrie de defectes demanant canvis al meu programari.

Vaig discutir amb vehemència amb el meu gestor de programes que cap d’aquests problemes era en realitat defectes. Com que m’havia pres el temps d’explicar què era possible amb el meu programari d’enregistrament/reproducció, l’instructor pilot va començar a imaginar funcions addicionals que podien facilitar la seva feina. Va escriure les seves idees en un formulari de defecte, tot i que totes eren capacitats millorades que mai vam planejar oferir i no formaven part dels requisits.

Però el meu director de projecte no volia discutir amb el client si aquestes sol·licituds estaven o no dins de l’abast o fora de l’abast. La seva opinió era, com molts van veure el programari aleshores i encara el veuen avui en dia, que és més fàcil canviar el programari que implicar el client en una discussió.

Com que el programari és suau, tendim a considerar-lo fàcil de canviar. No és com el maquinari. El metall no es doblega fàcilment. Aquesta perspectiva canvia tot el joc quan es tracta de programari.

Aquesta capacitat de canviar el codi del programari ràpidament i de maneres infinites canvia completament la dinàmica que existeix entre els desenvolupadors de programari i les seves parts interessades, inclosos els gestors de programes i els clients. Una de les maneres en què aquesta diferència s’exemplifica és a mesura que els usuaris es familiaritzen amb el programari, sovint veuen noves maneres en què els canvis al programari podrien facilitar la seva feina com ho va fer el meu client instructor pilot a finals dels anys setanta.

Ara sabem per experiències que hi ha altres dimensions de l’enginyeria de programari que són fonamentals per a pràctiques professionals efectives d’enginyeria de programari. Aquestes altres dimensions ens porten més enllà de la facilitat amb què es pot canviar el codi. Fins ara, aquestes dimensions addicionals no han rebut l’atenció que mereixen.

Quan canvieu el codi, també podeu estar afectant els requisits i també podeu afectar altres capacitats del sistema de programari provat anteriorment. Canviar el codi significa treball addicional, proves addicionals, possiblement canvis als manuals d’usuari de suport, etc. Tot això afecta el pressupost i el calendari, i introdueix un risc addicional per a la qualitat del programari.

Si bé, d’una banda, la capacitat de canviar el codi del programari ràpidament aporta un gran poder a la indústria del programari, també significa que els professionals del programari han d’estar cada cop més en sintonia amb la seva manera de treballar, l’impacte i el temps que es necessita per fer el treball addicional. , i el risc en fer canvis ràpids no planificats. El moviment àgil dels darrers deu anys ha proporcionat un gran servei per ajudar la comunitat del programari a entendre aquesta gran diferència relacionada amb l’enginyeria del programari, inclosa la importància d’una interacció precoç i continuada amb les parts interessades i la importància que els desenvolupadors de programari estimin el cost del seu propi treball.

Tot i que la comunitat d’enginyeria de programari ha après molt de les altres disciplines d’enginyeria, també ha après la importància crítica d’aquestes altres dimensions que aporten diferències amb les experiències anteriors d’enginyeria. Aquestes diferències fan que els desenvolupadors de programari s’hagin de formar de maneres noves i diferents per ser professionals de programari efectius.

Poc després de l’inici de la iniciativa SEMAT el març de 2010, un dels signants inicials de la SEMAT em va enviar un esborrany d’un llibre que estava treballant per revisar. Watts Humphrey, que havia planejat ser molt actiu en els primers treballs del SEMAT, es va emmalaltir just quan el treball del SEMAT s’estava preparant i em van demanar que l’ajudés a tirar endavant el seu esforç previst. A finals d’agost d’aquell mateix any, Watts em va enviar el següent correu electrònic uns mesos abans de la seva mort. Va acceptar que pogués compartir aquest correu electrònic amb altres persones:

Paul, pels teus comentaris, sembla com si entenguéssiu el sentit del meu llibre, pel qual estic agraït… la resposta correcta i la que més m’interessava buscar amb SEMAT, es refereix a com podem assegurar-nos que Els professionals del programari estan degudament formats i tenen un conjunt adequat d’actituds i habilitats professionals fins i tot abans d’arribar a la indústria. Tinc l’esperança que l’esforç de SEMAT eventualment pugui encapçalar l’impuls per aconseguir que la comunitat acadèmica torni a enfocar els seus programes a ensenyar als professionals del programari a actuar com a professionals i a gestionar-se.

Quan ho facin, els seus graduats podran negociar amb la seva direcció i fer una feina superior… Això és el que haurien de fer els professionals… Un bon començament en aquesta direcció seria convèncer-los de la necessitat de comptar amb gent de programari. mesurar el seu propi treball. Com que el treball amb programari és, com hem dit, un treball de coneixement, qualsevol mesura realment precisa l’han de prendre els mateixos professionals del programari. …Watts Humphrey

Watts Humphrey ha estat conegut com el pare de la qualitat del programari. Després de completar una carrera distingida a IBM, va passar a ser membre de l’Institut d’Enginyeria de Programari fundant el Programa de Processos de Programari. El 2003 va rebre la Medalla Nacional de Tecnologia.

Avui Watts s’hauria engrescat amb el treball SEMAT que s’està duent a terme a la comunitat acadèmica. El primer curs universitari complet basat en el nou estàndard Essence s’ha desenvolupat i l’imparteix als estudiants aquest any pel Dr. Carlos Zapata de la Universidad Nacional de Columbia a Medellín, Columbia, i Essence s’utilitza a primer i segon curs. Cursos d’enginyeria de programari al KTH Royal Institute of Technology de Suècia sota la direcció de la Dra. Mira Kajko-Mattson. També hi ha hagut estudis de camp Essence realitzats amb estudiants per la Dra. Cecile Peraire a Carnegie-Mellon West als Estats Units. El següent pas per a la comunitat SEMAT és demostrar com Essence pot ajudar a la indústria mitjançant la publicació de casos pràctics d’ús real i resultats mesurats en projectes industrials.

Video about How Much Math Do I Need To Know For Progrmaming

You can see more content about How Much Math Do I Need To Know For Progrmaming on our youtube channel: Click Here

Question about How Much Math Do I Need To Know For Progrmaming

If you have any questions about How Much Math Do I Need To Know For Progrmaming, please let us know, all your questions or suggestions will help us improve in the following articles!

The article How Much Math Do I Need To Know For Progrmaming was compiled by me and my team from many sources. If you find the article How Much Math Do I Need To Know For Progrmaming helpful to you, please support the team Like or Share!

Rate Articles How Much Math Do I Need To Know For Progrmaming

Rate: 4-5 stars
Ratings: 7270
Views: 97319786

Search keywords How Much Math Do I Need To Know For Progrmaming

How Much Math Do I Need To Know For Progrmaming
way How Much Math Do I Need To Know For Progrmaming
tutorial How Much Math Do I Need To Know For Progrmaming
How Much Math Do I Need To Know For Progrmaming free
#Software #Engineering #Isnt #Engineering #Disciplines #Game

Source: https://ezinearticles.com/?Why-Software-Engineering-Isnt-Like-Other-Engineering-Disciplines-and-How-it-Changes-the-Game&id=8735903

Related Posts

How Much Math Does The Average Person Need To Know Lowest GPA, Highest Dream & Suicide Plan

You are searching about How Much Math Does The Average Person Need To Know, today we will share with you article about How Much Math Does The…

How Many Questions Does The Math 3 Final Exam Have How to Cure Test Anxiety – 3 Habits You Must Break to Cure Exam Panic!

You are searching about How Many Questions Does The Math 3 Final Exam Have, today we will share with you article about How Many Questions Does The…

How Many School Allow Students Use Calculators In Math Class http://webcache.googleusercontent.com/search?q=cache:https%3A%2F%2Fezinearticles.com%2F%3FReport-Card-Comments%26id%3D3524667

You are searching about How Many School Allow Students Use Calculators In Math Class, today we will share with you article about How Many School Allow Students…

How To Ask Students To Draw A Picture For Math Three Ways to Improve Learning Readiness Through Play

You are searching about How To Ask Students To Draw A Picture For Math, today we will share with you article about How To Ask Students To…

How Much You Charge For Taking An Online Math Class Making Money Online – The New Way to Get Rich Quick

You are searching about How Much You Charge For Taking An Online Math Class, today we will share with you article about How Much You Charge For…

How Many Hours Do You Get In A Crative Math Turning a Band Into Songwriters – 10 Songs In One Hour

You are searching about How Many Hours Do You Get In A Crative Math, today we will share with you article about How Many Hours Do You…