Informática, Software
Ciclo de vida do software: concepto, normas e procesos
O desenvolvemento de software é imposible sen entender o chamado ciclo de vida do software. É posible que este non teña que ser coñecido por un usuario normal, pero é desexable dominar os estándares básicos (aínda se discutirá por que é necesario).
O ciclo de vida do software: que é o sentido formal?
Baixo o ciclo de vida de calquera produto de software, é habitual comprender o tempo da súa existencia, a partir da etapa de desenvolvemento e ata o momento de pleno rexeitamento a utilizala na esfera de aplicación escollida ata que a aplicación quede completamente eliminada do uso cotián.
En termos simples, os sistemas de información en forma de programas, bases de datos ou incluso "sistemas operativos" só están baixo demanda se os datos e as capacidades que proporcionan son relevantes.
Crese que a definición do ciclo de vida non se aplica ás aplicacións de proba, por exemplo, ás versións beta, que son as máis inestables no traballo. O ciclo de vida dun software depende de moitos factores, entre os cales un dos papeis principais é o medio en que se emprega o programa. Non obstante, é posible identificar as condicións xerais empregadas para determinar o concepto do ciclo de vida.
Requisitos Iniciais
Como se adoita crer, para calquera produto de software úsanse varias condicións, en canto ao seu desenvolvemento e aplicación, a saber:
- Declaración do problema;
- Análise de requisitos mutuos do futuro software para o sistema;
- Deseño;
- Programación;
- Codificación e compilación;
- Probas;
- Depuración;
- Implementación e mantemento do produto de software.
O desenvolvemento de software consiste en todas as etapas mencionadas e non pode prescindir de polo menos un deles. Pero para o control destes procesos establécense normas especiais.
Estándares de procesos de ciclo de vida de software
Entre os sistemas que predeterminan as condicións e os requisitos para estes procesos, hoxe só hai tres principais:
- GOST 34.601-90;
- ISO / IEC 12207: 2008;
- CDM de Oracle.
Para o segundo estándar internacional hai un análogo ruso. Trátase de GOST R ISO / IEC 12207-2010, responsable da ingeniería de sistemas e software. Pero o ciclo de vida do software descrito en ambas regras é idéntico en esencia. Isto explícase de xeito sinxelo.
Tipos de software e actualizacións
Os sistemas de información modernos son tales que establecen conceptos xeralmente aceptados do campo de aplicación.
Por exemplo, hai programas e utilidades de sistema , ferramentas multimedia, controladores de dispositivos, aplicacións de oficina, etc. Para calquera tipo de produtos de software, pode definir as etapas do ciclo de vida da existencia.
Para renovalo, as ferramentas de actualización úsanse máis frecuentemente (tanto para sistemas operativos como para plataformas e software de aplicación). Probablemente, non é necesario explicar que calquera usuario dun sistema informático baseado en Windows sufrise a fase de actualización do propio sistema ou de compoñentes como Microsoft .NET Framework ou a máquina virtual de Java.
Etapa de deseño
Agora, algunhas palabras directamente sobre as etapas de desenvolvemento. O ciclo de vida do software inicialmente inclúe a planificación de proxectos, a análise do sistema e os requisitos obxecto de aprendizaxe, a posibilidade de deseño preliminar ou detallado, codificación e probas, a posibilidade de utilizar programas en sistemas especializados, etc.
Os modelos de ciclo de vida do software supoñen que a tarefa inicial de crear software debe ser desenvolver aplicacións universais ou produtos de software que usen un ambiente de lanzamento específico.
Desenvolvemento
Os sistemas de desenvolvemento son linguaxes de programación. O deseño de software na primeira etapa pódese reducir a isto.
Tanto se se trata de C + / C ++, Java, Delphi ou o mesmo obsoleto Pascal non é tan importante. A pregunta é o que a aplicación creada pode integrar no sistema operativo e funcionar sen fallos.
Neste sentido, o ciclo de vida do software é o momento da súa proba desde a instalación inicial do produto ata a eliminación completa debido ao incumprimento dos requisitos do sistema, incapacidade ou imposibilidade de realizar as tarefas establecidas orixinalmente.
Seguintes pasos
O mantemento adicional, que determina o ciclo de vida do software, redúcese á codificación e á obtención do código fonte da aplicación.
No caso da súa distribución gratuíta (aberta), o chamado certificado úsase en base á licenza GNU, que prevé a posibilidade de cambiar o software en si mesmo a petición dun usuario de terceiros familiarizado co linguaxe de programación co que se creou a aplicación.
Se é un código pechado, pode usar utilidades como Desensamblador. Pero neste caso é posible conseguir só a descodificación do arquivo EXE executable e, de calquera xeito, non se ligan as DLL dinámicas.
Pero esta é unha teoría. Na práctica, as etapas do ciclo de vida do software inclúen moito máis elementos na súa lista. Incluso a situación máis simple simulada consiste en examinar os estándares e formular observacións (requisitos de arquitectura de alto nivel, cumprimento do código executable, medios e metodoloxía de verificación). Este é o ciclo de vida do software. Pero aquí é importante comprender e algúns principios de xestión destes programas e sistemas.
Fundamentos de xestión
A xestión do ciclo de vida do software lévase a cabo baseándose na división de programas en compoñentes, o que proporciona unha variedade bastante ampla de ferramentas para a súa creación.
Hai tamén unha desvantaxe para a moeda. A elección dos módulos está limitada ao desarrollador da plataforma inicial, en función da cal está programada. Por suposto, se temos en conta a unificación e mecanografía das ferramentas de desenvolvemento empregadas (especialmente os módulos reutilizables), non hai preguntas.
Pero as fases do ciclo de vida do software inclúen necesariamente a creación de protocolos de procesamento de datos, subrutinas, bibliotecas estándar e moito máis.
Módulos usados
E non se completa ningún proceso do ciclo de vida do software sen usar compoñentes moi específicos. Entre eles, considéranse prioritarios os seguintes:
- O módulo principal (cabeza) responsable do lanzamento do produto de software;
- Un módulo de control responsable de chamar os compoñentes adxuntos ou bibliotecas dinámicas;
- Ferramentas funcionais e de servizo para o procesamento de datos e utilidades adicionais.
O ficheiro executable, como regra, para os sistemas Windows preséntase en forma de "exeshnika". Os compoñentes de control teñen unha extensión do configurador (config.sys para sistemas operativos), ademais as bibliotecas conectadas teñen unha extensión DLL. Os controis e procesamento de funcións e configuracións dalgunhas aplicacións poden parecer ficheiros XML.
Por certo, para a maioría dos programas multimedia coñecidos hoxe en día son medios de preservar os parámetros básicos de configuración. O uso de software deste tipo, por suposto, é bastante limitado, pero a comprensión dos principios xerais de traballar cos mesmos reproductores multimedia non fará mal. E é por iso.
De feito, neles o ciclo de vida do software só se coloca no nivel da versión de actualización do reprodutor ou na instalación de códecs e descodificadores. Os transcodificadores de audio e video son atributos inherentes a calquera sistema de audio ou video.
Exemplo baseado en FL Studio
Inicialmente, o estudio de estudo virtual FL Studio chamouse Fruity Loops. O ciclo de vida do software na súa modificación primaria caducou, pero a aplicación transformouse un pouco e adquiriu a forma actual.
Se falamos sobre as etapas do ciclo de vida, primeiro na fase de configuración da tarefa, estableceranse varias condicións obrigatorias:
- A creación dun módulo de tambor polo tipo de máquinas de ritmo como o Yamaha RX, pero coa utilización de mostras ou secuencias en formato WAV gravadas en estudos en directo;
- Integración en sistemas operativos Windows;
- A capacidade de exportar proxectos en formatos WAV, MP3 e OGG;
- Proxectos de compatibilidade cunha aplicación adicional Fruity Tracks.
Na fase de desenvolvemento, utilizáronse os medios das linguaxes de programación C. Pero a plataforma parecía bastante primitiva e non deu ao usuario final a calidade de son necesaria.
Neste sentido, na fase de probas e depuración, os desenvolvedores tiveron que seguir o camiño da corporación alemá de Steinberg e aplicar soporte para o modo Full Duplex nos requisitos para o controlador de son principal. A calidade do son converteuse en maior e permitiu cambiar o tempo, o ton e superponer os efectos FX adicionais en tempo real.
A conclusión do ciclo de vida deste software considérase o lanzamento da primeira versión oficial de FL Studio, que, a diferenza dos seus antepasados, xa tiña a interface dun secuenciador completo coa capacidade de editar parámetros nunha consola de mestura de 64 canles virtual con adición ilimitada de pistas de audio e pistas MIDI.
A promoción do programa non se detivo alí. Na fase de xestión do proxecto, introducíase o soporte para conectar os plug-ins VST (primeira, segunda e, finalmente, a terceira versión) desenvolvida por Steinberg. Polo tanto, calquera sintetizador virtual que soporte VST-host podería conectarse ao programa.
Non sorprendente, pronto calquera compositor podería usar análogos de modelos de "ferro", por exemplo, conxuntos completos de sons do xa coñecido Korg M1. Máis - máis. O uso de módulos como a batería Addictive ou o complemento universal Kontakt permitiu reproducir os sons actuais dos instrumentos reais gravados con tonalidades de articulación nos estudos profesionais.
Ao mesmo tempo, os desenvolvedores tentaron alcanzar a máxima calidade creando soporte para os controladores ASIO4ALL, que resultaron ser máis altos que o modo Full Duplex. Así, a taxa de bits tamén aumentou. Ata a data, a calidade do ficheiro de audio exportado pode ser de 320 kbit / s cunha frecuencia de mostraxe de 192 kHz. E este é un son profesional.
En canto á versión inicial, o seu ciclo de vida podería ser chamado completamente completo, pero tal declaración é relativa, xa que a aplicación só cambiou o seu nome e obtivo novas oportunidades.
Perspectivas de desenvolvemento
As etapas do ciclo de vida do software xa están claras. Pero vale a pena mencionar o desenvolvemento destas tecnoloxías por separado.
Non é necesario dicir que ningún desenvolvedor de software non estea interesado en crear un produto fugaz que poida permanecer no mercado durante varios anos. A longo prazo, todos están a buscar o seu uso a longo prazo. Isto pódese conseguir en moitos sentidos. Pero, como norma xeral, case todos se refiren ao lanzamento de actualizacións ou novas versións de programas.
Mesmo no caso do sistema operativo Windows, estas tendencias poden verse a simple vista. Apenas hoxe haberá polo menos un usuario que use sistemas como modificacións 3.1, 95, 98 ou Millennium. O seu ciclo de vida finalizou despois do lanzamento da versión de XP. Pero as versións do servidor baseadas nas tecnoloxías NT aínda son relevantes. Mesmo o Windows 2000 ata a data non só é moi relevante, senón tamén para algúns parámetros de instalación ou seguridade, incluso superando os últimos desenvolvementos. O mesmo vale para o sistema NT 4.0, así como a modificación especializada de Windows Server 2012.
Pero en relación a estes sistemas, o apoio ao máis alto nivel segue sendo declarado. Pero o notorio no seu tempo, Vista está experimentando claramente o ciclo de solpor. Non só estaba inacabado, tamén había erros nel e había tanto dano no seu sistema de seguridade que só se pode adiviñar como era posible lanzar unha solución tan insostenible para o mercado de software.
Pero se falamos sobre o feito de que o desenvolvemento de software de calquera tipo (xestor ou aplicación) non se detén, só podemos contar os feitos. Despois de todo, hoxe non só son sistemas informáticos, senón tamén dispositivos móbiles, nos que as tecnoloxías utilizadas adoitan estar por diante do sector informático. A aparición de chips de procesadores baseados en oito núcleos non é o mellor exemplo? E aínda non todos os portátiles poden presumir de ter un "ferro".
Algunhas preguntas adicionais
En canto á comprensión do ciclo de vida do software, pódese dicir que terminou nun certo punto no tempo, xa que os produtos de software aínda teñen soporte dos desarrolladores que os crearon. Pola contra, o final refírese a aplicacións obsoletas que non cumpren os requisitos dos sistemas modernos e que non poden funcionar no seu contorno.
Pero aínda tendo en conta o progreso técnico, moitos deles xa nun futuro próximo poden resultar insostíbeis. Ese é o momento en que debes decidir se lanzar actualizacións ou revisar por completo o concepto completo, originalmente inserido no produto de software. De aí - e un novo ciclo que implica cambiar as condicións iniciais, o medio de desenvolvemento, as probas e o posible uso a longo prazo nunha área particular.
Pero na tecnoloxía informática hoxe en día, débese preferencia ao desenvolvemento de sistemas automatizados de control (ACS) que se usan na produción. Incluso os sistemas operativos, en comparación cos programas especializados, perden.
Os mesmos contornos baseados en Visual Basic seguen sendo moito máis populares que os sistemas baseados en Windows. E o software de aplicación para sistemas UNIX non é nada. O que dicir, se case todas as redes de comunicación dos mesmos Estados Unidos traballan exclusivamente nelas. Por certo, os sistemas como Linux e Android tamén foron creados orixinalmente nesta plataforma. Polo tanto, o máis probable é que UNIX ten moito máis perspectivas que outros produtos combinados.
En vez do total
Queda por engadir que neste caso só se dan principios e fases xerais do ciclo de vida do software. De feito, as tarefas iniciais poden diferir moi significativamente. En consecuencia, pódense observar diferenzas nas etapas restantes.
Pero as tecnoloxías básicas para o desenvolvemento de produtos de software co seu posterior mantemento deben ser claras. Se non, debería considerar as características específicas do software que se está a crear, o medio no que debería funcionar e as capacidades dos programas proporcionados ao usuario final ou á produción e moito máis.
Ademais, ás veces os ciclos de vida poden depender da urxencia de ferramentas de desenvolvemento. Se, por exemplo, algunha linguaxe de programación obsoleto, ninguén non vai facer para escribir programas baseados nel, e máis aínda - para presenta-los na produción de sistemas de control automatizado. Hai xa viñeron á tona ata programadores e profesionais de marketing que teñen reaccionar rapidamente aos cambios no mercado de ordenadores. E hai especialistas no mundo, non é máis. persoal altamente cualificado, a posibilidade de manter a man no pulso do mercado, tornándose o máis popular. E son moitas veces chamados "cardeais grises", da cal depende o éxito ou a derrota de determinados produtos de software na área de TI.
Supoña que non sempre entenden a esencia do programa, pero claramente capaz de determinar o modelo do ciclo de vida do software eo período de tempo da súa aplicación, con base nas tendencias mundiais nesta área. xestión eficaz, moitas veces dá un resultado máis tanxibles. Si, polo menos Tecnoloxías de relacións públicas, publicidade e así por diante. D. Pode calquera aplicación o usuario non é necesario, pero sempre que está activo ostentando o usuario instala. Ten, por así dicir, nivel subconsciente (o mesmo efecto que a armazón 25 cando a información é colocada na mente do usuario, independentemente de si mesmo).
Por suposto, esta tecnoloxía no mundo están prohibidos, pero moitos de nós non están aínda conscientes de que aínda poden ser usados para influír a mente subconsciente dunha certa maneira. Isto só é un "zombie" canles de noticias ou sitios de Internet, sen esquecer o uso de ferramentas máis poderosas, como a exposición a infra- (este foi aplicado na mesma produción de ópera), de xeito que unha persoa pode sentir medo ou emocións impropias.
Volvendo ao software, debe engadirse que algúns programas na inicialización usando o son, atraendo a atención do usuario. E Os estudos mostran que tales aplicacións son máis viables en comparación con outros programas. Por suposto, o aumento eo ciclo de vida do software, non importa que a función cobra inicialmente. E, por desgraza, é usado por moitos desenvolvedores que levanta dúbidas sobre a legalidade de tales métodos.
Pero non para nós para xulgar. Quizais significa definir esas ameazas desenvolveranse no futuro próximo. Mentres esta é só unha teoría, pero, segundo algúns analistas e especialistas, para aplicacións prácticas hai moi poucos. Se xa creou unha copia de redes neurais do cerebro humano, entón o que?
Similar articles
Trending Now