Actions

Difference between revisions of "Proposals/Outcomes portfolio"

From Mahara Wiki

< Proposals
(Created page with "<h1 id="outcomes-portfolio-setting-and-database-tables">Outcomes portfolio setting and database tables</h1> <h2 id="high-level-overview">High level overview</h2> <ul> <li>Crea...")
 
 
(2 intermediate revisions by the same user not shown)
Line 1: Line 1:
<h1 id="outcomes-portfolio-setting-and-database-tables">Outcomes portfolio setting and database tables</h1>
+
This is a high level summary of the overall changes. View the individual pages for more details and mock-ups.
<h2 id="high-level-overview">High level overview</h2>
+
 
 +
<h2 id="outcomes-portfolio-setting-and-database-tables">[[Proposals/Outcomes_portfolio/Settings_and_database_tables|Outcomes portfolio setting and database tables]]</h2>
 +
 
 
<ul>
 
<ul>
 
<li>Create the &#39;Outcomes portfolio&#39; option as institution setting so that it can be available for groups created in that institution</li>
 
<li>Create the &#39;Outcomes portfolio&#39; option as institution setting so that it can be available for groups created in that institution</li>
 
<li>Create database tables for outcome types and subjects to record necessary details such as short names and colour code classes where appropriate.</li>
 
<li>Create database tables for outcome types and subjects to record necessary details such as short names and colour code classes where appropriate.</li>
 
</ul>
 
</ul>
<blockquote>
+
 
<p>The colours are defined via classes in the stylesheet in the code, not on the interface.</p>
+
<h2 id="group-changes">[[Proposals/Outcomes_portfolio/Group_changes|Group changes]]</h2>
</blockquote>
 
<h2 id="details">Details</h2>
 
<ol>
 
<li>Create the &#39;Outcomes portfolio&#39; option in the institution settings with rules as for portfolio completion and SmartEvidence, i.e. if somebody is in multiple institutions, they see it if at least one of their institutions has it turned on.<ul>
 
<li>It can be used in conjunction with portfolio completion and SmartEvidence.</li>
 
<li>It has characteristics of the portfolio completion page (rather than SmartEvidence), i.e. it should be possible in the future to add further blocks to that special first page.</li>
 
<li>It will be the very first page if portfolio completion and / or SmartEvidence are selected as well.</li>
 
<li>Initially, it is only available on the group level (group owned collections), but be open to future plans to have it available on personal, institution, and site level as well</li>
 
<li>Add a new field &#39;outcomes&#39; into the collection table</li>
 
</ul>
 
</li>
 
<li>New database tables for &#39;Outcome category&#39; (lang string &#39;Outcome category&#39;) and &#39;Outcome subject&#39; (lang string &#39;Subject&#39;). These are hard-coded / inserted into the DB for each institution. It is not possible (at this stage) to add or change them via the admin interface. The key value should be a number. The category is created to future proof the functionality for when different outcome portfolios are created that require different outcome types either within one institution or across different institutions.<ul>
 
<li>1 table for outcome categories (outcome_category): ID, outcome category title [up to 100 characters], institution ID; e.g. here the category would be &#39;Foundation&#39; (in the future, this could be displayed in the admin interface, but currently is out of scope)</li>
 
<li>1 table for outcome types (outcome_type): ID, outcome category ID as foreign key, title of the outcome type [up to 100 characters], abbreviation of the outcome type [up to 10 characters], outcome type background colour which refers to a class that is saved in here and defined in SCSS as a colour (background and border) in <code>theme/raw/sass/components/_outcomes.scss</code> where we will keep all the outcomes classes.</li>
 
<li>1 table for subject categories: ID, subject category name [up to 100 characters], institution ID, e.g. here the category would be &#39;Subject&#39; (in the future, this could be displayed in the admin interface, but currently is out of scope)</li>
 
<li>1 table for subjects: ID, subject category ID as foreign key, title of the subject [up to 100 characters], abbreviation of the subject [up to 10 characters]</li>
 
</ul>
 
</li>
 
</ol>
 
<h1 id="group-changes">Group changes</h1>
 
<h2 id="high-level-overview">High level overview</h2>
 
 
<p>A new group type is created that defines the editing permissions on a portfolio and access to certain other pages within a portfolio.</p>
 
<p>A new group type is created that defines the editing permissions on a portfolio and access to certain other pages within a portfolio.</p>
<h2 id="details">Details</h2>
+
<h2 id="-outcomes-infrastructure-in-the-group-collection">[[Proposals/Outcomes_portfolio/Outcomes_infrastructure_in_a_group_collection|&#39;Outcomes&#39; infrastructure in the group collection]]</h2>
<p>These are the changes in groups that can&#39;t be done via configuration.</p>
 
<p>Create the group type &#39;Outcomes&#39; that becomes available when an institution uses &#39;Outcomes portfolio&#39;. The following rules apply when that group type is selected:</p>
 
<ul>
 
<li>Based on the &#39;Controlled&#39; group type, i.e. members can be added and aren&#39;t allowed to leave</li>
 
<li>Only group admin can see the &#39;Add&#39; button on the &#39;Portfolios&#39; overview page. However, everybody will be able to edit regular portfolio pages.</li>
 
<li>Nobody sees the &#39;Copy&#39; button on the &#39;Portfolios&#39; overview page.</li>
 
<li>Nobody can use the &#39;Copy&#39; button in the &#39;More options&#39; menu to make a copy of the portfolio in their personal account at this stage because that functionality is out of scope.</li>
 
<li>Only group admins can access the collection&#39;s &#39;Edit&#39; and &#39;Manage outcomes&#39; screens, but everybody can edit regular portfolio pages.</li>
 
<li>Only group admins and group tutors can change the sharing permissions for a portfolio either directly on a page or via the &#39;Portfolios&#39; overview page.</li>
 
<li>Only allow group admins and group tutors to edit the group homepage.</li>
 
<li>Per default, all collections created in a group with the type &#39;Outcomes&#39; have &#39;Outcome portfolio&#39; selected automatically in the collection settings.</li>
 
<li>Group admins and group tutors can delete an entire portfolio or individual pages within it, but regular group members can&#39;t.</li>
 
<li>Group members cannot change the activity information or remove the associated block from the page.</li>
 
<li>Group tutors and admins can change the activity information but cannot remove the block itself from the page as it is placed there automatically. </li>
 
<li>Group members cannot remove a checkpoint block from their page once it has been placed there, but they can remove evidence from the checkpoint. Group tutors and admins can remove checkpoints.</li>
 
<li>&#39;Prevent removing of blocks&#39; is automatically turned on to prevent group members from accidentally removing content blocks from the page. This setting can be changed though by anybody either temporarily or for longer. Out of scope: Tie the switch in with a particular set of roles that should be allowed to change the setting.</li>
 
<li>The outcomes portfolio is not to be locked as it is more or less a rolling document. → Nothing to develop here as that is the default.</li>
 
<li>Hide &#39;Group homepage&#39; in the block &#39;Group portfolios&#39;.</li>
 
<li>Hide forums (via group_menu_items() function in interaction/forum/lib.php)</li>
 
<li>Hide plans (via group_tabs() function in artefact/plans/lib.php)</li>
 
</ul>
 
<blockquote>
 
<p>Defaults for group settings on the group creation screen are defined in the <em>Administration menu → Groups → Default group settings</em> instead of hard-coding them so that the group type can be used more flexibly if needed.
 
&#39;Hide&#39; means that the functionality is also not available when you know the URL.</p>
 
</blockquote>
 
<p>Why is a group used?</p>
 
<ul>
 
<li>Both learners and staff can edit portfolios collaboratively. Permissions don&#39;t need to be changed as they would if we were to create portfolios in the personal portfolio area.</li>
 
<li>Site admin can create groups in bulk via CSV and add group members via CSV, including their roles in bulk, which makes the creation of the groups and updating the group membership efficient without needing to enter every single group.</li>
 
<li>Groups can have three roles: member, tutor, and administrator, which we can use to allow certain functionalities for the three different groups of people that need access to an outcome portfolio.</li>
 
<li>Basic group settings can be predefined and group homepage set up as a template.</li>
 
<li>All outcome portfolios for a group member can be held in the same group to easily see what the group member had been working on before, i.e. there is one group per learner and their support staff.</li>
 
</ul>
 
<blockquote>
 
<p>What is displayed on the group homepage can be set in the template in the site administration.</p>
 
<p>Defaults for group settings on the group creation screen are defined in the <em>Administration menu → Groups → Default group settings</em> instead of hard-coding them so that the group type can be used more flexibly if needed.</p>
 
</blockquote>
 
  
<h1 id="-outcomes-infrastructure-in-the-group-collection">&#39;Outcomes&#39; infrastructure in the group collection</h1>
 
<h2 id="high-level-overview">High level overview</h2>
 
 
<ul>
 
<ul>
 
<li>Create the &#39;Manage outcomes&#39; page infrastructure (&#39;Manage outcomes – group admin only&#39; mock-up) </li>
 
<li>Create the &#39;Manage outcomes&#39; page infrastructure (&#39;Manage outcomes – group admin only&#39; mock-up) </li>
Line 79: Line 21:
 
<li>Respect permissions for the different types of group members and who can edit or only see what</li>
 
<li>Respect permissions for the different types of group members and who can edit or only see what</li>
 
</ul>
 
</ul>
<h2 id="details">Details</h2>
 
<h3 id="mock-up-reference-set-up-the-outcomes-collection-group-admin-only-">Mock-up reference: &#39;Set up the outcomes collection - group admin only&#39;</h3>
 
<p><strong>Who?</strong> As a group admin...</p>
 
<p><strong>What?</strong> I want to be able to set up an outcomes collection...</p>
 
<p><strong>Why?</strong> So that group tutors or I can add activities and prepare everything for the group member to get started.</p>
 
<p>The collection is set up in a group for a particular group member by a group admin. The numbered list refers to the bullets in the mock-up &#39;Set up the outcomes collection - group admin only&#39;.</p>
 
<ol>
 
<li>[no change] Collection name: Title of the outcomes portfolio. You can choose that freely, but might want to establish a convention to differentiate between the different plans that a group member may have.</li>
 
<li>Per default, the option &#39;Outcomes portfolio&#39; is set to &#39;Yes&#39;. This is done automatically when the institution selected to work with outcomes portfolios (see section &#39;Outcomes portfolio setting and database tables&#39;).</li>
 
<li>Clicking the &#39;Continue&#39; button takes you to a new page where you can manage the outcomes.</li>
 
</ol>
 
<p>Additional changes (not pictured):</p>
 
<ol>
 
<li>Option &#39;Manage outcomes&#39; is accessible from the collection settings screen and also on the &#39;Portfolios&#39; overview page when clicking the &#39;More options&#39; icon on a collection for group admins only.</li>
 
<li>Option &#39;Manage pages&#39; is not available from the collection settings screen or via the &#39;More options&#39; icon on a collection on the &#39;Portfolios&#39; overview page to avoid pages from being added to or removed from the collection outside of the outcomes framework. It can also not be reached by URL.</li>
 
</ol>
 
<blockquote>
 
<p>Out of scope: Be able to add regular portfolio pages to the collection and not only activity pages.</p>
 
</blockquote>
 
<h3 id="mock-up-reference-manage-outcomes-group-admin-only-">Mock-up reference: &#39;Manage outcomes - group admin only&#39;</h3>
 
<p><strong>Who?</strong> As a group admin...</p>
 
<p><strong>What?</strong> I want to enter the outcomes for a group member&#39;s outcomes portfolio...</p>
 
<p><strong>Why?</strong> To prepare the collaboration space for group tutors and group members.</p>
 
<ul>
 
<li>The Mahara collection creation process will be used.</li>
 
<li>Outcomes are set up and modified, but interactions primarily performed by group tutors are done in &#39;Display&#39; mode.</li>
 
<li>In phase 1, we don&#39;t anticipate being able to move outcomes around but would expect that they are set up in order.</li>
 
<li>Outcomes can be deleted.</li>
 
</ul>
 
<p>The numbered list refers to the bullets in the mock-up &#39;Manage outcomes - group admin only&#39;. Group tutors and group members do not have access to this page.</p>
 
<blockquote>
 
<p>Notes: </p>
 
<ul>
 
<li>One outcome field set is set up per default as that is the minimum that is required.</li>
 
<li>collection_outcome table: ID, collection ID, short title, full title, outcome type ID, support (boolean), progress (text), completed (boolean), section that shows the ID from the &#39;collection_view&#39; table of the &#39;section&#39; there. This &#39;section&#39; is needed in here in case we delete an outcome or in future want to re-order outcomes.</li>
 
<li>Collection_view table: create new column &#39;section&#39; that in this case states the outcome ID to which the page belongs (section ID is the ID of the ID from the collection_outcome table.</li>
 
<li>Each outcome is its own Pieform and has its own &#39;Save&#39; button that is not displayed though.</li>
 
</ul>
 
</blockquote>
 
<ol>
 
<li>Outcomes are auto numbered to distinguish them. When an outcome is deleted, the number is automatically updated (on page load).</li>
 
<li>Short title: Short title for the outcome as that becomes the page title. Suggested: 70 character limit. This field is mandatory.</li>
 
<li>Full title: The full name of the outcome text. Suggested: 255 character limit.</li>
 
<li><p>Outcome type: Select list with the abbreviation of the outcome and the colour along with the full title of the type (see section &#39;Outcomes portfolio setting and database tables&#39;). This can be done with a <span> in the select option.</p>
 
<blockquote>
 
<p>If no outcome type is selected, don&#39;t display the field on the outcomes overview page.</p>
 
</blockquote>
 
</li>
 
<li><p>Link to &#39;Add an outcome&#39; (not a button).</p>
 
</li>
 
<li><p>Click the &#39;Delete&#39; button to delete the outcome.</p>
 
<ul>
 
<li>The &#39;Delete&#39; button tooltip or aria text takes the short title of the outcome to know which outcome is to be deleted, e.g. Delete outcome &#39;Short title of the outcome&#39;.</li>
 
<li>There is a confirmation modal as safeguard on deletion.</li>
 
<li>When an outcome has activities associatedd with it, the outcome can&#39;t be deleted because the target pages would need to be deleted first. This is stated in the modal that comes up when attempting to delete an outcome.</li>
 
<li>When an outcome is deleted, AJAX comes into play that updates the number for &#39;Outcome 1&#39;, &#39;Outcome 2&#39; etc but that number is actually not saved to the database as it&#39;s not important.</li>
 
<li>We need to make sure that we can&#39;t delete the first outcome  because there must be at least one outcome in the collection or it&#39;s not possible to add pages.</li>
 
</ul>
 
</li>
 
<li><p>Click the &#39;Save&#39; button to be taken to the display page of the outcomes overview page. clicking that button submits all Pieforms at once and takes you to the display page of the outcomes overview page. If you have unsaved changes, a modal comes up telling you that.</p>
 
</li>
 
</ol>
 
<h3 id="mock-up-reference-outcomes-overview-page-in-progress-group-tutors-and-group-admin-">Mock-up reference: &#39;Outcomes overview page in progress – group tutors and group admin&#39;</h3>
 
<p><strong>Who?</strong> As a group tutor or group admin...</p>
 
<p><strong>What?</strong> I want to see all outcomes and activities in one place...</p>
 
<p><strong>Why?</strong> So that I have a quick overview of all the outcomes and activities for this group member to quickly note at which outcome we left off and which activity is next up.</p>
 
<blockquote>
 
<p>Note: It&#39;s a pseudo page like portfolio completion.</p>
 
</blockquote>
 
<p>The numbered list refers to the bullets in the mock-up &#39;Outcomes overview page in progress – group tutors and group admin&#39;.</p>
 
<ol>
 
<li>[no change] Title of the outcomes portfolio that was added when the outcomes collection was created. It can be changed at any time.</li>
 
<li>Title of this page: Ideally, this is fixed for everybody like we do for SmartEvidence and portfolio completion. → Outcomes</li>
 
<li>&#39;Configure&#39; button: Allows you to add and update outcomes on the collection settings screen for outcomes (see mock-up &#39;Manage outcomes - group admin only&#39;). Only group admins see that. Group tutors and group members don&#39;t.</li>
 
<li>Overall completion of outcomes: Progress bar across all currently available outcomes (similar to the progress bar on the portfolio completion page, just not for individual pages but for the outcomes).</li>
 
<li>Each outcome is collapsed so that only the short title of the outcome is displayed that concisely states what it is about. Our normal collapsable panel rules apply in terms of styling.</li>
 
<li><p>Group admins and group tutors can click an icon to mark the outcome as completed. A tooltip states that it&#39;s been completed along with the short title of the outcome. This icon with its hover state is the same as for the &#39;Sign-off&#39; block for consistency.</p>
 
<blockquote>
 
<p>There are only two states: Incomplete and completed. The icon is ticked manually as it is not guaranteed that all activities will already have been added. There is a confirmation modal to confirm the ticking. It can be set to &#39;Incomplete&#39; again though by the group tutor or group admin if more activities need to be added.
 
No need to display who set the outcome to completed, but log the who and when in the database.</p>
 
</blockquote>
 
<ul>
 
<li>Tooltip for incompleted: Click to mark outcome &#39;Short title of the outcome&#39; as completed.</li>
 
<li>Tooltip for completed: Outcome &#39;Short title of the outcome&#39; has been completed. Click to reset.</li>
 
<li>Confirmation modal to confirm the ticking. It can be set to &#39;Incomplete&#39; again though if more targets need to be added, again with a confirmation modal.</li>
 
<li>No need to display who set the outcome to completed, but log the who and when in the database.</li>
 
<li>Add a span around the icon so that it can be targeted and doesn&#39;t uncollapse it. It needs an ID as well so that we can map it to the outcome.</li>
 
</ul>
 
</li>
 
<li><p>Click the outcome to expand the panel and see the details for that outcome. </p>
 
</li>
 
<li><p>A circle icon displays that the outcome is not yet completed. That is the same as in the &#39;Sign-off&#39; block. A tooltip will also state that and includes the short title of the outcome. To mark the outcome as completed, click the icon and a modal is displayed to confirm this. The tickbox icon can be clicked to reset the completion if anything needs to be added. Only the latest change to &#39;Yes&#39; will be recorded in the database.</p>
 
<blockquote>
 
<p>A group member sees a bar icon because they are not able to perform an action. See mock-up &#39;Outcomes overview page in progress – group member&#39;</p>
 
</blockquote>
 
</li>
 
<li><p>The full outcome text from the &#39;Full title&#39; of the outcome when it was set up. </p>
 
</li>
 
<li><p>The outcome type is displayed with its short code and the background colour that is defined in the stylesheet. A help icon states all available outcome types in their long form.</p>
 
<blockquote>
 
<p>If no outcome type was selected, don&#39;t display the field.</p>
 
</blockquote>
 
</li>
 
<li><p>Activities: Table that shows all the activities, i.e. the separate pages. These are Mahara portfolio pages for which a new type is created (see section &#39;Activity page infrastructure&#39;).</p>
 
<blockquote>
 
<p>Activity titles are added automatically when a new activity is added to this outcome as page and the viewer returns to this overview page.
 
If someone places an activity page before the last page of a different outcome, it doesn&#39;t result in it being associated with that outcome. It will still be linked to the outcome in which it was created.</p>
 
</blockquote>
 
</li>
 
<li><p>The link to the activity takes you to the page of the activity for easy access (similar to portfolio completion page). </p>
 
<ul>
 
<li>While the activity has not yet been completed, everyone goes into &#39;Edit&#39; mode of the page. This is to ensure that group members, group tutors, and group admins don&#39;t have an extra click to update checkpoints.</li>
 
<li>Once the activity has been completed, everyone goes to the &#39;Display&#39; mode of the page.</li>
 
</ul>
 
<blockquote>
 
<p>Out of scope: If someone changes the order of the outcomes, it also changes the order in which they are displayed on this page.</p>
 
</blockquote>
 
</li>
 
<li><p>&#39;Sign-off&#39;, i.e. status of the activity: That is pulled through from the activity page and can be updated directly here (like on &#39;Portfolio completion&#39; for sign-off as it is the sign-off functionality). No additional info is provided here, i.e. who and when they signed off. That is accessible on the activity page. A tooltip mentions though the state of the activity.</p>
 
</li>
 
<li><p>&#39;Add activity&#39;: </p>
 
<ul>
 
<li>Clicking the button sets up a new page in this collection where you can fill in all the activity information.</li>
 
<li>Need to ensure that the link can&#39;t be manipulated so that you can&#39;t create the page in somebody else&#39;s collection.</li>
 
<li>On returning to the outcomes overview page, you will see the new activity added.</li>
 
</ul>
 
</li>
 
<li><p>Support taking place: This is a Yes/No switch whose status is saved immediately. No tracking of previous status changes would take place. Once the outcome is marked as &#39;Completed&#39;, the status can&#39;t be changed any more and only the word &#39;Yes&#39; (or &#39;No&#39;) is displayed instead of the switch.</p>
 
<blockquote>
 
<p>No need to display who changed the status, but log the who and when in the database.</p>
 
</blockquote>
 
</li>
 
<li><p>Progress: </p>
 
<ul>
 
<li>It&#39;s a plain text field with 3 rows shown, but could be expanded.</li>
 
<li>Text is saved when the &#39;Save&#39; button is pressed.</li>
 
<li>We&#39;ll need to ensure that they can&#39;t navigate away before the text has been saved, i.e. a browser modal is to be displayed when there are unsaved changes.</li>
 
<li>Once the outcome is marked as &#39;Completed&#39;, the text can&#39;t be changed any more. Display who made the last change and when once the outcome has been completed. </li>
 
</ul>
 
</li>
 
</ol>
 
<p>All pages are added in order in which they are set up via the outcomes overview page into the collection. Once the pages are in, there is no distinction or separation between them to which outcome they belong. The link is made through the text on the activity page itself. The main navigation to the pages is anticipated to be via the outcomes overview page.</p>
 
<blockquote>
 
<p>The collection navigation at the top of the collection displays the pages in order as they appear on this overview page if all outcomes were uncollapsed, no matter their outcome. Out of scope: Adding the outcome as heading into the drop-down menu.</p>
 
</blockquote>
 
<h3 id="mock-up-reference-outcomes-overview-page-completed-group-tutor-and-group-admin-">Mock-up reference: &#39;Outcomes overview page completed – group tutor and group admin&#39;</h3>
 
<p><strong>Who?</strong> As group tutor and group admin...</p>
 
<p><strong>What?</strong> I want to track outcomes and activitys on one page...</p>
 
<p><strong>Why?</strong> So I can see a quick overview to know what to work on with the group member.</p>
 
<p>The numbered list refers to the bullets in the mock-up &#39;Outcomes overview page completed – group tutor and group admin&#39;.</p>
 
<ol>
 
<li>Only group admins see the &#39;Configure&#39; button, but group tutors and group admins can mark outcomes as completed.</li>
 
<li>Support taking place: No switch as the info has been locked in once the outcome was set to &#39;Completed&#39;.</li>
 
<li>Progress: No editable text as the info has been locked in once the outcome was set to &#39;Completed&#39;.. The name and time of the person who last edited the field is displayed.</li>
 
</ol>
 
<blockquote>
 
<p>The button &#39;+ Add activity&#39; is not available any more.</p>
 
<p>If the outcome is reset to &#39;Not completed&#39;, then &#39;Support taking place&#39; and &#39;Progress&#39; are unlocked and additional activity pages can be added.</p>
 
</blockquote>
 
<h3 id="mock-up-reference-outcomes-overview-page-in-progress-group-member-">Mock-up reference: &#39;Outcomes overview page in progress – group member&#39;</h3>
 
<p><strong>Who?</strong> As a group member...</p>
 
<p><strong>What?</strong> I want to see the outcomes overview page...</p>
 
<p><strong>Why?</strong> So I know what I will be working on.</p>
 
<p>The numbered list refers to the bullets in the mock-up &#39;Outcomes overview page in progress – group member&#39;.</p>
 
<ol>
 
<li>Group member cannot see the configuration button nor will they be able to give access to the collection.</li>
 
<li>Since they cannot mark an outcome (or activity) as completed, the line icon represents that there is generally something that could be done, but they are not allowed to. This is accompanied by a tooltip, similarly to the &#39;Sign-off&#39; functionality.</li>
 
<li>Support taking place: Group member only see the information displayed, but doesn&#39;t have a switch available.</li>
 
<li>Progress: The text is displayed without the potential to edit it. The name of the group tutor or group admin who wrote the text is displayed along with the time when they edited it.</li>
 
</ol>
 
<h3 id="mock-up-reference-outcomes-overview-page-completed-group-member-">Mock-up reference: &#39;Outcomes overview page completed - group member&#39;</h3>
 
<p><strong>Who?</strong> As a group member...</p>
 
<p><strong>What?</strong> I want to see my progress across all outcomes...</p>
 
<p><strong>Why?</strong> So that I can be proud of my work and having finished my outcome.</p>
 
<p>The text refers to &#39;Outcomes overview page completed – group member&#39;.</p>
 
<p>The only big difference to what group tutors and group admins see is that the group member can&#39;t mark an outcome as completed.</p>
 
  
<h1 id="activity-page-infrastructure">Activity page infrastructure</h1>
+
<h2 id="activity-page-infrastructure">[[Proposals/Outcomes_portfolio/Activity page infrastructure|Activity page infrastructure]]</h2>
<h2 id="high-level-overview">High level overview</h2>
 
 
<ul>
 
<ul>
 
<li>Add activity information to the page settings → Create a new portfolio page type</li>
 
<li>Add activity information to the page settings → Create a new portfolio page type</li>
Line 264: Line 29:
 
<li>Update certain information directly while editing or viewing the activity page</li>
 
<li>Update certain information directly while editing or viewing the activity page</li>
 
<li>Dealing with &#39;signing off&#39; / completing activities</li>
 
<li>Dealing with &#39;signing off&#39; / completing activities</li>
</ul>
 
<h2 id="details">Details</h2>
 
<h3 id="mock-up-reference-set-up-activity-page-group-tutor-and-group-admin-">Mock-up reference: &#39;Set up activity page – group tutor and group admin&#39;</h3>
 
<p><strong>Who?</strong> As group tutor or group admin...</p>
 
<p><strong>What?</strong> I want to set up activites for the group member...</p>
 
<p><strong>Why?</strong> So that all admin work is collected in one place and then available when I work with the group member on a particular activity.</p>
 
<p>The numbered list refers to the bullets in the mock-up &#39;Set up activity page – group tutors and group admin&#39;. This page is only accessible to group tutors and group admins. Students cannot get to it.</p>
 
<ol>
 
<li>[no change] Page title: It&#39;s a short title of the activity to avoid that the heading of a page is longer than one line and therefore fits better into a navigation menu. This title is pulled into the outcomes overview page automatically. Mandatory field.</li>
 
<li>Activity information panel: automatically uncollapsed as information needs to be entered.</li>
 
<li>Activity description: Long title of the activity. Mandatory field.</li>
 
<li>Subject: Select list with hard-coded items (phase 1).</li>
 
<li>Responsible staff: Select list comprised of all group tutors and group admins from this group. The person filling in the form is automatically displayed as default choice.</li>
 
<li>Start date: Date picker.</li>
 
<li>End date: Date picker. Check that the end date is greater or equal to the start date.</li>
 
<li><p>Levels of achievement: Three single-line text entry fields. The fourth level is predefined. </p>
 
<ul>
 
<li>Icons are assigned automatically.</li>
 
<li>Level 1 is the highest achievement and level 4 the lowest.</li>
 
<li>Suggested icons: Font Awesome number corresponding to the level with a circle around it in primary theme link colour but with a new variable set up if a different colour should be used. This will need to be achieved with stacked icons, e.g.  icon-1 and icon-circle.</li>
 
<li>New table &#39;view_activity_achievement_levels&#39; with ID, view_activity_ID (i.e. the view ID), priority column (1-4), value and level 4 always being the same (via hidden value).</li>
 
</ul>
 
</li>
 
<li><p>Clicking &#39;Save&#39; takes you to the &#39;Edit&#39; screen of the activity page.</p>
 
</li>
 
</ol>
 
<blockquote>
 
<p>Notes: </p>
 
<ul>
 
<li>The page buttons have changed slightly in Mahara 22.10 and thus will be used instead of the ones pictured on the mock-up.</li>
 
<li>This settings page is only available to group tutors and group admins.</li>
 
<li>The rest of the page settings stay as they are in the &#39;Advanced&#39; panel.</li>
 
<li>&#39;Prevent removing of blocks&#39; in the &#39;Advanced&#39; panel is automatically set to &#39;Yes&#39; (see section &#39;Group changes&#39;) but can be changed to &#39;No&#39;.</li>
 
</ul>
 
</blockquote>
 
<h3 id="mock-up-reference-edit-activity-page-group-tutor-and-group-admin-">Mock-up reference: &#39;Edit activity page – group tutor and group admin&#39;</h3>
 
<p><strong>Who?</strong> As group tutor or group admin...</p>
 
<p><strong>What?</strong> I want to add content to the activity page...</p>
 
<p><strong>Why?</strong> To assist the learner with their evidence collection and mark checkpoints as completed to illustrate progress.</p>
 
<p>The numbered list refers to the bullets in the mock-up &#39;Edit activity page – group tutor and group admin&#39;. This page is accessible to group tutors, group admins, and learners.</p>
 
<ol>
 
<li>&#39;Settings&#39; button: Available to group tutor and group admins to change information about the activity. It&#39;s not accessible to regular group members.</li>
 
<li><p>Activity information:</p>
 
<ul>
 
<li>is displayed at the top of the page and cannot be moved.</li>
 
<li>is displayed collapsed so that you only see the long-form activity, outcomes, outcome type, and whether the outcome has been achieved or not in the panel header.</li>
 
<li>is a full-page width block. → Change the default width of blocks in Mahara when they are put on a page into full-page width blocks</li>
 
</ul>
 
</li>
 
<li><p>Activity description: Long &#39;title&#39; of the activity.</p>
 
</li>
 
<li>Outcome: Short title of the outcome to which this activity belongs.</li>
 
<li>Outcome type: Pulled from the outcome, i.e. short name with the predefined background colour.</li>
 
<li><p>Achieved: Switch to decide whether an outcome has been achieved or not. This can always be changed. A modal is displayed to confirm the choice. Only the latest change to &#39;Yes&#39; will be recorded in the database.</p>
 
<ul>
 
<li>This uses the &#39;Sign-off&#39; block functionality as basis and makes the following change:</li>
 
<li>Change the &#39;Sign-off&#39; block to not be a block any more but make it a setting in the &#39;Advanced&#39; panel on the page settings screen so that the info is always displayed at the top right. → Sign-off/Verify gets a new template so that we can move it elsewhere if needed and the activity template includes the sign-off template which then is included in a page.</li>
 
<li>If a page is of the &#39;Activity&#39; type, automatically set &#39;Verified&#39; to &#39;No&#39; in the settings for the &#39;Sign-off&#39;.</li>
 
</ul>
 
</li>
 
<li><p>Responsible staff: Pulled from the activity setup.</p>
 
</li>
 
<li>Subject: Pulled from the activity setup.</li>
 
<li>Time frame: Start and end date from the activity setup combined.</li>
 
<li>Strategies and support: Editable field for group tutor and group admin. Similar to the &#39;Progress&#39; field on &#39;Outcomes&#39; (see section &#39;Outcomes overview page in progress – group tutors and group admin&#39;).</li>
 
<li>Resources: Editable field for group tutor and group admins. Similar to the &#39;Progress&#39; field on &#39;Outcomes&#39;.</li>
 
<li>Learner support: Editable field for group tutor and group admins. Similar to the &#39;Progress&#39; field on &#39;Outcomes&#39;.</li>
 
<li>[no change] Click the &#39;Add block&#39; button at the top right to add a checkpoint block or any other block onto the page below the activity information.</li>
 
</ol>
 
<p>Numbered items 14-20 are done as part of the &#39;Checkpoint block infrastructure&#39; (see that section for details).</p>
 
<h3 id="mock-up-reference-view-activity-page-not-achieved-group-tutor-and-group-admin-">Mock-up reference: &#39;View activity page, not achieved – group tutor and group admin&#39;</h3>
 
<p><strong>Who?</strong> As group tutor and group admin...</p>
 
<p><strong>What?</strong> I want to view a page in &#39;Display&#39; mode...</p>
 
<p><strong>Why?</strong> So that I can see the information how it is presented without all editing controls.</p>
 
<p>The numbered list refers to the bullets in the mock-up &#39;View activity page not achieved – group tutor and group admin&#39;. </p>
 
<ol>
 
<li>Strategies and support, resources, and learner support can also be changed when viewing the page. Content is saved upon clicking the respective &#39;Save&#39; button. Browser modal to appear if content hasn&#39;t been saved yet before navigating away from the page.</li>
 
<li>Switch can be flipped to indicate the achievement status. A confirmation modal comes up when status is changed. It can be changed back to &#39;No&#39;. Record in the database only who changed the status when but don&#39;t display it on screen.</li>
 
<li>Set the achievement level with the drop-down menu. The help icon displays the long-form text for the levels. The menu itself only displays &#39;Level 1&#39;, &#39;Level 2&#39;, &#39;Level 3&#39;, and &#39;Level 4&#39;.</li>
 
</ol>
 
<h3 id="mock-up-reference-view-activity-page-achieved-group-tutor-and-group-admin-">Mock-up reference: &#39;View activity page, achieved – group tutor and group admin&#39;</h3>
 
<p><strong>Who?</strong> As group tutor and group admin...</p>
 
<p><strong>What?</strong> I want to be able to mark completed activities as achieved...</p>
 
<p><strong>Why?</strong> So that I don&#39;t have to go into &#39;Edit&#39; mode to do that.</p>
 
<p>The numbered list refers to the bullets in the mock-up &#39;View activity page achieved– group tutor and group admin&#39;. </p>
 
<ol>
 
<li>Strategies and support, resources, and learner support are locked in and can&#39;t be edited any more. The name of the person who edited the field last is displayed along with the date.</li>
 
<li>Switch can be flipped to indicate the achievement status. A confirmation modal comes up when status is changed. It can be changed back. Record in the database only who changed the status when.</li>
 
<li>Comments can still be added to checkpoints.</li>
 
</ol>
 
<h3 id="mock-up-reference-edit-activity-page-group-member-">Mock-up reference: &#39;Edit activity page – group member&#39;</h3>
 
<p><strong>Who?</strong> As a group member...</p>
 
<p><strong>What?</strong> I want to see the requirements for a particular activity and add my learning evidence to the page...</p>
 
<p><strong>Why?</strong> So that I can demonstrate that I&#39;ve achieved a checkpoint and ultimately the activity.</p>
 
<p>The numbered list refers to the bullets in the mock-up &#39;Edit activity page – group member&#39;. This page is accessible to group tutors, group admins, and group members.</p>
 
<ol>
 
<li>Group members don&#39;t see all the buttons like group tutors and group admin do. They can&#39;t access the page settings nor can they give access to the portfolio.</li>
 
<li>Activity information is displayed at the top of the page below the page instructions and cannot be moved. It is displayed collapsed so that you only see the long-form activity, outcomes, outcome type, and whether the activity has been achieved or not.</li>
 
<li>Achieved: Group members can&#39;t flip the switch and thus only see the line icon.</li>
 
<li>[no change] Group members can add any number of blocks onto the page. They won&#39;t be able to delete them unless group tutors or group admins allow that on the page settings (that&#39;s the &#39;Prevent removing of blocks&#39; functionality).</li>
 
</ol>
 
<p>Done as part of the checkpoint block infrastructure:</p>
 
<ol>
 
<li>Group members cannot delete any comments. They can still edit a comment for 10 minutes after they made it or until someone posts another comments, whichever occurs first.</li>
 
</ol>
 
<h3 id="mock-up-reference-view-activity-page-not-achieved-group-member-and-view-activity-page-achieved-group-member-">Mock-up reference: &#39;View activity page not achieved – group member&#39; and &#39;View activity page achieved – group member&#39;</h3>
 
<p><strong>Who?</strong> As a group member...</p>
 
<p><strong>What?</strong> I want to view a page in &#39;Display&#39; mode...</p>
 
<p><strong>Why?</strong> So that I can see the information how it is presented without all editing controls.</p>
 
<p>This page is very similar to &#39;View activity page, achieved – group tutor and group admin&#39;, with the difference that group members see a line instead of a drop-down menu when a checkpoint or an activity hasn&#39;t been achieved yet.</p>
 
<p>Comments on checkpoints:</p>
 
<ul>
 
<li>Can be made no matter whether the checkpoint has been achieved or not.</li>
 
<li>Group members cannot delete any comments. They can still edit a comment for 10 minutes after they made it or until someone posts another comments, whichever occurs first.</li>
 
 
</ul>
 
</ul>
  
<h1 id="checkpoint-block-infrastructure">Checkpoint block infrastructure</h1>
+
<h2 id="checkpoint-block-infrastructure">[[Proposals/Outcomes_portfolio/Checkpoint_block_infrastructure|Checkpoint block infrastructure]]</h2>
<h2 id="high-level-overview">High level overview</h2>
 
 
<ul>
 
<ul>
 
<li>Create a new block type</li>
 
<li>Create a new block type</li>
Line 395: Line 45:
 
<li><p>Page comments are still kept separate and could still be used.</p>
 
<li><p>Page comments are still kept separate and could still be used.</p>
 
</li>
 
</li>
</ul>
 
<h2 id="details">Details</h2>
 
<h3 id="mock-up-reference-edit-activity-page-group-tutor-and-group-admin-">Mock-up reference: &#39;Edit activity page – group tutor and group admin&#39;</h3>
 
<p><strong>Who?</strong> As group tutor or group admin...</p>
 
<p><strong>What?</strong> I want to add content to the activity page...</p>
 
<p><strong>Why?</strong> To assist the learner with their evidence collection and mark checkpoints as completed to illustrate progress.</p>
 
<p>The numbered list refers to the bullets in the mock-up &#39;Edit activity page – group tutor and group admin&#39;. This page is accessible to group tutors, group admins, and learners.</p>
 
<p>Items 1-13 are part of the &#39;Activity page infrastructure&#39; (see section there for details). Here are only the items listed that pertain to the &#39;Checkpoint&#39; block, which is a new block type.</p>
 
<ol>
 
<li>Checkpoint block is added in full width. When a checkpoint block is deleted by a group tutor or group admin, there is logic that renames all subsequent blocks.</li>
 
<li>Click &#39;Add comment&#39; to add a comment to the checkpoint. Comments are displayed in reverse chronological order.</li>
 
<li>When a comment was made, the profile picture, the name, the time the comment was made and the comment itself are displayed.
 
Comments can be saved as draft and then published, similarly to the &#39;Peer assessment&#39;. Comments can be added no matter whether a checkpoint has been achieved or not.</li>
 
<li>[no change] Additional blocks can be pulled onto the page.</li>
 
<li>Set the achievement level with the drop-down menu. The help icon displays the long-form text for the levels. The menu itself only displays &#39;Level 1&#39;, &#39;Level 2&#39;, &#39;Level 3&#39;, and &#39;Level 4&#39;.</li>
 
<li>Once the level has been set, a number icon represents the achievement level and below it is a help icon that contains the name of the person who set the level and when they did it. It also contains the long description of the achieved level.</li>
 
<li>Group tutors and group admins can delete comments. Editing of comments is possible for 10 minutes after posting or until somebody adds a new comment, whichever comes first. Group members cannot delete comments.</li>
 
</ol>
 
<blockquote>
 
<p>Note: It is possible to add new comments no matter whether an achievement level has been set or not.</p>
 
</blockquote>
 
<ul>
 
<li>New block type but block config is just the normal things that we record for blocks: block type, view, config data, dimensions</li>
 
<li>new table: ID, blockID, achievement level ID, userID, ctime</li>
 
<li>New table to record checkpoint results for future proofing in case things do need to be reported over it</li>
 
<li>Fetches achievement levels from the view_activity_achievement_level table</li>
 
<li>Levels: Lang string &#39;Level&#39; added automatically to the priority number of the level</li>
 
<li>Actual name of the levels is in the help icon</li>
 
<li>New artefact table similar to peer assessment table</li>
 
 
</ul>
 
</ul>

Latest revision as of 20:15, 4 October 2022

This is a high level summary of the overall changes. View the individual pages for more details and mock-ups.

Outcomes portfolio setting and database tables

  • Create the 'Outcomes portfolio' option as institution setting so that it can be available for groups created in that institution
  • Create database tables for outcome types and subjects to record necessary details such as short names and colour code classes where appropriate.

Group changes

A new group type is created that defines the editing permissions on a portfolio and access to certain other pages within a portfolio.

'Outcomes' infrastructure in the group collection

  • Create the 'Manage outcomes' page infrastructure ('Manage outcomes – group admin only' mock-up)
  • Create the outcomes overview page and infrastructure
  • Allow for the direct editing of fields
  • Allow for the clicking of icons to complete outcomes and activities
  • Create new pages (activities) from this page and set them up
  • Pull in activity information from the individual pages
  • Respect permissions for the different types of group members and who can edit or only see what

Activity page infrastructure

  • Add activity information to the page settings → Create a new portfolio page type
  • Pull in information from tables and people to auto-populate information
  • Display activity information set up on the page settings page
  • Update certain information directly while editing or viewing the activity page
  • Dealing with 'signing off' / completing activities

Checkpoint block infrastructure

  • Create a new block type
  • Pull information through from the activity page setup for levels of achievement
  • Deal with achievements and rules of what shall happen once a checkpoint has been achieved
  • Resembles the peer assessment block

    • No restriction though who can add comments
    • No draft option
    • No instructions
  • Page comments are still kept separate and could still be used.