GLAST CHEP 03 March 24-28 2003 T.Burnett1/14 User-friendly tools for Managing Software Development Projects User-friendly tools for Managing Software Development.

Slides:



Advertisements
Similar presentations
Introduction to Visual Basic.NET Uploaded By: M.Sheraz anjum.
Advertisements

® Page 1 Intel Compiler Lab – Intel Array Visualizer HDF Workshop VI December 5, 2002 John Readey
The Web Warrior Guide to Web Design Technologies
LINUX-WINDOWS INTERACTION. One software allowing interaction between Linux and Windows is WINE. Wine allows Linux users to load Windows programs while.
Welcome to E-Prime E-Prime refers to the Experimenter’s Prime (best) development studio for the creation of computerized behavioral research. E-Prime is.
Lecture Roger Sutton CO331 Visual Programming 1: Module introduction and the programming environment 1.
GLAST LAT Offline SoftwareWorkshop - SLAC, Jan , 2001 User Support Thomas Lindner SLAC January 16 th, 2001.
Advanced Object-Oriented Programming Features
Image Management System Supervisor Dmitry Davidov Students Tanya Kostanovich Roma Kagan.
Introduction to CVS 7/3/20151UMBC CMSC 341. Outline Introduction to Source Code Management What is CVS? CVS for Project Submission Basic commands Checkout,
Automated Tests in NICOS Nightly Control System Alexander Undrus Brookhaven National Laboratory, Upton, NY Software testing is a difficult, time-consuming.
Creating a Console Application with Visual Studio
PART A Emac Lisp   Emac Lisp is a programming language  Emacs Lisp is a dialect.
1 ENG236: ENG236: C++ Programming Environment (2) Rocky K. C. Chang THE HONG KONG POLYTECHNIC UNIVERSITY.
M. Gallas IT-API LCG SPI project: testing1 Software Testing Infrastructure status LCG Software Process & Infrastructure (CERN, 10/23/02)
A First Program Using C#
® Page 1 Intel Compiler Lab – Intel Array Visualizer HDF Workshop VIII October 27, 2004 John Readey
R.Dubois Science Tools Development Infrastructure 1/7 GLAST LAT ProjectSoftware Workshop July, SLAC SciTools Infrastructure Scope of Science Tools.
An Introduction to Visual Basic
CN1260 Client Operating System Kemtis Kunanuraksapong MSIS with Distinction MCT, MCITP, MCTS, MCDST, MCP, A+
Nightly Releases and Testing Alexander Undrus Atlas SW week, May
1 1 Lab1 Ismail M. Romi – IT Dept, PPU, Visual Basic 2005 Programming Tour.
Software Engineering in Robotics Packaging and Deployment of Systems Henrik I. Christensen –
NICOS System of Nightly Builds for Distributed Development Alexander Undrus CHEP’03.
The introduction of CMT Version v1r14. General index 1.presentation 2.how to install CMT 3.how to write a requirements file 4.how to use CMT.
Integrated Development Environment (IDE)
Chapter 11 An Introduction to Visual Basic 2008 Why Windows and Why Visual Basic How You Develop a Visual Basic Application The Different Versions of Visual.
Version control Using Git Version control, using Git1.
Tot 15 LTPDA Graphic User Interface summary and status N. Tateo 26/06/2007.
Chris Onions Getting started with CVS in ATLAS 11 Getting started with CVS in ATLAS Chris Onions (Tutorial based on that of Raúl Ramos Pollán CERN / IT.
1 3. Computing System Fundamentals 3.1 Language Translators.
Contents 1.Introduction, architecture 2.Live demonstration 3.Extensibility.
CMT Christian Arnault - LAL - Chep /18 Introduction What is CMT, its goals Operating CMT The concepts in CMT, the internal model Status, implementation.
The report on the current situation of the BESIII framework zhangxiaomei maqiumei 10/3/2004.
Chapter 11 An Introduction to Visual Basic 2005 Why Windows and Why Visual Basic How You Develop a Visual Basic Application The Different Versions of Visual.
Visual Basic.NET BASICS Lesson 1 A First Look at Microsoft Visual Basic.NET.
Marco Cattaneo, 19-June Building and running software on WNT with Visual Studio and CMT A step by step recipe.
GLAST CHEP 03 March T.Burnett1/12 User-friendly tools for Managing Software Development Projects User-friendly tools for Managing Software Development.
Microsoft Visual Basic 2005 BASICS Lesson 1 A First Look at Microsoft Visual Basic.
CMT 1 Jan. 1999C. Arnault LAL History, motivations Started in 1993 for providing support for horizontal software development at LAL After an evaluation.
Presentation Name / 1 Visual C++ Builds and External Dependencies NAME.
Marco Cattaneo - DTF - 28th February 2001 File sharing requirements of the physics community  Background  General requirements  Visitors  Laptops 
GLAST LAT Offline SoftwareCore review, Jan. 17, 2001 Review of the “Core” software: Introduction Environment: THB, Thomas, Ian, Heather Geometry: Joanne.
1 MSTE Visual SourceSafe For more information, see:
G.Govi CERN/IT-DB 1 September 26, 2003 POOL Integration, Testing and Release Procedure Integration  Packages structure  External dependencies  Configuration.
Yannick Patois - Datagrid Software Repository Presentation - March, n° 1 Datagrid Software Repository Presentation CVS, packages and automatic.
K. Harrison CERN, 22nd September 2004 GANGA: ADA USER INTERFACE - Ganga release status - Job-Options Editor - Python support for AJDL - Job Builder - Python.
GLAST LAT Project Science Tools - 12 June 2002 T. Burnett 1 The Science Analysis Software Development Environment -- for tools too! T. Burnett.
BESIII Offline Software Development Environment Ma qiumei * Development environment * Configuration & management tool * Software development.
GLAST Science Support Center June 29, 2005Data Challenge II Software Workshop User Support Goals For DC 2 James Peachey GSFC/L3.
Visual Programming Borland Delphi. Developing Applications Borland Delphi is an object-oriented, visual programming environment to develop 32-bit applications.
M.-E. Bégin¹, S. Da Ronco², G. Diez-Andino Sancho¹, M. Gentilini³, E. Ronchieri ², and M. Selmi² ¹CERN, Switzerland, ² INFN-Padova, Italy, ³INFN-CNAF,
Introduction to FOSS. Classes of software  Operating System (OS)  Software that manages all the application programs in a computer  Manages the computer.
Version Control Systems
Dive Into® Visual Basic 2010 Express
INF230 Basics in C# Programming
CARA 3.10 Major New Features
Unified Modeling Language
Introduction to .NET Framework Ch2 – Deitel’s Book
GLAST Release Manager Automated code compilation via the Release Manager Navid Golpayegani, GSFC/SSAI Overview The Release Manager is a program responsible.
Dynamic Web Page A dynamic web page is a kind of web page that has been prepared with fresh information (content and/or layout), for each individual viewing.
Version Control Systems
Social Media And Global Computing Introduction to Visual Studio
CRM 2016 Solutions and Package Deployer
Cmake Primer.
Understanding the Visual IDE
Welcome to E-Prime E-Prime refers to the Experimenter’s Prime (best) development studio for the creation of computerized behavioral research. E-Prime is.
CIS16 Application Development – Programming with Visual Basic
Compilers, Make and SubVersion
3.00 Understanding the Adobe Dreamweaver interface. (12%)
Presentation transcript:

GLAST CHEP 03 March T.Burnett1/14 User-friendly tools for Managing Software Development Projects User-friendly tools for Managing Software Development Projects Toby Burnett University of Washington Marco Frailis University of Udine Alex Schelssinger SLAC

GLAST CHEP 03 March T.Burnett2/14 Introduction Objective: make HEP software developers more productive HEP software development components: –Package: group of related source files, usually to build a single library and/or executable Versioning via cvs tags –“Release” system to manage and build executables from set of tagged packages –Development scheme: “Test area” mechanism for developing and testing new code against a release. Observations: The release/management systems are command-line oriented, can be daunting to new developers Hard to get overall view, especially when dealing with multiple packages

GLAST CHEP 03 March T.Burnett3/14 The development environment Release Package User development Area Package Package/build manager

GLAST CHEP 03 March T.Burnett4/14 Solutions for CMT (Similar approaches would apply to SRT and scram) A GUI application –VCMT (windows and linux versions) Simplified command-line interface: – glastpack

GLAST CHEP 03 March T.Burnett5/14 An OO analysis: The players Objects: –Environment: CMT env vars, etc. –CMT packages system (read-only, sticky tags) development (head versions) requirements files, sources –binaries: libs, dlls, exes Tools: –CMT –CVS –development tools Windows: Visual Studio Linux: gmake, emacs, gdb/ddd –Doxygen

GLAST CHEP 03 March T.Burnett6/14 The strategy Present the user with a view of all the objects Allow appropriate tools to be used according to development scenarios: –set environment –checkout packages, singly or in groups –browse set of available packages –examine properties of each package, relationships –modify and rebuild binaries –check in and/or tag new versions –run executables

GLAST CHEP 03 March T.Burnett7/14 We have objects: let’s define classes WhatClass NameVcmt(windows) implementation CMT environmentCmtcmt.wsc COM object A CMT packagePackageJscript class Package Package, its projects, and dependent projects WorkspaceJscript class Workspace Individual binary targetProjectJscript class Project

GLAST CHEP 03 March T.Burnett8/14 The object model diagram

GLAST CHEP 03 March T.Burnett9/14 A tour of the application Examine CMT settings Set CMT path Browse a package’s properties –requirements file –used packages –macros, sets, etc. Modify requirements file Check cvs status Start a console session in the package context Checkout a package Set up and build a package Run a package application Start Visual Studio (windows only

GLAST CHEP 03 March T.Burnett10/14 VCMT for Windows List of accessible package/versions Actions to apply to selected package Build actions: Visual Studio 6 or 7 cvs operationsDoxygenate it Text input/output window

GLAST CHEP 03 March T.Burnett11/14 Structure of the Windows code: Jscript and HTML Windows Script Host vcmt.wsf COM cmt.wsc main program: manage objects, GUI run cvs, visual studio vcmt.htm Internet Explorer gui description CMT interface

GLAST CHEP 03 March T.Burnett12/14 The Linux version Written in RUBY

GLAST CHEP 03 March T.Burnett13/14 glastpack.pl usage: glastpack.pl create dirname usage: glastpack.pl help command usage: glastpack.pl build version usage: glastpack.pl rco package version usage: glastpack.pl run package exename usage: glastpack.pl add /path/to/area usage: glastpack.pl rebuild package usage: glastpack.pl remove /path/to/area usage: glastpack.pl co package version usage: glastpack.pl login usage: glastpack.pl logout

GLAST CHEP 03 March T.Burnett14/14 Concluding remarks Experience –In use by all GLAST developers: mature, few problems it can test for consistency when starting, avoid installation problems Package browsing Buttons for all basic scenarios override CMT behavior (checkout, broadcast) Sources : VCMT/win: VCMT/linux: glastpack: