Upload
barbara-crawford
View
214
Download
0
Embed Size (px)
Citation preview
“Building enterprise software alone is really hard”
Brad Wheeler
“Building it with others is really, really, really hard”
Are We Nuts ??
IT in Higher Education doesn’t have a Money Problem…We have a Coordination Problem
We Don’t (and Won’t) have the IT Resources We Need to Reach Our Institutional Potential
Excerpted from “Leading Beyond the ICT Conundrums for Scholarship 2.0” EDUCAUSE Australia 2007
“Community source describes a model for the purposeful coordinating of work in a community. It is based on many of the principles of open source development efforts, but community source efforts rely more explicitly on defined roles, responsibilities, and funded commitments by community members than some open source development models.”
…. from www.sakaiproject.org
Community Source Projects
“Community source describes a model for the purposeful coordinating of work in a community. It is based on many of the principles of open source development efforts, but community source efforts rely more explicitly on defined roles, responsibilities, and funded commitments by community members than some open source development models.”
…. from www.sakaiproject.org
Community Source Projects
MySQL; Ingres; PostgresMySQL; Ingres; Postgres
FreeBSD;Linux;FreeBSD;Linux;
Why Would a Trend Stop Short?
MVS, Solaris, DEC, XPMVS, Solaris, DEC, XP
DB2, Oracle, SQLServerDB2, Oracle, SQLServer
Apache; Tomcat; ZopeApache; Tomcat; ZopeWebSphere; BEA; OracleWebSphere; BEA; Oracle
Moodle; Sakai; KualiMoodle; Sakai; KualiSAP; PSFT/Oracle; SCT; BlackboardSAP; PSFT/Oracle; SCT; Blackboard
???
Historical Trends with Open Source
Operating SystemsOperating Systems
DBMSDBMS
Web/Application ServersWeb/Application Servers
ApplicationsApplications
IU FIS
Current Release: 47.8 May 31, 20072 of these 47 ..‘disruptive’•Shut down of system for extended period (> few hours)•Major expense to campus (technical or functional)•Forced business process changes•significant retraining
Release 1: July 1, 1994Release 27: June 10, 2000
And your point is?
Loose Coupling
Decomposed (Non-Monolithic) Software SuitesBest of Breed ‘Services’
Open Software Solutions
?? vendor Value Propo$ition$ ??
KFS (Kuali Financial Systems)
• IU FIS as baseline• $2.5m Mellon grant to IU• $5.2m from investing partners• User Centric: usability from initiation• PM from IU• Comprehensive
– Any Carnegie Class; Community College to R1 – e.g. Indiana University
• 2 R1 campuses• 6 smaller campuses
• Best practices-->Internal Controls• Kuali Rice
KFS Investing Partners
• Started with Six Institutional Founding Partners
• NACUBO and The rSmart Group are Founding Partners
KRA (Kuali Research Administration)
• MIT Coeus as baseline• $1.5m Mellon grant to IU• $2.0m from investing partners• User Centric: usability from initiation• PM from Cornell• Pre- and post-award• XML based grant agency interfaces• XML based FIS interfaces• Kuali Rice
KE (Kuali Endowment)
• Likely based on IU Foundation system.. Delphi;
• No Mellon grant;• SOA…interfaces• No lead school yet• Kuali Rice
KS (Kuali Student)*
• Not based on existing system; • No Mellon grant (yet);• Web Services based;• ‘core’ and ‘edge services’• UBC leading• Big $$$
* Still Exploratory
KS Exploratory Partners*
• Currently five institutions exploring…more will join;
• Seeking Mellon support;• AACRAO…supportive• Five year effort• $1.0m/year for five years
* No firm commitment declared yet
Kuali HR/Payroll
• An itch that needs to be scratched;• Lead school..investment pool;• ‘edge services’ initially
– Interfacing with existing ERPs?
KR (Kuali Rice)
• Enterprise class middleware;• Both Kuali and non-Kuali applications;• SOA concepts
– Robust systems;– Common enterprise workflow functionality;– Customizable and configurable user interfaces
with a clean and locally universal look and feel;– General and extensive notification features; – Focus on building modular (loosely coupled)
applications.
http://rice.kuali.org/
KR Founding Partners
• Four active partners• Looking for a few
good men and women!!
• Pointy headed stuff• Mostly top-shelf
players• Potential impact is
very significant for institutions
How is Kuali Similar to or Different
from Other ERP Software?
• By, Of and For HE;– Private sector? – User centric Usability not an
afterthought
• Source code available:– No license fee;– Perpetual license;– Change;– Share with others;
Governance
• Kuali Foundation– Ongoing governance– Incubates/fosters other Kuali
initiatives– No full time employees yet…
minimalist
• Kuali Partners Program – Membership based – Commercial Affiliates
Initiative Governance e.g. KRA
• KRA Board– Voting member from each Institution– Chair from Indiana – Extended Board
• Project Manager (Cornell)– Developers from each Institution
• Functional Council (chair from Arizona)– Each school has one institutional vote– Self forming/managing subject matter
subgroups• IRB, Proposal Routing, Budget, Compliance, etc.
– Prioritizes all work by developers…how?
The Story so Far
• Decisions getting made;• Deadlines and commitments being mostly
honored;• Collaboration…higher education;• Sacrificing local needs;
Has NOT been EASY.
Clearly defined:principles;goals;some project structure;processes
KFS Challenges
• Staff in six time zones;• Large numbers of staff
– 22 developers…soon to be 26
• Diversity;• Communication styles;• Levels of experience;
KFS Communications
• Bi-weekly Board Meeting (used to be weekly)
• Weekly Functional Council Meeting• Weekly Development Managers Meeting• Weekly Lead Developers Meeting• Weekly SME Subcommittee Meetings (or as
needed)• Bi-weekly Technical Council Meeting• Quarterly face-to-face meetings of Board,
FC, and development teams (most important!)
KFS Meeting Protocol
• Agendas in advance;• Only when necessary;• Meeting minutes posted;• Document decisions and action items;• Deadlines for decision-making
KFS Communications Tools
Reports and documents– Weekly PM Status Report– Weekly SME Subcommittee Status
Reports– Meeting Minutes– Specification Documents– Scope Document(s)– Technical documentation –
configuration, tools, frameworks, etc.All in Sakai sites!!
KFS Communications Tools
Remote Communications– Video Conferencing..always on at
each site– Email lists– IM– VOIP (Skype)– Breeze (web conferencing)
KFS Communications Tools
Project Organization and Coordination – Sakai (document sharing, email
archive, etc)– Confluence from Atlassian (wiki pages
for documentation, collaboration, etc)– JIRA from Atlassian (task tracking)– MS Excel and Project for project plans
and Gantt charts…mostly one page Excel!!
Lessons Learned…many more to come)
• Regular F2F meetings;• Don’t “squeeze” QA;• KISS;• Deadline for decisions. If no
consensus in timely manner, vote;• Monitor productivity closely
– Specs ready when developers ready?– Are developers making reasonable
progress?
• Technical documentation;• Avoid going “tool crazy”;• Provide opportunities for
communication;• Code reviews and Infoshares
– Bringing new developers up to speed;– Consistency across
Lessons Learned…many more to come)
• Automated unit testing…paying off;• Centrally manage core infrastructure
development• Avoid “perfectionist” tendencies;• SMEs
– extremely valuable;– most scarce resource….“day” jobs..– years of expertise that can’t easily be taught to
new staff.
Lessons Learned…many more to come)
I’m Sure this is NOT your Project!
Speaking of project plans, with developers, sometimes you have to dig a bit to get under the surface. A slightly exaggerated case …..
The greatest breakthroughs will always begin, to quote Eric Raymond once more, with “one good idea in one person’s head,” and the greatest products will always reach perfection through the concerted efforts of a highly skilled team. http://www.strategy-business.com/press/freearticle/07204?pg=all
Fodder for the Bar conversations
The Ignorance of CrowdsNicholas G. Carr, strategy+business
“Building enterprise software alone is really hard”
Brad Wheeler
“Building it with others is really, really, really hard”
Are We Nuts ??
IT in Higher Education doesn’t have a Money Problem…We have a Coordination Problem
We Don’t (and Won’t) have the IT Resources We Need to Reach Our Institutional Potential
Excerpted from “Leading Beyond the ICT Conundrums for Scholarship 2.0” EDUCAUSE Australia 2007
“Community source describes a model for the purposeful coordinating of work in a community. It is based on many of the principles of open source development efforts, but community source efforts rely more explicitly on defined roles, responsibilities, and funded commitments by community members than some open source development models.”
…. from www.sakaiproject.org
Community Source Projects
“Community source describes a model for the purposeful coordinating of work in a community. It is based on many of the principles of open source development efforts, but community source efforts rely more explicitly on defined roles, responsibilities, and funded commitments by community members than some open source development models.”
…. from www.sakaiproject.org
Community Source Projects
MySQL; Ingres; PostgresMySQL; Ingres; Postgres
FreeBSD;Linux;FreeBSD;Linux;
Why Would a Trend Stop Short?
MVS, Solaris, DEC, XPMVS, Solaris, DEC, XP
DB2, Oracle, SQLServerDB2, Oracle, SQLServer
Apache; Tomcat; ZopeApache; Tomcat; ZopeWebSphere; BEA; OracleWebSphere; BEA; Oracle
Moodle; Sakai; KualiMoodle; Sakai; KualiSAP; PSFT/Oracle; SCT; BlackboardSAP; PSFT/Oracle; SCT; Blackboard
???
Historical Trends with Open Source
Operating SystemsOperating Systems
DBMSDBMS
Web/Application ServersWeb/Application Servers
ApplicationsApplications
IU FIS
Current Release: 47.8 May 31, 2007
2 of these 47 releases were ‘disruptive’•shut down of system for extended period (> few hours)•major expense to campus (technical or functional)•major business process changes forced by software•significant retraining of users
Release 1: July 1, 1994
Release 27: June 10, 2000
And your point is?
Loose Coupling
Decomposed (Non-Monolithic) Software Suites
Best of Breed ‘Services’
Non-ProprietarySoftware Solutions
??Software vendorValue Propo$ition$ ??
KFS (Kuali Financial Systems)
• Started with IU FIS as baseline• $2,500,000 Mellon grant to IU• $5,200,000 from investing partners• User Centric: usability from initiation• Project Manager from IU• Comprehensive
– Any Carnegie Class; Community College to R1 – e.g. Indiana University
• 2 R1 campuses• 6 smaller campuses
• Broadly based best practices-->Internal Controls
• Exploits Kuali Rice
KFS Investing Partners
• Started with Six Institutional Founding Partners
• NACUBO and The rSmart Group are Founding Partners
KRA (Kuali Research Administration)
• Started with MIT Coeus as baseline• $1,500,000 Mellon grant to IU• $2,000,000 from investing partners• User Centric: usability from initiation• Project manager from Cornell• Pre- and post-award• XML based grant agency interfaces• XML based Financial Systems interfaces• Exploits Kuali Rice
KRA Founding Partners
• Started with Five Institutional Founding Partners
• Several other institutions currently considering investments
KE (Kuali Endowment)
• Likely based on IU Foundation system written currently in Delphi
• No Mellon grant being sought• SOA…interfaces to diverse
financial systems• No lead school yet• Will use Kuali Rice
KE Founding Partners
• Currently two schools
• Two more are seriously evaluating
• Likely an 18 month effort
KS (Kuali Student)*
• Not specifically based on any existing system; will use pieces from several
• No Mellon grant (yet)• Web Services based….user
(student) centric• Both ‘core’ and ‘edge services’• UBC leading• Big $$$
* Still Exploratory
KS Exploratory Partners*
• Currently four institutions exploring…more will join
• Seeking significant Mellon support
• AACRAO is very supportive• Likely a five year effort• $1,000,000/year for five
years
* No firm commitment declared yet
Kuali HR/Payroll
• An itch that needs to be scratched• One school is willing to step up and
lead the ‘investment pool’ work• May be ‘edge services’ initially
– Interfacing with existing ERPs?
KR (Kuali Rice)
• Enterprise class middleware suite of integrated products
• Both Kuali and non-Kuali applications can be built in an agile fashion, responsive to user requests;
• Service Oriented Architecture (SOA) concepts – Targeted to robust systems– Common enterprise workflow functionality;– Customizable and configurable user interfaces with a clean
and locally universal look and feel;– General notification features to allow for a consolidated set
of ‘action items’. – Focus on encouraging a simplified approach to developing
functionality as modular (loosely coupled) applications.http://rice.kuali.org/
KR Founding Partners
• Four active partners• Looking for a few
good men and women!!
• Pointy headed stuff• Mostly top-shelf
players• Potential impact is
very significant for institutions
How is Kuali Similar to or Different
from Other ERP Software?
• By, Of and For Higher Education;– Private sector? – User centric Usability not an
afterthought
• Source code is available:– No license fee;– Perpetual license;– Change as you see fit;– Share openly with others;
Governance
• Kuali Foundation– Ongoing governance– Incubates/fosters other Kuali
initiatives– No full time employees yet…will be
minimalist
• Kuali Partners Program – Membership based – Commercial Affiliates
Initiative Governance e.g. KRA
• KRA Board– Voting member from each Institution– Chair from Indiana (Brad Wheeler)– Extended Board
• Project Manager (Cornell)– Developers from each Institution
• Functional Council (chair from Arizona)– Members from each Institution (institutional
vote)– Self forming/managing subject matter
subgroups• IRB, Proposal Routing, Budget, Compliance, etc.
– Prioritizes all work by developers…how?
The Story so Far
• Decisions getting made• Deadlines and commitments being mostly
honored• Collaboration for the good of higher education• Sacrificing local needs for the overall good of
the project
This does not imply it has been EASY.
Clearly defined principles, goals, some project structure, and processes have helped.
Kuali Financial System
• Phase I Deliverables (Oct 2006)• Chart of Accounts• Financial Transactions/General Ledger• Kuali Nervous System (KNS)• Kuali Enterprise Workflow (KEW)
• Phase IIA Deliverables (July/September 2007)
• Accounts Payable/Purchasing• Budget Construction• Labor Ledger• Research Administration/Grants & Contracts
• Phase IIB Deliverables (April/June 2008)• Accounts Receivable• Capital Assets Management System
KFS Challenges
• Physical location of staff.…six time zones
• Numbers of people working on the project– 22 developers…soon to be 26
• Different ways of doing things• Different communication styles• Various levels of experience on the
KFS project
KFS Communications
• Bi-weekly Board Meeting (used to be weekly)
• Weekly Functional Council Meeting• Weekly Development Managers Meeting• Weekly Lead Developers Meeting• Weekly SME Subcommittee Meetings (or as
needed)• Bi-weekly Technical Council Meeting• Quarterly face-to-face meetings of Board,
FC, and development teams (most important!)
KFS Meeting Protocol
• Meetings have agendas in advance• Only meet when necessary• Meeting minutes posted • Decisions and action items from
meetings documented and tracked (important! Otherwise, decisions get lost or forgotten!)
• Set deadlines for decision-making AND follow up
KFS Communications Tools
Reports and documents– Weekly PM Status Report– Weekly SME Subcommittee Status
Reports– Meeting Minutes– Specification Documents– Scope Document(s)– Technical documentation –
configuration, tools, frameworks, etc.All in Sakai sites!!
KFS Communications Tools
Remote Communications– Video Conferencing..always on at
each site– Email lists– IM– VOIP (Skype)– Breeze (web conferencing)
KFS Communications Tools
Project Organization and Coordination – Sakai (document sharing, email
archive, etc)– Confluence from Atlassian (wiki pages
for documentation, collaboration, etc)– JIRA from Atlassian (task tracking)– MS Excel and Project for project plans
and Gantt charts…mostly one page Excel!!
KFS Development Methodology(in a nutshell)
Standard set of supported development tools
• Java IDE – Eclipse• Source Code Management – CVS• Continuous Integration – Anthill Pro• Application Server – Tomcat 5.5.x,
Sun JDK 1.5.x• Web Server – Apache 2• Database – Oracle, MySQL• Build and Deployment – Ant
Rate the Quality of a Software Team
using “The Joel Test (by Joel Spolsky)” http://www.joelonsoftware.com
• “Do you use source control?” Yes +1• “Can you make a build in one step?” Yes +1• “Do you make daily builds?” Yes +1 • “Do you have a bug database?” Yes +1• “Do you fix bugs before writing new code?” Most of the time but not a written rule +0.25
The Joel Test (continued..)
• “Do you have an up-to-date schedule?” Yes +1• “Do you have a spec?” Yes +1• “Do programmers have quiet working
conditions?” Some do, some don’t +0.25• “Do you use the best tools money can
buy?” Sort of +0.5• “Do you have testers?” Yes +1
The Joel Test (continued..)
http://www.joelonsoftware.com
• “Do new candidates write code during the interview?”
Some do, some don’t +0.25• “Do you do hallway usability
testing?” Sometimes but we also make use of
usability consultants +0.5
The Joel Test (continued..)
http://www.joelonsoftware.com
A score of 12 is perfect.
KFS team “Joel Test” score is about 8.75
(According to Joel, most software companies are much lower……self report at 3-4)
KFS Lessons Learned(so far….many more to
come)
• Regular F2F meetings• Do not “squeeze” the QA cycle• KISS• Have a deadline for making decisions.
If consensus cannot be achieved in a timely manner, vote on it
• Monitor productivity closely – Are specs going to be ready when developers are ready? Are developers making reasonable progress?
KFS Lessons Learned(so far….many more to
come)• Keeping technical documentation up to
date• Avoid going “tool crazy” – use what you’ve
got and only introduce new technical tools when VERY compelling evidence suggests that you should.
• Provide numerous opportunities for communication across development teams
• Code reviews and Infoshares are valuable tools for bringing new developers up to speed and keeping things consistent across teams
KFS Lessons Learned(so far….many more to
come)• Automated unit testing…a challenge but is
paying off. Learned a lot along the way.• Pure TDD is difficult to implement and sustain• Centrally manage core infrastructure
development• Recognize and avoid “perfectionist”
tendencies that come from knowing code will be shared with world
• Subject Matter Experts are extremely valuable and typically the most scarce resource….“day” jobs..years of expertise that can’t easily be taught to new staff.
I’m Sure this is NOT Sakai, nor KFS !!
Speaking of project plans, with developers, sometimes you have to dig a bit to get under the surface. A slightly exaggerated case …..
The greatest breakthroughs will always begin, to quote Eric Raymond once more, with “one good idea in one person’s head,” and the greatest products will always reach perfection through the concerted efforts of a highly skilled team.
http://www.strategy-business.com/press/freearticle/07204?pg=all
Fodder for the Bar conversations