<div class="xblock xblock-public_view xblock-public_view-vertical" data-course-id="course-v1:MITx+HST.936x+1T2019" data-runtime-class="LmsRuntime" data-init="VerticalStudentView" data-usage-id="block-v1:MITx+HST.936x+1T2019+type@vertical+block@64c651a7fdee4f989572a271c213818e" data-has-score="False" data-runtime-version="1" data-block-type="vertical" data-request-token="13069d50edb111eeb45a1299a322540b" data-graded="True">
<h2 class="hd hd-2 unit-title">Overview</h2>
<div class="vert-mod">
<div class="vert vert-0" data-id="block-v1:MITx+HST.936x+1T2019+type@html+block@a09b3e95804c472cbbd6124d6b8735c6">
<div class="xblock xblock-public_view xblock-public_view-html xmodule_display xmodule_HtmlBlock" data-course-id="course-v1:MITx+HST.936x+1T2019" data-runtime-class="LmsRuntime" data-init="XBlockToXModuleShim" data-usage-id="block-v1:MITx+HST.936x+1T2019+type@html+block@a09b3e95804c472cbbd6124d6b8735c6" data-has-score="False" data-runtime-version="1" data-block-type="html" data-request-token="13069d50edb111eeb45a1299a322540b" data-graded="True">
<script type="json/xblock-args" class="xblock-json-init-args">
{"xmodule-type": "HTMLModule"}
</script>
<h4>Overview</h4>
<p>Software development is an intensive process requiring highly skilled resources and experience, but, with sufficiently defined requirements and understanding, the construction of prototypes can be uncomplicated. The crucial component of that previous statement is “understanding.” It is strongly discouraged to merely outsource development with basic requirements, as that will often lead to generic or fragmented products that have unintended consequences. Instead, we recommend a design thinking approach to development, with the development team engaged with stakeholders throughout the process for a deeper understanding of the problem and environment. This continuous engagement will also allow for quicker validation and iteration of designs.</p>
<ul>
<li><strong><span style="font-size: 1em; line-height: 1.6em;">Multidisciplinary Coordination</span></strong><span style="font-size: 1em; line-height: 1.6em;"> - </span>While in this module we focus on the software development process, for a global health project there will also usually be accompanying clinical and business development. Clinical development may entail defining clinical protocols or guidelines to implementation that may influence workflow and practices. Business development may include establishing partnerships and validating business models. All of these development aspects need to be coordinated, since there will often be interdependencies between them, such as clinical protocols needing to be established before the prototype interface can be finalized or partnerships established before being able to identify the target user base.</li>
<li><span style="font-size: 1em; line-height: 1.6em;"><strong>Resource Management</strong> - </span>Early in the development process, you must consider available resources and technologies and adjust plans accordingly. This includes the development resources available (such as the number and skill of the engineers), but also what technologies and platforms are available within the local environment. Technology is not globally universal, and what is common in one region may be different from what is dominant in another.</li>
</ul>
</div>
</div>
</div>
</div>
<div class="xblock xblock-public_view xblock-public_view-vertical" data-course-id="course-v1:MITx+HST.936x+1T2019" data-runtime-class="LmsRuntime" data-init="VerticalStudentView" data-usage-id="block-v1:MITx+HST.936x+1T2019+type@vertical+block@9366b499c3df4b1397477dced2fd4265" data-has-score="False" data-runtime-version="1" data-block-type="vertical" data-request-token="13069d50edb111eeb45a1299a322540b" data-graded="True">
<h2 class="hd hd-2 unit-title">The Software Development Process</h2>
<div class="vert-mod">
<div class="vert vert-0" data-id="block-v1:MITx+HST.936x+1T2019+type@html+block@fee2b55e70fc4a8e99d1b86e4e6671e6">
<div class="xblock xblock-public_view xblock-public_view-html xmodule_display xmodule_HtmlBlock" data-course-id="course-v1:MITx+HST.936x+1T2019" data-runtime-class="LmsRuntime" data-init="XBlockToXModuleShim" data-usage-id="block-v1:MITx+HST.936x+1T2019+type@html+block@fee2b55e70fc4a8e99d1b86e4e6671e6" data-has-score="False" data-runtime-version="1" data-block-type="html" data-request-token="13069d50edb111eeb45a1299a322540b" data-graded="True">
<script type="json/xblock-args" class="xblock-json-init-args">
{"xmodule-type": "HTMLModule"}
</script>
<h4>The Software Development Process</h4>
<p>Implementing a project to advance the health informatics capabilities in an organization is a multidisciplinary endeavor. It is far more than installing some new appliance, or using some new software. Many strong technology approaches applied to important challenges have failed to solve the problem at scale because of challenges in executing the product development life cycle. This points to the heavy reliance on coordinated project management, particularly when integrating new technologies into complicated systems such as global health.</p>
<p>There are numerous books, lectures, philosophies surrounding the art and science of effective project management and we encourage you to find and utilize the practice that matches well with your organization. </p>
<p>When coordinating a cross-disciplinary team in a complicated setting such as global health, the biggest hurdles are coordinating the diverse members and tasks, while ensuring each of the stakeholders’ views are accounted for. There is an essential tension in balancing the dual goals of deploying a new and innovative technology, with the necessary focus on clinical quality improvement. Therefore, it is paramount that the engineering process is closely harmonized with the clinical design process, ensuring and effective and usable solution. </p>
<h4>Common Software Project Management Methodologies</h4>
<p>Over the decades, the software industry has employed many different frameworks for how to manage development projects. Broadly speaking these software development lifecycle guidelines provide good parameters for implementers to follow. As technologies, requirements, human resources, and business requirements have changed, so too has the development process. We will highlight two common practices currently employed with divergent philosophies of management: Waterfall and Agile.</p>
<p></p>
</div>
</div>
</div>
</div>
<div class="xblock xblock-public_view xblock-public_view-vertical" data-course-id="course-v1:MITx+HST.936x+1T2019" data-runtime-class="LmsRuntime" data-init="VerticalStudentView" data-usage-id="block-v1:MITx+HST.936x+1T2019+type@vertical+block@ac4dc2858f0a47ea83c1b0f7da1355a0" data-has-score="False" data-runtime-version="1" data-block-type="vertical" data-request-token="13069d50edb111eeb45a1299a322540b" data-graded="True">
<h2 class="hd hd-2 unit-title">Software Project Management Methodologies</h2>
<div class="vert-mod">
<div class="vert vert-0" data-id="block-v1:MITx+HST.936x+1T2019+type@html+block@c31e9e84dd5f493199783ded82e778e7">
<div class="xblock xblock-public_view xblock-public_view-html xmodule_display xmodule_HtmlBlock" data-course-id="course-v1:MITx+HST.936x+1T2019" data-runtime-class="LmsRuntime" data-init="XBlockToXModuleShim" data-usage-id="block-v1:MITx+HST.936x+1T2019+type@html+block@c31e9e84dd5f493199783ded82e778e7" data-has-score="False" data-runtime-version="1" data-block-type="html" data-request-token="13069d50edb111eeb45a1299a322540b" data-graded="True">
<script type="json/xblock-args" class="xblock-json-init-args">
{"xmodule-type": "HTMLModule"}
</script>
<h4>Software Project Management Methodologies</h4>
<h4>Waterfall Development</h4>
<p>Waterfall project management seeks to follow a sequential order of events building up to the finished product. Its core methodology is attributed to Winston W. Royce in 1970. Each stage of the project’s lifecycle must be completed before the next stage of the project is to begin (Figure 1.).</p>
<p><b>Figure 1</b>. Stages of the Waterfall Development Lifecycle</p>
<p><img src="/assets/courseware/v1/6102a3e5bf6ed1848de54e6443d6c3c9/asset-v1:MITx+HST.936x+1T2019+type@asset+block/Picture20_1.png" alt="" type="saveimage" target="[object Object]" preventdefault="function (){r.isDefaultPrevented=n}" stoppropagation="function (){r.isPropagationStopped=n}" stopimmediatepropagation="function (){r.isImmediatePropagationStopped=n}" isdefaultprevented="function t(){return!1}" ispropagationstopped="function t(){return!1}" isimmediatepropagationstopped="function t(){return!1}" width="846" height="494" /></p>
<p>At face value it makes intuitive sense the sequential stages of the project’s life. For projects large and small where a clear vision and plan is known it is widely used and promoted. Due to its sequential nature, there is a strong emphasis on clear requirements and documentation. This makes it easy for both stakeholders and implementers to understand the project’s progress. </p>
<p><i>Waterfall Advantages:</i></p>
<ul>
<li>The project has a clear overarching plan and objective up front</li>
<li>Each stage is clear in its outcome</li>
<li>Up-front customer engagement</li>
<li>Contractual nature of milestones and deliverables</li>
</ul>
<p><i>Waterfall Disadvantages</i></p>
<ul>
<li>Significant up-front planning and design may diverge from actual reality quickly</li>
<li>Rigidity of stages make change management difficult</li>
<li>Incorporating feedback from stakeholders in later stages is complicated</li>
</ul>
<p></p>
<h4>Agile Development</h4>
<p>Agile project management came about in 2001 from a group of software developers seeking to simplify the software development process as a reaction to what was seen as drawbacks to “traditional” waterfall development. While the original manifesto itself is a series of statements emphasizing a more lightweight means to producing quality software, in practice there have been various iterations of running agile projects. Its variants include SCRUM, the most widely used, to Extreme Programming (XP), Lean, Kanban and others.</p>
<p>At its core, agile focuses on frequent short-cycle iterations (2-4 weeks) of requirements gathering, development, and deployment of a unit of work or feature within the project. Rather than bundling up a large release of features for a major release, agile focuses on frequent iteration with customers throughout the lifecycle of the project.</p>
<p><b>Figure 2</b>. A Typical Scrum Print</p>
<p><img src="/assets/courseware/v1/a68d860e03912039fd9e64af360bec05/asset-v1:MITx+HST.936x+1T2019+type@asset+block/Picture20_2.png" alt="" type="saveimage" target="[object Object]" preventdefault="function (){r.isDefaultPrevented=n}" stoppropagation="function (){r.isPropagationStopped=n}" stopimmediatepropagation="function (){r.isImmediatePropagationStopped=n}" isdefaultprevented="function t(){return!1}" ispropagationstopped="function t(){return!1}" isimmediatepropagationstopped="function t(){return!1}" width="825" height="412" /></p>
<p>A typical Scrum sprint is shown above (Figure 2.). They are typically triaged and placed on a backlog list for the product. Every sprint, which can be 2-4 weeks in length, a subset of the most important items are placed into the sprint that the project management thinks they can complete during the constraints of the sprint. These items are then specified just-in-time, developed, tested and deployed to the product during this sprint. At the end of the sprint the features deployed are validated by the customer as completed, and the process repeats.</p>
<p><i>Agile Advantages</i></p>
<ul>
<li>Just-in-time requirements for a given feature</li>
<li>Frequent customer feedback throughout lifecycle of project</li>
<li>Expects and handles changes to project scope well</li>
</ul>
<p><i>Agile Disadvantages</i></p>
<ul>
<li>Potentially high workload on customer for iteration and approval through project lifecycle</li>
<li>Need expectation management and buy-in of customer of process </li>
<li>Your staff will need to be highly skilled with both the process as well as the technical needs. Customer engagement and domain knowledge helpful as well.</li>
<li> Planning and delivery for fixed deliverables difficult due to iterative nature of delivery</li>
</ul>
<p></p>
<h4>Agile or Waterfall?</h4>
<p>Is one philosophy inherently better than the other? Not necessarily. While agile sought to address some deficiencies in the waterfall model specific to software development, it still has its drawbacks and burdens on staff and customer. Depending on the size and scope of the project, one may be more advantageous than the other. This is also dependent on the makeup of your stakeholder as well as the makeup of your team.</p>
<p>In general, if your customer is committed to be available in giving continuous feedback and iteration, then agile may be the more appropriate choice. If developing and deploying new technology is a new and unknown endeavor, then with the right partnership, the project should be a process, which agile can provide. However, if the up-front requirements can be known for some projects, and evolving iteration is not necessary or practical, then a waterfall approach is advisable.</p>
</div>
</div>
<div class="vert vert-1" data-id="block-v1:MITx+HST.936x+1T2019+type@problem+block@c8ec6c22b4104fe2b9b88302a5f03ee1">
<div class="xblock xblock-public_view xblock-public_view-problem xmodule_display xmodule_ProblemBlock" data-course-id="course-v1:MITx+HST.936x+1T2019" data-runtime-class="LmsRuntime" data-init="XBlockToXModuleShim" data-usage-id="block-v1:MITx+HST.936x+1T2019+type@problem+block@c8ec6c22b4104fe2b9b88302a5f03ee1" data-has-score="True" data-runtime-version="1" data-block-type="problem" data-request-token="13069d50edb111eeb45a1299a322540b" data-graded="True">
<script type="json/xblock-args" class="xblock-json-init-args">
{"xmodule-type": "Problem"}
</script>
<div id="problem_c8ec6c22b4104fe2b9b88302a5f03ee1" class="problems-wrapper" role="group"
aria-labelledby="c8ec6c22b4104fe2b9b88302a5f03ee1-problem-title"
data-problem-id="block-v1:MITx+HST.936x+1T2019+type@problem+block@c8ec6c22b4104fe2b9b88302a5f03ee1" data-url="/courses/course-v1:MITx+HST.936x+1T2019/xblock/block-v1:MITx+HST.936x+1T2019+type@problem+block@c8ec6c22b4104fe2b9b88302a5f03ee1/handler/xmodule_handler"
data-problem-score="0"
data-problem-total-possible="1"
data-attempts-used="0"
data-content="
<h3 class="hd hd-3 problem-header" id="c8ec6c22b4104fe2b9b88302a5f03ee1-problem-title" aria-describedby="block-v1:MITx+HST.936x+1T2019+type@problem+block@c8ec6c22b4104fe2b9b88302a5f03ee1-problem-progress" tabindex="-1">
Unit Exercise
</h3>
<div class="problem-progress" id="block-v1:MITx+HST.936x+1T2019+type@problem+block@c8ec6c22b4104fe2b9b88302a5f03ee1-problem-progress"></div>
<div class="problem">
<div>
<div class="wrapper-problem-response" tabindex="-1" aria-label="Question 1" role="group"><div class="choicegroup capa_inputtype" id="inputtype_c8ec6c22b4104fe2b9b88302a5f03ee1_2_1">
<fieldset aria-describedby="status_c8ec6c22b4104fe2b9b88302a5f03ee1_2_1">
<legend id="c8ec6c22b4104fe2b9b88302a5f03ee1_2_1-legend" class="response-fieldset-legend field-group-hd">Which of the following alternatives is an advantage of the "Waterfall project management" ?</legend>
<div class="field">
<input type="radio" name="input_c8ec6c22b4104fe2b9b88302a5f03ee1_2_1" id="input_c8ec6c22b4104fe2b9b88302a5f03ee1_2_1_choice_0" class="field-input input-radio" value="choice_0"/><label id="c8ec6c22b4104fe2b9b88302a5f03ee1_2_1-choice_0-label" for="input_c8ec6c22b4104fe2b9b88302a5f03ee1_2_1_choice_0" class="response-label field-label label-inline" aria-describedby="status_c8ec6c22b4104fe2b9b88302a5f03ee1_2_1"> Just-in-time requirements for a given feature
</label>
</div>
<div class="field">
<input type="radio" name="input_c8ec6c22b4104fe2b9b88302a5f03ee1_2_1" id="input_c8ec6c22b4104fe2b9b88302a5f03ee1_2_1_choice_1" class="field-input input-radio" value="choice_1"/><label id="c8ec6c22b4104fe2b9b88302a5f03ee1_2_1-choice_1-label" for="input_c8ec6c22b4104fe2b9b88302a5f03ee1_2_1_choice_1" class="response-label field-label label-inline" aria-describedby="status_c8ec6c22b4104fe2b9b88302a5f03ee1_2_1"> The project has a clear overarching plan and objective up front
</label>
</div>
<div class="field">
<input type="radio" name="input_c8ec6c22b4104fe2b9b88302a5f03ee1_2_1" id="input_c8ec6c22b4104fe2b9b88302a5f03ee1_2_1_choice_2" class="field-input input-radio" value="choice_2"/><label id="c8ec6c22b4104fe2b9b88302a5f03ee1_2_1-choice_2-label" for="input_c8ec6c22b4104fe2b9b88302a5f03ee1_2_1_choice_2" class="response-label field-label label-inline" aria-describedby="status_c8ec6c22b4104fe2b9b88302a5f03ee1_2_1"> Frequent customer feedback throughout lifecycle of project
</label>
</div>
<div class="field">
<input type="radio" name="input_c8ec6c22b4104fe2b9b88302a5f03ee1_2_1" id="input_c8ec6c22b4104fe2b9b88302a5f03ee1_2_1_choice_3" class="field-input input-radio" value="choice_3"/><label id="c8ec6c22b4104fe2b9b88302a5f03ee1_2_1-choice_3-label" for="input_c8ec6c22b4104fe2b9b88302a5f03ee1_2_1_choice_3" class="response-label field-label label-inline" aria-describedby="status_c8ec6c22b4104fe2b9b88302a5f03ee1_2_1"> Expects and handles changes to project scope well
</label>
</div>
<span id="answer_c8ec6c22b4104fe2b9b88302a5f03ee1_2_1"/>
</fieldset>
<div class="indicator-container">
<span class="status unanswered" id="status_c8ec6c22b4104fe2b9b88302a5f03ee1_2_1" data-tooltip="Not yet answered.">
<span class="sr">unanswered</span><span class="status-icon" aria-hidden="true"/>
</span>
</div>
</div></div>
</div>
<div class="action">
<input type="hidden" name="problem_id" value="Unit Exercise" />
<div class="submit-attempt-container">
<button type="button" class="submit btn-brand" data-submitting="Submitting" data-value="Submit" data-should-enable-submit-button="True" aria-describedby="submission_feedback_c8ec6c22b4104fe2b9b88302a5f03ee1" >
<span class="submit-label">Submit</span>
</button>
<div class="submission-feedback" id="submission_feedback_c8ec6c22b4104fe2b9b88302a5f03ee1">
<span class="sr">Some problems have options such as save, reset, hints, or show answer. These options follow the Submit button.</span>
</div>
</div>
<div class="problem-action-buttons-wrapper">
</div>
</div>
<div class="notification warning notification-gentle-alert
is-hidden"
tabindex="-1">
<span class="icon fa fa-exclamation-circle" aria-hidden="true"></span>
<span class="notification-message" aria-describedby="c8ec6c22b4104fe2b9b88302a5f03ee1-problem-title">
</span>
<div class="notification-btn-wrapper">
<button type="button" class="btn btn-default btn-small notification-btn review-btn sr">Review</button>
</div>
</div>
<div class="notification warning notification-save
is-hidden"
tabindex="-1">
<span class="icon fa fa-save" aria-hidden="true"></span>
<span class="notification-message" aria-describedby="c8ec6c22b4104fe2b9b88302a5f03ee1-problem-title">None
</span>
<div class="notification-btn-wrapper">
<button type="button" class="btn btn-default btn-small notification-btn review-btn sr">Review</button>
</div>
</div>
<div class="notification general notification-show-answer
is-hidden"
tabindex="-1">
<span class="icon fa fa-info-circle" aria-hidden="true"></span>
<span class="notification-message" aria-describedby="c8ec6c22b4104fe2b9b88302a5f03ee1-problem-title">Answers are displayed within the problem
</span>
<div class="notification-btn-wrapper">
<button type="button" class="btn btn-default btn-small notification-btn review-btn sr">Review</button>
</div>
</div>
</div>
"
data-graded="True">
<p class="loading-spinner">
<i class="fa fa-spinner fa-pulse fa-2x fa-fw"></i>
<span class="sr">Loading…</span>
</p>
</div>
</div>
</div>
</div>
</div>
<div class="xblock xblock-public_view xblock-public_view-vertical" data-course-id="course-v1:MITx+HST.936x+1T2019" data-runtime-class="LmsRuntime" data-init="VerticalStudentView" data-usage-id="block-v1:MITx+HST.936x+1T2019+type@vertical+block@8277a10b5aa74f38a03c74da607645c2" data-has-score="False" data-runtime-version="1" data-block-type="vertical" data-request-token="13069d50edb111eeb45a1299a322540b" data-graded="True">
<h2 class="hd hd-2 unit-title">Roles and Responsabilities</h2>
<div class="vert-mod">
<div class="vert vert-0" data-id="block-v1:MITx+HST.936x+1T2019+type@html+block@7d8ec97675a440788b0879bc4220e2c2">
<div class="xblock xblock-public_view xblock-public_view-html xmodule_display xmodule_HtmlBlock" data-course-id="course-v1:MITx+HST.936x+1T2019" data-runtime-class="LmsRuntime" data-init="XBlockToXModuleShim" data-usage-id="block-v1:MITx+HST.936x+1T2019+type@html+block@7d8ec97675a440788b0879bc4220e2c2" data-has-score="False" data-runtime-version="1" data-block-type="html" data-request-token="13069d50edb111eeb45a1299a322540b" data-graded="True">
<script type="json/xblock-args" class="xblock-json-init-args">
{"xmodule-type": "HTMLModule"}
</script>
<p>Dan Myung<br />Senior Software Engineer<br />Merck</p>
<p></p>
</div>
</div>
<div class="vert vert-1" data-id="block-v1:MITx+HST.936x+1T2019+type@video+block@d1aba48b2ead45dfafa9371a87a2021c">
<div class="xblock xblock-public_view xblock-public_view-video xmodule_display xmodule_VideoBlock" data-course-id="course-v1:MITx+HST.936x+1T2019" data-runtime-class="LmsRuntime" data-init="XBlockToXModuleShim" data-usage-id="block-v1:MITx+HST.936x+1T2019+type@video+block@d1aba48b2ead45dfafa9371a87a2021c" data-has-score="False" data-runtime-version="1" data-block-type="video" data-request-token="13069d50edb111eeb45a1299a322540b" data-graded="True">
<script type="json/xblock-args" class="xblock-json-init-args">
{"xmodule-type": "Video"}
</script>
<h3 class="hd hd-2">Roles and Responsabilities</h3>
<div
id="video_d1aba48b2ead45dfafa9371a87a2021c"
class="video closed"
data-metadata='{"ytTestTimeout": 1500, "autohideHtml5": false, "generalSpeed": 1.0, "sources": ["https://d2f1egay8yehza.cloudfront.net/MITHST932017-V004000_DTH.mp4", "https://d2f1egay8yehza.cloudfront.net/MITHST932017-V004000/MITHST932017-V004000.m3u8"], "end": 0.0, "saveStateUrl": "/courses/course-v1:MITx+HST.936x+1T2019/xblock/block-v1:MITx+HST.936x+1T2019+type@video+block@d1aba48b2ead45dfafa9371a87a2021c/handler/xmodule_handler/save_user_state", "speed": null, "transcriptAvailableTranslationsUrl": "/courses/course-v1:MITx+HST.936x+1T2019/xblock/block-v1:MITx+HST.936x+1T2019+type@video+block@d1aba48b2ead45dfafa9371a87a2021c/handler/transcript/available_translations", "completionEnabled": false, "transcriptLanguage": "en", "streams": "1.00:8mQvZker1bc", "captionDataDir": null, "ytApiUrl": "https://www.youtube.com/iframe_api", "lmsRootURL": "https://openlearninglibrary.mit.edu", "showCaptions": "true", "ytMetadataEndpoint": "", "autoplay": false, "recordedYoutubeIsAvailable": true, "savedVideoPosition": 0.0, "transcriptLanguages": {"en": "English"}, "poster": "https://mitx-edx-video-meta-storage.s3.amazonaws.com/media/video-images/995e4cd42d444f7d8590fcbeb11218e0.jpeg?x-amz-security-token=IQoJb3JpZ2luX2VjENH%2F%2F%2F%2F%2F%2F%2F%2F%2F%2FwEaCXVzLWVhc3QtMSJIMEYCIQDeX%2F5wVLVvtHxvZF0m7DQOTLkYvUd1iEDNKWIho0i5LgIhAJ%2BgkOEHcr6WIGd9TxJrI1E6w6yOorkQhz%2F2vEu0WZaDKsQFCOr%2F%2F%2F%2F%2F%2F%2F%2F%2F%2FwEQAxoMODU5MjA1NjM3NDExIgyCL1N9uzoaq2oFnWEqmAUckpnSqN8BAZq6aGRaf8feELnSZ5ZVGi8TRCPmNNMZDVnbzfxrIKpYk5psw2vobrY880mNmu2m6jBZ17hDga42gOtwywhbjG%2BeB7iTjbu%2FjaABClMbPqWWLX06pI51UT34g4DeQ29BeqPmFe9P4v5Jl0HfT%2B1PMyWsWTE%2B2nrWwJLvymPONNJNMIiF17UG92TSiIuwchkk2xv7H6ZqGXhPBrZvHTWV7ezcLvq09AKshLnIit5sHglGsdHRmKos6etmVXV3BIWG92DWkZfhrERCu7Nk2%2BuK4IpCdavF4mkmqzL7SVu5i3vK1sFzRgw0fSCZN7g1W8NholzGKK8rNO%2FXTmXq7L97UrQNomkvAzodEW6RMotuIUcZ8ZfGJD0Wm%2Bu3X%2B5QaW7tRpngGdY4Fq6PkSDeALt6PF4IgEBJ4Q8sSFUodp4evoa%2FTTFuZmqkj4AlNcVPrDZDKF5qEthdZBY0LHzKoWjUz0Hoxj0UkF%2FO00yhgZ2n%2BBPf5IF6lzcK4Lb8PI7VquPOFaoiF9y2MtkPuoP6QZzta9t2FcLsHbvnNrQmqlXnlVLGKlhRhWxtqNwMJZdsSaWWJI0PrZXtF%2B18PGcXH6DMm9i05PWk9A4pSPqOOM%2Fo5AAvOKTLVK79NLJP83YlBjaYoynQ3JRlUIcrBS%2F8MSwRu6ExtOu7bakwmr4hNSx39m2AdKsqWvTCn7MBGJtUeP%2F6SWJebxiL6qlzwr91FuHBUZMdCkYIVl7M9ZKBbROGj8XH9MDgvXqaTcv3sPSOkvhNPY3oJ9N8%2FlI2OLPFrZXraSgHkXRfrjLMgF1%2FmYzgAkS%2Ff3c30hO2Y26kDQd610WUG3gcm%2F1sUrLigCHtBtgyG0UzHWpzCG%2FyZOzhUhFrBAB8MPqCmrAGOrAB03DGA2VX%2B7BOOFW2sROwBqt1BmvR92WtXv9TLuKe7Z7VgA5G1UkHyWzHh3sHSTOrijnw7RpzZOxtt%2BLWwdYkFgotUwdlve7hGp4se1lN6vx4gsmLDcG7N3rqOPd3%2B%2FlBHSM5sQkT8Jfc635ZVt0lqbiLSV9efPawwd5RYpNg%2FQgr5DL3ErG5vEBF%2FpI%2Bum2gnnOLX99EgmobF0ds9NT%2FpQZjrpv3ENCPo2EzMMrpSGc%3D&Signature=ug2%2BxasA4jGjUILSJT96w1zOTCs%3D&Expires=1711705828&AWSAccessKeyId=ASIA4QDFFSUR3VFEDVVS", "autoAdvance": false, "prioritizeHls": false, "start": 0.0, "transcriptTranslationUrl": "/courses/course-v1:MITx+HST.936x+1T2019/xblock/block-v1:MITx+HST.936x+1T2019+type@video+block@d1aba48b2ead45dfafa9371a87a2021c/handler/transcript/translation/__lang__", "completionPercentage": 0.95, "duration": 0.0, "saveStateEnabled": false, "publishCompletionUrl": "/courses/course-v1:MITx+HST.936x+1T2019/xblock/block-v1:MITx+HST.936x+1T2019+type@video+block@d1aba48b2ead45dfafa9371a87a2021c/handler/publish_completion"}'
data-bumper-metadata='null'
data-autoadvance-enabled="False"
data-poster='null'
tabindex="-1"
>
<div class="focus_grabber first"></div>
<div class="tc-wrapper">
<div class="video-wrapper">
<span tabindex="0" class="spinner" aria-hidden="false" aria-label="Loading video player"></span>
<span tabindex="-1" class="btn-play fa fa-youtube-play fa-2x is-hidden" aria-hidden="true" aria-label="Play video"></span>
<div class="video-player-pre"></div>
<div class="video-player">
<div id="d1aba48b2ead45dfafa9371a87a2021c"></div>
<h4 class="hd hd-4 video-error is-hidden">No playable video sources found.</h4>
<h4 class="hd hd-4 video-hls-error is-hidden">
Your browser does not support this video format. Try using a different browser.
</h4>
</div>
<div class="video-player-post"></div>
<div class="closed-captions"></div>
<div class="video-controls is-hidden">
<div>
<div class="vcr"><div class="vidtime">0:00 / 0:00</div></div>
<div class="secondary-controls"></div>
</div>
</div>
</div>
</div>
<div class="focus_grabber last"></div>
</div>
</div>
</div>
<div class="vert vert-2" data-id="block-v1:MITx+HST.936x+1T2019+type@html+block@416c2168d4bc482c83864bcfcd73600e">
<div class="xblock xblock-public_view xblock-public_view-html xmodule_display xmodule_HtmlBlock" data-course-id="course-v1:MITx+HST.936x+1T2019" data-runtime-class="LmsRuntime" data-init="XBlockToXModuleShim" data-usage-id="block-v1:MITx+HST.936x+1T2019+type@html+block@416c2168d4bc482c83864bcfcd73600e" data-has-score="False" data-runtime-version="1" data-block-type="html" data-request-token="13069d50edb111eeb45a1299a322540b" data-graded="True">
<script type="json/xblock-args" class="xblock-json-init-args">
{"xmodule-type": "HTMLModule"}
</script>
<h4>User Stories</h4>
<p>One popular technique for requirements gathering and distilling functionality for the engineers is the creation of <b>user stories</b>. User stories are succinct statements that capture a clear unit of work with all the actors and outcomes. It helps bridge the communication between end user and engineer, and keeps core needs focused within the particular tasks. Multiple user stories can describe a process within the project, and many more can eventually capture the entirety of the project at hand. Typically, a product owner will work with the customer/stakeholder in crafting these statements. </p>
<p>A typical user story starts out as a statement needing parts filled, such as: </p>
<p><i>“As a <user>, I want to be able to do <blank action> so that I can do <additional action>”</i></p>
<p>An example telemedicine user story could be filled out like this:</p>
<p><i>“As a nurse, I want to be able to upload a photo taken by my smartphone, so that I can ask for a referral from a doctor” </i></p>
<p>The user is a Nurse, seeking upload capabilities from a smartphone, so that some sort of operational action can now happen.</p>
<p>What is key is that these user story statements must originate from the customer, in terms that a customer would want as a particular feature of the product. It should not, and likely will not be sufficient in detail for the technical team to actually implement, as elaborating a user story with specific technical details such as SQL statements or programming languages will only confuse both users and developers.</p>
<p>The statement should be sufficient to get the technical team to get started on the project. In agile projects, this is where specification, and design happens “just-in-time” for development. When the user story feature is accepted for the project sprint, the product team should allocate resources for specifying the implementation. This just-in-time requirements and specifications at the time of development is key to both getting the essence of the user-story request as close to implementation as possible, but also to getting customer acceptance quickly (both in the specification/design phase, but also in implementation and acceptance of completion).</p>
<p>From this entry statement, further functionality and operational background can be elaborated. If using a centralized issue and task management system, these could all be added to the issue as additional background information.</p>
<p>Additional information on the background of the story could include the current state of the system and highlighting the difficulty of the existing process, to revealing additional operational/workflow benefits that the feature will unlock.</p>
<p>It is encouraged to use succinct and specific language for the functionality that matches the user experience. There are various resources to consider for training in user story and general agile management of projects.</p>
<p>A project with a well-defined list of user stories can now paint a narrative of all the features being implemented. Furthermore, tasks and accomplishments can be tracked by the user stories being completed by the implementation team, so it provides a clear indicator for both the client and implementer the progress of a project.</p>
<p>For the technical team, the user story may be too high level. In the prior example, it makes rather large assumptions that there is a smartphone platform that can be developed upon as well as other infrastructure needed for referrals. For engineers, it is common practice to break down a larger task into subtasks based upon the technical task needed. End users and customers may not need to see the particular implementation details, but it will help engineers focus on particular functionalities with broken up tasks. Back to the example story, the smartphone application could hypothetically be broken down into 2-3 tasks – one for the smartphone application, two for image capture, and three for the upload capabilities. Furthermore, the referral functionality could be broken down into one task for image capture and processing, and a second task for referral alerting/tracking.</p>
<p>Breaking down a primary user story into smaller subtasks for implementers to use makes easier the ability to assign time and labor costs to the particular tasks. With these estimates on labor and degree of difficulty, enables one to triage implementation of features and communicate to the customer timelines, costs, and sequence of deliverables.</p>
</div>
</div>
<div class="vert vert-3" data-id="block-v1:MITx+HST.936x+1T2019+type@problem+block@a27102a77faa441aaf12f368062c8d9c">
<div class="xblock xblock-public_view xblock-public_view-problem xmodule_display xmodule_ProblemBlock" data-course-id="course-v1:MITx+HST.936x+1T2019" data-runtime-class="LmsRuntime" data-init="XBlockToXModuleShim" data-usage-id="block-v1:MITx+HST.936x+1T2019+type@problem+block@a27102a77faa441aaf12f368062c8d9c" data-has-score="True" data-runtime-version="1" data-block-type="problem" data-request-token="13069d50edb111eeb45a1299a322540b" data-graded="True">
<script type="json/xblock-args" class="xblock-json-init-args">
{"xmodule-type": "Problem"}
</script>
<div id="problem_a27102a77faa441aaf12f368062c8d9c" class="problems-wrapper" role="group"
aria-labelledby="a27102a77faa441aaf12f368062c8d9c-problem-title"
data-problem-id="block-v1:MITx+HST.936x+1T2019+type@problem+block@a27102a77faa441aaf12f368062c8d9c" data-url="/courses/course-v1:MITx+HST.936x+1T2019/xblock/block-v1:MITx+HST.936x+1T2019+type@problem+block@a27102a77faa441aaf12f368062c8d9c/handler/xmodule_handler"
data-problem-score="0"
data-problem-total-possible="1"
data-attempts-used="0"
data-content="
<h3 class="hd hd-3 problem-header" id="a27102a77faa441aaf12f368062c8d9c-problem-title" aria-describedby="block-v1:MITx+HST.936x+1T2019+type@problem+block@a27102a77faa441aaf12f368062c8d9c-problem-progress" tabindex="-1">
Unit Exercise
</h3>
<div class="problem-progress" id="block-v1:MITx+HST.936x+1T2019+type@problem+block@a27102a77faa441aaf12f368062c8d9c-problem-progress"></div>
<div class="problem">
<div>
<div class="wrapper-problem-response" tabindex="-1" aria-label="Question 1" role="group"><div class="choicegroup capa_inputtype" id="inputtype_a27102a77faa441aaf12f368062c8d9c_2_1">
<fieldset aria-describedby="status_a27102a77faa441aaf12f368062c8d9c_2_1">
<legend id="a27102a77faa441aaf12f368062c8d9c_2_1-legend" class="response-fieldset-legend field-group-hd">Which one is the most popular technique for requirement gathering used by engineers?</legend>
<div class="field">
<input type="radio" name="input_a27102a77faa441aaf12f368062c8d9c_2_1" id="input_a27102a77faa441aaf12f368062c8d9c_2_1_choice_0" class="field-input input-radio" value="choice_0"/><label id="a27102a77faa441aaf12f368062c8d9c_2_1-choice_0-label" for="input_a27102a77faa441aaf12f368062c8d9c_2_1_choice_0" class="response-label field-label label-inline" aria-describedby="status_a27102a77faa441aaf12f368062c8d9c_2_1"> Product owner opinion
</label>
</div>
<div class="field">
<input type="radio" name="input_a27102a77faa441aaf12f368062c8d9c_2_1" id="input_a27102a77faa441aaf12f368062c8d9c_2_1_choice_1" class="field-input input-radio" value="choice_1"/><label id="a27102a77faa441aaf12f368062c8d9c_2_1-choice_1-label" for="input_a27102a77faa441aaf12f368062c8d9c_2_1_choice_1" class="response-label field-label label-inline" aria-describedby="status_a27102a77faa441aaf12f368062c8d9c_2_1"> User stories
</label>
</div>
<div class="field">
<input type="radio" name="input_a27102a77faa441aaf12f368062c8d9c_2_1" id="input_a27102a77faa441aaf12f368062c8d9c_2_1_choice_2" class="field-input input-radio" value="choice_2"/><label id="a27102a77faa441aaf12f368062c8d9c_2_1-choice_2-label" for="input_a27102a77faa441aaf12f368062c8d9c_2_1_choice_2" class="response-label field-label label-inline" aria-describedby="status_a27102a77faa441aaf12f368062c8d9c_2_1"> Technical lead opinion
</label>
</div>
<span id="answer_a27102a77faa441aaf12f368062c8d9c_2_1"/>
</fieldset>
<div class="indicator-container">
<span class="status unanswered" id="status_a27102a77faa441aaf12f368062c8d9c_2_1" data-tooltip="Not yet answered.">
<span class="sr">unanswered</span><span class="status-icon" aria-hidden="true"/>
</span>
</div>
</div></div>
</div>
<div class="action">
<input type="hidden" name="problem_id" value="Unit Exercise" />
<div class="submit-attempt-container">
<button type="button" class="submit btn-brand" data-submitting="Submitting" data-value="Submit" data-should-enable-submit-button="True" aria-describedby="submission_feedback_a27102a77faa441aaf12f368062c8d9c" >
<span class="submit-label">Submit</span>
</button>
<div class="submission-feedback" id="submission_feedback_a27102a77faa441aaf12f368062c8d9c">
<span class="sr">Some problems have options such as save, reset, hints, or show answer. These options follow the Submit button.</span>
</div>
</div>
<div class="problem-action-buttons-wrapper">
</div>
</div>
<div class="notification warning notification-gentle-alert
is-hidden"
tabindex="-1">
<span class="icon fa fa-exclamation-circle" aria-hidden="true"></span>
<span class="notification-message" aria-describedby="a27102a77faa441aaf12f368062c8d9c-problem-title">
</span>
<div class="notification-btn-wrapper">
<button type="button" class="btn btn-default btn-small notification-btn review-btn sr">Review</button>
</div>
</div>
<div class="notification warning notification-save
is-hidden"
tabindex="-1">
<span class="icon fa fa-save" aria-hidden="true"></span>
<span class="notification-message" aria-describedby="a27102a77faa441aaf12f368062c8d9c-problem-title">None
</span>
<div class="notification-btn-wrapper">
<button type="button" class="btn btn-default btn-small notification-btn review-btn sr">Review</button>
</div>
</div>
<div class="notification general notification-show-answer
is-hidden"
tabindex="-1">
<span class="icon fa fa-info-circle" aria-hidden="true"></span>
<span class="notification-message" aria-describedby="a27102a77faa441aaf12f368062c8d9c-problem-title">Answers are displayed within the problem
</span>
<div class="notification-btn-wrapper">
<button type="button" class="btn btn-default btn-small notification-btn review-btn sr">Review</button>
</div>
</div>
</div>
"
data-graded="True">
<p class="loading-spinner">
<i class="fa fa-spinner fa-pulse fa-2x fa-fw"></i>
<span class="sr">Loading…</span>
</p>
</div>
</div>
</div>
</div>
</div>
<div class="xblock xblock-public_view xblock-public_view-vertical" data-course-id="course-v1:MITx+HST.936x+1T2019" data-runtime-class="LmsRuntime" data-init="VerticalStudentView" data-usage-id="block-v1:MITx+HST.936x+1T2019+type@vertical+block@e9ef84117c5a48f39015ad34cf8f0a91" data-has-score="False" data-runtime-version="1" data-block-type="vertical" data-request-token="13069d50edb111eeb45a1299a322540b" data-graded="True">
<h2 class="hd hd-2 unit-title">Project Inception and Project Kick off</h2>
<div class="vert-mod">
<div class="vert vert-0" data-id="block-v1:MITx+HST.936x+1T2019+type@html+block@4c0b1922fac243cc98db4c629b350f5f">
<div class="xblock xblock-public_view xblock-public_view-html xmodule_display xmodule_HtmlBlock" data-course-id="course-v1:MITx+HST.936x+1T2019" data-runtime-class="LmsRuntime" data-init="XBlockToXModuleShim" data-usage-id="block-v1:MITx+HST.936x+1T2019+type@html+block@4c0b1922fac243cc98db4c629b350f5f" data-has-score="False" data-runtime-version="1" data-block-type="html" data-request-token="13069d50edb111eeb45a1299a322540b" data-graded="True">
<script type="json/xblock-args" class="xblock-json-init-args">
{"xmodule-type": "HTMLModule"}
</script>
<h4>Project Inception</h4>
<p>As with any health informatics IT projects, it is important to establish a clear and compelling set of reasons and requirement why this intervention is necessary. Whether it is done at the management level or government ministry level, or by a person more intimately involved with the front line workers’ (FLW) needs, these questions generally follow a familiar pattern of assessing the perceived benefit.</p>
<ul>
<li>What pain points does this project seek to solve?</li>
<li>What are the benefits you will gain?</li>
<li>How will the quality and delivery of service by your FLWs improve?</li>
<li>How will the organization improve its management of FLWs?</li>
<li>How will monitoring and evaluation and reporting become more effective, efficient, and transparent?</li>
</ul>
<p>It is recommended that for a project to be undertaken, these high level questions be answered. They will establish the initial boundaries of need and expectation. Project approval is a mutual agreement by you the implementer agreeing to the scope of desire, and the customer accepting the costs for what is promised. </p>
<p>Whether managing a project in agile or waterfall, this crafting of a vision for the project is important for a stakeholder. For an agile practitioner, this up-front declaration of a project may seem to front-load expectations on a project, however for ICT projects especially for health ministry or government related fields, we have found it to be necessary to be “waterfall first” in this stage of the project. In more formal software lifecycle deployments, these planning phases are necessary before formal agile iteration can begin.</p>
<p></p>
</div>
</div>
<div class="vert vert-1" data-id="block-v1:MITx+HST.936x+1T2019+type@video+block@93a7a935c3c644fcba1821a8629eea39">
<div class="xblock xblock-public_view xblock-public_view-video xmodule_display xmodule_VideoBlock" data-course-id="course-v1:MITx+HST.936x+1T2019" data-runtime-class="LmsRuntime" data-init="XBlockToXModuleShim" data-usage-id="block-v1:MITx+HST.936x+1T2019+type@video+block@93a7a935c3c644fcba1821a8629eea39" data-has-score="False" data-runtime-version="1" data-block-type="video" data-request-token="13069d50edb111eeb45a1299a322540b" data-graded="True">
<script type="json/xblock-args" class="xblock-json-init-args">
{"xmodule-type": "Video"}
</script>
<h3 class="hd hd-2">Typical Project -Kick Off</h3>
<div
id="video_93a7a935c3c644fcba1821a8629eea39"
class="video closed"
data-metadata='{"ytTestTimeout": 1500, "autohideHtml5": false, "generalSpeed": 1.0, "sources": ["https://d2f1egay8yehza.cloudfront.net/MITHST932017-V004100_DTH.mp4", "https://d2f1egay8yehza.cloudfront.net/MITHST932017-V004100/MITHST932017-V004100.m3u8"], "end": 0.0, "saveStateUrl": "/courses/course-v1:MITx+HST.936x+1T2019/xblock/block-v1:MITx+HST.936x+1T2019+type@video+block@93a7a935c3c644fcba1821a8629eea39/handler/xmodule_handler/save_user_state", "speed": null, "transcriptAvailableTranslationsUrl": "/courses/course-v1:MITx+HST.936x+1T2019/xblock/block-v1:MITx+HST.936x+1T2019+type@video+block@93a7a935c3c644fcba1821a8629eea39/handler/transcript/available_translations", "completionEnabled": false, "transcriptLanguage": "en", "streams": "1.00:C-e1Cyu5Wsg", "captionDataDir": null, "ytApiUrl": "https://www.youtube.com/iframe_api", "lmsRootURL": "https://openlearninglibrary.mit.edu", "showCaptions": "true", "ytMetadataEndpoint": "", "autoplay": false, "recordedYoutubeIsAvailable": true, "savedVideoPosition": 0.0, "transcriptLanguages": {"en": "English"}, "poster": "https://mitx-edx-video-meta-storage.s3.amazonaws.com/media/video-images/d043d3aba7db4a9cb9e06ff2ed7d5ba3.jpeg?x-amz-security-token=IQoJb3JpZ2luX2VjENH%2F%2F%2F%2F%2F%2F%2F%2F%2F%2FwEaCXVzLWVhc3QtMSJIMEYCIQDeX%2F5wVLVvtHxvZF0m7DQOTLkYvUd1iEDNKWIho0i5LgIhAJ%2BgkOEHcr6WIGd9TxJrI1E6w6yOorkQhz%2F2vEu0WZaDKsQFCOr%2F%2F%2F%2F%2F%2F%2F%2F%2F%2FwEQAxoMODU5MjA1NjM3NDExIgyCL1N9uzoaq2oFnWEqmAUckpnSqN8BAZq6aGRaf8feELnSZ5ZVGi8TRCPmNNMZDVnbzfxrIKpYk5psw2vobrY880mNmu2m6jBZ17hDga42gOtwywhbjG%2BeB7iTjbu%2FjaABClMbPqWWLX06pI51UT34g4DeQ29BeqPmFe9P4v5Jl0HfT%2B1PMyWsWTE%2B2nrWwJLvymPONNJNMIiF17UG92TSiIuwchkk2xv7H6ZqGXhPBrZvHTWV7ezcLvq09AKshLnIit5sHglGsdHRmKos6etmVXV3BIWG92DWkZfhrERCu7Nk2%2BuK4IpCdavF4mkmqzL7SVu5i3vK1sFzRgw0fSCZN7g1W8NholzGKK8rNO%2FXTmXq7L97UrQNomkvAzodEW6RMotuIUcZ8ZfGJD0Wm%2Bu3X%2B5QaW7tRpngGdY4Fq6PkSDeALt6PF4IgEBJ4Q8sSFUodp4evoa%2FTTFuZmqkj4AlNcVPrDZDKF5qEthdZBY0LHzKoWjUz0Hoxj0UkF%2FO00yhgZ2n%2BBPf5IF6lzcK4Lb8PI7VquPOFaoiF9y2MtkPuoP6QZzta9t2FcLsHbvnNrQmqlXnlVLGKlhRhWxtqNwMJZdsSaWWJI0PrZXtF%2B18PGcXH6DMm9i05PWk9A4pSPqOOM%2Fo5AAvOKTLVK79NLJP83YlBjaYoynQ3JRlUIcrBS%2F8MSwRu6ExtOu7bakwmr4hNSx39m2AdKsqWvTCn7MBGJtUeP%2F6SWJebxiL6qlzwr91FuHBUZMdCkYIVl7M9ZKBbROGj8XH9MDgvXqaTcv3sPSOkvhNPY3oJ9N8%2FlI2OLPFrZXraSgHkXRfrjLMgF1%2FmYzgAkS%2Ff3c30hO2Y26kDQd610WUG3gcm%2F1sUrLigCHtBtgyG0UzHWpzCG%2FyZOzhUhFrBAB8MPqCmrAGOrAB03DGA2VX%2B7BOOFW2sROwBqt1BmvR92WtXv9TLuKe7Z7VgA5G1UkHyWzHh3sHSTOrijnw7RpzZOxtt%2BLWwdYkFgotUwdlve7hGp4se1lN6vx4gsmLDcG7N3rqOPd3%2B%2FlBHSM5sQkT8Jfc635ZVt0lqbiLSV9efPawwd5RYpNg%2FQgr5DL3ErG5vEBF%2FpI%2Bum2gnnOLX99EgmobF0ds9NT%2FpQZjrpv3ENCPo2EzMMrpSGc%3D&Signature=lke7OhOD%2BhHwmj1XFO4nWPEANyQ%3D&Expires=1711705828&AWSAccessKeyId=ASIA4QDFFSUR3VFEDVVS", "autoAdvance": false, "prioritizeHls": false, "start": 0.0, "transcriptTranslationUrl": "/courses/course-v1:MITx+HST.936x+1T2019/xblock/block-v1:MITx+HST.936x+1T2019+type@video+block@93a7a935c3c644fcba1821a8629eea39/handler/transcript/translation/__lang__", "completionPercentage": 0.95, "duration": 0.0, "saveStateEnabled": false, "publishCompletionUrl": "/courses/course-v1:MITx+HST.936x+1T2019/xblock/block-v1:MITx+HST.936x+1T2019+type@video+block@93a7a935c3c644fcba1821a8629eea39/handler/publish_completion"}'
data-bumper-metadata='null'
data-autoadvance-enabled="False"
data-poster='null'
tabindex="-1"
>
<div class="focus_grabber first"></div>
<div class="tc-wrapper">
<div class="video-wrapper">
<span tabindex="0" class="spinner" aria-hidden="false" aria-label="Loading video player"></span>
<span tabindex="-1" class="btn-play fa fa-youtube-play fa-2x is-hidden" aria-hidden="true" aria-label="Play video"></span>
<div class="video-player-pre"></div>
<div class="video-player">
<div id="93a7a935c3c644fcba1821a8629eea39"></div>
<h4 class="hd hd-4 video-error is-hidden">No playable video sources found.</h4>
<h4 class="hd hd-4 video-hls-error is-hidden">
Your browser does not support this video format. Try using a different browser.
</h4>
</div>
<div class="video-player-post"></div>
<div class="closed-captions"></div>
<div class="video-controls is-hidden">
<div>
<div class="vcr"><div class="vidtime">0:00 / 0:00</div></div>
<div class="secondary-controls"></div>
</div>
</div>
</div>
</div>
<div class="focus_grabber last"></div>
</div>
</div>
</div>
<div class="vert vert-2" data-id="block-v1:MITx+HST.936x+1T2019+type@problem+block@f61a3327ed394ac2820e59e2a4c7f026">
<div class="xblock xblock-public_view xblock-public_view-problem xmodule_display xmodule_ProblemBlock" data-course-id="course-v1:MITx+HST.936x+1T2019" data-runtime-class="LmsRuntime" data-init="XBlockToXModuleShim" data-usage-id="block-v1:MITx+HST.936x+1T2019+type@problem+block@f61a3327ed394ac2820e59e2a4c7f026" data-has-score="True" data-runtime-version="1" data-block-type="problem" data-request-token="13069d50edb111eeb45a1299a322540b" data-graded="True">
<script type="json/xblock-args" class="xblock-json-init-args">
{"xmodule-type": "Problem"}
</script>
<div id="problem_f61a3327ed394ac2820e59e2a4c7f026" class="problems-wrapper" role="group"
aria-labelledby="f61a3327ed394ac2820e59e2a4c7f026-problem-title"
data-problem-id="block-v1:MITx+HST.936x+1T2019+type@problem+block@f61a3327ed394ac2820e59e2a4c7f026" data-url="/courses/course-v1:MITx+HST.936x+1T2019/xblock/block-v1:MITx+HST.936x+1T2019+type@problem+block@f61a3327ed394ac2820e59e2a4c7f026/handler/xmodule_handler"
data-problem-score="0"
data-problem-total-possible="1"
data-attempts-used="0"
data-content="
<h3 class="hd hd-3 problem-header" id="f61a3327ed394ac2820e59e2a4c7f026-problem-title" aria-describedby="block-v1:MITx+HST.936x+1T2019+type@problem+block@f61a3327ed394ac2820e59e2a4c7f026-problem-progress" tabindex="-1">
Unit Exercise
</h3>
<div class="problem-progress" id="block-v1:MITx+HST.936x+1T2019+type@problem+block@f61a3327ed394ac2820e59e2a4c7f026-problem-progress"></div>
<div class="problem">
<div>
<div class="wrapper-problem-response" tabindex="-1" aria-label="Question 1" role="group"><div class="choicegroup capa_inputtype" id="inputtype_f61a3327ed394ac2820e59e2a4c7f026_2_1">
<fieldset aria-describedby="status_f61a3327ed394ac2820e59e2a4c7f026_2_1">
<legend id="f61a3327ed394ac2820e59e2a4c7f026_2_1-legend" class="response-fieldset-legend field-group-hd">The following statement is true or false? "It is important to establish a clear and compelling set of reasons and requirements to determine why a health informatic IT project is necessary"</legend>
<div class="field">
<input type="radio" name="input_f61a3327ed394ac2820e59e2a4c7f026_2_1" id="input_f61a3327ed394ac2820e59e2a4c7f026_2_1_choice_0" class="field-input input-radio" value="choice_0"/><label id="f61a3327ed394ac2820e59e2a4c7f026_2_1-choice_0-label" for="input_f61a3327ed394ac2820e59e2a4c7f026_2_1_choice_0" class="response-label field-label label-inline" aria-describedby="status_f61a3327ed394ac2820e59e2a4c7f026_2_1"> False
</label>
</div>
<div class="field">
<input type="radio" name="input_f61a3327ed394ac2820e59e2a4c7f026_2_1" id="input_f61a3327ed394ac2820e59e2a4c7f026_2_1_choice_1" class="field-input input-radio" value="choice_1"/><label id="f61a3327ed394ac2820e59e2a4c7f026_2_1-choice_1-label" for="input_f61a3327ed394ac2820e59e2a4c7f026_2_1_choice_1" class="response-label field-label label-inline" aria-describedby="status_f61a3327ed394ac2820e59e2a4c7f026_2_1"> True
</label>
</div>
<span id="answer_f61a3327ed394ac2820e59e2a4c7f026_2_1"/>
</fieldset>
<div class="indicator-container">
<span class="status unanswered" id="status_f61a3327ed394ac2820e59e2a4c7f026_2_1" data-tooltip="Not yet answered.">
<span class="sr">unanswered</span><span class="status-icon" aria-hidden="true"/>
</span>
</div>
</div></div>
</div>
<div class="action">
<input type="hidden" name="problem_id" value="Unit Exercise" />
<div class="submit-attempt-container">
<button type="button" class="submit btn-brand" data-submitting="Submitting" data-value="Submit" data-should-enable-submit-button="True" aria-describedby="submission_feedback_f61a3327ed394ac2820e59e2a4c7f026" >
<span class="submit-label">Submit</span>
</button>
<div class="submission-feedback" id="submission_feedback_f61a3327ed394ac2820e59e2a4c7f026">
<span class="sr">Some problems have options such as save, reset, hints, or show answer. These options follow the Submit button.</span>
</div>
</div>
<div class="problem-action-buttons-wrapper">
</div>
</div>
<div class="notification warning notification-gentle-alert
is-hidden"
tabindex="-1">
<span class="icon fa fa-exclamation-circle" aria-hidden="true"></span>
<span class="notification-message" aria-describedby="f61a3327ed394ac2820e59e2a4c7f026-problem-title">
</span>
<div class="notification-btn-wrapper">
<button type="button" class="btn btn-default btn-small notification-btn review-btn sr">Review</button>
</div>
</div>
<div class="notification warning notification-save
is-hidden"
tabindex="-1">
<span class="icon fa fa-save" aria-hidden="true"></span>
<span class="notification-message" aria-describedby="f61a3327ed394ac2820e59e2a4c7f026-problem-title">None
</span>
<div class="notification-btn-wrapper">
<button type="button" class="btn btn-default btn-small notification-btn review-btn sr">Review</button>
</div>
</div>
<div class="notification general notification-show-answer
is-hidden"
tabindex="-1">
<span class="icon fa fa-info-circle" aria-hidden="true"></span>
<span class="notification-message" aria-describedby="f61a3327ed394ac2820e59e2a4c7f026-problem-title">Answers are displayed within the problem
</span>
<div class="notification-btn-wrapper">
<button type="button" class="btn btn-default btn-small notification-btn review-btn sr">Review</button>
</div>
</div>
</div>
"
data-graded="True">
<p class="loading-spinner">
<i class="fa fa-spinner fa-pulse fa-2x fa-fw"></i>
<span class="sr">Loading…</span>
</p>
</div>
</div>
</div>
</div>
</div>
<div class="xblock xblock-public_view xblock-public_view-vertical" data-course-id="course-v1:MITx+HST.936x+1T2019" data-runtime-class="LmsRuntime" data-init="VerticalStudentView" data-usage-id="block-v1:MITx+HST.936x+1T2019+type@vertical+block@70c53455f875438fb28cadd4cd8e2dd8" data-has-score="False" data-runtime-version="1" data-block-type="vertical" data-request-token="13069d50edb111eeb45a1299a322540b" data-graded="True">
<h2 class="hd hd-2 unit-title">Development and Delivery</h2>
<div class="vert-mod">
<div class="vert vert-0" data-id="block-v1:MITx+HST.936x+1T2019+type@html+block@fe70be02a66141b09508ead01bc3b685">
<div class="xblock xblock-public_view xblock-public_view-html xmodule_display xmodule_HtmlBlock" data-course-id="course-v1:MITx+HST.936x+1T2019" data-runtime-class="LmsRuntime" data-init="XBlockToXModuleShim" data-usage-id="block-v1:MITx+HST.936x+1T2019+type@html+block@fe70be02a66141b09508ead01bc3b685" data-has-score="False" data-runtime-version="1" data-block-type="html" data-request-token="13069d50edb111eeb45a1299a322540b" data-graded="True">
<script type="json/xblock-args" class="xblock-json-init-args">
{"xmodule-type": "HTMLModule"}
</script>
<h4>Development</h4>
<p>The above sections highlighted some of the typical up-front work needed to get a project going. The actual course of development and delivery of features moving forward from the initial phases is where the need for choosing a particular management philosophy happens. It is here whether agile or waterfall methodology should be chosen and ultimately followed.</p>
<p>For agile development, close customer contact is needed for the specification of the particular features being developed, but also for confirmation and sign-off for the particular set of features at the conclusion of a sprint. For geographically distributed teams this consistent contact and communication may be difficult to obtain. It is this need for clarity of communication that has led to the proliferation of a variety of collaboration tools and techniques to help project teams and customers stay synchronized regardless of their location. Whether it is using the Scrum method and utilizing an online tool, or using a marker board with sticky notepaper and maintaining a Kanban board by hand, some sort of tracking system needs to be employed to help track the progress of development.</p>
<p>These tools and methodologies are important in order to measure and document the completion of work, recording issues, as well as communicating and retaining knowledge throughout the project. With each task in your backlog completed, you are able to take on new tasks, and be one step closer to completion.</p>
<p><b>Figure 4</b>. Example of Burn Down Chart</p>
<p><img src="/assets/courseware/v1/e798c6f057aa8ea0e4f73a7cacb86cb0/asset-v1:MITx+HST.936x+1T2019+type@asset+block/Picture20_5.png" alt="" type="saveimage" target="[object Object]" preventdefault="function (){r.isDefaultPrevented=n}" stoppropagation="function (){r.isPropagationStopped=n}" stopimmediatepropagation="function (){r.isImmediatePropagationStopped=n}" isdefaultprevented="function t(){return!1}" ispropagationstopped="function t(){return!1}" isimmediatepropagationstopped="function t(){return!1}" width="825" height="337" /></p>
<p>The burn down chart is a graphical representation (figure 4.) of the completed versus remaining tasks for a give iteration or sprint within a project. Over the course of multiple iterations, the remaining backlog of committed tasks should eventually go to zero as you complete your tasks.</p>
<h4>Delivery and Completion</h4>
<p>As the project’s features are delivered it is important to communicate early and often with the stakeholder on the general state of the project and provide estimates of timelines for completion.</p>
<p>Arriving at agreement for completion and measuring success can be challenging. Did the customer fully understand their needs when requirements were agreed upon? Do their stakeholders agree on the features you delivered being complete? Features have been delivered according to the specifications set by the initial requirements as well as signed off at respective sprints – is that sufficient? What if the stakeholders and users are unhappy?</p>
<p>It is the role of the project manager to set expectations with the customer on establishing timetables, deadlines, and limits to the feature backlog and when to consider the project complete. Some projects may be time-boxed for a fixed delivery date, so not all features may be implemented, so a best-effort implementation may be needed. Other projects may be completely groundbreaking in terms of what is being delivered, so completeness criteria may not be known ahead of time. These projects may need to be constrained by time, material, and budget after an agreed upon level of functionality and satisfaction is established. </p>
<p>Finally, delivery of a system hinges upon the successful handoff of responsibility to both the customer’s end users, as well as their administrators. Are the trainers and eventual administers properly equipped to champion the product on their own? Can their IT staff troubleshoot and repair issues without your direct intervention? Can they install, configure, and extend your solution without needing to call and email you at every moment? In addition to feature delivery, there is also a crucial knowledge transfer and training component needed for closing out a project.</p>
</div>
</div>
<div class="vert vert-1" data-id="block-v1:MITx+HST.936x+1T2019+type@problem+block@95c06f902571416cbaa02bf2614eac4d">
<div class="xblock xblock-public_view xblock-public_view-problem xmodule_display xmodule_ProblemBlock" data-course-id="course-v1:MITx+HST.936x+1T2019" data-runtime-class="LmsRuntime" data-init="XBlockToXModuleShim" data-usage-id="block-v1:MITx+HST.936x+1T2019+type@problem+block@95c06f902571416cbaa02bf2614eac4d" data-has-score="True" data-runtime-version="1" data-block-type="problem" data-request-token="13069d50edb111eeb45a1299a322540b" data-graded="True">
<script type="json/xblock-args" class="xblock-json-init-args">
{"xmodule-type": "Problem"}
</script>
<div id="problem_95c06f902571416cbaa02bf2614eac4d" class="problems-wrapper" role="group"
aria-labelledby="95c06f902571416cbaa02bf2614eac4d-problem-title"
data-problem-id="block-v1:MITx+HST.936x+1T2019+type@problem+block@95c06f902571416cbaa02bf2614eac4d" data-url="/courses/course-v1:MITx+HST.936x+1T2019/xblock/block-v1:MITx+HST.936x+1T2019+type@problem+block@95c06f902571416cbaa02bf2614eac4d/handler/xmodule_handler"
data-problem-score="0"
data-problem-total-possible="1"
data-attempts-used="0"
data-content="
<h3 class="hd hd-3 problem-header" id="95c06f902571416cbaa02bf2614eac4d-problem-title" aria-describedby="block-v1:MITx+HST.936x+1T2019+type@problem+block@95c06f902571416cbaa02bf2614eac4d-problem-progress" tabindex="-1">
Unit Exercise
</h3>
<div class="problem-progress" id="block-v1:MITx+HST.936x+1T2019+type@problem+block@95c06f902571416cbaa02bf2614eac4d-problem-progress"></div>
<div class="problem">
<div>
<div class="wrapper-problem-response" tabindex="-1" aria-label="Question 1" role="group"><div class="choicegroup capa_inputtype" id="inputtype_95c06f902571416cbaa02bf2614eac4d_2_1">
<fieldset aria-describedby="status_95c06f902571416cbaa02bf2614eac4d_2_1">
<legend id="95c06f902571416cbaa02bf2614eac4d_2_1-legend" class="response-fieldset-legend field-group-hd">True or False: "As the project&#8217;s features are delivered it is important to communicate early and often with the stakeholder on the general state of the project and provide estimates of timelines for completion"</legend>
<div class="field">
<input type="radio" name="input_95c06f902571416cbaa02bf2614eac4d_2_1" id="input_95c06f902571416cbaa02bf2614eac4d_2_1_choice_0" class="field-input input-radio" value="choice_0"/><label id="95c06f902571416cbaa02bf2614eac4d_2_1-choice_0-label" for="input_95c06f902571416cbaa02bf2614eac4d_2_1_choice_0" class="response-label field-label label-inline" aria-describedby="status_95c06f902571416cbaa02bf2614eac4d_2_1"> False
</label>
</div>
<div class="field">
<input type="radio" name="input_95c06f902571416cbaa02bf2614eac4d_2_1" id="input_95c06f902571416cbaa02bf2614eac4d_2_1_choice_1" class="field-input input-radio" value="choice_1"/><label id="95c06f902571416cbaa02bf2614eac4d_2_1-choice_1-label" for="input_95c06f902571416cbaa02bf2614eac4d_2_1_choice_1" class="response-label field-label label-inline" aria-describedby="status_95c06f902571416cbaa02bf2614eac4d_2_1"> True
</label>
</div>
<span id="answer_95c06f902571416cbaa02bf2614eac4d_2_1"/>
</fieldset>
<div class="indicator-container">
<span class="status unanswered" id="status_95c06f902571416cbaa02bf2614eac4d_2_1" data-tooltip="Not yet answered.">
<span class="sr">unanswered</span><span class="status-icon" aria-hidden="true"/>
</span>
</div>
</div></div>
</div>
<div class="action">
<input type="hidden" name="problem_id" value="Unit Exercise" />
<div class="submit-attempt-container">
<button type="button" class="submit btn-brand" data-submitting="Submitting" data-value="Submit" data-should-enable-submit-button="True" aria-describedby="submission_feedback_95c06f902571416cbaa02bf2614eac4d" >
<span class="submit-label">Submit</span>
</button>
<div class="submission-feedback" id="submission_feedback_95c06f902571416cbaa02bf2614eac4d">
<span class="sr">Some problems have options such as save, reset, hints, or show answer. These options follow the Submit button.</span>
</div>
</div>
<div class="problem-action-buttons-wrapper">
</div>
</div>
<div class="notification warning notification-gentle-alert
is-hidden"
tabindex="-1">
<span class="icon fa fa-exclamation-circle" aria-hidden="true"></span>
<span class="notification-message" aria-describedby="95c06f902571416cbaa02bf2614eac4d-problem-title">
</span>
<div class="notification-btn-wrapper">
<button type="button" class="btn btn-default btn-small notification-btn review-btn sr">Review</button>
</div>
</div>
<div class="notification warning notification-save
is-hidden"
tabindex="-1">
<span class="icon fa fa-save" aria-hidden="true"></span>
<span class="notification-message" aria-describedby="95c06f902571416cbaa02bf2614eac4d-problem-title">None
</span>
<div class="notification-btn-wrapper">
<button type="button" class="btn btn-default btn-small notification-btn review-btn sr">Review</button>
</div>
</div>
<div class="notification general notification-show-answer
is-hidden"
tabindex="-1">
<span class="icon fa fa-info-circle" aria-hidden="true"></span>
<span class="notification-message" aria-describedby="95c06f902571416cbaa02bf2614eac4d-problem-title">Answers are displayed within the problem
</span>
<div class="notification-btn-wrapper">
<button type="button" class="btn btn-default btn-small notification-btn review-btn sr">Review</button>
</div>
</div>
</div>
"
data-graded="True">
<p class="loading-spinner">
<i class="fa fa-spinner fa-pulse fa-2x fa-fw"></i>
<span class="sr">Loading…</span>
</p>
</div>
</div>
</div>
</div>
</div>
<div class="xblock xblock-public_view xblock-public_view-vertical" data-course-id="course-v1:MITx+HST.936x+1T2019" data-runtime-class="LmsRuntime" data-init="VerticalStudentView" data-usage-id="block-v1:MITx+HST.936x+1T2019+type@vertical+block@90f44fccb50d4d22a1ac70392974857c" data-has-score="False" data-runtime-version="1" data-block-type="vertical" data-request-token="13069d50edb111eeb45a1299a322540b" data-graded="True">
<h2 class="hd hd-2 unit-title">Maintenance and Measuring Usage</h2>
<div class="vert-mod">
<div class="vert vert-0" data-id="block-v1:MITx+HST.936x+1T2019+type@html+block@6e9b0303d21a415f862046f24e3ac373">
<div class="xblock xblock-public_view xblock-public_view-html xmodule_display xmodule_HtmlBlock" data-course-id="course-v1:MITx+HST.936x+1T2019" data-runtime-class="LmsRuntime" data-init="XBlockToXModuleShim" data-usage-id="block-v1:MITx+HST.936x+1T2019+type@html+block@6e9b0303d21a415f862046f24e3ac373" data-has-score="False" data-runtime-version="1" data-block-type="html" data-request-token="13069d50edb111eeb45a1299a322540b" data-graded="True">
<script type="json/xblock-args" class="xblock-json-init-args">
{"xmodule-type": "HTMLModule"}
</script>
<h4>Maintenance</h4>
<p>ICT systems will eventually reveal problems. Whether it is the fault of the technology, or other aspects of it, it will need skilled assistance to troubleshoot and remedy the inevitable problems.</p>
<p>As mentioned before, delivery and completeness of a project is dependent upon sufficient knowledge transfer and training of the customer and its users. But like no system is error free, there will be inevitable knowledge gaps. Providing customers an official channel in which to engage with you post-project completion is an important step to take. First, it ensures that your customer is operating the product well, but also helps maintain your reputation. It is important to set an appropriate time and labor constraint on the amount of maintenance and support. There are various models throughout the ICT industry to follow for how to maintain maintenance contracts after an actual project or product is delivered.</p>
<p>How and when to give support and maintenance on your end is entirely determined by the scope of the project and the capabilities you built into the system and to your team to provide such support. If the customer has a support team in house, it may be more appropriate to provide deep training for technical issues to their staff and reserve your staff only as higher levels of support. In other circumstances, your customer may have zero capacity to self manage your system, so you may need to incur additional support overhead to support this customer.</p>
<h4>Measuring Usage</h4>
<p>After releasing a product to the world, it is extremely important to understand how that product is being used. There are important subjective and objective ways to accomplish this.</p>
<p>On the subjective side, it’s important to continually engage with and observe your users. Ensuring that there is a mechanism for users to provide input on the product and feel like their voices are being heard is an incredibly useful way to get suggestions on how to improve the product, and if users can see their input being rolled out as changes to the product they will feel more connected to the product and will be more likely to keep using it (and recommend it to others). This can be more challenging in the ICT4D space when it is logistically harder to reach out to, and engage with, end users of the system. In scenarios where users are very difficult to reach through normal channels we recommend having intermediaries who talk with users and collect their feedback and bring that back to the product team.</p>
<p>Often times it can be easier to understand usage via objective measurement using tools like logging or web analytics. These can be incredibly powerful ways to see how frequently features are being used, and also can be used to facilitate A/B testing for usability enhancements. There are many products to help execute A/B testing and references that cover this topic in more depth. </p>
</div>
</div>
<div class="vert vert-1" data-id="block-v1:MITx+HST.936x+1T2019+type@problem+block@b1c36ced034e49738c2f390c96349bad">
<div class="xblock xblock-public_view xblock-public_view-problem xmodule_display xmodule_ProblemBlock" data-course-id="course-v1:MITx+HST.936x+1T2019" data-runtime-class="LmsRuntime" data-init="XBlockToXModuleShim" data-usage-id="block-v1:MITx+HST.936x+1T2019+type@problem+block@b1c36ced034e49738c2f390c96349bad" data-has-score="True" data-runtime-version="1" data-block-type="problem" data-request-token="13069d50edb111eeb45a1299a322540b" data-graded="True">
<script type="json/xblock-args" class="xblock-json-init-args">
{"xmodule-type": "Problem"}
</script>
<div id="problem_b1c36ced034e49738c2f390c96349bad" class="problems-wrapper" role="group"
aria-labelledby="b1c36ced034e49738c2f390c96349bad-problem-title"
data-problem-id="block-v1:MITx+HST.936x+1T2019+type@problem+block@b1c36ced034e49738c2f390c96349bad" data-url="/courses/course-v1:MITx+HST.936x+1T2019/xblock/block-v1:MITx+HST.936x+1T2019+type@problem+block@b1c36ced034e49738c2f390c96349bad/handler/xmodule_handler"
data-problem-score="0"
data-problem-total-possible="1"
data-attempts-used="0"
data-content="
<h3 class="hd hd-3 problem-header" id="b1c36ced034e49738c2f390c96349bad-problem-title" aria-describedby="block-v1:MITx+HST.936x+1T2019+type@problem+block@b1c36ced034e49738c2f390c96349bad-problem-progress" tabindex="-1">
Unit Exercise
</h3>
<div class="problem-progress" id="block-v1:MITx+HST.936x+1T2019+type@problem+block@b1c36ced034e49738c2f390c96349bad-problem-progress"></div>
<div class="problem">
<div>
<div class="wrapper-problem-response" tabindex="-1" aria-label="Question 1" role="group"><p>True or False:</p>
<div class="choicegroup capa_inputtype" id="inputtype_b1c36ced034e49738c2f390c96349bad_2_1">
<fieldset aria-describedby="status_b1c36ced034e49738c2f390c96349bad_2_1">
<legend id="b1c36ced034e49738c2f390c96349bad_2_1-legend" class="response-fieldset-legend field-group-hd">"There is no need to understand and measure usage after releasing the product if you plan well."</legend>
<div class="field">
<input type="radio" name="input_b1c36ced034e49738c2f390c96349bad_2_1" id="input_b1c36ced034e49738c2f390c96349bad_2_1_choice_0" class="field-input input-radio" value="choice_0"/><label id="b1c36ced034e49738c2f390c96349bad_2_1-choice_0-label" for="input_b1c36ced034e49738c2f390c96349bad_2_1_choice_0" class="response-label field-label label-inline" aria-describedby="status_b1c36ced034e49738c2f390c96349bad_2_1"> True
</label>
</div>
<div class="field">
<input type="radio" name="input_b1c36ced034e49738c2f390c96349bad_2_1" id="input_b1c36ced034e49738c2f390c96349bad_2_1_choice_1" class="field-input input-radio" value="choice_1"/><label id="b1c36ced034e49738c2f390c96349bad_2_1-choice_1-label" for="input_b1c36ced034e49738c2f390c96349bad_2_1_choice_1" class="response-label field-label label-inline" aria-describedby="status_b1c36ced034e49738c2f390c96349bad_2_1"> False
</label>
</div>
<span id="answer_b1c36ced034e49738c2f390c96349bad_2_1"/>
</fieldset>
<div class="indicator-container">
<span class="status unanswered" id="status_b1c36ced034e49738c2f390c96349bad_2_1" data-tooltip="Not yet answered.">
<span class="sr">unanswered</span><span class="status-icon" aria-hidden="true"/>
</span>
</div>
</div></div>
</div>
<div class="action">
<input type="hidden" name="problem_id" value="Unit Exercise" />
<div class="submit-attempt-container">
<button type="button" class="submit btn-brand" data-submitting="Submitting" data-value="Submit" data-should-enable-submit-button="True" aria-describedby="submission_feedback_b1c36ced034e49738c2f390c96349bad" >
<span class="submit-label">Submit</span>
</button>
<div class="submission-feedback" id="submission_feedback_b1c36ced034e49738c2f390c96349bad">
<span class="sr">Some problems have options such as save, reset, hints, or show answer. These options follow the Submit button.</span>
</div>
</div>
<div class="problem-action-buttons-wrapper">
</div>
</div>
<div class="notification warning notification-gentle-alert
is-hidden"
tabindex="-1">
<span class="icon fa fa-exclamation-circle" aria-hidden="true"></span>
<span class="notification-message" aria-describedby="b1c36ced034e49738c2f390c96349bad-problem-title">
</span>
<div class="notification-btn-wrapper">
<button type="button" class="btn btn-default btn-small notification-btn review-btn sr">Review</button>
</div>
</div>
<div class="notification warning notification-save
is-hidden"
tabindex="-1">
<span class="icon fa fa-save" aria-hidden="true"></span>
<span class="notification-message" aria-describedby="b1c36ced034e49738c2f390c96349bad-problem-title">None
</span>
<div class="notification-btn-wrapper">
<button type="button" class="btn btn-default btn-small notification-btn review-btn sr">Review</button>
</div>
</div>
<div class="notification general notification-show-answer
is-hidden"
tabindex="-1">
<span class="icon fa fa-info-circle" aria-hidden="true"></span>
<span class="notification-message" aria-describedby="b1c36ced034e49738c2f390c96349bad-problem-title">Answers are displayed within the problem
</span>
<div class="notification-btn-wrapper">
<button type="button" class="btn btn-default btn-small notification-btn review-btn sr">Review</button>
</div>
</div>
</div>
"
data-graded="True">
<p class="loading-spinner">
<i class="fa fa-spinner fa-pulse fa-2x fa-fw"></i>
<span class="sr">Loading…</span>
</p>
</div>
</div>
</div>
</div>
</div>
© All Rights Reserved