Open source administration software for education software development simplified KRAD Kuali...
-
Upload
austin-warren -
Category
Documents
-
view
227 -
download
0
Transcript of Open source administration software for education software development simplified KRAD Kuali...
open source administration software for education
software development simplified
KRAD
Kuali Application Development Framework
open source administration software for education
Kuali Foundation
• Non-Profit Organization• Facilitates the creation of Open Source
Administrative Software “By Higher Education, for Higher Education”
• Made up of over 70 different higher education institutions and affiliates
• Software is written and licensed under Open Source Educational Community License
open source administration software for education
Kuali Projects
• Kuali Financial System• Kuali Coeus• Kuali Student• Kuali OLE• Kuali People Management for the Enterprise• Kuali Ready• Kuali Mobility• Kuali Rice
open source administration software for education
Kuali Rice
• Kuali Rice consists of multiple sub-projects which provide:– Middleware Services– Application Development Framework
• These different pieces are integrated into a cohesive software stack
• This provides a common “platform” for Enterprise application development and integration
open source administration software for education
Kuali Rice Components
• KSB - Kuali Service Bus• KIM - Kuali Identity Management• KEW - Kuali Enterprise Workflow• KEN - Kuali Enterprise Notification• KRMS – Kuali Rule Management System• KRAD – Kuali Rapid Application Development
open source administration software for education
What is KRAD?
• Application development framework for enterprise applications
• Part of the Rice stack:– KRAD, KEW, KEN, KIM, KRMS, KSB
• Used by the other Kuali applications along with local institutional applications
open source administration software for education
What is KRAD?
Architecture/Tools
KRAD
Kuali Application External
Functional Modules
Technical Module
TechnicalFoundation
Chart of Accounts Financial Transaction Processing
Research Administration General Ledger
Accounts Receivables
Contract and Grants
KEW
KIM
KSB
open source administration software for education
What is KRAD?
• Provides frameworks and utilities across all application layers
Presentation Layer
Business Layer
Data Layer
UI Framework
Business Rules
Persistence Framework Data Dictionary
Document Framework
Inquiry, Lookup, Maintenance
open source administration software for education
What is KRAD?
• Tool Set
open source administration software for education
Benefits of KRAD
• Decreased development time• Increased code reuse (more maintainble)• Standard development paradigm (training)• Standard Look and Feel• Integration with other Rice modules (KEW,
KIM)• Accessibility• Designed for Extensibility
open source administration software for education
KRAD Screenshots
open source administration software for education
KRAD Screenshots
open source administration software for education
KRAD Screenshots
open source administration software for education
Tooling Projects – DO Generator
• Getting started with KRAD requires several artifacts to be created manually:– DDL– Data Object Java Class– ORM Mapping– XML Metadata Files (Data Dictionary)– Workflow XML
open source administration software for education
Tooling Projects – DO Generator
• Ex. Dictionary XML for One Field <bean id="Player-number" parent="Player-number-parentBean"/> <bean id="Player-number-parentBean" abstract="true" parent="AttributeDefinition"> <property name="name" value="number"/> <property name="label" value="Number"/> <property name="shortLabel" value="Nbr"/> <property name="forceUppercase" value="false"/> <property name="maxLength" value="2"/> <property name="validCharactersConstraint"> <bean parent="IntegerPatternConstraint" p:allowNegative="false"/> </property> <property name="controlField"> <bean parent="TextControl" p:size="3" p:watermarkText="##"/> </property> <property name="constraintText" value="Must be one or two digits"/> <property name="summary" value="Number used to identify the player"/> <property name="description" value="Number used to identify the player"/> </bean>
open source administration software for education
Tooling Projects – DO Generator
• Tool will perform initial creation of artifacts and perform edits
• Comprised of ‘engine’ and one or more clients
Generator Engine
Command Line Client
GUI Client
Other Client
Artifacts
open source administration software for education
Tooling Projects – DO Generator
• Program written with Java or Groovy• Tooling for GUI to be discussed, JavaFx?• Command line client should support both
interactive mode (step by step) and non-interactive mode (user driven commands, Spring Roo like)
open source administration software for education
Tooling Projects – DO Generator
• When possible, client should present options for input (e.g. valid property types)
• Validation of input will be required based on established rules*
• The tool will need to collect information about the host project for writing and reading artifacts
open source administration software for education
Tooling Projects – DO Generator
• User should be allowed to undo last edit operation
• Program should interface with Liquibase for database change management
• Full specifications being developed at:https://wiki.kuali.org/display/KULRICE/KRAD+Tooling+Projects
open source administration software for education
http://kuali.org/rice