{"id":1236,"date":"2017-02-20T10:30:54","date_gmt":"2017-02-20T09:30:54","guid":{"rendered":"https:\/\/osonaprogramacio.com\/enginyeria-de-requisits-i\/"},"modified":"2017-02-20T10:30:54","modified_gmt":"2017-02-20T09:30:54","slug":"enginyeria-de-requisits-i","status":"publish","type":"post","link":"https:\/\/osonaprogramacio.com\/en\/enginyeria-de-requisits-i\/","title":{"rendered":"Enginyeria de requisits (I)"},"content":{"rendered":"\n<p>En aquest text de caire introductori farem una breu presentaci\u00f3 d\u2019una de les disciplines m\u00e9s importants (sin\u00f3 la que m\u00e9s) a tenir en compte a l\u2019hora de desenvolupar programari, l\u2019enginyeria de requisits. Sovint ens fixem en aspectes com la usabilitat, consist\u00e8ncia, disseny, robustesa, rendiment, etc\u00e8tera a l\u2019hora de desenvolupar aplicacions. Tot aix\u00f2 est\u00e0 molt b\u00e9, per\u00f2 no ens enganyem, si no hem identificat correctament els requisits o no es satisfan plenament al client estarem davant d\u2019un producte inaprofitable.<\/p>\n\n\n\n<p>L&#8217;enginyeria de requisits \u00e9s la disciplina q\u00adue inclou totes aquelles activitats relacionades amb els requisits del programari. Tot i estar molt relacionada amb l&#8217;enginyeria del programari, es tracta de disciplines amb objectius diferents.<\/p>\n\n\n\n<p>Mentre que l&#8217;enginyeria del programari t\u00e9 com a objectiu desenvolupar un producte de manera correcta, l&#8217;enginyeria de requisits t\u00e9 com a objectiu desenvolupar el producte correcte. Per aquest motiu requereix coneixements i habilitats d&#8217;altres disciplines com la psicologia, el m\u00e0rqueting o l&#8217;organitzaci\u00f3 d&#8217;empreses.<\/p>\n\n\n\n<p>L&#8217;enginyeria de requisits t\u00e9 un gran impacte econ\u00f2mic en la ind\u00fastria del programari. Quan un equip de desenvolupament dedica el seu esfor\u00e7 a desenvolupar un programari amb els requisits equivocats, no solament s&#8217;est\u00e0 malgastant aquesta capacitat (que es podria haver utilitzat per a desenvolupar el producte correcte) sin\u00f3 que, a m\u00e9s, caldr\u00e0 dedicar esfor\u00e7os a corregir la situaci\u00f3.<\/p>\n\n\n\n<p>Aix\u00ed, l\u2019enginyeria de requisits \u00e9s aquell subconjunt de l&#8217;enginyeria del programari que s&#8217;encarrega de les activitats seg\u00fcents:<\/p>\n\n\n\n<ul>\n<li>Obtenci\u00f3 de requisits: identificar les fonts d&#8217;informaci\u00f3 dels possibles requisits del sistema i obtenir quins s\u00f3n aquests requisits candidats.<\/li>\n\n\n\n<li>Gesti\u00f3 de requisits: estimar el cost que implica tenir en compte cada requisit, prioritzar-los segons la import\u00e0ncia que tinguin per als stakeholders i aix\u00ed poder seleccionar els requisits que finalment es tindran en compte en l&#8217;etapa actual de desenvolupament del sistema.<\/li>\n\n\n\n<li>Documentaci\u00f3 de requisits: documentar els requisits de manera que quedi const\u00e0ncia del resultat del proc\u00e9s de gesti\u00f3 de requisits i que, al mateix temps, els stakeholders i els desenvolupadors comparteixin la visi\u00f3 de quin \u00e9s el producte per desenvolupar. Aquesta documentaci\u00f3 pot formar part o no de la documentaci\u00f3 final del sistema.<\/li>\n\n\n\n<li>Validaci\u00f3 de requisits: comprovar que els requisits triats per al producte que estem desenvolupant reflecteixen les expectatives dels stakeholders i, per tant, que no hi ha hagut errors en l&#8217;obtenci\u00f3, prioritzaci\u00f3, selecci\u00f3 i documentaci\u00f3.<\/li>\n\n\n\n<li>Verificaci\u00f3 de requisits: verificar si el sistema desenvolupat (o parcialment desenvolupat en el cas de cicles de vida iteratius) satisf\u00e0 o no els requisits i quins.<\/li>\n<\/ul>\n\n\n\n<p>Les tasques i artefactes concrets de l&#8217;enginyeria de requisits que es facin servir dependran, en bona part, del m\u00e8tode emprat. Aix\u00ed, per exemple, els m\u00e8todes que segueixin un cicle de vida en cascada necessitaran una documentaci\u00f3 de requisits molt m\u00e9s exhaustiva que els m\u00e8todes \u00e0gils.<\/p>\n\n\n\n<h5>Problem\u00e0tiques de l&#8217;enginyeria de requisits<\/h5>\n\n\n\n<p>Les principals problem\u00e0tiques de l&#8217;enginyeria de requisits es troben en el fet que es tracta d&#8217;una activitat de comunicaci\u00f3 entre persones i, com en qualsevol activitat d&#8217;aquest tipus, ens podem trobar amb diverses dificultats. Les m\u00e9s t\u00edpiques s\u00f3n:<\/p>\n\n\n\n<ul>\n<li>Difer\u00e8ncies respecte a la informaci\u00f3 amb qu\u00e8 treballen les diferents parts. Els stakeholders tenen informaci\u00f3 sobre el domini que els desenvolupadors no tenen, mentre que els desenvolupadors tenen informaci\u00f3 sobre la capacitat de la tecnologia que els stakeholders, no tenen. Aix\u00f2 sol condicionar la visi\u00f3 del problema que tenen uns i altres, i pot afectar negativament la comunicaci\u00f3.<\/li>\n\n\n\n<li>Limitacions del canal utilitzat. Qualsevol canal de comunicaci\u00f3 t\u00e9 limitacions. Aix\u00ed, per exemple, la comunicaci\u00f3 escrita perd els matisos del llenguatge immediat i no verbal, mentre que la comunicaci\u00f3 verbal impedeix o si m\u00e9s no dificulta la revisi\u00f3 del que es va dir.<\/li>\n\n\n\n<li>Limitacions del llenguatge utilitzat. Les persones que es comuniquin ho han de fer en un llenguatge que tots dos coneixen. Els llenguatges naturals (el catal\u00e0, el castell\u00e0, etc\u00e8tera) s\u00f3n els m\u00e9s comuns, per\u00f2 s\u00f3n propensos a l&#8217;ambig\u00fcitat. Hi ha llenguatges m\u00e9s formals, per\u00f2 esdevenen poc \u00fatils si no s\u00f3n coneguts per totes les parts que es comuniquen.<\/li>\n\n\n\n<li>Dificultat de definir el millor sistema possible. Molt sovint \u00e9s dif\u00edcil descobrir quin \u00e9s el millor sistema possible, en el sentit que pot ser dif\u00edcil saber qu\u00e8 volen realment els stakeholders. Moltes vegades ni ells mateixos ho sabran dir del cert, ja que estaran condicionats pel seu desconeixement de la tecnologia, per solucions que ja coneixen, etc.<\/li>\n<\/ul>\n\n\n\n<p>En properes entregues parlarem de les activitats com s\u00f3n l\u2019obtenci\u00f3, la gesti\u00f3, la documentaci\u00f3, la validaci\u00f3 i la verificaci\u00f3 de requisits.<\/p>\n\n\n\n<p>Font: Introducci\u00f3 a l&#8217;enginyeria de requisits. Jordi Pradel Miquel i Jose Raya Martos. FUOC. Fundaci\u00f3 per a la Universitat Oberta de Catalunya<\/p>\n","protected":false},"excerpt":{"rendered":"En aquest text de caire introductori farem una breu presentaci\u00f3 d\u2019una de les disciplines m\u00e9s importants (sin\u00f3 la que m\u00e9s) a tenir en compte a l\u2019hora de desenvolupar programari, l\u2019enginyeria de requisits. Sovint ens fixem en aspectes com la usabilitat, consist\u00e8ncia, disseny, robustesa, rendiment, etc\u00e8tera a l\u2019hora de desenvolupar aplicacions. Tot aix\u00f2 est\u00e0 molt b\u00e9,&#8230; ","protected":false},"author":1,"featured_media":1237,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":[],"categories":[4],"tags":[],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v21.1 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Enginyeria de requisits (I) - Osona Programaci\u00f3<\/title>\n<meta name=\"robots\" content=\"noindex, follow\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Enginyeria de requisits (I) - Osona Programaci\u00f3\" \/>\n<meta property=\"og:description\" content=\"En aquest text de caire introductori farem una breu presentaci\u00f3 d\u2019una de les disciplines m\u00e9s importants (sin\u00f3 la que m\u00e9s) a tenir en compte a l\u2019hora de desenvolupar programari, l\u2019enginyeria de requisits. Sovint ens fixem en aspectes com la usabilitat, consist\u00e8ncia, disseny, robustesa, rendiment, etc\u00e8tera a l\u2019hora de desenvolupar aplicacions. Tot aix\u00f2 est\u00e0 molt b\u00e9,...\" \/>\n<meta property=\"og:url\" content=\"https:\/\/osonaprogramacio.com\/en\/enginyeria-de-requisits-i\/\" \/>\n<meta property=\"og:site_name\" content=\"Osona Programaci\u00f3\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/OsonaProgramacio\/\" \/>\n<meta property=\"article:published_time\" content=\"2017-02-20T09:30:54+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/osonaprogramacio.com\/wp-osprog\/wp-content\/uploads\/2017\/02\/logo-osprog-xxss.png\" \/>\n\t<meta property=\"og:image:width\" content=\"250\" \/>\n\t<meta property=\"og:image:height\" content=\"250\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"admin\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@osonaprog\" \/>\n<meta name=\"twitter:site\" content=\"@osonaprog\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"admin\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"4 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/osonaprogramacio.com\/en\/enginyeria-de-requisits-i\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/osonaprogramacio.com\/en\/enginyeria-de-requisits-i\/\"},\"author\":{\"name\":\"admin\",\"@id\":\"https:\/\/osonaprogramacio.com\/en\/#\/schema\/person\/ba76587bd552f4a1d3b1f2f8c1867573\"},\"headline\":\"Enginyeria de requisits (I)\",\"datePublished\":\"2017-02-20T09:30:54+00:00\",\"dateModified\":\"2017-02-20T09:30:54+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/osonaprogramacio.com\/en\/enginyeria-de-requisits-i\/\"},\"wordCount\":794,\"publisher\":{\"@id\":\"https:\/\/osonaprogramacio.com\/en\/#organization\"},\"inLanguage\":\"en-US\"},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/osonaprogramacio.com\/en\/enginyeria-de-requisits-i\/\",\"url\":\"https:\/\/osonaprogramacio.com\/en\/enginyeria-de-requisits-i\/\",\"name\":\"Enginyeria de requisits (I) - Osona Programaci\u00f3\",\"isPartOf\":{\"@id\":\"https:\/\/osonaprogramacio.com\/en\/#website\"},\"datePublished\":\"2017-02-20T09:30:54+00:00\",\"dateModified\":\"2017-02-20T09:30:54+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/osonaprogramacio.com\/en\/enginyeria-de-requisits-i\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/osonaprogramacio.com\/en\/enginyeria-de-requisits-i\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/osonaprogramacio.com\/en\/enginyeria-de-requisits-i\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Inici\",\"item\":\"https:\/\/osonaprogramacio.com\/en\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Enginyeria de requisits (I)\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/osonaprogramacio.com\/en\/#website\",\"url\":\"https:\/\/osonaprogramacio.com\/en\/\",\"name\":\"Osona Programaci\u00f3\",\"description\":\"Som el teu nou soci tecnol\u00f2gic\",\"publisher\":{\"@id\":\"https:\/\/osonaprogramacio.com\/en\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/osonaprogramacio.com\/en\/?s={search_term_string}\"},\"query-input\":\"required name=search_term_string\"}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/osonaprogramacio.com\/en\/#organization\",\"name\":\"Osona Programaci\u00f3\",\"url\":\"https:\/\/osonaprogramacio.com\/en\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/osonaprogramacio.com\/en\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/osonaprogramacio.com\/wp-osprog\/wp-content\/uploads\/2017\/02\/logo-osprog.png\",\"contentUrl\":\"https:\/\/osonaprogramacio.com\/wp-osprog\/wp-content\/uploads\/2017\/02\/logo-osprog.png\",\"width\":220,\"height\":70,\"caption\":\"Osona Programaci\u00f3\"},\"image\":{\"@id\":\"https:\/\/osonaprogramacio.com\/en\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/www.facebook.com\/OsonaProgramacio\/\",\"https:\/\/twitter.com\/osonaprog\"]},{\"@type\":\"Person\",\"@id\":\"https:\/\/osonaprogramacio.com\/en\/#\/schema\/person\/ba76587bd552f4a1d3b1f2f8c1867573\",\"name\":\"admin\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Enginyeria de requisits (I) - Osona Programaci\u00f3","robots":{"index":"noindex","follow":"follow"},"og_locale":"en_US","og_type":"article","og_title":"Enginyeria de requisits (I) - Osona Programaci\u00f3","og_description":"En aquest text de caire introductori farem una breu presentaci\u00f3 d\u2019una de les disciplines m\u00e9s importants (sin\u00f3 la que m\u00e9s) a tenir en compte a l\u2019hora de desenvolupar programari, l\u2019enginyeria de requisits. Sovint ens fixem en aspectes com la usabilitat, consist\u00e8ncia, disseny, robustesa, rendiment, etc\u00e8tera a l\u2019hora de desenvolupar aplicacions. Tot aix\u00f2 est\u00e0 molt b\u00e9,...","og_url":"https:\/\/osonaprogramacio.com\/en\/enginyeria-de-requisits-i\/","og_site_name":"Osona Programaci\u00f3","article_publisher":"https:\/\/www.facebook.com\/OsonaProgramacio\/","article_published_time":"2017-02-20T09:30:54+00:00","og_image":[{"width":250,"height":250,"url":"https:\/\/osonaprogramacio.com\/wp-osprog\/wp-content\/uploads\/2017\/02\/logo-osprog-xxss.png","type":"image\/png"}],"author":"admin","twitter_card":"summary_large_image","twitter_creator":"@osonaprog","twitter_site":"@osonaprog","twitter_misc":{"Written by":"admin","Est. reading time":"4 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/osonaprogramacio.com\/en\/enginyeria-de-requisits-i\/#article","isPartOf":{"@id":"https:\/\/osonaprogramacio.com\/en\/enginyeria-de-requisits-i\/"},"author":{"name":"admin","@id":"https:\/\/osonaprogramacio.com\/en\/#\/schema\/person\/ba76587bd552f4a1d3b1f2f8c1867573"},"headline":"Enginyeria de requisits (I)","datePublished":"2017-02-20T09:30:54+00:00","dateModified":"2017-02-20T09:30:54+00:00","mainEntityOfPage":{"@id":"https:\/\/osonaprogramacio.com\/en\/enginyeria-de-requisits-i\/"},"wordCount":794,"publisher":{"@id":"https:\/\/osonaprogramacio.com\/en\/#organization"},"inLanguage":"en-US"},{"@type":"WebPage","@id":"https:\/\/osonaprogramacio.com\/en\/enginyeria-de-requisits-i\/","url":"https:\/\/osonaprogramacio.com\/en\/enginyeria-de-requisits-i\/","name":"Enginyeria de requisits (I) - Osona Programaci\u00f3","isPartOf":{"@id":"https:\/\/osonaprogramacio.com\/en\/#website"},"datePublished":"2017-02-20T09:30:54+00:00","dateModified":"2017-02-20T09:30:54+00:00","breadcrumb":{"@id":"https:\/\/osonaprogramacio.com\/en\/enginyeria-de-requisits-i\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/osonaprogramacio.com\/en\/enginyeria-de-requisits-i\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/osonaprogramacio.com\/en\/enginyeria-de-requisits-i\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Inici","item":"https:\/\/osonaprogramacio.com\/en\/"},{"@type":"ListItem","position":2,"name":"Enginyeria de requisits (I)"}]},{"@type":"WebSite","@id":"https:\/\/osonaprogramacio.com\/en\/#website","url":"https:\/\/osonaprogramacio.com\/en\/","name":"Osona Programaci\u00f3","description":"Som el teu nou soci tecnol\u00f2gic","publisher":{"@id":"https:\/\/osonaprogramacio.com\/en\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/osonaprogramacio.com\/en\/?s={search_term_string}"},"query-input":"required name=search_term_string"}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/osonaprogramacio.com\/en\/#organization","name":"Osona Programaci\u00f3","url":"https:\/\/osonaprogramacio.com\/en\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/osonaprogramacio.com\/en\/#\/schema\/logo\/image\/","url":"https:\/\/osonaprogramacio.com\/wp-osprog\/wp-content\/uploads\/2017\/02\/logo-osprog.png","contentUrl":"https:\/\/osonaprogramacio.com\/wp-osprog\/wp-content\/uploads\/2017\/02\/logo-osprog.png","width":220,"height":70,"caption":"Osona Programaci\u00f3"},"image":{"@id":"https:\/\/osonaprogramacio.com\/en\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/OsonaProgramacio\/","https:\/\/twitter.com\/osonaprog"]},{"@type":"Person","@id":"https:\/\/osonaprogramacio.com\/en\/#\/schema\/person\/ba76587bd552f4a1d3b1f2f8c1867573","name":"admin"}]}},"_links":{"self":[{"href":"https:\/\/osonaprogramacio.com\/en\/wp-json\/wp\/v2\/posts\/1236"}],"collection":[{"href":"https:\/\/osonaprogramacio.com\/en\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/osonaprogramacio.com\/en\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/osonaprogramacio.com\/en\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/osonaprogramacio.com\/en\/wp-json\/wp\/v2\/comments?post=1236"}],"version-history":[{"count":0,"href":"https:\/\/osonaprogramacio.com\/en\/wp-json\/wp\/v2\/posts\/1236\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/osonaprogramacio.com\/en\/wp-json\/wp\/v2\/media\/1237"}],"wp:attachment":[{"href":"https:\/\/osonaprogramacio.com\/en\/wp-json\/wp\/v2\/media?parent=1236"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/osonaprogramacio.com\/en\/wp-json\/wp\/v2\/categories?post=1236"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/osonaprogramacio.com\/en\/wp-json\/wp\/v2\/tags?post=1236"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}