20
open source administration software for education software development simplified KRAD Kuali Application Development Framework

Open source administration software for education software development simplified KRAD Kuali Application Development Framework

Embed Size (px)

Citation preview

Page 1: Open source administration software for education software development simplified KRAD Kuali Application Development Framework

open source administration software for education

software development simplified

KRAD

Kuali Application Development Framework

Page 2: 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

Page 3: Open source administration software for education software development simplified KRAD Kuali Application Development Framework

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

Page 4: Open source administration software for education software development simplified KRAD Kuali Application Development Framework

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

Page 5: Open source administration software for education software development simplified KRAD Kuali Application Development Framework

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

Page 6: Open source administration software for education software development simplified KRAD Kuali Application Development Framework

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

Page 7: Open source administration software for education software development simplified KRAD Kuali Application Development Framework

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

Page 8: Open source administration software for education software development simplified KRAD Kuali Application Development Framework

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

Page 9: Open source administration software for education software development simplified KRAD Kuali Application Development Framework

open source administration software for education

What is KRAD?

• Tool Set

Page 10: Open source administration software for education software development simplified KRAD Kuali Application Development Framework

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

Page 11: Open source administration software for education software development simplified KRAD Kuali Application Development Framework

open source administration software for education

KRAD Screenshots

Page 12: Open source administration software for education software development simplified KRAD Kuali Application Development Framework

open source administration software for education

KRAD Screenshots

Page 13: Open source administration software for education software development simplified KRAD Kuali Application Development Framework

open source administration software for education

KRAD Screenshots

Page 14: Open source administration software for education software development simplified KRAD Kuali Application Development Framework

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

Page 15: Open source administration software for education software development simplified KRAD Kuali Application Development Framework

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>

Page 16: Open source administration software for education software development simplified KRAD Kuali Application Development Framework

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

Page 17: Open source administration software for education software development simplified KRAD Kuali Application Development Framework

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)

Page 18: Open source administration software for education software development simplified KRAD Kuali Application Development Framework

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

Page 19: Open source administration software for education software development simplified KRAD Kuali Application Development Framework

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

Page 20: Open source administration software for education software development simplified KRAD Kuali Application Development Framework

open source administration software for education

http://kuali.org/rice