Managing Software in Higher Education

Slides:



Advertisements
Similar presentations
Software engineering tools for web development Jim Briggs 1CASE.
Advertisements

Branching, Switching and tagging Francesco Furfari CNR-ISTI Italy.
Developing in CAS. Why? As distributed you edit CAS 3 with Eclipse and build with Maven 2 – Best Practice for Release Engineering – Difficult edit-debug.
Software Configuration Management Donna Albino LIS489, December 3, 2014.
David Notkin Autumn 2009 CSE303 Lecture 22 Subversion is an open source version control system. Social Implications Friday version control system.
Server-Side vs. Client-Side Scripting Languages
VisIt Software Engineering Infrastructure and Release Process LLNL-PRES Lawrence Livermore National Laboratory, P. O. Box 808, Livermore,
Subversion Takes Back the Night How Version Control makes web development better.
Source Code Version Management and Configuration Control Art Amezcua Status 11/5/2007.
Version Control at UCB Version control with Subversion and Subclipse.
Source Control Repositories for Enabling Team Working Svetlin Nakov Telerik Corporation
SubVersioN – the new Central Service at DESY by Marian Gawron.
© 2009 GroundWork Open Source, Inc. PROPRIETARY INFORMATION: Information contained herein is not for use or disclosure outside of GroundWork Open Source,
Administrator Training. Login Screen Filled Forms Screen Logging In.
By: Taylor Helsper.  Introduction  Bug Tracking  Progress Tracking  Version Control  Conclusion  Questions.
John Hartley Mark Bransby Utilizing Adobe's Publishing Solutions for Distributed Web Publishing.
Version control Using Git 1Version control, using Git.
M. Taimoor Khan * Java Server Pages (JSP) is a server-side programming technology that enables the creation of dynamic,
Subversion. What is Subversion? A Version Control System A successor to CVS and SourceSafe Essentially gives you a tracked, shared file system.
Version Control with Subversion Quick Reference of Subversion.
Sustainable SharePoint 2010 Customizations By Bill Keys.
Subversion Code Deployment LifeCycle August 2011.
Subversion (SVN) Tutorial Source:
Object-Oriented Analysis & Design Subversion. Contents  Configuration management  The repository  Versioning  Tags  Branches  Subversion 2.
Managing SX.e and TWL with MARC and Scripts Jeremiah Curtis
DEV-8: OpenEdge® Architect – Extensibility & Third Party Integration Sunil Belgaonkar Principal Software Engineer Architect Phillip Magnay.
Subversion is a free/open-source version control system. It manages files and directories, and the changes made to them, over time. This allows you to.
Semi-Automatic patch upgrade kit
Running Kuali: A Technical Perspective Ailish Byrne (Indiana University) Jonathan Keller (University of California, Davis)
Inconsistency of data User information not up to date Too many file version Wrong file name Not a fully mobility Require 3 rd party applications to.
UNDERSTANDING YOUR OPTIONS FOR CLIENT-SIDE DEVELOPMENT IN OFFICE 365 Mark Rackley
Slide 1 Running NEMO at ECMWF Slide 1 NEMO under Perforce at ECMWF Kristian S. Mogensen Last revised:
Configuring Drupal Information Systems 337 Prof. Harry Plantinga.
(1) Introduction to Subversion (SVN) and Google Project Hosting Philip Johnson Collaborative Software Development Laboratory Information and Computer Sciences.
(1) Introduction to Subversion (SVN) and Google Project Hosting Philip Johnson Collaborative Software Development Laboratory Information and Computer Sciences.
Aaron Corso COSC Spring What is LAMP?  A ‘solution stack’, or package of an OS and software consisting of:  Linux  Apache  MySQL  PHP.
JavaScript Invented 1995 Steve, Tony & Sharon. A Scripting Language (A scripting language is a lightweight programming language that supports the writing.
Source Control Repositories for Enabling Team Working Doncho Minkov Telerik Corporation
NALINI S. NAUTIYAL SYSTEM SOFTWARE DIVISION Subversion.
DIGITAL REPOSITORIES CGDD Job Description… Senior Tools Programmer – pulled August 4 th, 2011 from Gamasutra.
SWIM Project Meeting, Bloomington, IN September 2006 Working with the SWIM Code Repository David E. Bernholdt Oak Ridge National Laboratory
Version Control How and why to control changes in a software artifact.
Source Control Dr. Scott Schaefer. Version Control Systems Allow for maintenance and archiving of multiple versions of code / other files Designed for.
Software Configuration Management -Subversion- RTLAB YuJin Park.
Managing Alfresco source code
Requirements Specifications for Web Portal Application
Version Control and Source Code Control Systems
Version Control with Subversion
Source Control Dr. Scott Schaefer.
Subversion Reasons to use How it works Subversion important commands
Version Control with Subversion (SVN)
What is a Blog? short for Weblog journal on a website
Quality Control in the dCache team.
CVS revisions UML diagram
Change Deployment in ServiceN w
Concurrent Version Control
Version Control System
CIT 470: Advanced Network and System Administration
Unit 27: Network Operating Systems
Revision Control Daniel Daugherty
CRM 2016 Solutions and Package Deployer
Subclipse CSCI 3130 Summer 2016.
“All Lawson, All the Time!”
Your code is not just…your code
CI/CD Workflow and Event Pages
Building Serverless Enterprise Applications
Architecture of the web
Systems Analysis and Design I
Your code is not just…your code
Presentation transcript:

Managing Software in Higher Education James Lambert Ian Rifkin Brandeis University #NC11_SESS36

Who We Are Software Systems Administrator Enterprise Architect Your role? Why are you here?

Release Management What is release management? Managing change by understanding what software is on your server(s).

How? How to accomplish goals of release management?

Applications at Brandeis apx. 7 million lines of code Many are created in-house Some open source products Some proprietary products

Our Starting Point Software management practices apx. 4 years needed improvement Long, unmanageable application files Mixing of code, design, user information, IPs, etc all hard-coded in long files Limited usage of any version control (some CVS, some RCS) Code was often edited on the fly 3rd party software problems too (dependencies, upgrades)

Environments Sandbox: Individual developer’s area to create/edit Development: Unit testing Test: Integration testing Production: It’s live!

Environment Builds What should you do with underlying software? Apache, Java, libraries, class files, etc

Versioning Software Files Version control software Version Control Sandbox Commit Changes Get Updates

Versioning Software Files We use Subversion (svn) Directory structure of repositories: Trunk, releases, branches Directory structure within applications: .control (encrypted password files) bin (cron scripts) conf (configuration files) perllib (custom application code) templates (HTML templates) website (images, CSS, JavaScript)

Software Kits/Builds Builds/kits Our builds take files from svn (trunk or a branch), groups them together with a version number, enabling them to be released. Build Server Version Control System Get files Group files Software Kit

Release Scripts What should happen when you release a software build? Kit Send software kit, unpack and prep for application use Application Server

Releases Practices Set standards Don’t “release and run” (esp. to production) Consider downtime implications Major versus minor release? What constitutes a critical (urgent) release and what should that mean? Who tests? Where are bugs recorded?

Communication Communication between developers is critical Esp. when working together on a single product

Communication Don’t rely on version control for all of your communication Branches of code are needed at times, but add complications that need to be communicated

Questions? Ian Rifkin: irifkin@brandeis.edu James Lambert: jlambert@brandeis.edu