Here are the areas need to be taken care when adding a new question type:
Configuation:
- samigo-app/src/webapp/WEB-INF/faces-config.xml
Hibernate:- samigo-hibernate/src/java/org/sakaiproject/tool/assessment/data/dao/shared/TypeD.java
- samigo-hibernate/src/java/org/sakaiproject/tool/assessment/data/dao/assessment/ItemData.java
- samigo-hibernate/src/java/org/sakaiproject/tool/assessment/data/dao/assessment/PublishedItemData.java
General:
- samigo-app/src/java/org/sakaiproject/tool/assessment/settings/ApplicationSettings.java
Authoring:
- samigo-api/src/java/org/sakaiproject/tool/assessment/data/ifc/shared/TypeIfc.java
- samigo-api/src/java/org/sakaiproject/tool/assessment/data/ifc/assessment/ItemMetaDataIfc.java (not always)
- samigo-services/src/java/org/sakaiproject/tool/assessment/bundle/Messages.properties
- samigo-services/src/java/org/sakaiproject/tool/assessment/facade/TypeFacade.java
- samigo-services/src/java/org/sakaiproject/tool/assessment/facade/ItemFacade.java
- samigo-services/src/java/org/sakaiproject/tool/assessment/services/assessment/PublishedAssessmentService.java
- samigo-app/src/java/org/sakaiproject/tool/assessment/bundle/AuthorMessages.properties
- samigo-app/src/java/org/sakaiproject/tool/assessment/ui/listener/author/ItemAddListener.java
- samigo-app/src/java/org/sakaiproject/tool/assessment/ui/bean/author/ItemBean.java
- samigo-app/src/java/org/sakaiproject/tool/assessment/ui/listener/author/StartCreateItemListener.java
- samigo-app/src/java/org/sakaiproject/tool/assessment/ui/listener/author/ItemModifyListener.java
- samigo-app/src/java/org/sakaiproject/tool/assessment/ui/bean/author/ItemConfigBean.java
- samigo-app/src/webapp/jsf/author/item/<Name of the New Question Type>.jsp
- samigo-app/src/webapp/jsf/author/questionpreview/<Name of the New Question Type>.jsp
- samigo-app/src/webapp/jsf/author/previewAssessment.jsp
- samigo-app/src/webapp/jsf/author/preview_item/<Name of the New Question Type>..jsp
- samigo-app/src/webapp/jsf/author/previewQuestion.jsp
- samigo-app/src/webapp/jsf/author/editAssessment.jsp
- samigo-app/src/webapp/jsf/author/item/itemHeadings.jsp
Import/Export:
- samigo-api/src/java/xml/xsl/dataTransform/import/v1p2/extractItem.xsl
- samigo-api/src/java/xml/author/v1p2/finTemplate.xml
- samigo-api/src/java/xml/author/v2p0/finTemplate.xml
- samigo-services/src/java/org/sakaiproject/tool/assessment/qti/constants/AuthoringConstantStrings.java
- samigo-services/src/java/org/sakaiproject/tool/assessment/qti/constants/QTIConstantStrings.java
- samigo-qti/src/java/org/sakaiproject/tool/assessment/qti/helper/ExtractionHelper.java
- samigo-qti/src/java/org/sakaiproject/tool/assessment/qti/helper/item/ItemHelperBase.java
- samigo-qti/src/java/org/sakaiproject/tool/assessment/qti/helper/AuthoringXml.java
- samigo-qti/src/java/org/sakaiproject/tool/assessment/qti/helper/item/ItemHelper20Impl.java
- samigo-qti/src/java/org/sakaiproject/tool/assessment/qti/asi/Item.java
- samigo-qti/src/java/org/sakaiproject/tool/assessment/qti/helper/item/ItemHelper12Impl.java
- samigo-qti/src/java/org/sakaiproject/tool/assessment/qti/helper/item/ItemHelperIfc.java
- samigo-app/src/java/test/org/sakaiproject/tool/assessment/business/entity/helper/QTITester.java
Delivery:
- samigo-app/src/java/org/sakaiproject/tool/assessment/bundle/DeliveryMessages.properties
- samigo-app/src/java/org/sakaiproject/tool/assessment/ui/listener/delivery/DeliveryActionListener.java
- samigo-app/src/java/org/sakaiproject/tool/assessment/ui/listener/delivery/SubmitToGradingActionListener.java
- samigo-app/src/java/org/sakaiproject/tool/assessment/ui/bean/delivery/FinBean.java
- samigo-app/src/java/org/sakaiproject/tool/assessment/ui/bean/delivery/ItemContentsBean.java
- samigo-app/src/webapp/jsf/delivery/item/deliverFillInNumeric.jsp
- samigo-app/src/webapp/jsf/delivery/deliverAssessment.jsp
Grading:
- samigo-services/src/java/org/sakaiproject/tool/assessment/services/GradingService.java
- samigo-app/src/java/org/sakaiproject/tool/assessment/bundle/EvaluationMessages.properties
- samigo-app/src/java/org/sakaiproject/tool/assessment/ui/listener/evaluation/QuestionScoreListener.java
- samigo-app/src/java/org/sakaiproject/tool/assessment/ui/listener/evaluation/HistogramListener.java
- samigo-app/src/webapp/jsf/evaluation/item/display<Name of the New Question Type>.jsp
- samigo-app/src/webapp/jsf/evaluation/histogramScores.jsp
- samigo-app/src/webapp/jsf/evaluation/questionScore.jsp
- samigo-app/src/webapp/jsf/evaluation/gradeStudentResult.jsp
- samigo-app/src/webapp/jsf/delivery/reviewAssessment.jsp
Question pool:- samigo-app/src/webapp/jsf/questionpool/questionTreeTable.jsp
- samigo-app/src/java/org/sakaiproject/tool/assessment/bundle/QuestionPoolMessages.properties
Database/SQL:- samigo-pack/src/sql/oracle/sakai_samigo.sql
- samigo-pack/src/sql/hsqldb/sakai_samigo.sql
- samigo-pack/src/sql/mysql/sakai_samigo.sql
Please take a look at http://bugs.sakaiproject.org/jira/browse/SAK-6325which is for adding Fill In Numeric question type. You can see what exactly need to modifi to make a new question type.