Enxeñaría de software: Diferenzas entre revisións

Contido eliminado Contido engadido
MerlIwBot (conversa | contribucións)
Xqbot (conversa | contribucións)
m r2.7.2) (Bot: Modifico: sq:Inxhinieria Softuerike; cambios estética
Liña 14:
* '''Os procedementos''': propoñen, entre outras cousas, o orden en que aplica-los métodos, as entregas requiridas (documentación, informes, etc.), os controles que axudan a asegurar a calidade e coordina-los cambios e as directrices que axudan ós xestores do SW a evalua-lo progreso.
 
== Historia ==
 
A Enxeñaría de Software (ES) xurdiu a mediados dos anos [[1970]] nunha tentativa de tratar coa a crise do [[software]] e dar un tratamento de [[enxeñaría]] (máis sistemático e controlado) ao desenvolvemento de sistemas de software complexos. Un sistema de software complexo se caracteriza por un conxunto de compoñentes abstractos de software ([[estrutura de dados|estruturas de dados]] e [[algoritmo]]s) encapsulados na forma de procedementos, [[funcións]], [[módulos]], [[obxecto]]s ou [[axentes]] interconectados entre si, compondo a arquitectura do software, que deberán ser executados en [[sistemas computacionais]].
 
== Definición ==
 
Segundo [[Fritz Bauer]], "Enxeñaría de software é a creación e a utilización de sólidos principios de enxeñaría a fin de obter software de maneira económica, que sexa confiable e que traballe eficientemente en máquinas reais". O propio significado de [[enxeñaría]] xa trai os conceptos de creación, construción, análise, desenvolvemento e mantemento.
Liña 28:
Dito de outro modo, a Enxeñaría do Software trata sistematicamente toda-las fases do [[ciclo de vida]] do software
 
== Produción de software ==
 
A produciron de ''software'' é un conxunto coherente de prácticas que obxectiva o desenvolvemento ou evolución de sistemas de ''software''. Estas prácticas engloban as actividades de especificación, proxecto, implementación e testes e caracterízanse pola interacción de ferramentas, persoas e métodos.
Liña 37:
* '''Evolutivo''' - especificación, proxecto e desenvolvemento son entrelazados.
* '''En espiral''' - evolución a través de varios ciclos completos de especificación, proxecto e desenvolvemento.
* '''Componentizado''' - reuso a través de montaxe de [[compoñente software|compoñentecompoñentes]]s xa existentes.
* '''Formal''' - implementación a partir de modelo matemático formal.
* '''[[RAD]]'''
* '''Cuarta xeración'''
 
=== Metodoloxías ===
 
* [[Rational Unified Proces]] (RUP).
Liña 48:
* [[Microsoft Solution Framework]] (MSF).
 
=== Modelos de madurez ===
 
Os modelos de madurez xurdiron para avaliar a calidade dos procesos de ''software'' aplicados nunha organización (empresa ou institución). O máis coñecido é o ''Capability Maturity Model Integration'' ('''[[CMMI]]'''), do [[Software Engineering Institute]] (SEI).
 
== Xestión de proxectos ==
 
A [[xestión de proxectos]] preocupase en entregar o sistema de ''software'' no prazo e de acordo cos requisitos establecidos, levando en conta sempre as limitacións de orzamento e tempo.
Liña 58:
A xestión de proxectos de software caracterizase por tratar sobre un produto intanxible, moi flexible e cun proceso de desenvolvimento con baixa padronización.
 
=== Planexamento ===
 
O planexamento dun proxecto de desenvolvemento de ''software'' inclúe:
Liña 71:
A estimativa de dificultades e custos de desenvolvementos son moi difíciles, alén do surximento de problemas técnicos. Eses factores conseguen unha análise de riscos coidadosa.
 
=== Análise ===
 
As actividades de análise concéntranse na identificación, especificación e descrición dos requisitos do sistema de ''software''. En resumo, requisito é unha necesidade que o ''software'' debe cumprir.
Liña 82:
É común que o cliente non saber o que el realmente desexa, que haxa problemas na comunicación e aínda que haxa mudanza constante de requisitos. Todos eses factores son recrudecidos pola intanxibilidade sobre característicos de sistemas de ''software'', principalmente sobre o custo de cada requisito.
 
=== Modelado ===
 
A abstracción do sistema de ''software'' a través de modelos que o describen é un poderoso instrumento para o entendemento e comunicación do produto final a desenvolver.
Liña 90:
É común a utilización de linguaxes para modelado como [[UML]].
 
=== Xestión ===
 
* de Persoal.
Liña 97:
* de Proxecto.
 
== Tecnoloxías e Prácticas ==
 
A '''enxeñaría de software''' aborda unha serie de prácticas e tecnoloxías, principalmente estudadas pola [[ciencia da computación]], enfocando o seu impacto na produtividade e calidade de ''software''.
Liña 109:
* [[Programación orientada a aspecto]].
 
=== Ferramentas ===
 
Outro punto importante é o uso de ferramentas '''CASE''' (do inglés ''Computer-Aided Software Engineering''). Esa clasificación abranxe toda ferramenta baseada en computadores que auxilian actividades de enxeñaría de ''software'', desde de análise de requisitos e Modelado ata programación e testes.
Liña 165:
[[si:මෘදුකාංග ඉංජිනේරු ශිල්පය]]
[[sk:Softvérové inžinierstvo]]
[[sq:InxhinieriInxhinieria ProgrameshSoftuerike]]
[[sr:Инжењеринг софтвера]]
[[su:Rékayasa software]]