[ca] Durant l'última dècada, moltes universitats, centres de recerca i empreses privades han començat a desenvolupar els seus petits satèl·lits. Aquests sistemes espacials, avantatjosos en quant a temps i cost de desenvolupament, han estat possibles gràcies a la miniaturització de diverses tecnologies hardware (sistemes encastats, components COTS) i l'aplicació de dissenys modulars. No obstant això, aquest esforç s'ha centrat principalment en l'arquitectura del hardware, i no s'ha abordat des de la perspectiva de l'arquitectura del software. Els objectius d'aquesta tesi són dos. Per una banda, aquest treball se centra en els aspectes software dels nano-satèl·lits a través de l'anàlisi de les arquitectures implementats en missions de nano-satèl·lits actuals. Aquesta anàlisi ha permès la elaboració d'un marc d'avaluació que abasta cinc atributs de qualitat i que està concebut particularment per aquests tipus sistemes espacials. El resultat d'aquest estudi preliminar convergeix en la definició d'un conjunt de criteris de disseny que s'han aplicat en el desenvolupament de l'arquitectura software de propòsit general per nano-satèl·lits presenta en aquesta tesi. Per una altra banda, aquest treball ha consistit en el disseny i implementació d'un dels components essencials en el sistema d'autonomia d'un satèl·lit: un planificador de tasques. Escrit en Prolog en la seva totalitat i adoptant el paradigma de programació de restriccions, aquest treball detalla el desenvolupament i les proves efectuades d'un planificador de tasques multi-recurs totalment elàstic basat en prioritats que s'ha integrat dins de l'arquitectura de software per nano-satèl·lits i que permet operar la nau amb una intervenció humana mínima.

[es] Durante la última década, muchas universidades, centros de investigación y empresas privadas han empezado a desarrollar sus pequeños satélites. Estos sistemas espaciales, ventajosos en cuanto a tiempo y coste de desarrollo, has sido posibles gracias a la miniaturización de diversas tecnologías hardware (sistemas encastados, componentes COTS) y a la aplicación de diseños modulares. No obstante, la mayoría de los esfuerzos se han centrado en la arquitectura hardware y no se ha abordado desde la perspectiva de la arquitectura software. Los objetivos de esta tesis son dos. Por un lado este trabajo se centra en los aspectos software de los nano-satélites, a través del análisis de las arquitecturas implementadas en misiones de nano-satélites actuales. Este análisis ha permitido la elaboración de un marco de evaluación que abasta cinco atributos de calidad y que está concebido particularmente para este tipo de sistemas espaciales. El resultado de este estudio preliminar converge en la definición de un conjunto de criterios de diseño que han sido aplicados en el desarrollo de la arquitectura software de propósito general para nano-satélites presentada en esta tesis. Por otro lado, este trabajo ha consistido en el diseño e implementación de uno de los componentes esenciales en el sistema de autonomía de un satélite: un planificador de tareas. Escrito en Prolog en su totalidad y adoptando el paradigma de la programación de restricciones, este trabajo detalla el desarrollo y las pruebas efectuadas de un planificador de tareas multi-recurso totalmente elástico y basado en prioridades que se ha integrado dentro de la arquitectura software para nano-satélites y que permite operar la nave con una intervención humana mínima.