building a technical consulting team within a federated university environment
Post on 11-Jan-2016
26 Views
Preview:
DESCRIPTION
TRANSCRIPT
Building a technical consulting team within a federated university
environment
Educause Southwest Regional Conference
February 22, 2007
Austin, TX
By: C. J. Barker
Your Presenter
C. J. Barker• University of Texas at Austin• Information Technology Services• Software Developer / IT Manager• Technical Contracts Manager
[Software]
Building a technical consulting team
Topics
• Background & History
• Business Plan
• Bid Estimates
• Service Level Agreement
• Source Code License Agreement
• Hiring Practices
• Managing ‘Agile’ Projects
Building a technical consulting team
What will this session provide?
• Serve as case study
• Disclose successes, trials, and tribulations
• General development practices within distributed university environment
Background & HistoryUT Austin
• 48,000+ students
• 20,000+ faculty & staff
• 20 Colleges & Academic Units
• Copious administrative departments
• Vast array of varying business and IT needs
• Evolving technical landscape
Background & HistoryRecognized Need
• Departments lack or have scarce resources– Human
– Technical
– Financial
– Time
• Business process and technological advancements suffer
• Software development and support needed
• ITS agrees to address university needs
Background & HistoryAgile Contracts Team (ACT)
• Created August 2005
• Technical Consulting Services
– Customer-Service Oriented
– Foster academic and administrative units’ productivity
– Business and software development & support
• The catch – developer positions self-funded
Develop A Business PlanWhere to begin?
• Contents of plan needs to match the purpose
– Assist academic/administrative departments
– Customer-oriented services
– Assist with technical & business needs
– Self funding team [must sustain business]
– Small to mid size development and maintenance projects
• Don’t loose site of your clients’ needs
• Model after private sector
• Prepare, plan, anticipate, and ACT
Develop A Business Plan
Plan’s Focus Areas
• Executive Summary
• Business Description
• Market Analysis
• Management
• Business Development Strategy
• Financial Review
Bid Estimates
How to Approach
• Carry out initial requirements gathering
• Rely on past project experience & expertise
• Utilize team’s strengths and weaknesses
• Get buy-in from team
• Get approval from client
• Remember Morse Law and apply it to estimates
• Measure estimate versus actual
• Bid estimating is an art form. It takes time and experience
Service Level Agreement
Get it in writing!
• Service contract/agreement– Establishes levels of services
– Identifies roles & responsibilities
– Base line for expectations
• Define deliverables and timeline
• Get all involved parties’ authorization signature
• Avoid scope creep – stick to agreement
• As needed, revisit the agreement
Source Code License Agreement
Reduce Liabilities and Establish Policy
• Source code is property of UT Austin
• Available to affiliated dept or academic unit
• BSD licensed agreement “as is” software
• DYI (don’t repeat yourself)– Leverage source code base
– Share knowledge and techniques
Hiring Practices
Evaluate the Landscape and Utilize Resources
• UT has 10 Ten Engineering, CS, & Business programs
• Students interested in professional work experience
• Ambitious, smart, part-time workers
• Student programmers are cheap, good labor
• Mentor and groom employees
• Evaluate potential placement– Hire fulltime
– Utilize specialties
Hiring Practices
Potential Employee Characteristics
• Analytical Skills
• Great Communication (oral/written)
• Driven to succeed
• Professionalism
• Self-motivated
• General theory and software design practices
• Don’t need someone good at technology X
• Need someone who is a good problem solver
• Can always pick up toolset
Technical LandscapeUT’s Technical Environment
• Distributed computing– Legacy mainframe (IBM OS390)
– Various RDBMS (Oracle, MS-SQL Server, MySQL)
– Programming (PHP, Java, C/C++, Perl, Python, Cold Fusion, etc.)
• Emphasis on web and database programming
• Don’t limit yourself – Pick the right tool for the job
– Catch 22 (RAD versus Support/Maintenance)
Technical LandscapeFOSS• Free and Open Source Software
– Chances are someone has done it or something similar– Utilize the tremendous libraries and wealth of knowledge– Don’t be afraid – to modify and customize
• Java: Apache Software Foundation• PHP: PHP Extensions and Applications Repository (PEAR)• Python: Cheese Shop Repository• Perl: Comprehensive Perl Archive Network (CPAN)• SourceForge.org• FreshMeat.net• OpenSourceTutorials.com
Tools & TechniquesEmbrace Technology Protocols, Frameworks, etc.
• Don’t limit project capabilities due to environment constraints
• Build flexible, scalable software
• Design Patterns are your friends
• Utilize and adapt communication protocols– Web Services (SOA), XML, SOAP, RPC
– ODBC
– HTTP, FTP, Sockets
– LDAP
• Examples– PHP and Oracle integrating with IBM mainframe (XML Gateway)
– Python invoking existing Java libraries (Jython)
Managing IT ProjectsUseful Practices
• Engage clients with development team– Holds developers accountable
– Vested interest in the project
• Utilize Scrum ‘sprint’ technique– 1 to 3 week development cycles
– Rapid development
– Iterative feedback loop with client
• Incorporate issue/bug tracking, wiki, and project management tool [TRAC]
• Utilize source code repository with version control [Subversion]
Managing IT ProjectsUseful Practices
• Automate anything and everything– Document generation
– Source code builds and unit tests
– Quota Checks
– Data loads
Managing IT ProjectsTrack Metrics
• Track employee contracted hours
• Audit time logs for client billing
• Monitor budgets
• Forecasting current project needs/changes
• Trend analysis of employees work load
• Improve bid estimates
• ACT built custom software application (Intranet)
Managing IT Projects
Managing IT Projects
Managing IT Projects
Managing IT Projects
ACT Year In ReviewHas it been successful?
• Assisted over 20+ academic & administrative departments
• Developed numerous software application suites– Modular applications being reused throughout colleges
• Provides maintenance and support to enterprise University applications
• Grossed over $155K in the last year
• Self-funded team sustained for over a year
• Overwhelming repeat business and client referral
Problems with current modelIt’s not all perfect
• Chicken and the egg issue [developers vs. projects]
• Limiting salary budget
• Employee burnout
• Intense pressure to support self funding model
• Consulting team isolated for inter-department efforts
• Some redundancy of projects [web applications w/ dbms]
• Lack of project priority, screen, approval– Do everything for anybody
• Lack own human resources
Room for Improvement
• Consolidate all consulting services– Hardware, user/desktop support, and software
– Standardize policy and procedures
• Dedicate developer resources
• Dedicate project management resources
• Rotate employee/teams [avoid burnout]
• Formal review of potential contracts/projects
• Recognize the University need and demand for such services– Subsidize consulting services
Contact Info
=======================================C. J. Barker
Agile Contracts Team (ACT)Information Technology Services
University of Texas at Austinc.barker@its.utexas.edu
http://www.utexas.edu/its/act
=======================================
Questions?
Answers?
Recommendations?
top related