lundi 25 janvier 2010

PowerShell et Moss 2010

Avec le développement de PsTFS (http://pstfs.codeplex.com) je me suis découvert un réel intérêt pour Powershell, pour les plus vie.x ou les moins jeune, powershell n'est pas nouveau, si nous ne regardons pas plus loin que le bout de notre nez nous pourrions le croire, mais croire n'est pas savoir, hors il n'en est rien.

Powershell, par où commencer, ben déjà (désolé les admin réseau) ce n'est pas que pour gérer Windows Server, bon ok ressortir l'espace disque.

get-wmiobject -computer $computer win32_logicaldisk

C'est facile et rapide, mais pour tous les autres public dans le monde informatique :
  • Développeur
  • Testeur
  • Chef de projet
  • DSI, oupss DSI faire du powershell ??? et oui pourquoi pas, un dicton nous dit bien que nous sommes jamais mieux servir que par soit même.
Que faire ??
  • Savoir l'état des projets au niveau financier, dans Project Server 2010 ?
  • Connaitre les projets qui passe dans Project Portfolio ? oh, c'est quoi ce programme ??? RDV TechDays le 8/02 à 11h à ma session ;)
Et c'est pas fini, je dirai "la puissance au bout des doigts ..." et tout cela sans compilation ou msi ;)

Interroger mon Moss 2010, savoir se que j'ai comme site :

$web = Get-SPWeb "http://monserver"

for ($i=0; $i -lt $web.Lists.Count; $i++) {

$site = $web.Lists[$i];

...

}

Avoir une idée des bug d'un projet :

$TFS = Get-TFS http://tfsrtm08:8080

$wis = get-Wis -tfs $TFS -ProjectName $projet

$t = $wis | where {$_.Fields["System.State"].Value -eq "Active" -and $_.Fields["System.WorkItemType"].Value -eq "Bug"}
if($t.count -eq $null)
{
$WI.Add("Bug Active",0)
}

Ce n'est pas finit, je tenterai de vous montrer dans les prochaines semaines les divers possibilités de Powershell, si vous n'êtes pas convaincu je vous attends aux TechDays le 8, 9, 10 Février pour vous faire des démo.

Bonne soirée





lundi 18 janvier 2010

Tester VSTS 2010 en "XP Mode" sous Win 7

Tester un produit en Beta n'est pas toujours évident. Windows 7 permet de virtualiser des applications en les installant dans une machine virtuelle tournant avec Windows XP.



L'installation se passe très bien et l'utilisation est simplifiée par l'accès depuis le menu de Windows 7



L'application se connect et permet de mapper les projets (TFS) avec "Mes documets".

dimanche 17 janvier 2010

PsTFS - Version disponible

La version est disponible sur codeplex avec ajout des indicateurs :



Gestion des indicateurs également dans PsTFS Web for mobile:



samedi 16 janvier 2010

La version mobile du site web de PsTFS

Page d’accueil du site (Version mobile), le menu “Commands” est adapté par rapport au commandes PowerShell enregistrées sur le site.

Chaque projet “sous menu” donne une liste de commande (enregistrer en powershell) permettant d’afficher le résultat. Pour mon besoin c’est la gestion des taches, anomalies et exigences de mes projets hébergés par TFS. Le pré requis pour cette gestion est l’utilisation des commandes PsTFS qui sont adaptés à Team Foundation Server.

Dans cette exemple, j’affiche pour le “Projet A” les commandes suivantes :

Lors du clique sur “Toutes les anomalies” le système reconnait qu’il s’agit de l’affichage de workitem et adapte donc l’affichage. Ce type d’affichage '”templat” est actif seulement pour les Builds et les Workitems, si vous affichez un autre type d’objet l’affichage par défaut (Propriété et Valeur) vous sera présenté, il est donc possible d’afficher tout type d’information. D’autre Template seront ajoutés au fur et à mesure.

     

S’adapte à l’orientation de l’écran :

Affichage du détail d’un Workitem :



Affichage de la liste des Builds avec une image adaptée au statut de la Build :

Détail d’une  Build :


Affichage par défaut d’un objet, dans cette exemple c’est le contenu d’une Hashtable renvoyée par un script Powershell.


Merci de vos retours.

jeudi 14 janvier 2010

Nouvelle version pour PsTFS Web Admin

PsTFS est en version V0.4, cette version n'est pas encore définitive ou finalisée mais elle est déjà très fonctionnelle, elle n'a pas la possiblité d'ajouter des indicateurs graphique mais par contre elle propose une version web pour smartphone. Je l'utilise tous les jours, elle me permet de suivre les anomalies, les taches par développeurs, les builds etc...

Voici quelques images :



Et oui un look de IPhone, pourquoi ??? car c'est intuitif et simple d'utilisation. Cela fonctionne très bien sous Windows Phone et Androïd.








Téléchargement : http://pstfswebadmin.codeplex.com

mardi 5 janvier 2010

L’ALM: c’est quoi ?

On parle de plus en plus souvent de l’ALM. Mais savons nous précisément ce que c’est ? Cet article propose une approche qui fait son chemin. Elle est notamment portée par David Chappell, dont certains travaux commandés par Microsoft visent à fournir une définition plus globale.

Définition

L’ALM est l’Application Lifecycle Management, c’est à dire le cycle de vie de l’application.

Comprendre ce qu’est l’ALM revient donc à comprendre toutes les phases de la vie d’une application. Quand l’application nait elle ? Quand se développe-t-elle ? Quand meure-t-elle ?

ALM vs SDLC

Une idée commune est que le cycle de vie de l’application se confond avec le cycle de vie du développement logiciel (ou SDLC: Software Development Lifecycle).

Mais cette approche n’est elle pas un peu réductrice ? Et si l’ALM englobait tout ce qui se passe avant le lancement du développement ? Et tout ce qui se passe après son développement ?

Cette vision plus globale est très intéressante, car elle permet de gérer toutes les activités d’un projet, et pas uniquement sa phase de production. En effet, de nombreuses tâches débutent bien avant l’ouverture de son environnement de développement logiciel: fixer les objectifs, vérifier la pertinence et l’adéquation avec la stratégie, la constitution des équipes projets, la construction du projet, le chiffrage…ont lieu bien avant la phase de développement.

La phase post développement donne lieu à un grand nombre d’activités: déploiement des versions successives, surveillance et opérations…qu’il s’agit également d’intégrer dans le cycle de vie.

Les 3 phases: Gouvernance, Développement, Opérations

Les 3 phases d’une application peuvent se résumer ainsi:



L’application nait à partir de l’idée. La phase de gouvernance va permettre de préparer la phase de Développement. Enfin, la phase Opération intervient pour gérer les problématiques de déploiement, de surveillance, et de retrait.

Phase de gouvernance

La phase de gouvernance consiste en 3 activités principales, indiquées par le diagramme ci après.



Développement des cas métiers

Il s’agit de la première activité du projet, qui consiste à définir les différents scénarios métiers adressés par l’application, et à en développer les principales spécifications, en terme de résultat attendu, de bénéfices…

Gestion du portefeuille projet

Cette phase vise à concrétiser ce projet en cas de pertinence. Un chef de projet est nommé, une équipe est mise en place.

Le processus de validation de la pertinence des projets peut être complexe: l’impact de chaque projet sur la stratégie est évalué. Si un projet permet d’atteindre un grand nombre d’objectifs stratégiques, ou si son impact est fort sur certains axes stratégiques de l’entreprise, il aura une priorité importante, et pourra éventuellement être activé.

Ce type de processus est de plus en plus utilisé par les entreprise, lorsqu’elles ont un grand nombre d’idées d’innovations, mais un nombre limité de ressources. Il s’agit donc de concentrer son énergie sur les projets les plus intéressants.

Gestion du porte feuille d’application

Au cours de la vie de l’application, même lorsque celle ci est déployée, il convient d’analyser l’impact de l’application. Cette discipline s’appelle l’APM (Application Portfolio Management). Elle voit chaque application comme une valeur (à l’instar d’une machine par exemple), dont les coûts et les bénéfices doivent être analysés. Cette analyse peut aboutir à des décisions: remplacement de l’application, nouvelle version, etc…

Développement

Cette phase correspond au SDLC. Les activités sont décrites ci après.




Il s’agit donc des différentes phases de production de l’application, incluant les itérations, les opérations de maintenance, les nouvelles versions…

Cette phase est la plus connue dans l’ALM !

Les opérations

Cette phase regroupe les activités de déploiement et de surveillance de l’application.


Les déploiements sont étroitement liés aux phases de développements: nouvelle version, etc…Les opérations de surveillance et de monitoring sont quand à elles actives pendant toute la vie de l’application.

Les outils pour chaque étape

Chaque étape de l’ALM peut être supportée par un (ou plusieurs !) outils.

Dans l’écosystème Microsoft, les outils sont les suivants.

Gouvernance

La suite EPM est dédiée à cette phase des applications.

Avec la version EPM2007, l’ensemble des activités de cette phase pourra être supporté: gestion des propositions de projet, gestion des coûts/budgets, planification des ressources, outils décisionnels, etc…

Avec la version EPM2010, les activités de gestion de portefeuille projet pourront être supportées par Project Portfolio Server, dont c’est la mission principale. Retrouver les autres billets de ce blog à la catégorie EPM pour avoir la description de cet outil.

Développement

Le cycle de vie du développement est supporté par Visual Studio, aidé par Team Foundation Server. Cet outil permet à la fois la production, mais également la gestion de configuration, le test, l’intégration continue…

Opération

Un outil tend à se démocratiser pour gérer cet aspect: System Center. Véritable suite logicielle dédiée à l’administration du parc informatique, sa mise en oeuvre permet une maîtrise des différentes configurations en production.

Encore insuffisamment exploité dans le monde du développement logiciel, des connections avec les autres outils d’ALM (par exemple la gestion des tests dans TFS/Lab Manager) vont sans doute lui donner une place importante dans l’ALM, surtout dans un contexte qui pousse de plus en plus à la virtualisation.



Cet article n'est pas de moi mais d'un amis : Sylvain Gross ( s.gross@evaluant.com ), merci pour sa participation ;)

samedi 2 janvier 2010

PsTFS Web admin - Création d'un script PsTFS (powershell) pour l'ajout de WI

Comme vous le savez, PsTFS web admin permet d'exécuter des commandes Powershell, donc PsTFS, pour l'affichage soit sous forme de tableau, soit sous forme de graphique des données.

Maintenant il est possible de faire des commandes pour l'ajout de données. Par exemple en utilisant la CMDLET "Add-Workitem" de PsTFS il est possible de créer un Workitem très facilement et avec des paramètres.

Add-WorkItem -tfs http://monserver:8080 -ProjectName MyProject -Type {@Title:Type%20WorkitemType:StringInformation:Type%20Workitem%20for%20project%20NONO} -Title {@Title:Title%20for%20WorkitemType:StringInformation:Title%20for%20Workitem} -Param {@Title:ParamType:MultiLineInformation:Ex:'Description'%20'Category'}

Ce type d'élément :
{@Title:Type%20WorkitemType:StringInformation:Type%20Workitem%20for%20project%20NONO}

Permet de rentre cette information saisissable dans le formulaire web, par exemple :
  • Title : Est le titre du Label, la valeur sera dans notre cas "Type de workitem"

Il existe 3 élements pour une variable:

  • Title
  • Type
  • Information
Et pour type il existe 4 valeurs :
  • String
  • Bool
  • DateTime
  • MultiLine
Les espaces doivent être remplacés par %20 pour permettre le traitement de l'information.

Voici un exemple d'utilisation




Pour le télépchargement :
http://pstfswebadmin.codeplex.com

VPC pour TFS 2010 Beta 2

Bon téléchargement :

Microsoft® Visual Studio® 2010 and Team Foundation Server® 2010 Beta 2 virtual image for Windows Virtual PC :

Microsoft® Visual Studio® 2010 and Team Foundation Server® 2010 Beta 2 virtual image for Windows Server 2008 Hyper-V :

Microsoft® Visual Studio® 2010 and Team Foundation Server® 2010 Beta 2 for Microsoft® Virtual PC 2007 SP1 Image ;
http://www.microsoft.com/downloads/details.aspx?displaylang=en&FamilyID=540777b0-cbd7-485e-bde5-23a1d4f442e0

La premier est optimisée pour Windows 7 avec 3 Go de mémoire libre, les autres pour Hyper-V et VPC 2007 SP1.