SysAdminFrameworkEvaluationCriteria
Please check the status of this specification in Launchpad before editing it. If it is Approved, contact the Assignee or another knowledgeable person before making changes.
Launchpad Entry: sysadmin-framework-eval-criteria
Created: 2007-06-04 by MathiasGug
Summary
There are a lot of system administration frameworks out there. This spec defines common criteria to evaluate and compare them.
IT DOESN'T COVER THE ACTUAL COMPARISON OF PRODUCTS. This is done in SysAdminFrameworkEvaluation.
Rationale
Ubuntu tries to simplify the end user experience. In order to simplify the administration of Ubuntu servers a system administration framework should be provided. There are a lot of products there - thus the need to compare them against common criteria.
Use Cases
- Alice has discovered a new system management framework and wants to compare it to others.
- Bob was asked by management if he could look into the product super-admin-framework to see if it can be integrated as a management tool into Ubuntu server.
Design
Define a list of criteria that should be evaluated.
Provide a common place to summarize the evaluation of the different frameworks and compare them.
Implementation
List of criteria
- Overview :
- In which language(s) is the product written ?
- Ex: python, perl, ruby, c, java.
- Which other components/products/packages are needed ?
- Ex: mysql, postgresql, ldap, an xml parser.
- Which platform is targeted ?
- Ex: linux, debian.
- Which license is used ?
- Ex: GPL, BSD, Commercial.
- In which language(s) is the product written ?
- Packaging :
- How does upstream distribute the product ?
- Ex: a tar file.
- Does upstream provide packages ?
- Ex: package for debian, ubuntu.
- How does upstream distribute the product ?
- Frontend :
- What type of frontend is provided ?
- Web interface:
- Is it possible to modify the look'n'feel of the interface ? How ?
- Ex: change the css file in the template directory.
- Is it possible to modify the look'n'feel of the interface ? How ?
- Graphical UI:
- Which environment is used ?
- Ex: gnome, kde, gtk, qt, Xlib.
- Which environment is used ?
- Console UI:
- Which environment is used ?
- Ex: ncurses.
- Which environment is used ?
- Command line interface:
- Ex: via bash script, perl script.
- Web interface:
- How is user management handled ?
- What type of user authentication is supported ?
- Ex: ldap, password file.
- Does it support access control ?
- Ex: Alice can configure service A and B. Bob can only configure B.
- What type of user authentication is supported ?
- What type of frontend is provided ?
- Backend :
- Is there a clear separation of the backend and the frontend ? How ?
- Ex: Uses a client/server model.
- Is it possible to have multiple frontends ?
- How does the framework handle configuration modifications done in other ways?
- Ex: the dhcpd.conf file has been edited by hand. Will the framework overwrite it ? How will the framework react ?
- How is the configuration stored ?
- Ex: xml file, directly in the configuration files.
- How are the local configuration files generated ?
- Ex: template engine (which one).
- Is there a clear separation of the backend and the frontend ? How ?
- Other features:
- Does the framework support multiple server management ?
- Which protocol is used to communicate between servers ?
- Does the framework support rollback to previous configurations ?
- Is it possible to view changes between two configurations ?
- Is it possible to view which modifications are going to be applied before committing them ?
- Is there an auditing system that logs which actions have been done by whom ?
- How can a new service be added to the framework ?
- Does the framework support multiple server management ?
Evaluation summary location
A wiki page : SysAdminFrameworkEvaluation.
Outstanding Issues
BoF agenda and discussion
DO NOT LIST PRODUCTS THAT SHOULD BE EVALUATED. USE THE WIKI PAGE SysAdminFrameworkEvaluation TO DO THAT.
SysAdminFrameworkEvaluationCriteria (last edited 2008-08-06 16:29:07 by localhost)