Sunteți pe pagina 1din 96

CS364:02Spring2016

ILearnDiscussionBoardSoftwareDesignDocument

1.

Introduction
1.1. Purpose
1.1.1. TheSoftwareDesignDocumentisawireframeflowdocument
describingtheproposedfeaturestotheexistingILearn3.0system,
specificallytheDiscussionBoardfeature.Thisdocumentprovides
descriptionsandthenecessaryrequirementsforunderstanding
whatneedstobebuiltandtherelationshipwiththeexisting
system.
1.1.2. TheSoftwareDesignDocumentincludessupportingrequirement
information,whichincludes,butisnotlimitedtousecase
diagrams,flowcharts,sequencediagrams,and

interfaceexamples.
1.1.3. Thisdocumentdoesnotincludespecificstolanguagesusedor
operatingsystemsrequiredasthisservesasanenduser
architecturereference.
1.1.4. ThisSDDwillaidinthesystemdevelopmentbyprovidingthe
necessarydetailsforhowthesystemshallbebuiltand
implemented.
1.1.5. UsersofthisSDDwillbeabletodevelopthesystembasedonthe
informationandrequirementscontainedinthisdocument.

1.2. Scope
1.2.1. The[NewILearn3.0DiscussionBoard]softwaresystemwillbea
revisionoftheexistingILearn3.0feature,theDiscussionBoards.
1.2.2. Thisnewsystemwillimprovethefunctionalityofthecurrent
DiscussionBoards,increaseoverallusability,andlessenthe
frustrationofcurrentDiscussionBoardusers.
1.2.3. The[NewILearn3.0DiscussionBoard]softwaresystemwill
implementfeaturesthatwillfacilitateeasierandimproved

navigationofpostsleftbyusers.
1.2.4. The[NewILearn3.0DiscussionBoard]willnothaveanyeffect
onotherILearn3.0features,norwillitbeaseparateentityfrom
ILearn3.0.
1.2.5. The[NewILearn3.0DiscussionBoard]systemwillusethe
existingdeployedoperatingsystemsandlanguagesusedfor
development.

2.

References
2.1. TheSDDformatusedforthisdocumentfollowsthestandardsand
numericalformattingdescribedinSoftwareEngineering,Volume1:The
DevelopmentProcesspgs.281284
2.2. TherequirementsusedinthisdocumentcamefromtheSoftware
RequirementsSpecificationwrittenbymembersofCS364:02.
2.3. EachDesignEntityisattributedtothegroupthatcompletedthe
description.Groupscanbereferencedinsections8.2Contributorsunder
theAppendix.

3.

Abbreviations
3.1. IDidentifier:Eachuserofthesystemhasauniqueidentifierto
distinguishhimorherfromotheruser.
3.2. SDDSoftwareDesignDocument:TheSoftwareDesignDocumentisa
wireframeflowdocumentdescribingtheproposedfeaturesoftheproject.

4.

Definitions
4.1. CollapseAllowsausertohideapostthattheyarenolongerinterestedin
reading.Thisallowsausertofreeupspacetolookatother

posts.
4.2. CollapsedSeecollapse.
4.3. CollapsesSeecollapse.
4.4.
CommentSeepost.Acommentisthetextinsideeachpost,inresponse

to,ortobegineachthreadinthediscussionboard.
4.5. DiscussionSeethread.

4.6. DiscussionBoardThepagewhereauniquethreadisviewed.

4.7. ExpandThisallowsausertomakeahiddencommentvisiblesothatthe
contentcanbeviewed.

Commentswithrepliesareinitiallycollapsed.
4.8. ExpandedSeeExpand.
4.9. ExpandingSeeExpand.
4.10. HashtagThisallowsforapostoracommenttobetaggedasacertain

kindofcontent.Inthecontextofthisapplication,all

comments,threads,
andpoststhatinclude#cs364srscouldbefoundbysearchingfor
cs364srsinthesearchengine.
4.11. HashtagsSeehashtag.
4.12. ImportantApostmarkedasimportantwillbemarkedandwillsendan
emailnotificationtoallrelevantusers.
4.13. InterfaceThemediumthroughwhichdifferentpartsofasystem
interact,whetheritbetheuserinteractionwiththesystem,orcomponents
ofthesysteminteractingwithothercomponents.
2

4.14.

5.

MarkdownLightweightmarkuplanguagethatallowsuserstostylethe
contentoftheirdiscussionposts.
4.15. MobileAsmallcomputingdevicetypicallyhavingsmallphysical
dimensions,atouchscreen.Thesedevicesaregenerallyhandheld.
4.16. ModeratorAstudentwhohasbeenassignedtooverseeadiscussion
boardincluding:creating,modifyingandarchivingofthediscussion
boardsandcomments.Themoderatoroverseesandmediates
communicationsbetweenuserstoensureconsiderationandrules,have
beenfollowed.Amoderatorcanbeateachingassistant,intern,orstudent
theteachercallsupon,withspecialprivilegestoeditotheruserspostsand
content.
4.17. NotificationThisallowsausertoseetheactivitytheyareinvolvedin.A
userwillseeanotificationwhenthefollowingeventsoccur:
4.17.1. Anotherusertags(referencetagging)youintheirpost.
4.17.2. Someonerespondstoapostyouhavewritten.
4.18. NotificationsSeenotification.
4.19. PopupAsmallwindowthatappearsintheforeground,tosignifyanalert,
warning,ornotification.
4.20. PostThisisageneralresponsetoagivenevent.Thisisusergenerated
contentthatgenerallycontainstextwiththeoptiontoinsertimagesand
attachothercontent.Italsogivesuserstheabilitytoeditanddeletetheir
owncontent.Apostcouldbeinresponsetoaquestion,oritcouldbea
posttostartanewconversation.
4.21. Postsseepost.
4.22. TaggingTheuserisabletoreferenceanotherstudentoratopicintheir
discussionboardpost.Ifanotherstudentistagged,thereferenceduseris
thensentanotificationwithalinktothereferencedpost.Totagatopica
usermustcreateahashtag.
4.23. ThankAnindicatoriconsuchasathumbsupatthebottomofapost,
andwayofshowingthatapostisappreciatedoruseful.
4.24. ThanksSeethank.
4.25. ThankedSeethank.
4.26. ThreadAcollectionofpostsrelatingtoacertaintopic.
4.27. Threadsseethread.
4.28. TopicAcollectionofthreadsrelatingtoasinglepurpose.

ConsiderationsforproducingSDD
5.1. Softwarelifecycle
5.1.1. ConceptPhase:
3

5.1.1.1. Duration:6Weeks
5.1.1.1.1. Theconceptphaseprovidestheprojectteamwitha
chancetocontemplateandconceptualizeasolid
foundationforanewdiscussionboardsystem.
5.1.1.1.2. Thistimewillbeusedtocreatevariousprototypes
whichwillbepresentedtostakeholders.
5.1.1.1.3. Developalistofcorefunctionalityfeaturesforthe
discussionboard.

5.1.2. RequirementsPhase:
5.1.2.1. Duration:2weeks
5.1.2.1.1. Withinthisperiod,theprojectteamwillmeetwith
stakeholdersandendusersaswellasconduct
interviewsandcreatesurveys.Arequirements
documentwillbedraftedandcompletedduringthis
phase.
5.1.2.2. Acquireallnecessarybusinesslogic/requirements.
5.1.2.2.1. Meetwithprimarystakeholders,endusers,andthe
developmentteamtodeterminethefullscopeof
whowillbeusingthenewdiscussionboardsystem.
5.1.2.2.1.1. Gathertheserequirementsviainterviews
andsurveys.
5.1.2.2.2. Determinehowallapplicableuserswillmakeuseof
thenewdiscussionboardsystem.
5.1.2.2.2.1. Developmultipleusecasescenarios.
5.1.2.2.3. Determineapplicableusecasesinwhichdatawill
beinputthroughthenewdiscussionboardsystem
andhowILearnwillpresenttheinputstotheuser.
5.1.2.2.4. Howwilldatabeoutputfromuseofthenew
discussionboardsandinwhatcasesshouldusersbe
abletoseetheoutput(i.e.discussions,posts,etc.)
5.1.2.3. Buildminorprototypesofthediscussionboardsystem
duringthisphase.

5.1.3. DesignPhase:
5.1.3.1. Duration:3months
5.1.3.1.1. Thedesignphaseofcreatingthediscussionboard
isimportantandshallbethorough.Timespenton
4

thedesignshallbeallottedforinitialdesignsand
multiplerechecking.
5.1.3.1.1.1. Thedesignphaseshallimplementthedesign
ofthecomponents,interfacesandbehaviors
oftheapplication.
5.1.3.1.1.2. Withinthedesignphaseshallbemultiple
recheckingtocheckforspelling,
formatting,orothererrorswithinthe
document.
5.1.4. ImplementationPhase:
5.1.4.1. Duration:6months
5.1.4.1.1. Thenewdiscussionboardapplicationislargeand
shallrequirealargegroupofdeveloperstofinish
theapplication.
5.1.4.1.1.1. Theimplementationphaseshallconsistof
organizingcodewithintheapplicationto
avoidconfusion.
5.1.4.1.1.2. Thelargebulkoftheimplementationpage
willbethedevelopmentoftheapplication.
5.1.4.1.1.3. Duringtheimplementationphasedevelopers
shallcommunicatewithoneanotherwith
worktobedonesothatimplementationis
organizedandefficient.
5.1.5. TestPhase:
5.1.5.1. Duration:3weeks
5.1.5.1.1. Whiletestingshouldtakeplaceduringdevelopment
ofthenewdiscussionboardsystem,3weeks
shouldbespentinthecompletetestingofall
aspectsoftheprojectwithinanenvironmentsimilar
tothatoftheproductionserver.
5.1.5.2. Thenewdiscussionboardsystemwillbemovedtoa
productionlikeenvironmenttoconductvarioustests.
5.1.5.2.1. IntegrationTesting
5.1.5.2.1.1. Functionalityofdiscussionboards.
5.1.5.2.1.2. Discussionboardinteractionwithinthe
ILearnsystem.
5.1.5.2.1.3. Discussionboardinteractionwiththe
database.
5.1.5.2.2. SystemTesting
5

5.1.5.2.2.1.

Discussionboardintegrationintothe
ILearnsystemwithouterrors,bugsor
problems.
5.1.5.2.2.2. Discussionboardfunctionandfeature
comparisonwithoriginalspec.
5.1.5.2.3. UserAcceptanceTesting
5.1.5.2.3.1. Determineenduserandstakeholder
confidenceinthenewsystemandits
usability.
5.1.5.2.3.2. Determinefitforuse/completionstatus.
5.1.5.2.4. Aftertestinghastakenplaceifanyproblemsor
issuesarisetheyshouldbeaddressedandcorrected.
5.1.5.2.5. Oncealltestshavebeencompletedsuccessfully
installationandcheckoutcantakeplace.

5.1.6. InstallationandCheckoutPhase:
5.1.6.1. Duration:2weeks
5.1.6.2. Mostofthenewprocessessimplyaddontoexisting
processesandwillnotrequiremuchtimetoimplement,
especiallyafterhavingbeenmadetofunctionseparately.

5.1.7. OperationandMaintenancePhase:
5.1.7.1. Duration:TheremaininglifecycleofIlearn3.0
5.1.7.2. Durationapproximation:6years
5.1.7.2.1. Thisestimationisbasedonthedurationofthe
previousIlearnsystem,alsoabout6years.
5.1.7.3. Thenewdiscussionboardisdesignedtoremaininuseasa
featureofIlearn3.0.Unlessupdatedagain,itshallremain
ineffectforthedurationofuseofIlearn3.0.
5.1.7.4. Similartohowthediscussionboardwasremodeledalong
withthetransitionfromIlearn2.0,anewdiscussionboard
systemwilllikelybedesignedforasubsequentversionof
Ilearn.
5.1.7.5. Theconceptsofsomeofthedescribedprocessesmaybe
reusedforsubsequentversionsofIlearn,howeverthatis
outofthescopeofthisproject.

5.1.8. RetirementPhase:
5.1.8.1. Duration:8Weeks
6

5.1.8.1.1.

Theretirementphaseofthediscussionboardwill
encompassthemigrationofinformationfromits
currentstoretovariousarchivalrepositories.
5.1.8.1.1.1. Thisinformationwillincludeuserpostsand
configurationfiles.
5.1.8.1.2. Itencompassesthetransitionalperiodbetweennew
andolddiscussionboardsystemsacrossvarious
hosts.

5.2. SDDwithinthelifecycle
5.2.1. TheSDDwillfollowtheoutlineofthesoftwaredevelopmentlife
cycleasstatedinsection5.1.ThelifecycleoftheILearn3.0
systemisoutsidethescopeofthisdocumentandwillnotbe
covered.

5.3. PurposeofSDD
5.3.1. PurposeofthisSDDservesasguidancetothedevelopmentteam
oftherequirementsthatmustbefilledforthisproject.TheSDDis
howwewillfindanygapsorinconsistenciesthatneedtobe
resolvedbeforetheprojectgoestodevelopment.

6.

DesignDescriptionInformationContent

6.1.

DesignEntitiesAttributes

6.1.1. CollapsibleThreadsGroup3

6.1.1.1. Identification:Collapsingandexpandingthreads
6.1.1.2. Type:Process
6.1.1.3. Purpose
6.1.1.3.1. Thepurposeofthisfeatureistoallowtheuserto
collapseorexpandvariousthreadsinadiscussion
board.
6.1.1.3.2. Thiswillallowuserstomoreeasilynavigate
discussionboardsandtoreducevisualclutter.

6.1.1.4. Function
6.1.1.4.1. Thisprocesswillprovideaninterfaceforallowing
userstoeithercollapseorexpandthreadsectionsor
topics.
7

6.1.1.4.2.

Auserwillbecapableofexpandingathreadtosee
allsubsectionswithinthatthread.
6.1.1.4.3. Auserwillbeabletocollapseathreadtoreduce
visualclutterandhidecontentthattheyarenot
interestedin.

6.1.1.5. Subordinates
6.1.1.5.1. Theprocessofviewingthediscussionboards
function.
6.1.1.5.2. Theprocessofviewingthreads.

6.1.1.6. Dependencies
6.1.1.6.1. Thisprocessdependsonthediscussionboards
currentprocessofdisplayingposts.
6.1.1.6.2. Userinteractionwithcollapsingandexpanding
threadswilldependontheprocessesofreceiving
inputthroughthewebandoutputtinginformation
onthescreentotheuser.

6.1.1.7. Interface
6.1.1.7.1. Theuserinteractswiththisprocessbyclickingon
the+symbolassociatedwiththethread.The
8

communicationbetweentheuserandtheprogram
hereismadepossiblethroughuseofcommonweb
browserinterfacecomponents.
6.1.1.7.2. Theprocesswillexpandallsubsectionsandmake
themeasilyvisibletotheuser.
6.1.1.7.3. Thesystemwillreplacethe+symbolwitha
symbolsignifyingtheabilitytonowcollapsethe
thread.
6.1.1.7.4. Theuserinteractswiththisprocessbyclickingon
thesymbolassociatedwiththethread.
6.1.1.7.5. Theprocesswillcollapseallsubsectionsandmake
themhiddenfromtheuser.
6.1.1.7.6. Thesystemwillreplacethesymbolwitha+
symbolsignifyingtheabilitytonowexpandthe
thread.

6.1.1.8. Resources
6.1.1.8.1. Thisprocesswillnotrequireanyadditional
resourcesthanarerequiredforthecurrent
discussionboardsystem.

6.1.1.9. Processing
6.1.1.9.1. Theuserwillhavetheabilitytoexpandand
collapsethreads.
6.1.1.9.2. Underthemaindiscussionboardprocess,theuser
hastheabilitytoviewalistofthreadseachwitha
+symbollocatedtotheright
6.1.1.9.3. Whentheuserclicksonthe+symbolitwill
expandallsubsectionsofthatthreadmakingthem
visibletotheuser.The+symbolwillturnintoa
symbolafterbeingclickedonce.
6.1.1.9.4. Whentheuserclicksonthesymbolitwill
collapseallsubsectionsofthatthreadmakingthem
hiddentotheuser.Thesymbolwillturnback
intoa+symbolafterbeingclickedonce.

6.1.1.10. Data
6.1.1.10.1. Nodatawillbestoredinthedatabasewithuseof
thecollapsiblethreads.Forusabilitypurposesall
9

6.1.2.

discussionboardswillbecollapsedbydefaulteven
iftheuserexpandedtheminapriorsession.

DeletePostsGroup3

6.1.2.1. Identification:Deletingofunwantedorunintendedposts
6.1.2.2. Type:Process
6.1.2.3. Purpose
6.1.2.3.1. Thepurposeofthisfeatureistoallowtheusermore
controlovertheircontributionstoadiscussion
board.
6.1.2.3.2. Thiswillallowausertodeletetheirownpoststhat
mayhavebeenunwantedorirrelevant.

6.1.2.4. Function
6.1.2.4.1. Thisprocesswillprovideaninterfaceforallowing
userstodeletepoststhattheyhavemade.

6.1.2.5. Subordinates
6.1.2.5.1. Theprocessofviewingthediscussionboards
function.
6.1.2.5.2. Theprocessofviewingthreads.

6.1.2.6. Dependencies
6.1.2.6.1. Thisprocessdependsonthediscussionboards
currentprocessofremovingapost.
6.1.2.6.2. Theusermustbeallowedtoreadfromandwriteto
thedatabase.
6.1.2.6.3. Userinteractionwithdeletingtheirownthreads
willdependontheprocessesofreceivinginput
throughthewebandoutputtinginformationonthe
screentotheuser.

10

6.1.2.7. Interface
6.1.2.7.1. Theuserinteractswiththisprocessbyclickingon
theDeletebuttonlocatedontheirauthoredthread
bytheEditPostbutton.Thecommunication
betweentheuserandtheprogramhereismade
possiblethroughuseofcommonwebbrowser
interfacecomponents.
6.1.2.7.2. Theuserwillbeabletoconfirmtheirintentionto
deleteorcanceltheprocessinadeletion
confirmationdialogafterclickingtheDelete
button.
6.1.2.7.2.1. Optionallytheuserwillbeabletospecify
withinthedialogwhetherornottosimply
deletefuturepostswithoutthedialoginthe
futurewhentheDeletebuttonisclicked.
6.1.2.7.3. Theprocesswillaccessthedatabaseandremovethe
postifitcontainsnoreplies,orremovethepost
authorandpostcontentiftherearereplies(thereby
keepingtherepliespresentinboththediscussion
boardandthedatabase).
11

6.1.2.7.4.

Tocanceloutofthedeletionconfirmationdialog
theuserwillclickoutoftheboxorclickonthe
Cancelbutton.

6.1.2.8. Resources
6.1.2.8.1. Thisprocesswillnotrequireanyadditional
resourcesthanarerequiredforthecurrent
discussionboardsystem.

6.1.2.9. Processing
6.1.2.9.1. Theuserwillhavetheabilitytodeleteanypostthat
theyaretheauthorof.
6.1.2.9.1.1. Underthemaindiscussionboardprocess,
theuserhastheabilitytodeleteanyoftheir
ownposts.
6.1.2.9.1.2. WhentheuserclicksontheDeletebutton
ontheirposttheywillbepresentedwitha
confirmationdialogtoeitherconfirmthe
deletionorcancelit.

6.1.2.10. Data
6.1.2.10.1. Thedatabasecanremovethepostdataintheposts
tableinthediscussionboarddatabase.
6.1.2.10.1.1. Whentheuserconfirmsthedeletionand
therearenorepliesattachedtothepost:The
row,basedonthepostid,willbedeleted.
6.1.2.10.1.2. Whentheuserconfirmsthedeletionand
therearerepliesattachedtothepost:The
row,basedonthepostid,willhaveits
authorcolumnchangedtoDeletedandits
contentcolumnchangedtoDeleted.
6.1.2.10.2. Anewcolumnwillbeaddedtotheusertableas
auto_post_delete.

user

...

...

auto_post_delete

bool
12

Thisadditionalcolumnaddressestheoptional
settingwithinthedeletionconfirmationdialogto
deleteallfuturepostswithoutconfirmation.

6.1.3. ArrangeandOrganizeThreadsGroup3

6.1.3.1. Identification:ArrangingandOrganizingThreadsUnder
SpecificCategories
6.1.3.2. Type:Process
6.1.3.3. Purpose
6.1.3.3.1. Thepurposeofthisfeatureistoallowtheuserto
organizethreadscontributedbytheuserinto
customcategoriessotheycanbesortedforeasier
viewingbythestudent.
6.1.3.3.2. Thiswillallowtheusertofilterthroughtheselected
threadsquicklyandfindthosecategorizedthreads
easily.

6.1.3.4. Function
6.1.3.4.1. Thisprocessprovidesaninterfacethatwillallow
theusertoviewandarrangethreadswithinthe
discussionboards.
6.1.3.4.2. Auserwillbecapableofcreatingacustomizable
categorywithinthefilterofarrangingand
organizingthethreads.
6.1.3.4.3. Theuserwillhavetheabilitytoorganizeathread
byassigningthegiventhreadtoacustomcategory.

Figure6.3.31FilterByexample

13

6.1.3.5. Subordinates
6.1.3.5.1. Theprocessofviewingthediscussionboards
function.
6.1.3.5.2. Theprocessofviewingthreadsthatotherusers
havecontributedto(describedin5.3.4).
6.1.3.5.3. Theprocessofthankingpostsbetweenall
studentscontributingtoadiscussion(describedin
5.2.8).

6.1.3.6. Dependencies
6.1.3.6.1. Thisprocessdependsonthediscussionboards
currentprocessofcreatingandstoringapost,along
withbeingabletoviewwhichthreadsthecurrent
userhascontributedto.
6.1.3.6.2. Theusermustbeallowedtoreadandwritefromthe
database.
6.1.3.6.3. Userinteractionwitharrangingandorganizing
threadswilldependontheprocessesofreceiving
inputthroughthewebandoutputtinginformation
onthescreentotheuser.

Figure6.3.32Arranging/organizingdropdown
menuflowchart

14

Figure6.3.33Creatingacustomcategoryflowchart

Figure6.3.34Assigningathreadtoacustomcategory
flowchart

15

6.1.3.7. Interface
6.1.3.7.1. Theuserinteractswiththisprocessbyclickingon
theFilterBydropdownmenuandclickingona
categoryprovidedbythediscussionboardorbya
customcategorymadebytheuser.The
communicationbetweentheuserandtheprogram
hereismadepossiblethroughuseofcommonweb
browserinterfacecomponents.
6.1.3.7.2. Theusercanalsointeractwiththisprocessby
clickingtheStudentAccounttabandthen
clickingonCreateCustomCategory.Thisthen
allowstheusertoinputacustomcategory.When
submitted,thecustomcategoryisoutputtedtothe
userthroughtheFilterBydropdownmenu.
6.1.3.7.3. Theprocesswillaccessthedatabasebyaddinga
customcategoryviathedescriptionabove.
6.1.3.7.4. Theusercanassignathreadtoacustomcategory
byclickingontheSettingsiconandthe
Organizetaboutputtingbythediscussionboard
underthegiventhread.Thediscussionboardthen
outputsalistofcategories,withtheabilitytoassign
oneofthemtothegiventhread.
6.1.3.7.5. Theprocesswillaccessthedatabasebyaddinga
customcategorytoaspecificthread.
6.1.3.7.6. TocanceloutofSettings,OrganizeorCreate
CustomCategorytabs,clickoutoftheboxorclick
ontheCancelbutton.

6.1.3.8. Resources
6.1.3.8.1. Thisprocesswillnotrequireanyadditional
resourcesthanarerequiredforthecurrent
discussionboardsystem.

6.1.3.9. Processing
6.1.3.9.1. Theuserwillhavetheabilitytoarrangeand
organizethreadsbasedoffofcategories.

6.1.3.9.1.1. Underthemaindiscussionboardprocess,
theuserhastheabilitytoviewalistof
16

threadsorganizedundercategoriesunder
theFilterBydropdownmenu.
6.1.3.9.1.2. Whentheuserclicksonacategory,itwill
gobacktothemaindiscussionboard
processbutinsteaddisplaysthreadsbased
onthecategoryselected.
6.3.3.9.2.
Theuserwillhavetheabilitytoaddacustom
category.
6.1.3.9.1.3. Whenatthemaindiscussionboardprocess,
underStudentAccounttherewillbealink
toCreateCustomCategory.
6.1.3.9.1.4. UndertheCreateCustomCategorythe
userwillthenbeabletoinputtheirown
categoryandaddittothedatabase.
6.1.3.9.1.5. Thiswillthenallowtheusertoassigna
threadtothecustomcategorycreated.
6.3.3.9.3.
Theuserwillhavetheabilitytoassignathread
underacustomcategory.

6.1.3.9.1.6. Underagiventhread,theuserwillhavethe
abilitytoclickontheSettingsofthe
thread.
6.1.3.9.1.7. WhenunderSettingstheuserwillhave
theabilitytoclickonOrganize,which
willbethelocationwheretheusercan
assignthegiventhreadtoacategory.
6.1.3.9.1.8. TheOrganizelinkwillprovideapopup
thatwillhaveamenuofcategories.
6.1.3.9.1.9. WhentheuserclicksontheAssignbutton
nexttothecategory,thecategorywillthen
beassignedtothegiventhread.
6.1.3.9.1.10. Aftercategoryisassigned,theusermaynow
beabletoviewthegiventhreadunderthe
maindiscussionboardprocessunderthe
categoryselectedbytheFilterBydrop
downmenu.

17

6.1.3.10. Data
6.3.3.10.1.
Thedatabasecanstorethedatainthefollowing
tablesinthediscussionboarddatabase.
6.1.3.10.1.1. Thecustom_categorytablestoresthe
categoriesavailabletoarrangethethreads
by.Eachcategoryshouldhaveauniqueid.
6.1.3.10.1.1.1. Theidshallbetheprimarykeyand
shallbeautomaticallyincremented.
6.1.3.10.1.1.2. Thecategory_nameshallnotaccept
anullvalue.

custom_category

id

int

category_name

varchar(60)

6.1.3.10.1.2.

Thethreadtablestoresthethread_name,
thread,andtherelationshiptoacategory.
6.1.3.10.1.2.1. Theidshallbetheprimarykeyand
shallbeautomaticallyincremented.
6.1.3.10.1.2.2. Thecategory_idshallreferencethe
idfromthecategoriestable.
6.1.3.10.1.2.3. Thethread_nameshallnotaccepta
nullvalue.
6.1.3.10.1.2.4. Thethreadshallnotacceptanull
value.

thread

thread_id

int

category_id

int

Referencescustom_category(id)

thread_name

varchar(60)

thread

text

18

6.1.4.

ContributedThreadsGroup3

6.1.4.1. Identification:Viewingcontributorstoposts
6.1.4.2. Type:Process
6.1.4.3. Purpose
6.1.4.3.1. Thepurposeofthisprocessistoshowthethreads
theuserhascontributedto.Thiswillallowtheuser
totracktheircontributionsmoreaccuratelyand
efficiently.
6.1.4.3.2. Theuserwillalsobeabletoviewothers
contributionstootherthreadsbasedoffoflatest
posttooldestsothattheusercantrackwhata
personhadmadecontributionsto.

6.1.4.4. Function
6.1.4.4.1. Theprocessshallprovideaninterfacethatwill
allowtheusertoviewcontributionsmadetoa
specificthreadunderthethreaditself.
6.1.4.4.2. Theinterfaceshallshowthecontributionsmadeby
auserbasedoffofhowrecentacontributionwas
made.
6.1.4.4.3. Theinterfaceshallalsoallowfortheusertoclick
onthecontributorsprofilepictureandviewother
contributionsthathavebeenmadebytheuserbased
offofmostrecentcontributiontoathread.

19

Figure6.3.41Contributingthreadsexample

20

6.1.4.5. Subordinates
6.1.4.5.1. Theprocessofviewingathreadunderthemain
discussionboardprocess.

6.1.4.6. Dependencies
6.1.4.6.1. Thisprocessdependsonthediscussionboards
currentprocessofcreatingandstoringapostwithin
athread.
6.1.4.6.2. Theremustbeaccesstoadatabase,allowingthe
processtoreadfromandwritetoit.
6.1.4.6.3. Userinteractionwiththeprocesswilldependonthe
processesofreceivinginputthroughtheweb
interface,aswellasthatofdisplayinginformation
onthescreentotheuser.

Figure6.3.42Viewingcontributionstoaspecific
threadflowchart

21

Figure6.3.43Viewingcontributionsmadebya
specificuserflowchart

6.1.4.7. Interface
6.1.4.7.1. Theuserfirstinteractswiththisprocessbyselecting
athreadandviewingcontributionsmadetothe
threadbasedoffoftheirprofilepicture.The
communicationbetweentheuserandtheprogram
hereismadepossiblethroughuseofcommonweb
browserinterfacecomponents.
6.1.4.7.2. Theprocesswillaccessthedatabasebyretrieving
contributionresultsmadeonathread.
6.1.4.7.3. Theprocesswilladdtothedatabasenew
contributionsmadetoaspecificthread.
6.1.4.7.4. Theprocesswillalsoaccessthedatabaseby
retrievingcontributionresultsmadebyeachuser.

6.1.4.8. Resources
6.1.4.8.1. Thisprocesswillnotrequireanyadditional
resourcesthanarerequiredforthecurrent
discussionboardsystem.

6.1.4.9. Processing
6.3.4.9.1.
Theuserwillhavetheabilitytoviewprofile
picturesofthosewhomadecontributionstoaspecificthread.
6.1.4.9.1.1. Fromthemaindiscussionboardprocess,
theuserwillclickonalistofthreads.

22

6.1.4.9.1.2.

Atthebottomofeachthreadwillbealistof
contributorsofthethreaditselfbasedoffof
theuser'sprofilepicture.

6.3.4.9.2.
Theuserwillhavetheabilitytoviewacontributor's
contributionstootherthreads.
6.1.4.9.1.3. Fromthegiventhread,theusershallhave
theabilitytoclickontheprofilepictureofa
contributor.
6.1.4.9.1.4. Oncetheprofilepictureisclicked,itshall
pullupapopuppage.
6.1.4.9.1.5. Theusershallthenbeabletoviewfromthe
popuppagethethreadcontributionsmade
bytheuser.
6.1.4.9.1.6. Thethreadsshallbeorganizedfromnewest
contributiontotheoldest.
6.1.4.9.1.7. Theusershallhavetheabilitytoclickthe
Cancelbuttontoreturntothethread.

6.1.4.10. Data
6.3.4.10.1.Thedatabasecanstorethedatainthefollowing
tablesinthediscussionboarddatabase.
6.1.4.10.1.1. Thecontributionstableshallbethelink
betweenamanytomanyrelationshipwith
theusertableandthethreadtable.
6.1.4.10.1.1.1. Theuser_idshallreferencetheid
fromtheusertable.
6.1.4.10.1.1.2. Thethread_idshallreferencetheid
fromthethreadtable.

contributions

user_id

int

Referencesuser(id)

thread_id

int

Referencesthread(id)

23

6.1.5.

ReplyNotificationGroup3
6.1.5.1. Identification:ReplyNotification
6.1.5.2. Type:Process
6.1.5.3. Purpose
6.1.5.3.1. Thisentityexistsbecauseitisessentialforauserto
bealertedwhensomeonehasrepliedtotheirpost.
Byreceivingareplynotificationauserwillbeable
toquicklyrespondtotheirresponses,creatinga
friendly,cooperativeenvironment.

6.1.5.4. Function
6.1.5.4.1. Whenauserreceivesaresponsetoaposttheywill
bealertedintwoways:iftheuserisloggedin,a
temporaryalertwillappearontheirscreenalerting
themofareply,theywillalsoreceiveanew
notificationinthenotificationareathatwhen
clickedwilltakethemtothespecificdiscussion
board.

6.1.5.5. Subordinates
6.1.5.5.1. Thisentitywillprovidetwointerfacemodulesfor
theusertointeractwith.Thefirstisapopup
notificationthatwillappearinthebottomright
corneroftheirwebbrowser,thisiscalledapopup
notificationandwillbeasmallrectanglewith
roundededgesthatstates,Notification:userxhas
repliedtoyourpostExamplePost.Thesecond
modulewillsimplybeanotificationthatappears
withtheglobalnotifications.

6.1.5.6. Dependencies
6.1.5.6.1. Thisentityisdependentonthepostentity.Whena
postissubmittedthereplynotificationentitywill
immediatelynotifythepostauthorthataresponse
hasbeenpostbymeansofthedesktopnotification
aswellasaglobalnotificationarea.

24

6.1.5.7. Interface
6.1.5.7.1. Theonlyentitythatinteractswiththisentityisthe
globalnotificationarea.Oncethereplynotification
isread,theglobalnotificationareawillreflectthis
changeandmarkthenotificationasread.

6.1.5.8. Resources
6.1.5.8.1. Thisprocesswillnotrequireanyadditional
resourcesthanarerequiredforthecurrent
discussionboardsystem.

6.1.5.9. Processing
6.1.5.9.1. Thereplynotificationentitywillbeinvokedoncea
replyhasbeenmadetoanauthorspost.Atthis
pointintimeitwillsendtwonotificationstothe
author,onebrowserpopup(iftheuserislogged
in),andanotificationintheglobalnotification
area.

6.1.5.10. Data
6.1.5.10.1. PostIdtheIDofthepostinthedatabase
AuthorIdtheIDofthepostauthorinthedatabase
PostTitlethetitleofthepostforthenotification

6.1.6. UpdatedConclusionNearOriginalPostGroup3

6.1.6.1. Identification:PrioritizedConclusion
6.1.6.2. Type:Process
6.1.6.3. Purpose
6.1.6.3.1. Thepurposeofthisentityistoprovideuserswith
aneasytofindconclusiontoapostthread.This
willreducetheamountoftimeusersspendsifting
throughpostresponseslookingfortheconclusion.

6.1.6.4. Function
6.1.6.4.1. Thisentitywillplacethebestconclusionreply
(votedonbyusers)directlyunderneaththeoriginal
post.Userswillvoteonresponsesandtheresponse
withthemostvoteswillbepostedthere.Userswill
25

havetheoptiontohidetheprioritizedconclusionat
will.

6.1.6.5. Subordinates
6.1.6.5.1. Thisentitywillusethestandardreplyentity.
Essentiallythebodyofthemostvotedpostwill
appearinanewreplyentitydirectlybeneaththe
post.

6.1.6.6. Dependencies
6.1.6.6.1. ThisentitywillbedependentontheVoting
Capabilityentityasitwillrequireuserstovoteon
thebestconclusion.Itwillalsobedependedonthe
replyentityasitwilluseitasawrapper.

6.1.6.7. Interface
6.1.6.7.1. Theinterfacewillmimicthereplyentity.

6.1.6.8. Resources
6.1.6.8.1. Thisprocesswillnotrequireanyadditional
resourcesthanarerequiredforthecurrent
discussionboardsystem.

6.1.6.9. Processing
6.1.6.9.1. Votesonthebestconclusionwillbetotaled,the
bodyofthereplythathasthemostvoteswillbe
copiedtothefirstreplyonthepost.Allsubsequent
replieswillbelistedbelow.

6.1.6.10. Data:
6.1.6.10.1. ReplyIdIDofthepostinthedatabase
6.1.6.10.2. ReplyBodythetextualbodyofthereplyfromthe
database
6.1.6.10.3. VoteCountthenumberofvotesthereplyhas

6.1.7. VotingGroup3

6.1.7.1. Identification:VotingCapability

6.1.7.2. Type:Process
26

6.1.7.3. Purpose
6.1.7.3.1. Thepurposeofthisprocessistofacilitatetheactof
voting,whichissometimesdoneforclass
groupassignments.
6.1.7.3.2. Thiswouldfacilitatetheprocessofcountingthe
resultsastherewouldbenoneedtomanuallycount
thevotes.
6.1.7.3.3. Theprocesswouldmakeitmoreconvenientforthe
usertotracktheprogressofthevoteastheresults
aredisplayedtotheparticipantsautomatically
duringthevotingperiodwithoutrequiringanyone
torepeatedlyupdatetheresultbyhand.

6.1.7.4. Function
6.1.7.4.1. Thisprocessprovidesaninterfacethatallowsthe
usertoselectoneofanumberofoptionswithout
havingtocreateanewpostonadiscussionthread.
6.1.7.4.2. Auserwillbecapableofdesignatingapostasa
votepost,aspecialtypeofpostthatallows
membersoftheclasstoselectoneoftheprovided
options.
6.1.7.4.3. Thepostitselfdisplaysthesubjectofthevote,the
options,andtheresultsforeachoption(acountof
thosewhohavevotedforthatoption)

Figure6.3.7.4Votepostexample

27

6.1.7.5. Subordinates
6.1.7.5.1. Theprocessofcreatingavotepost(aspecialtype
ofpostthatallowsmembersoftheclasstoselect
oneoftheprovidedoptions.)
6.1.7.5.2. Theprocessofplacingavotebyselectingoneof
theoptionsinthevotepostandthenclickingthe
votebutton.
6.1.7.5.3. Theprocessofreadingvotedata(fromthe
discussionboarddatabase)specifictoanyone
votepost.
6.1.7.5.4. Theprocessofdeterminingwhetherauserhas
alreadyplacedavoteinaspecificvotepost.
6.1.7.5.5. Theprocessofwritingvotedata(tothediscussion
boarddatabase)specifictoanyonepost.
6.1.7.5.6. Theprocessofoverwritingvotedata(tothe
discussionboarddatabase)iftheuserhasalready
placedavotepreviously.

6.1.7.6. Dependencies
6.1.7.6.1. Thisprocessdependsonthediscussionboards
currentprocessofcreatingandstoringapost,asthe
votepostwillbeaslightmodificationofthe
existingprocess.
6.1.7.6.2. Theremustbeaccesstoadatabase,allowingthe
processtoreadfromandwritetoit.
6.1.7.6.3. Userinteractionwiththeprocesswilldependonthe
processesofreceivinginputthroughtheweb
interface,aswellasthatofdisplayinginformation
onthescreentotheuser.

28

29

6.1.7.7. Interface
6.1.7.7.1. Theuserfirstinteractswiththisprocessbyselecting
thevotepostcheckbox(withinthenewpostinput
area)afterchoosingtocreateapost.The
communicationbetweentheuserandtheprogram
hereismadepossiblethroughuseofcommonweb
browserinterfacecomponents.
6.1.7.7.2. Theuseragaincommunicateswiththeprogram
throughthebrowserinterfacebyinputtingthe
informationneededtocreateavotepost:namely
thesubjectofvotingandtheoptions.

30

6.1.7.7.3.

Thecreationofthevotepostcanbeterminatedby
clickingtheCancelbutton,doingsowillcausethe
inputareatodisappear.
6.1.7.7.4. Theprocesswillaccessthedatabasebyretrieving
voteresultsaswellasthevotesubjectandoptions
tobedisplayed.
6.1.7.7.5. Theprocesswilladdtothedatabasenewlycreated
votesubjectsandoptions,aswellaseachusers
firstvote(alongwithhisorheruserIDforunique
identification)onanygivenvotepost.
6.1.7.7.6. Theprocesswillmodifythedatabasewhenauser
changeshisorhervoteafterhavingalreadyvoted.
Theprogramcanrecognizewhetherornottheuser
hasvotedinanygivenpostbysearchingforthe
usersIDinthedatabase.

6.1.7.8. Resources
6.1.7.8.1. Thisprocesswillnotrequireanyadditional
resourcesthanarerequiredforthecurrent
discussionboardsystem.

6.1.7.9. Processing
6.1.7.9.1. Theprocessshallbeinitiatedwhenauserchecksa
votepostcheckboxduringthecreationofapost.
6.1.7.9.1.1. Thecreationofapostreferstowhenthe
userclicksreplyonsomeonespost.
6.1.7.9.1.2. Theoriginalpostcreationboxshallbe
replacedwiththevotepostcreationbox.
6.1.7.9.1.3. Forthisboxthereshallbeareastoreceive
userdefinedoptions,ratherthanthepost
bodyinputareaseenintheoriginalpost
creationbox.
6.1.7.9.1.4. Bydefaultthereshallbetwoareasinwhich
theusercantypeanoption.
6.1.7.9.1.5. UponclickingtheAddOptionbutton,
anotherareaforinputtinganoptionshall
appearbelowtheothers.
6.1.7.9.1.6. UponclickingtheRemoveOptionbutton,
thesystemshallremovethelastoption.
31

6.1.7.9.1.6.1.

Thisshallonlyworkifthereareat
leastthreeoptionsavailablebefore
thetransaction.
6.1.7.9.1.6.2. Iftherearenotatleastthreeoptions
available,thesystemshalldisplaya
notificationtotheusersaying:
Theremustbeatleasttwooptions
6.1.7.9.1.7. Theusershallfillintheavailableareas.
6.1.7.9.1.8. UponclickingthePostbutton(atthe
bottomofthepostcreationbox)thesystem
shallverifytoseethatalloftheinputareas
havebeenfilled.
6.1.7.9.1.9. Ifanyoftheboxeshavenotbeenfilled,the
systemshalldisplayanotificationtothe
userasitdoesforthecurrentsystem.
Howeveraddedtothelistoferrorswillbe
Alloptionsmustbefilled.
6.1.7.9.1.10. Iftheinputshavebeenfilledcorrectly,the
systemshalladdanewvoteposttothe
database,includingthevotesubjectandthe
options.
6.1.7.9.1.11. Ifthereisanerroraddingtheoptionstothe
database,theusershallbenotifiedwiththe
followingmessageinthesameplacewhere
errormessagesaredisplayedintheexisting
discussionboardsystem:Therewasan
errorsavingthevotepost,pleasetryagain
later
6.1.7.9.1.12. Alsouponfailuretowritetothedatabase,
thesystemshallremainintheeditingstate
thatitwasinbeforeclickingthePost
button.
6.1.7.9.1.13. Thesystemshallremainintheeditingstate
untiloneofthefollowingoccurs:clicking
Postsuccessfullywritestothedatabase,
theuserclicksCancel,ortheuser
performssomeotheractionbythebrowser
thatwouldnavigateawayfromthe
discussionboard.
32

6.1.7.9.2.

Uponsuccessfullywritingtothedatabase,the
systemshallreturntothemaindiscussionboard
process,thenewlycreatedpostshallbeshownjust
asitwouldbefortheexistingsystem.
6.1.7.9.2.1. Thevotepostshallbedistinguishedfroma
normalpostbydisplayingthewordVote
abovethequestion.
6.1.7.9.2.2. Thequestionshallappearasthetitleina
normalpost.
6.1.7.9.2.3. Everyoptionshallappearbelowthetitle,
oneoptionperline.
6.1.7.9.2.3.1. Everyoptionshallbeprecededby
thenumberofvotesthathavebeen
castforthatoption,aswellasa
buttonthatcanbeclickedtoselect
anoption.
6.1.7.9.2.3.1.1. Thebuttonshallhavea
uniqueletteridentifyingthe
option,startingwithaasthe
first.
6.1.7.9.2.3.1.2. Iftherearemorethan26
options,the27thoptionshall
beidentifiedwithaa,the
28thbyab,andsoforth
continuingthepattern.
6.1.7.9.3. Oncethevoteposthasbeencreated,alluserswill
beabletoparticipateinthevotebyfirstclickingthe
buttonnexttoanoptionandthenclickingthe
Votebuttonatthebottomofthepost.
6.1.7.9.3.1. Clickingthebuttonnexttoanoptionshall
changetheimageofthebuttonsothatitis
distinguishablefromthosewhichhavenot
beenselected.
6.1.7.9.3.2. UponclickingtheVotebutton,thesystem
shallverifythatoneoftheoptionshasbeen
selected.
6.1.7.9.3.2.1. Iftheuserhasnotyetselectedan
option,anotificationshallappear,
33

saying:Pleasefirstselectanoption
byclickingthebuttonnexttoit.
6.1.7.9.3.3. Iftheuserhadselectedoneoftheoptions
beforeclickingVotethesystemshall
proceedtoverifyiftheuserhadvoted
beforeinthespecifiedvotepost.
6.1.7.9.3.3.1. Thesystemshallaccess(fromthe
database)alistofuserswhohave
participatedinthegivenvotepost.
6.1.7.9.3.3.2. IftheusersIDisfoundinthatlist,
thesystemshallaccesstheprevious
votestoredbythatuserandshall
temporarilystorethevalue.
6.1.7.9.3.4. Iftheuserhadnotplacedavote,thesystem
shalladdtheusersvoteaswellastheusers
IDtothedatabase.
6.1.7.9.3.5. Iftheuserhadalreadyplacedavote,the
systemshallmodifythevotecount,
removingtheusersoldvote(asstored
previously)andaddingthenewvote.
6.1.7.9.3.6. Ifthereisafailureaddingtheinformationto
thedatabase,thesystemshallnotifytheuser
withthefollowingmessage:Therewasan
errorreceivingyourvote,pleasetryagain
later.
6.1.7.9.3.7. Uponfailuretoaccessthedatabase,the
systemshallreturntothestatethatitwasin
immediatelyprevioustotheclickofthe
Votebutton.
6.1.7.9.4. Ifthevoteissuccessfullyplacedandstored,the
systemshallupdatetheviewtoshowthenewvote
countforeachoptioninthepost.
6.1.7.9.4.1. Theoptionwiththemostvotesshallbe
distinguishablebydisplayingagreensquare
aroundthenumber.
6.1.7.9.4.1.1. Ifmultipleoptionshavethesame
count,tiedforthemostvotesbutnot
withthevalueof0,eachofthose
optionsshallhaveayellowsquare
34

aroundthecount.

6.1.7.10. Data
6.1.7.10.1. Thedatabasecanstorethedatainthefollowing
tablesinthediscussionboarddatabase.
6.1.7.10.1.1. Thevote_poststableistokeeptrackof
eachindividualvotepost,storingthe
subjectthatusersaretovotefor.Eachpost
hasauniqueID.
6.1.7.10.1.1.1. TheIDshallbetheprimarykeyand
shallbeautomaticallyincremented.
6.1.7.10.1.1.2. Thesubjectshallnotacceptavalue
ofnull.

vote_posts

id

int

subject

text

Figure6.3.7.10.1.1Thevote_postsdatabasetableforthevotingprocess.

6.1.7.10.1.2.

Thevote_optionstablestoresallofthe
optionsofallofthevotepostsinthe
system.Eachoptionhasthecontentofthe
option,auniqueID,aswellasanassociated
votepost.Therewillbemorethanone
optionassociatedwitheachvotepost.
6.1.7.10.1.2.1. Theidcolumnshallbeaprimary
key,automaticallyincrementedupon
creation.
6.1.7.10.1.2.2. Theoptioncolumnshallnotallow
avalueofnulltobestored.
6.1.7.10.1.2.3. Thevote_postcolumnshallnot
receiveanumberthatdoesnot
correspondtotheIDvalueofan
35

entryinthevote_poststable.

vote_options

id

int

option

text

vote_post

int

Referencesvote_posts(id)

Figure6.3.7.10.1.2Thevote_optionsdatabasetableforthevotingprocess.

6.1.7.10.1.3. Theuser_votestablekeepstrackofallof
thevotesmadeinalloftheposts.Eachvote
references(byforeignkey)anoptionfrom
theoptionstableaswellasthepostwith
whichitisassociated.Theuser_idisalso
storedsothatthesystemcankeeptrackof
whohasalreadyplacedvotesforagiven
post.
6.1.7.10.1.3.1. Thepost_idcolumnshallnot
acceptanumberthatdoesnot
correspondtotheidvalueofanentry
inthevote_poststable.
6.1.7.10.1.3.2. Theuser_idcolumnshallnot
acceptavalueofnull.
6.1.7.10.1.3.3. Theuser_votecolumnshallnot
receiveanumberthatdoesnot
correspondtotheIDvalueofan
entryinthevote_optionstable.

user_votes

post_id

int

Referencesvote_posts(id)

user_id

text

user_vote

int

Referencesvote_options(id)
36

Figure6.3.7.10.1.3Theuser_votesdatabasetablestructureforthevotingprocess

6.1.7.10.1.4. Forsimplicity,thetablesareshownasifthis
wereastandaloneprocesshoweverthere
willlikelybeothercomponentstothetable
neededinorderforthediscussionboard
systemtoworkwiththenewpostsasit
currentlydoeswiththetraditionalposts.
Therefore,theshowntablesmaybeseenas
includingcolumnsthatmaybeaddedtothe
system,whetherindependentlyoras
additionstoexistingtables.
6.1.7.10.1.5. Theforeignkeyrelationshipbetweenthe
tablesissummarizedwiththefollowing
image.

Figure6.3.7.10.1.5Databaseforeignkeyrelationshipforthevotingprocess

6.1.8. ThankPosts(Group3JonnyDone)

6.1.8.1. Identification:Capabilitytothankposts
6.1.8.2. Type:Process
6.1.8.3. Purpose
6.1.8.3.1. Thepurposeofthisprocessistohelpthemost
usefulandrelevantpoststostandoutsothat
studentscanmoreeasilyfindtheinformationthat
theyarelookingfor.
37

6.1.8.3.2.

Oftenquestionsarepostedonthediscussion
boardssomeanswersmaybemoreusefulthan
others.
6.1.8.3.2.1. Somepostsmaynotevenhaveanswers,
suchasthosewithclarifyingquestions.
6.1.8.3.2.2. Someanswersmayhavebeencreatedby
studentswhomisunderstoodthequestion.
Someanswersmaybespeculations,whose
conclusionswereunclearwhenposted.
Whenothersareabletoputapostedidea
intopractice,theymayfindittobea
valuablepost.
6.1.8.3.2.3. Somepostssimplyoughttobemadeto
standoutbecauseoftheirqualitycontent.
6.1.8.3.3. Studentscanshowandreceiveappreciationfor
effortswithouthavingtoclutterthediscussion
boardwithmoreposts.
6.1.8.3.3.1. Thispositivereinforcementmayencourage
studentstoparticipateinthediscussion
boards.
6.1.8.3.4. Professorsmayofferanextracreditincentiveto
thosewhocreatethemostusefulposts,encouraging
qualitycontributionstotheclass.

6.1.8.4. Function
6.1.8.4.1. Auserclicksthethankbuttonatthebottomofa
post.
6.1.8.4.2. Oneisaddedtothethankcount(anumbernextto
thethankbutton)aslongasthatpersonhasnot
alreadythankedthatpost.

6.1.8.5. Subordinates
6.1.8.5.1. Theprocessofaccessingthedatabasetodetermine
thenumberofthanksmadeforeachpost.
6.1.8.5.2. Theprocessofaccessingthedatabasetodetermine
whetherauserhasalreadythankedacertainpost.
6.1.8.5.3. Theprocessofmodifyingthedatabasetoupdatethe
numberofthanksforapost.
38

6.1.8.5.4.

Theprocessofupdatingtheviewsothattheuser
canseethatthethankwascounted.

6.1.8.6. Dependencies
6.1.8.6.1. Thisprocessdependsonthediscussionboard
havingpostssothatthisfeaturecanbeaddedto
them.
6.1.8.6.2. Theremustbeaccesstoadatabase,allowingthe
processtoreadfromandwritetoit.
6.1.8.6.3. Userinteractionwiththeprocesswilldependonthe
processesofreceivinginputthroughtheweb
interface,aswellasthatofdisplayinginformation
onthescreentotheuser.

6.1.8.7. Interface
6.1.8.7.1. Theusershallinteractwiththesystembyclicking
thethankbuttonthatappearsonapost.The
communicationbetweentheuserandtheprogram
39

hereismadepossiblethroughuseofcommonweb
browserinterfacecomponents.
6.1.8.7.2. Theprocesswillaccessthedatabaseinorderto
determinewhetherornotauserhasalready
thankedapost.
6.1.8.7.3. Theprocesswillmodifythedatabaseinorderto
updatethethankcountforagivenpost.
6.1.8.7.4. Theprocesswilladdtheusersuniqueidentifierto
thedatabasetoshowthatheorshehasthankedthat
post.

6.1.8.8. Resources
6.1.8.8.1. Thisprocesswillnotrequireanyadditional
resourcesthanarerequiredforthecurrent
discussionboardsystem.

6.1.8.9. Processing
6.1.8.9.1. Theprocessshallbeinitiatedwhenauserclicksthe
thankbutton.
6.1.8.9.2. ThesystemshallsearchfortheusersIDinthepart
ofthedatabaseassociatedwiththegivenposttosee
ifthegivenuserhasalreadythankedthatpost.
6.1.8.9.3. Iftheuserhasalreadythankedthepost,theprocess
willendandthediscussionboardwillreturntoits
normalprocess.
6.1.8.9.4. Iftheuserhasnotthankedthepost,thesystem
shallaccessthethankcountfromthedatabase,
incrementitbyone,andmodifythepreviousvalue
byreplacingitwiththenewvalue.
6.1.8.9.5. Thediscussionboardwillthenreturntoitsnormal
process,displayingthepostwiththeupdatedthank
count.

6.1.8.10. Data
6.1.8.10.1. Foreachpost,thediscussionboarddatabasewill
needtostorealistoftheuserswhohavethanked
thepost.

40

6.1.8.10.2.

Itwillalsostoreacountofthanksforeachpost,so
thatthenumbercanbeeasilyaccessedwithout
havingtocounttheuserseverytime.
6.1.8.10.3. Thesearetobeassociatedwiththepostalongwith
thedatathatisassociatedwitheachpostinthe
currentdiscussionboardsystem.

6.1.9. HashtagsGroup1

6.1.9.1. Identification
6.1.9.1.1. Hashtaginclusion

6.1.9.2. Type:Process

6.1.9.3. Purpose
6.1.9.3.1. Thepurposeofthisfeatureistoallowuserstotag
postswithhashtags.
6.1.9.3.2. Thiswillallowrelevanttopicstobefilteredthrough
moreeasilywithclickablehashtags.

6.1.9.4. Function
6.1.9.4.1. Ausermayaddahashtagtoapostbyplacingthe
poundsign#infrontofawordorphrasewithout
spaces.
6.1.9.4.2. Thepostwillrecognizeitasahashtagandturnit
intoaclickablesearchlink.
6.1.9.4.3. Oncethepostissubmitted,usersmayclickonthe
hashtagtosearchthroughallpostsforthatsame
hashtag.
6.1.9.4.4. Thesystemwilldisplayalistofpostscontaining
thathashtagwiththemostrecentlistedatthetop.

6.1.9.5. Subordinates
6.1.9.5.1. Aprocesstowritepostsonthediscussionboard.
6.1.9.5.2. Aprocesstodisplaythepostswrittenonthe
discussionboard.
6.1.9.5.3. Aprocesstosearchpostswithinmultiple
discussionboards.

41

6.1.9.6. Dependencies
6.1.9.6.1. Thisprocessdependsonthediscussionboard
havingthecapabilitytocreateanewpost.
6.1.9.6.2. Theremustbeaconnectionwiththedatabaseto
saveandretrievepoststothediscussionboard.
6.1.9.6.3. Thisprocessmustalsobeabletoaccessallofthe
postsonalloftheclassdiscussionboardstosearch
forpostswiththesamehashtag.

Figure6.3.91SequenceDiagramforHashtagCreation

42

Figure6.3.92SequenceDiagramforHashtagSearching

6.1.9.7. Interface
6.1.9.7.1. Auserfirstinteractswiththesystembyclickingthe
buttontocreateanewpost.
6.1.9.7.2. Thesystemthendisplaysapostboxfortheuser.
6.1.9.7.3. Theuserthentypestheirmessageinthepostbox,
includingapoundsigntocreatethehashtag.
6.1.9.7.4. Theuserthenhitsthepostbuttontosubmitthepost
tothedatabase.
6.1.9.7.5. Thesystemconvertsthehashtagintoaclickable,
searchablelink.
6.1.9.7.6. Thedatabasestoresthepostanddisplaysthepost
onthediscussionboard.

6.1.9.8. Resources
6.1.9.8.1. Thisprocesswillnotrequireanyadditional
resourcesthanarerequiredforthecurrent
discussionboardsystem.

6.1.9.9. Processing
6.1.9.9.1. Theprocessbeginswhentheuserstartsanewpost
onthediscussionboard.
6.1.9.9.2. Thesystemshalldisplayablankpostboxforthe
usertoentertheirmessage.

43

6.1.9.9.3.

6.1.9.9.4.
6.1.9.9.5.
6.1.9.9.6.

Thesystemshallallowuserstoaddhashtagstothe
contentoftheirpostbyrecognizingwordswritten
directlyafterapoundsign#asahashtag.
Theusermustthensubmitthepostforprocessing.
Thesystemshallconvertthehashtagintoa
clickable,searchablelink.
Thesystemshallsavethepostinthedatabaseand
displaythemessageonthediscussionboard.

6.1.9.10. Data
6.1.9.10.1.
6.1.9.10.2.

Theuserspostshallbesavedinthedatabase.
Theusershashtagshallbesavedaspartofthe
message.
6.1.9.10.3. Theusershashtagshallalsobesavedinahashtag
databasewithalinktotheposttomakesearching
quicker.

6.1.10. SearchContentGroup1

6.1.10.1. Identification:Searchpostcontentwithoutexpansion

6.1.10.2. Type:Process

6.1.10.3. Purpose
6.1.10.3.1. Thisfeaturewillallowuserstosearchallofthe
contentsofathreadwithoutexpandingeach
individualpost.
6.1.10.3.2. Thiswillallowtheusertogetmoreaccuratesearch
resultsandtogetthemmoreeasily.

6.1.10.4. Function
6.1.10.4.1. Ausercantypeasearchtermintothesearchbox
providedatthetopofthediscussionpage.
6.1.10.4.2. Thesystemwillperformasearchthroughallofthe
postsinthediscussionboardincludingvisibleand
collapsedposts.
6.1.10.4.3. Thesystemwilldisplayalistofpostscontaining
thatsearchtermsortedbydatewiththemostrecent
postlistedatthetop.
44

6.1.10.5. Subordinates
6.1.10.5.1. Aprocesstodisplaypostswritteninthediscussion
board.
6.1.10.5.2. Aprocesstosearchpostswritteninthediscussion
board.

6.1.10.6. Dependencies
6.1.10.6.1. Thisprocessdependsonthesystemhavingaccess
tothedatabase.
6.1.10.6.2. Messagesmustbestoredinthedatabase.
6.1.10.6.3. Searchesmustbeperformedatthedatabaselevelin
ordertosearchthroughallvisibleandcollapsed
posts.

Figure6.3.101SequenceDiagramforContentSearching

6.1.10.7. Interface
6.1.10.7.1. Theuserstartstheinteractionwiththesystemby
enteringasearchtermintotheprovidedsearchbox
andclickingthesearchbutton.
6.1.10.7.2. Thesystemreceivesthesearchtermandsorts
throughmessagesinthedatabasetofindposts
containingthatsearchterm.
6.1.10.7.3. Thesystemdisplaysthelistofsearchresultsonthe
discussionboardfortheuser.

45

6.1.10.8. Resources
6.1.10.8.1. Thisprocesswillnotrequireanyadditional
resourcesthanarerequiredforthecurrent
discussionboardsystem.

6.1.10.9. Processing
6.1.10.9.1. Thesystemshalldisplayasearchboxatthetopof
thediscussionboardalongwithasearchbutton
nexttothebox.
6.1.10.9.2. Theusermaytypeasearchtermintothesearchbox
andclickthesearchbuttontoperformthesearch.
6.1.10.9.3. Thesystemshallsearchthroughpostsinthe
databasetofindanypostthatcontainsthematching
phrase.
6.1.10.9.4. Thesystemshalldisplayalistofpoststhatcontain
thesearchterm.

6.1.10.10. Data
6.1.10.10.1. Allpostsshallbesavedinthedatabaseforquick
searchingcapabilities.
6.1.10.10.2. Postsshallbedisplayedonthediscussionboard.
6.1.10.10.3. Searchtermswillbesavedasatemporaryvariable
thatwillbedeletedoncethesearchisfinished.

6.1.11. ReferencePersonsGroup1

6.1.11.1. Identification:Referenceanotheruser

6.1.11.2. Type:Process

6.1.11.3. Purpose
6.1.11.3.1. Thepurposeofthisfeatureistoallowtheuserto
directtheirposttoaspecificperson.
6.1.11.3.2. Thisfeaturewillallowforbettercommunicationas
thepersonbeingreferencedwillreceivea
notificationthatsomeonehasaddressedthemina
post.

6.1.11.4. Function
46

6.1.11.4.1.
6.1.11.4.2.
6.1.11.4.3.

6.1.11.4.4.
6.1.11.4.5.

6.1.11.4.6.
6.1.11.4.7.

Ausercanaddareferencetoanotheruserbytyping
anatsymbolfollowedbyaleftparenthesis@(.
Theusercanthentypethenameoftheuserthey
wouldliketoreferenceinthepost.
Thesystemwillpopulatealistofsuggestedusers
thatmatchthetypednameastheuseristypingin
thename.
Theusercanthenselectthenamefromthe
populatedlistortypeoutthefullname.
Iftheuserwouldliketoreferenceanotheruser,they
canseparatethembytypingacommabeforetyping
thenextusersname.
Theusermustfinishthereferencebyclosingitwith
arightparenthesis).
Oncetheposthasbeensubmitted,thesystemwill
sendanotificationtothetaggeduser(s)referencing
theposttheyhavebeentaggedin.

6.1.11.5. Subordinates
6.1.11.5.1. Theprocesstowritepoststothediscussionboard.
6.1.11.5.2. Theprocesstodisplaypostswrittenonthe
discussionboard.
6.1.11.5.3. Theprocesstoaccessalluserswithaccesstothat
discussionboard.
6.1.11.5.4. Theprocesstodisplaytheuserswithaccesstothat
discussionboard.
6.1.11.5.5. Theprocesstosendnotificationstousers.

6.1.11.6. Dependencies
6.1.11.6.1. Thesystemmusthaveaccesstothedatabasetosave
anddisplayposts.
6.1.11.6.2. Thesystemmusthaveaccesstothedatabaseto
searchforusers.
6.1.11.6.3. Thesystemmustbeabletosendnotificationsto
users.

47

Figure6.3.111SequenceDiagramforReferencingUsers

6.1.11.7. Interface
6.1.11.7.1. Theprocessbeginswhentheusercreatesanew
post.
6.1.11.7.2. Thesystemdisplaysanemptypostboxfortheuser
tocreatethepost.
6.1.11.7.3. Theuserstartsareferencetoanotheruserbytyping
@(followedbytheusersname.
6.1.11.7.4. Thesystemsearchesthedatabaseanddisplays
optionsofusersthatmatchtheenteredtext.
6.1.11.7.5. Theuserclicksontheusertheywishtoreference.
6.1.11.7.6. Theuserfinishesthereferencebytyping)and
clickingpost.
48

6.1.11.7.7.
6.1.11.7.8.
6.1.11.7.9.

Thesystemsavestheposttothedatabase.
Thesystemnotifiestheuserthathasbeentaggedin
thepost.
Thesystemdisplaysallpostsonthediscussion
board.

6.1.11.8. Resources
6.1.11.8.1. Thisprocesswillnotrequireanyadditional
resourcesthanarerequiredforthecurrent
discussionboardsystem.

6.1.11.9. Processing
6.1.11.9.1. Theusershallfirstclickthenewpostbuttonto
createanewpostinthediscussionboard.
6.1.11.9.2. Thesystemshalldisplayanemptypostboxforthe
usertotypetheirmessage.
6.1.11.9.3. Theusermayreferenceanotheruserinthepostby
typing@(followedbytheusersname.
6.1.11.9.4. Thesystemshallsearchthedatabaseforallusers
whohaveaccesstothatdiscussionboard.
6.1.11.9.5. Thesystemshallpopulatealistfortheuserthat
includesallnamesthatmatchthetypedname.
6.1.11.9.6. Theusermayclickonanamethatmatchestheuser
theywishtoreference.
6.1.11.9.7. TheusershallclickPosttosubmittheirpostand
reference.
6.1.11.9.8. Thesystemshallsavetheposttothedatabase.
6.1.11.9.9. Thesystemshallnotifythereferenceduserthatthey
havebeentaggedinadiscussionboardpost.
6.1.11.9.10. Thesystemshalldisplaythepostswrittenonthe
discussionboard.

6.1.11.10. Data
6.1.11.10.1. Thediscussionboardpostshallbesavedtothe
database.
6.1.11.10.2. Thedatabaseshalldisplaythepostsforthat
discussionboard.

49

6.1.11.10.3.

Thereferencednameshallbesavedinthedatabase
andtiedtothemessageitwasreferencedin.

6.1.12. EmailNotificationsGroup1

6.1.12.1. Identification:EmailNotifications
6.1.12.2. Type:Process
6.1.12.3. Purpose
6.1.12.3.1. Thepurposeofthisfeatureistoalertusersthrough
emailwhenanimportantposthasbeenmadesoas
toensurethateveryoneseesit.

6.1.12.4. Function
6.1.12.4.1. Ausercreatingoreditingapostwillbeableto
markthatpostasimportant.Doingsowillsendan
emailnotificationtoallusersofthatdiscussion
board,indicatingthatanimportantposthasbeen
made.
6.1.12.4.2. Anypostshallhavetheabilitytobemarkedas
important.
6.1.12.4.3. Theareainwhichapostisinputshallcontaina
buttonallowingtheusertoindicatethatthepostis
important.
6.1.12.4.4. Ifthisbuttonisclickedasecondtime(afterhaving
clickeditasimportant),thesystemwillrestorethe
statusofthemessagetobenotimportant.
6.1.12.4.5. Anemailnotificationshallbesenttoallusersof
thediscussionboardeverytimeapostissubmitted
afterhavingmarkedasimportant.
6.1.12.4.6. Theemailshallcontainthenameofthediscussion
topicandthreadaswellasalinktothepost.
6.1.12.4.7. Thesystemshallperformthesametaskswiththe
emailedlinkasitwouldwiththediscussionboard
pagelink.

6.1.12.5. Subordinates
6.1.12.5.1. Aprocessformarkingapostasimportant.

50

6.1.12.5.2.

6.1.12.5.3.

Aprocessforsendinganemailmessagetoallusers
ofadiscussionboardinwhichapostismarkedas
important.
Aprocessoflinkingtospecificdiscussionboard
posts

6.1.12.6. Dependencies
6.1.12.6.1. ThisprocessdependsontheILearnsystems
currentabilitytosendemails.
6.1.12.6.2. Thisprocessrequiresaccesstothedatabase,
allowingtheprocesstoreadfromandwritetoit.
6.1.12.6.3. Userinteractionwiththeprocesswilldependonthe
processesofreceivinginputthroughtheweb
interface,aswellasthatofdisplayinginformation
onthescreentotheuser.

Figure6.3.121Flowchartformarkingapostasimportant.

6.1.12.7. Interface
6.1.12.7.1. Theuserinteractswiththisprocessbyclickinga
MarkasImportantbuttonwhilecreatingor
editingthepost.

Figure6.3.122Diagramshowinguserinterfaceformarkingapostasimportant.

51

6.1.12.7.2.

6.1.12.7.3.

6.1.12.7.4.

Theuserinteractswiththisprocesswhenclickinga
linkwithintheiremailthatdirectsthemtoposts
withinthethreadmarkedasimportant.
Theprocesswillaccessthedatabasetoretrieve
emailaddressesandusersassociatedwitha
discussionboard.
Theprocesswillmodifythedatabasetomarkapost
asimportant.

6.1.12.8. Resources
6.1.12.8.1. Thisprocesswillnotrequireanyadditional
resourcesthanarerequiredforthecurrent
discussionboardsystem.

6.1.12.9. Processing
6.1.12.9.1. Theprocesswillbeinitiatedwhenauserclicksthe
markpostasimportantbuttonduringthecreation
oreditofapost.

6.1.12.10. Data
6.1.12.10.1. Thedatabasewillstoreanimportantflagoneach
post.
6.1.12.10.2. Thedatabasewillstoreallusersassociatedwitha
discussionboard
6.1.12.10.3. Thedatabasewillstorealogofwhichstudentswere
emailedforapostandwhen.

6.1.13. SingleScreenAccessGroup1

6.1.13.1. Identification:SingleScreenAccess
6.1.13.2. Type:Process
6.1.13.3. Purpose
6.1.13.3.1. Thepurposeofthisfeatureistoreducetheamount
oftimeittakestoread,create,orreplytopostson
discussionboards.
6.1.13.3.2. Timespentondiscussionboardswillbelessenedas
userswillnothavetoclickbackandforthbetween
multiplepagestoreadinitialpostsandresponse
posts.
52

6.1.13.3.3.

Userswillbeabletomaketheirinitialpostand
replytootherclassmemberspostsfromthesame
page,makingtheprocessfasterandsimpler.

6.1.13.4. Function
6.1.13.4.1. Theuserwillbeabletoselectatopicfromthe
ILearndiscussionboardpageandtheywillhave
accesstoallposts(includinginitialpostsandany
replyposts)relatedtothetopic
6.1.13.4.2. Fromthesamepagetheywillalsobeabletomake
theirowninitialpost,orreplytoanexistingpost.
6.1.13.4.3. Thesystemshallallowtheusertoseeallexisting
posts(inallthreadsrelatedtoatopic)fromthe
topicpage.
6.1.13.4.4. Thesystemshallallowtheusertoexpandany
numberofthreadsrelatedtoasingletopicfromthe
topicpage.
6.1.13.4.5. Allcommentswillbeinacollapsedstateby
default.
6.1.13.4.6. Whenapostisexpandedanycommentsbelowthe
expandedpostwillbepushedfurtherdownthepage
tomakeroomfortheexpandedpost.
6.1.13.4.7. Onceexpandedapostwillremainexpandeduntil
theusercollapsesit.
6.1.13.4.8. Thesystemshallallowtheusertocollapseany
numberofthreadsrelatedtoasingletopicfromthe
topicpage.
6.1.13.4.9. Thesystemshallallowtheusertomakeanewpost
onthetopicpagewithouthavingtonavigatetoa
newpage.
6.1.13.4.10. Postsundereachtopicwillbeorganizedwiththe
mostrecentpostatthetopandolderpostsbeneath,
withonlytheexceptionofimportantorliked
postsabovethemostrecentpost.
6.1.13.4.11. Thesystemshallallowtheusertoreplytoan
existingpostfromthetopicpagewithouthavingto
navigatetoanewpage.
6.1.13.4.12. Theuserwillhavetheabilitytoreplytoapostonly
whentheposthasbeenexpanded.
53

6.1.13.4.13.

6.1.13.4.14.

Thesystemshallrememberthearrangementof
threads(whichoneswerecollapsedandwhich
wereexpanded)whentheuniqueuserleavesthe
page.
Thesystemshallrestorethearrangementofthreads
(whichoneswerecollapsedandwhichwere
expanded)whentheuniqueuserloadsthepage
afterhavingpreviouslyarrangedit.

6.1.13.5. Subordinates
6.1.13.5.1. Theprocessofdisplayingallpostswithinathread
onasinglepage.
6.1.13.5.2. Theprocessofaddinganewpost.
6.1.13.5.3. Theprocessofrespondingtoapost.
6.1.13.5.4. Theprocessofexpandingandcollapsingathread.
6.1.13.5.5. Theprocessofsortingpostsbyimportant,liked,
andage.
6.1.13.5.6. Theprocessofstoringthecollapsedandexpanded
stateofdiscussionthreadsforeachuser.
6.1.13.5.7. Theprocessofrestoringthecollapsedand
expandedstateofdiscussionthreadsforeachuser.

6.1.13.6. Dependencies
6.1.13.6.1. Thisprocessdependsontheabilitytoviewthreads
andposts
6.1.13.6.2. Thisprocessdependsontheabilitytocollapseand
expandadiscussionthread.
6.1.13.6.3. Thisprocessdependsontheabilitytoaddanew
post.
6.1.13.6.4. Thisprocessdependsontheabilitytostoreand
restorethecollapsedandexpandedstateof
discussionthreads.

54

Figure6.3.131Flowchartforviewingdiscussionboardonasinglepage

6.1.13.7. Interface
6.1.13.7.1. Theuserwillbeabletoselectatopicfromthe
ILearndiscussionboardpageandtheywillhave
accesstoallposts(includinginitialpostsandany
replyposts)relatedtothetopic
6.1.13.7.2. Fromthesamepagetheywillalsobeabletomake
theirowninitialpost,orreplytoanexistingpost.
6.1.13.7.3. Theuserwillbeabletoexpandorcollapsea
portionofathreadoranentirethread.The
collapsedorexpandedthreadswillberemembered
peruser.

55

Figure6.3.132Diagramofuserinterfacetoviewdiscussionboardonasinglepage

6.1.13.8. Resources
6.1.13.8.1. Thisprocesswillnotrequireanyadditional
resourcesthanarerequiredforthecurrent
discussionboardsystem.

6.1.13.9. Processing
6.1.13.9.1. Theprocesswillbeinitiatedwhenauserclicksa
linktoadiscussionboardtopic.

6.1.13.10. Data
6.1.13.10.1. Thedatabasewillstoreacollapsedorexpanded
stateforeachcommentthread.
6.1.13.10.2. Thiscollapsedorexpandedstatewillbestored
uniquelyforeachuser.

6.1.14. RemoveunreaddiscussionsboxGroup1

6.1.14.1. Identification:Removeunreaddiscussionsbox
6.1.14.2. Type:Process
6.1.14.3. Purpose
56

6.1.14.3.1.
6.1.14.3.2.

Thepurposeofthisfeatureistomakethehomepage
cleanerandmakeimportantinformationstandout.
Theunreaddiscussionsfeatureisarbitraryand
doesntaidintheuseofdiscussionboards.

6.1.14.4. Function
6.1.14.4.1. TheILearnhomepagewillnolongerdisplaythe
unreaddiscussionsboxassociatedwiththecurrent
discussionboardsystem.
6.1.14.4.2. TheILearnhomepageMyCoursessectionshall
havenomentionofunreaddiscussionposts.

6.1.14.5. Subordinates
6.1.14.5.1. Nosubordinates

6.1.14.6. Dependencies
6.1.14.6.1. Nodependencies

6.1.14.7. Interface
6.1.14.7.1. ThischangewillremovetheUnreadDiscussion
Postsnotificationshowninthefollowingimage:

Figure6.3.141Diagramshowingcurrentuserinterface

Theupdatedhomepagewilllooklikethisimage:

Figure6.3.142Diagramshowingproposeduserinterface
57

6.1.14.8. Resources
6.1.14.8.1. Thisprocesswillnotrequireanyadditional
resourcesthanarerequiredforthecurrent
discussionboardsystem.

6.1.14.9. Processing
6.1.14.9.1. Noprocessingrequiredforthisprocess.

6.1.14.10. Data
6.1.14.10.1. Thisprocesswillrequirenodatachangesasthe
readstateofapostwillstillberequired.

6.1.15. ListofwhocommentedonathreadGroup1

6.1.15.1. Identification:Listofwhocommentedonathread
6.1.15.2. Type:Process
6.1.15.3. Purpose
6.1.15.3.1. Theprocesswillprovidealistofcommenterstoa
discussionthreadforthepurposeofmakingitmore
convenientfortheusertoknowthecontributorstoa
particularthread.
6.1.15.3.2. Thiswillhelpinstructorsingradingwhenan
assignmentcallsforadiscussioncontribution.
6.1.15.3.3. Theprocesswillcreateconvenienceforuserswho
arelookingforacommentfromacertainuser,e.g.
agroupmember.Theuserwillbeabletoreference
thislistinsteadofopeningandscrollingthroughthe
thread.

6.1.15.4. Function
6.1.15.4.1. Thisprovidesalistofallthreadcontributorstobe
displayedonthethreadpost.Thelistwillbe
providedintheclickablearea(toenterthethread)
ofthepost.
6.1.15.4.2. Thelistwillbedisplayedintheorderofthelast
contributor.
6.1.15.4.3. Nouserwillbedisplayedmoreonce.Twopostsby
thesameuserwillnotdisplaytheusertwiceonthis
list.
58

6.1.15.4.4.
6.1.15.4.5.

6.1.15.4.6.

Theorderofthelistwillbedeterminedbythelast
postofauser.
Thelistwillbelimitedtoeightcontributorsorto
thelimitofallowablespaceinthedisplayedthread
post.
Contributorsoverthelimitwillbedisplayedasa
number.Example:11commentsgivenbydifferent
individualswouldyieldtodisplayingthelasteight
contributorswitha+3indicatingthecontributing
usersoverthedisplayablelimit.

6.1.15.5. Subordinates
6.1.15.5.1. Aprocessforextractingallcontributorstoacertain
thread
6.1.15.5.2. Aprocessfororderingthoseuserschronologically
(see5.3.15.4.4fordeterminingtheorderofthelist)
6.1.15.5.3. Theprocessofdisplayingthelinktoentera
discussionthread.

6.1.15.6. Dependencies
6.1.15.6.1. Theprocessmustbeabletoreadthedatabase.The
abilitytowritetooreditthedatabasewillnotbe
needed.
6.1.15.6.2. Theprocessdependsontheprocessofdisplaying
thelinktoenterathread

6.1.15.7. Interface
6.1.15.7.1. Thelistwillbedisplayedinasectionofthelinkto
enterthethread.
6.1.15.7.2. Thisprocessisadisplayonlyprocess.
6.1.15.7.3. Theuserinteractswiththisprocessbycontributing
acommenttoathread.Thiswilladdthemtolist
andarrangethemasthelastcontributororif
alreadyacontributor,willsimplyarrangethemas
thelastcontributor.

59

Figure6.3.15.7.1Imageofcurrentuserinterface

Figure6.3.15.7.2Imageofproposeduserinterface

6.1.15.8. Resources
6.1.15.8.1. Noadditionalresourcesareneeded.

6.1.15.9. Processing
6.1.15.9.1. Theprocesswillbeginwhenthelinktoathreadis
tobedisplayed.
6.1.15.9.2. Theprocesswillaccessthedatabaseforthelistof
contributorstothethreadusingthepost_id.All
usersassociatedwiththepost_idwillbeaddedto
thethread_contributortable.
6.1.15.9.3. Onlythelasteightcontributorswillbedisplayed.
Theremainderwilldisplayedasanamountandnot
byusername.

6.1.15.10. Data
6.1.15.10.1. Theprocesswillusethefollowingdatathedatabase
willprovidetothethread_contributortable
6.1.15.10.2. user_ididentifiestheuserbyanintegerinorderto
differentiateusers,theremustbenouser_idthatare
thesamereferencesthestudenttable.
6.1.15.10.3. post_ididentifieseachthreadreferencesthepost
table
6.1.15.10.4. usernameidentifiestheuserbytheirusernameused
bytheschoolreferencesthestudenttable.
6.1.15.10.5. display_nameidentifiestheuserbythedisplay
namegivenbythestudentintheirprofile,two
identicaldisplaynamesareallowedintheeventtwo
studentshavethesamenamereferencesthestudent
table.

60

Figure6.3.15.10.1Diagramshowingdatadependencies

6.1.16. ListamountofresponsesGroup1

6.1.16.1. Identification:Listamountofresponses/posts
6.1.16.2. Type:Process
6.1.16.3. Purpose
6.1.16.3.1. Theprocesswillprovidetheamountof
contributionsauserhasmadetoadiscussion
thread.
6.1.16.3.2. Thiswillhelpinstructorsingradingwhenan
assignmentcallsforacertainnumberofdiscussion
contributions.
6.1.16.3.3. Theprocesswillcreateconvenienceforuserswho
arelookingfortheamountofcontributionsthey
havemadetoathreadforthepurposeof
completinganassignmentorotherwise.

6.1.16.4. Function
6.1.16.4.1. Thisprovidesadisplaytotheuseroftheamountof
contributionstoathreadtheuserhasmade.
61

6.1.16.4.2.

Theprocesswillalsoprovidethetotalamountof
postsfromauserfortheclass

6.1.16.5. Subordinates
6.1.16.5.1. Aprocessforextractingalltheuserspostsfromthe
database.
6.1.16.5.2. Theprocessofdisplayingadiscussionthread.

6.1.16.6. Dependencies
6.1.16.6.1. Theprocessmustbeabletoreadthedatabase.The
abilitytowritetooreditthedatabasewillnotbe
needed.
6.1.16.6.2. Theprocessdependsontheprocessofdisplayinga
thread.

6.1.16.7. Interface
6.1.16.7.1. Thelistwillbedisplayedatthetopofadiscussion
thread.
6.1.16.7.2. Thisprocessisadisplayonlyprocess.
6.1.16.7.3. Theuserinteractswiththisprocessbymakinga
post.Thiswilladdtothenumberofpoststheuser
hascontributed.

Figure6.3.16.7.1Imageofproposeduserinterface

6.1.16.8. Resources
6.1.16.8.1. Noadditionalresourcesareneeded.

6.1.16.9. Processing
6.1.16.9.1. Theprocesswillbeginwhenadiscussionthreadis
tobedisplayed.
6.1.16.9.2. Theprocesswillaccessthedatabaseforallpost_id
andreply_post_idassociatedwiththeuser.
62

6.1.16.10. Data
6.1.16.10.1. Theprocesswillusethefollowingdatathedatabase
willprovidetothepost_amounttable.
6.1.16.10.2. user_ididentifiestheuserbyanintegerinorderto
differentiateusers,theremustbenouser_idthatare
thesamereferencesthestudenttable.
6.1.16.10.3. post_ididentifieseachthreadreferencesthepost
table.
6.1.16.10.4. reply_post_ididentifiesareplytopostreferences
thereply_posttable.
6.1.16.10.5. reply_amountisthecountofreplypostsassociated
toapost_id.
6.1.16.10.6. total_amountisthecountofallpostsassociatedto
theuserincludingallpost_idandreply_post_id.

Figure6.3.16.10.1Diagramofdatadependencies

6.1.17.

WordCountGroup4

6.1.17.1. Identification:Wordcountforindividualposts

6.1.17.2.

Type:Process
63

6.1.17.3. Purpose
6.1.17.3.1. Thepurposeofthisentityistoallowthestudentto
easilyseehowmanywordstheyhavetypedintheir
discussionpost.
6.1.17.3.2. Additionally,instructorswhowillbegradingthe
discussionpostwillalsobeabletoseetheword
countforeachpost.
6.1.17.3.3. Occasionally,instructorsrequireaminimumword
countondiscussionboardposts.Thisfeaturewill
allowbothstudentsandteacherstoeasilyknow
whetherornottherequirementhadbeenmet.

6.1.17.4. Function
6.1.17.4.1. Asauser(studentorinstructor)istypinganew
discussionpostthewordcountwillautomatically
appearintheeditoratthebottomofthetextbox.
6.1.17.4.2. Thewordcountforeachpostwillbevisibleatthe
bottomofeachpostaftertheuserhaspublishedthe
post.

6.1.17.5. Subordinates
6.1.17.5.1. Theprocessofwritingthedataforeachpost.
6.1.17.5.2. Theprocessofstoringthedataforeachindividual
post.
6.1.17.5.3. Theprocessofdisplayingthedatarelevanttoeach
post.

6.1.17.6. Dependencies
6.1.17.6.1. Dependsonthediscussionboardscurrentprocess
ofcreatingandstoringapost,asthewordcount
willbedisplayedwithitsassociatedpost.

64

Figure6.3.17.2WordCountSequenceDiagramActor=User

6.1.17.7. Interface
6.1.17.7.1. Usersdonotinteractdirectlywiththisfeatureand
cannotalterormodifyit.Thewordcountisonly
modifiedorchangedwhenausertypes,thetotal
wordcountisoutputordisplayedtotheuser.
6.1.17.7.2. Whenauserpublishestheirpost,thewordcountis
alsovisibletoallviewersofthediscussionpost.

Figure6.3.17.8.WordCountInterfaceExample

6.1.17.8. Resources
6.1.17.8.1. Thisentitywillnotrequireadditionalresources
beyondwhatisrequiredforthecurrentsystem.

65

6.1.17.9. Processing
6.1.17.9.1. Thewordcountprocessisinitiatedwhenauser
opensthediscussionboardeditortomakeanew
post.
6.1.17.9.2. Thedefaultvalueofthewordcountis0,butwill
increaseasausertypes,consistentwiththenumber
ofwordstyped.
6.1.17.9.3. Ifauserdeleteswords,thenumberwilldecrement,
consistentwiththenumberofwordsdeleted.
6.1.17.9.4. Whentheuserpublishestheirpost,thefinalnumber
ofwordstheytypedwillbedisplayedatthebottom
oftheirpost.
6.1.17.9.5. Ifapostiseditedafterithasbeenpublished,the
wordcountwillagainincrementordecrementto
showtheactualwordcount.
6.1.17.9.6. Whenpublished,thenewwordcountwillbe
displayed.

6.1.17.10. Data
6.1.17.10.1. Wordcountwillbestoredinthedatabaseasarow
inthediscussion_boardtable.

6.1.18. NotificationsGroup4

6.1.18.1. Identification:Notificationofaresponsetoindividual
comments

6.1.18.2. Type:Module

6.1.18.3. Purpose
6.1.18.3.1. Thepurposeofthisfeatureistoinformtheoriginal
postauthorthatanotheruserhasrespondedtotheir
post.
6.1.18.3.2. Whenaresponsehasbeenmadetoacomment,the
systemwillautomaticallysendanotificationtothe
owneroftheoriginalpost,alertingthemtothenew
commentontheirpost.

6.1.18.4. Function
66

6.1.18.4.1.

Oncetheuserpublishesanoriginalpost,subsequent
responsesfromotheruserswilltriggera
notification.
6.1.18.4.2. Thisnotificationwillbesenttotheusersregistered
emailaddressaswellasanotificationalertonthe
iLearn3.0Dashboard.

6.1.18.5. Subordinates
6.1.18.5.1. Theprocessofpublishingadiscussionboardpost
6.1.18.5.2. Theprocessofreplyingtoadiscussionboardpost
6.1.18.5.3. TheprocessofiLearn3.0dashboardalerts

6.1.18.6. Dependencies
6.1.18.6.1. Theconditionsforthisentityisdependentupona
publishedpostfromasingleuserandasecondpost
inresponsetotheoriginal.Onlythencana
notificationcanbesent.
6.1.18.6.2. UseCaseDiagram

Figure6.1.18.6.2UseCaseDiagramofResponseNotifications
6.1.18.7. Interface

6.1.18.7.1. Theuserwillnotberequiredtointeractwiththis
designentity.Itisautomaticallygeneratedas
anotherusercreatesaresponsepost.

67

6.1.18.7.2.

TheuserwillreceiveanotificationontheiriLearn
3.0dashboardindicatingthattherehasbeena
responsetotheirpost

Figure6.1.18.7.2InterfaceExampleofNotification

6.1.18.7.3. Oncetheuserclicksonthenotificationbutton,the
responseindicatorwilldisappearuntilanother
responsehasbeenposted
6.1.18.7.4. Therearenoinputsoroutputerrorcodesnecessary

6.1.18.8. Resources
6.1.18.8.1. Theprocessdoesnotrequireanyadditional
resourcesotherthanthoseforthecurrentsystem
6.1.18.9. Processing
6.1.18.9.1. ActivityDiagram

Figure6.1.18.9.1ActivityDiagramofRespondingPostProcess
68

6.1.18.9.2.

6.1.18.9.3.

Theaboveactivitydiagramexplainstheprocessof
creatinganewresponsepost.Uponthecompletion
ofthisactivity,anotificationwillbesenttothe
user.
Thenotificationalertiscontingentonanotheruser
mustrespondintheappropriatefashiontotheusers
originalpost

6.1.18.10. Data
6.1.18.10.1. Thenotificationdatawillbeadynamicvaluethat
willchangeaccordingtothenumberofresponse
postscreated.
6.1.18.10.2. Thevaluewillrefreshtozeroaftereachtimethe
usercheckstheirnotificationalerts.
6.1.18.10.3. Allpastnotificationswillbestoredinordertobe
referencedifneededbyuser.

6.1.19. StrongerdistinctionofrepliesGroup4

6.1.19.1. Identification:Strongdistinctionbetweenpostandreply
6.1.19.2. Type:Process
6.1.19.3. Purpose
6.1.19.3.1. Thereasonbehindthisisthatitiseasytoget
confusedwithwhereeachreplyis.Thiswill
minimizetheamountofconfusionbetweenareply
andanoriginalpost.
6.1.19.3.2. Beabletorespondandfindspecificrepliesand
postsinagiventhread

6.1.19.4. Function
6.1.19.4.1. Whenclickingonthebuttontosubmitaresponseto
anotherresponseorpost,thegeneratedresponse
postshallindentaninch.
6.1.19.4.2. Theleftmostsideofeachreplypostinathread
shallbeindentedoneinchtotherightofthe
leftmostsideoftheposttowhichitisreplying.
69

6.1.19.4.3.

Ifathreadcontainsmorethanfivelevelsof
indentation,theindentationdistanceforallbutthe
lastindentationlevelwillbereducedtoahalfofan
inch.

Figure6.1.19.4.3Showing1inchIndentations

6.1.19.5. Subordinates
6.1.19.5.1. Theprocessofcollapsiblethreads.
6.1.19.5.2. Theprocessofviewingathreadunderthemain
discussionboardprocess.
6.1.19.5.3. Theprocessofviewingareplytoaspecificpostor
comment
6.1.19.5.4. Theprocessofcreatingareplytoaspecificpostor
comment

6.1.19.6. Dependencies
6.1.19.6.1. Dependentonbeingabletoaccessadatabasewith
thenumberofrepliestoapostorcomment
6.1.19.6.2. Dependantonwebpagefunctionalitytobeableto
increasetheindentationofthereplytothepostor
comment
6.1.19.6.3. UseCaseDiagram
70

Figure6.1.19.6.3Activitypathtoseestrongindentation

6.1.19.7. Interface
6.1.19.7.1. Theuserinteractswiththisentityanytimetheuser
createsandviewsareplytoapostorcomment.
6.1.19.7.2. Theuserinteractswiththisentityanytimetheuser
createsorwantstocollapseathread
6.1.19.7.3. Theuserinteractswiththisentityanytimetheuser
wantstowrite,edit,modify,like,hashtag,vote,
sort,seewordcount,andanyotherchangetoa
comment.

6.1.19.8. Resources
6.1.19.8.1. Theprocessdoesnotrequireanyadditional
resourcesotherthanthoseforthecurrentsystem

71

6.1.19.9. Processing
6.1.19.9.1. Theprocesscanbecompletedoncethecollapsible
threadentityiscompleted.
6.1.19.9.2. Oncecollapsiblethreadentityisimplementedthe
specificationscanbechangedtomakesureeach
replyisintendedoneinch.

6.1.19.10. Data
6.1.19.10.1. Theonlydataassociatedwiththisentityisthe
numberofrepliestoapostorcomment.Ifthe
numberisgreaterthan5thanthesizeofthe
indentationisreducedtoinchinsteadof1inch.

6.1.20.

MobileFriendlyGroup4

6.1.20.1. Identification:Mobilesupport
6.1.20.2. Type:Process
6.1.20.3. Purpose
6.1.20.3.1. Thepurposeofthisfeatureistoprovidetheuser
greateraccessibilitytoILearndiscussionboards
whenviewedfromasmallscreenortouchscreen
device.

6.1.20.4. Function
6.1.20.4.1. Theprocesswilldetectwhethertheuserisona
mobileornonmobiledevice.
6.1.20.4.2. Theprocesswillprovideaninterfacesuitablefor
viewingonamobiledevice.
6.1.20.4.3. Thisinterfacewillprovideallthefunctionalitythat
thefull,desktopinterfacedoes.

6.1.20.5. Subordinates
6.1.20.5.1. Aprocesstotransmitwebpagestotheclient

6.1.20.6. Dependencies
6.1.20.6.1. Themobileinterfaceprocesswillsharethesame
dependenciesasthedesktopinterfaceprocess,
includingmostpartsoftheUI.
72

6.1.20.6.2.

DependencyDiagram

6.1.20.6.3.

33

6.1.20.7. Interface
6.1.20.7.1. Theuserinteractswiththisentityanytimethey
accesstheILearndiscussionboards.

6.1.20.8. Resources
6.1.20.8.1. Thisentitywillnotrequireadditionalresources
beyondwhatisrequiredforthecurrentsystem.

6.1.20.9. Processing
6.1.20.9.1. Theentitywillinterpretuserinteractionwithitand
forwardanycommandsfromtheusertothe
appropriateentity.

6.1.21.

MarkdownSupportGroup2

6.1.21.1. Identification:MarkdownSupport
6.1.21.2. Type:Process
6.1.21.3. Purpose
73

6.1.21.3.1.

Allowsforbothstudentsandteacherstomore
effectivelystylethebodycontentofdiscussion
boards,posts,commentsandresponses.

6.1.21.4. Function
6.1.21.4.1. Asausertypesmarkuptheyseeapreviewofitin
anassociatedpreviewpane.Iftheusertriestoexit
whiletypingthenorwhileitisopenthentheyare
promptedtosaveorleavethechangestheyhave
madeunsaved
6.1.21.4.2. Theinputareasfordiscussionboardpostsshall
recognizemarkdownsyntaxandstylethetext
accordingly.
6.1.21.4.3. Theusershallbecapableofusingheaders,rules,
bodycopy,emphasis,blockquotes,lists,code,
tables,linksandimagesthroughmarkdownsyntax.

6.1.21.5. Subordinates
6.1.21.5.1. Theprocessofpreviewingthemarkdown
6.1.21.5.2. Theprocessofpostingmarkdownchangestoposts

6.1.21.6. Dependencies
6.1.21.6.1. Theconditionsforthisprocessarethatsaidpost,
commentorresponsemuststillexistandnotbeen
deletedbythecreatorormoderator

6.1.21.7. Interface
6.1.21.7.1. Asausertypesmarkuptheyseeapreviewofitin
anassociatedpreviewpane.Iftheusertriestoexit
whiletypingthenorwhileitisopenthentheyare
promptedtosaveorleavethechangestheyhave
madeunsaved

74

6.1.21.8. Resources
6.1.21.8.1. Theprocessdoesnotrequireanyadditional
resourcesotherthanthoseforthecurrentsystem

6.1.21.9. Processing
6.1.21.9.1. Theprocesswillbecompleteoncethemarkdown
hasbeensuccessfullysavedinthepreviewpane

6.1.21.10. Data
6.1.21.10.1. Themarkdownwillbestoredinuser_discussion
database

6.1.22. StudentModeratorGroup2

6.1.22.1. Identification:StudentModerator
6.1.22.2. Type:Process
6.1.22.3. Purpose
6.1.22.3.1. Studentmoderationshallallowforteachersto
assignstudentsasmoderatorsovercoursespecific
discussions.

6.1.22.4. Function
6.1.22.4.1. Thisfeaturewillenablestudentstohavemore
controloverthediscussionboardsysteminILearn
75

6.1.22.4.2.

6.1.22.4.3.

6.1.22.4.4.

6.1.22.4.5.

6.1.22.4.6.

allowingforthecreation,modificationand
archivingofbothdiscussionboardsanddiscussion
boardcomments.
WhenateacherclickstheAssignbuttonfoundin
adiscussionboardtheywillbeabletoassign1or
morestudentsasmoderators.Studentswillbe
notifiedandhavetheiruserprivilegeschangedto
allowthemtocreate,editandarchivediscussion
boards,discussionboardcontentanddiscussion
boardcomments.
Thesystemshallnotifytheteacher/courseowner
whenastudentmoderatorhasperformedany
moderatingfunctiononacourseowneddiscussion.
Thesystemshallnotifyastudentwhentheyhave
beengivenmoderationpermissionsoveracourse
owneddiscussionboard.
Thesystemshallnotifyastudentmoderatorwhen
theyhavehadtheirmoderatingprivilegesremoved
onacourseowneddiscussionboard.
Thesystemshallallowthemoderatingstudentsto
beabletocontinuetoseeandalteranyhidden,
lockedorarchiveddiscussionboardsand
comments.

6.1.22.5. Subordinates
6.1.22.5.1. Whenastudentbecomesamoderatorinacourse
theywillhavenewuserpermissionsthatallowthem
createnew/additionaldiscussionboards
6.1.22.5.2. Moderatorswillbepermittedtoeditcontentwithin
thediscussionboardaswellasthecomments.This
includesthearchivingofdiscussionboardsand
comments.
6.1.22.5.3. Whenamoderatorarchivesadiscussionboardor
commenttheywillbepresentedwithaconfirmation
dialogthatallowsthemtocancelorconfirmthe
archival.Additionaloptionswillbepresentinthe
confirmationdialogallowingthearchivaltoeither
hidethediscussionboardorcommentfromallor
76

specifiedusers,or,lockthediscussionboardor
commentfromallorspecifiedusers.

6.1.22.6. Dependencies
6.1.22.6.1. Requirestheteachertograntmoderatorstatus

6.1.22.7. Interface
6.1.22.7.1. Thiswillbedoneviaabuttonabovethecourse
discussionsectiononlyavailableforteacheruse.

6.1.22.8. Resources
6.1.22.8.1. Thisprocesswillrequirenomoreresourcesthanthe
currentsystemrequires.

6.1.22.9. Processing
6.1.22.9.1. Theprocesswillbeginwhentheteacherassigns
moderatorstatustoastudent.

6.1.22.10. Data
6.1.22.10.1. Thisinformationwillbestoredintheuserdatabase

6.1.23. AdditionalDiscussionBoardsGroup2

6.1.23.1. Identification:AdditionalDiscussionBoards
6.1.23.2. Type:Process
6.1.23.3. Purpose
6.1.23.3.1. Thepurposeofthisprocessistoallowadditional
discussionboardstobeusedforcollaboration,
contactinformationoranyadditionalquestionsand
concerns.

77

6.1.23.3.2.

Thiswillfacilitatetheprocessofshiftingbackand
forthbetweentheassignmentdiscussionboardand
theinstructions,astheywillbegroupedtogether.

6.1.23.4. Function
6.1.23.4.1. Whentheuseraddsthediscussionboard,the
systemwilladdthetitleofthediscussionboardto
thelistofindextitlesforuserstoreference
quickly/efficientlyandproceedaccordingly.
6.1.23.4.2. Whentheuserclickstheplussymboltoaddthe
discussionboardthesystemwillredirectstudentto
anewdiscussionthread,wheretheyentertheir
title,andpost.

6.1.23.5. Subordinates
6.1.23.5.1. Theprocessofwritingdataspecifictoindividual
discussionboards.
6.1.23.5.2. Theprocessofstoringdata.
6.1.23.5.3. Theprocessofdisplayingthedata.

6.1.23.6. Dependencies
6.1.23.6.1. Thisprocessutilizesthediscussionboardscurrent
processofcreatingandstoringapost.
6.1.23.6.2. Theremustbeaccesstoadatabase,allowingthe
processtoreadfromandwritetoit.
6.1.23.6.3. Thisprocessisforstoringanddisplayingdataonly.

6.1.23.7. Interface
6.1.23.7.1. Theuserfirstinteractswiththisprocessbyclicking
theplusicontoaddanewdiscussionboard.The
communicationbetweentheuserandtheprogram
hereismadepossiblethroughuseofthedatabase.
6.1.23.7.2. Thedatawillaccessthedatabasebyretrievingthe
discussionboardtobedisplayed.
6.1.23.7.3. Thedatawillmodifythedatabasewhenauseradds
to,changes,and/ordeleteshisorherpostsforthe
discussion.

78

6.1.23.8. Resources
6.1.23.8.1. Thisprocesswillnotrequireanyadditional
resourcesthanarerequiredforthecurrent
discussionboardsystem.
6.1.23.9. Processing
6.1.23.9.1. Theprocessshallbeinitiatedwhenauseropensthe
discussionboard.
6.1.23.9.2. Ifthereisanerroropeningthediscussionboard,
theusershallbenotifiedwiththefollowing
messageinthesameplacewhereerrormessagesare
displayedintheexistingdiscussionboardsystem:
Therewasanerroropeningthethisdiscussion
board,pleasetryagainlater.

FIG.6.3.23.11SystemArchitecture

6.1.23.10. Data
6.1.23.10.1. Thedatabasecanstorethethefollowingtablesin
thediscussionboarddatabase.
6.1.23.10.2. Thetitle/postshallnotacceptavalueofnull.

79

6.1.24.

NotificationResponseLinkGroup2

6.1.24.1. Identification:NotificationResponseLink
6.1.24.2. Type:Process
6.1.24.3. Purpose
6.1.24.3.1. Thepurposeofthisprocessistoallowauserto
haveadirectlinktothecontentofthenotification.
6.1.24.3.2. Whenausermakesaresponsetoyourpost,the
systemwillsendyouanotification.Theusercan
thenopenthenotificationandclickonalinkwhich
willsendtheusertotheresponse.

6.1.24.4. Function
6.1.24.4.1. Whenanotherusermakesaresponsetoastudents
post,itwillsendanotificationtotheiriLearn3.0
accountaswellastheirassociatedemail.Each
notificationwillcontainalinktotheassociated
post.
6.1.24.4.2. Whentheuserclicksonthelink,itwillredirect
themtotheassociatedpost.Thesamefunctionality
willoccurwhetherthelinkisaccessedfrominside
theusersemail,orifthelinkisaccessedfrom
insideofiLearn3.0.

6.1.24.5. Subordinates
6.1.24.5.1. Theprocessofpublishingadiscussionboardpost.
6.1.24.5.2. Theprocessofreplyingtoadiscussionboardpost.
6.1.24.5.3. TheprocessofiLearn3.0dashboardalerts.
6.1.24.5.4. TheprocessofNotifications.

6.1.24.6. Dependencies
6.1.24.6.1. Theconditionsforthisentityisdependentupona
publishedpostfromasingleuserandasecondpost
inresponsetotheoriginal.Onlythencana
notificationcanbesent.
6.1.24.6.2. Theconditionsforthisentityarealsocompletely
dependentontheNotificationprocess.

6.1.24.7. Interface
80

6.1.24.7.1.

Thenotificationresponselinkinterfacewillbe
verysimilartoiLearn3.0.Itwillhavetheclassthat
thenotificationrelatestoatthetopofthe
dropdown.Itwillthenhavethetitleofthe
assignment.Finally,itwillhavethelinktothe
specificpostwithintheassignment.

Figure6.3.24
NotificationResponse
Link

6.1.24.8. Resources
6.1.24.8.1. Thisentitywillnotrequireadditionalresources
beyondwhatisrequiredforthecurrentsystem.

6.1.24.9. Processing
6.1.24.9.1. Theprocesswillbeinitiatedwhenanotheruser
respondstoauserspostonadiscussionboard.
6.1.24.9.2. Thenotificationwillberesolvediftheuserhas
alreadyviewedtheresponsebeforeviewingthe
notification.
6.1.24.9.3. Thenotificationwillberesolvedwhenthe
notificationiconispressedandthenotifications
havebeenlisted.

6.1.24.10.

Data
81

6.1.24.10.1.

Thenotificationresponselinkwillbestoredasa
columnintheuser_notificationdatabasetable.

6.1.25. AssignmentInstructionLocationGroup2

6.1.25.1. Identification:AssignmentInstruction
6.1.25.2. Type:Datastore
6.1.25.3. Purpose
6.1.25.3.1. Thepurposeofthisistomaketheassignmentclear,
andeasytoaccessatthetopofthediscussion
board.
6.1.25.3.2. Thiswillfacilitatetheprocessofshiftingbackand
forthbetweentheassignmentdiscussionboardand
theinstructions,astheywillbegroupedtogether.
6.1.25.3.3. Thiswillmakeiteasierfortheusertohave
everythingtheyneedfortheassignmentonthe
samewebpage.

6.1.25.4. Function
6.1.25.4.1. Thisdataentitywillstoreinstructionaldetailsfor
usersonthesamepageasthediscussionboards.
6.1.25.4.2. Userswillbeabletoeasilyidentifyassignment
instructionsandproceedaccordingly.

6.1.25.5. Subordinates
6.1.25.5.1. Theprocessofwritingdataspecifictoindividual
assignmentsanddiscussionboards.
6.1.25.5.2. Theprocessofstoringdata.
6.1.25.5.3. Theprocessofdisplayingthedataatthetopofeach
discussionboard.

6.1.25.6. Dependencies
6.1.25.6.1. Thisprocessdependsonthediscussionboards
currentprocessofcreatingandstoringapost.
6.1.25.6.2. Theremustbeaccesstoadatabase,allowingthe
processtoreadfromandwritetoit.
6.1.25.6.3. Thisprocessisforstoringanddisplayingdataonly.

6.1.25.7. Interface
82

6.1.25.7.1.

6.1.25.7.2.
6.1.25.7.3.

Theuserfirstinteractswiththisprocessbyseeing
theinstructionslistedintheinstructionboxatthe
topofthepage.Thecommunicationbetweenthe
userandtheprogramhereismadepossiblethrough
useofthedatabase.
Thedatawillaccessthedatabasebyretrieving
instructionresultstobedisplayed.
Thedatawillmodifythedatabasewhenaprofessor
addsto,changes,and/ordeleteshisorher
instructionsfortheassignment.

Figure6.3.25ERD
(EntityRelationship
Diagram)

6.1.25.8. Resources
6.1.25.8.1. Thisprocesswillnotrequireanyadditional
resourcesthanarerequiredforthecurrent
83

discussionboardsystem.

6.1.25.9. Processing
6.1.25.9.1. Theprocessshallbeinitiatedwhenauseropensthe
discussionboard.
6.1.25.9.2. Ifthereisanerroropeningtheinstructions,orthe
assignmenthasnotyetbeenreleased,theusershall
benotifiedwiththefollowingmessageinthesame
placewhereerrormessagesaredisplayedinthe
existingdiscussionboardsystem:Therewasan
erroropeningtheinstructions,youcanaccessthis
assignmenton7/12(forexample),pleasetryagain
later

6.1.25.10. Data
6.1.25.10.1. Thedatabasecanstoretheinstructionaldatainthe
followingtablesinthediscussionboarddatabase.
6.1.25.10.2. Thesubjectshallnotacceptavalueofnull.

6.1.26. HighTrafficPostGroup2

6.1.26.1. Identification:HighTrafficPost
6.1.26.2. Type:Process
6.1.26.2.1. HighTrafficPostsforeachclassareaccessible
underthestudenticon.Thisallowsforfrequently
accessedandusedthreadstobeeasiertoaccess.
6.1.26.3. Purpose
6.1.26.3.1. Ittakesmultiplestepstoaccessmostthreadsin
iLearn3.0.Thiswillallowoftenusedthreadstobe
easilyaccessibletoagivenuser.
6.1.26.3.2. Oneexampleisathreadforgroupcoordination.
Thismaybeusedoftenandfrequentlybyanentire
class.HighTrafficPostsareidentifiedbytheir
frequencyofuseandtheoverallnumberofpostson
agiventhread.

6.1.26.4. Function
6.1.26.4.1. Anypostthatisaccessedmorethanthe
HIGH_TRAFFIClimit,willbeclassifiedasaHigh
84

6.1.26.4.2.

TrafficPost.HIGH_TRAFFICisaglobalvariable
thatcanbechangedlater.
ThegivenHighTrafficPostwillthenbelisted
underagivenstudentprofileunderaspecificclass.
Uponclickingonthetitleofthepost,theuserwill
beredirectedtothepost.

6.1.26.5. Subordinates
6.1.26.5.1. Theprocessofcollapsiblethreads.
6.1.26.5.2. Theprocessofpublishingadiscussionboardpost.
6.1.26.5.3. Theprocessofreplyingtoadiscussionboardpost.
6.1.26.5.4. TheprocessofiLearn3.0dashboardalerts.
6.1.26.5.5. TheprocessofNotifications.

6.1.26.6. Dependencies
6.1.26.6.1. Thisprocessisdependentuponuserspostingand
replyingonadiscussionboard.
6.1.26.6.2. Theprocessisdependentuponthenumberof
repliestoagivenpostbecominggreaterthanan
establishedlimitwithinthesystem.

6.1.26.7. Interface
6.1.26.7.1. TheinterfacefortheHighTrafficPostwillbethe
sameastheinterfaceforanyotherpost.Theonly
differencewillbethelargenumberofposts.
6.1.26.7.2. Theinterfacewillalsoimplementcollapsible
threadstoallowforeasierscanningofthetoplevel
postsandreplies

85

Figure6.3.26High
TrafficPost

6.1.26.8. Resources
6.1.26.8.1. Thisentitywillnotrequireadditionalresources
beyondwhatisrequiredforthecurrentsystem.

6.1.26.9. Processing
6.1.26.9.1. Thisprocesswillbeginwhenenoughusershave
respondedtoagivenpost.Thiswillflagthepostas
ahightrafficpost.
6.1.26.9.2. Anupdatewilloccuronthestudentsaccount.The
studentisthenabletoviewagivenhightrafficpost
foraclass.Thesehightrafficpostswillchange
dependingonupdatestothesystemastheclass
goeson.

6.1.26.10. Data
6.1.26.10.1. Ahightrafficpostwillbedeterminedbysumming
thenumberofrepliesonagivenpost.This
informationcanbefoundbycomparingthetotal
numberofrepliesoneachpostforagivenclass.

86

6.1.27.

NotificationResponseInclusionofOriginalPostGroup2

6.1.27.1. Identification:NotificationResponseInclusionof
OriginalPost
6.1.27.2. Type:Process
6.1.27.3. Purpose
6.1.27.3.1. Thisistoallowastudenttoviewtheoriginalpost
thatanotheruserisrespondingtoaspartofa
Notification.
6.1.27.4. Function
6.1.27.4.1. Wheneverastudentreceivesanotification,itwill
informthemoftheclass,assignment,andoriginal
post.Thenotificationdropdownwillthenincludea
linktothepostthathasbeenrespondedto.

6.1.27.5. Subordinates
6.1.27.5.1. Theprocessofcollapsiblethreads.
6.1.27.5.2. Theprocessofpublishingadiscussionboardpost.
6.1.27.5.3. Theprocessofreplyingtoadiscussionboardpost.
6.1.27.5.4. TheprocessofiLearn3.0dashboardalerts.
6.1.27.5.5. TheprocessofNotifications.

6.1.27.6. Dependencies
6.1.27.6.1. Theconditionsforthisentityisdependentupona
publishedpostfromasingleuserandasecondpost
inresponsetotheoriginal.Onlythencana
notificationcanbesent.
6.1.27.6.2. Theconditionsforthisentityarealsocompletely
dependentontheNotificationprocess.

6.1.27.7. Interface
6.1.27.7.1. Thisinterfaceisthesameastheonementionedin
thenotificationresponselinkprocess.Thisprocess
hastodospecificallywiththethreadnameonthe
originalpost.Thisallowsausertoquicklyidentify
whichpostauserrespondedto.
6.1.27.7.2.

87

Figure6.3.24
NotificationResponse
InclusionofOriginal
Post

6.1.27.8. Resources
6.1.27.8.1. Thisentitywillnotrequireadditionalresources
beyondwhatisrequiredforthecurrentsystem.

6.1.27.9. Processing
6.1.27.9.1. Theprocesswillbeinitiatedwhenanotheruser
respondstoauserspostonadiscussionboard.
6.1.27.9.1.1. Thenotificationwillberesolvediftheuser
hasalreadyviewedtheresponsebefore
viewingthenotification.
6.1.27.9.2. Thenotificationwillberesolvedwhenthe
notificationiconispressedandthenotifications
havebeenlisted.

6.1.27.10. Data
6.1.27.10.1. Thenotificationresponselinkandtheoriginal
threadnamewillbestoredasacolumninthe
user_notificationdatabasetable.

6.1.28. Shortcuttoprofessors'postsGroup2

6.1.28.1. Identification:ProfessorsPosts
6.1.28.2. Type:Datastore
6.1.28.3. Purpose

88

6.1.28.3.1.

Thepurposeofthisistoprovideashortcutforusers
toquicklyseethepoststheprofessorhasmadeon
thediscussionboard.
6.1.28.3.2. Thiswillmakeiteasyforuserstoseeany
additionalfeedback,comments,updatespostedby
theprofessor.

6.1.28.4. Function
6.1.28.4.1. Thisdataentityshallstorepostsmadeby
professors.
6.1.28.4.2. Thiswillallowuserstoeasilyaccessprofessors
postsandseeanyupdates,comments,andfeedback
givenbyspecificinstructors.

6.1.28.5. Subordinates
6.1.28.5.1. Theprocessofwritingdatainputfromthe
professor.
6.1.28.5.2. Theprocessofstoringdata.
6.1.28.5.3. Theprocessofretrievingdatawhenuserclickson
appropriatelink.

6.1.28.6. Dependencies
6.1.28.6.1. Thisprocessdependsonthediscussionboards
currentprocessofcreatingandstoringapost.
6.1.28.6.2. Theremustbeaccesstoadatabase,allowingthe
processtoreadfromandwritetoit.
6.1.28.6.3. Userinteractionwiththeprocesswilldependonthe
processesofreceivinginputthroughtheweb
interface,aswellasthatofdisplayinginformation
onthescreentotheuser.

6.1.28.7. Interface
6.1.28.7.1. Theuserfirstinteractswiththisprocessbyselecting
theprofessorsposticon(alongthetopmenubar).
Thecommunicationbetweentheuserandthe
programhereismadepossiblethroughuseof
commonwebbrowserinterfacecomponentsand
thedatabase.
89

6.1.28.7.2.

Theprocesswillaccessthedatabasebyretrieving
professorspostresultstobedisplayed.
6.1.28.7.3. Thedatawillmodifythedatabasewhenaprofessor
addsto,changes,and/ordeleteshisorherpost.

6.1.28.8. Resources
6.1.28.8.1. Thisprocesswillnotrequireanyadditional
resourcesthanarerequiredforthecurrent
discussionboardsystem.

6.1.28.9. Processing
6.1.28.9.1. Theprocessshallbeinitiatedwhenauserclickson
theprofessorsposticon.
6.1.28.9.2. Ifthereisanerroropeningthepostsfromthe
database,theusershallbenotifiedwiththe
followingmessageinthesameplacewhereerror
messagesaredisplayedintheexistingdiscussion
boardsystem:Therewasanerroropeningthe
professorspost,pleasetryagainlater.

90

FIG6.3.28SequenceDiagramforMessages

6.1.28.9.3.

6.1.28.9.4.

Theprofessorspostshallbedistinguishedfroma
normalpostbydisplayingthewordProfessor
abovetheeachProfessorspost.
Thesystemshallremaininreviewingstateuntilthe
followingoccurs:theuserclicksCancel,orthe
userperformssomeotheractionbythebrowserthat
wouldnavigateawayfromthediscussionboard.

6.1.28.10. Data
6.1.28.10.1. Thedatabasecanstorethedatainthefollowing
tablesinthediscussionboarddatabase.
6.1.28.10.2. Theprofessors_poststableistokeeptrackofeach
postmadebytheprofessor.Eachposthasaunique
id.
6.1.28.10.3. Thesubjectshallnotacceptavalueofnull.

91

7.

RequirementsTraceabilityMatrix

ID

RequirementsDescription
CollapsibleThreadsThe
systemshallallowtheuser
tohidesubsectionsofa
1 thread.

Org/
Requestor Dep

Students

DeletePostsTheuser
shallbeabletodeletea
givenpostwithouthavingto
2 reloadthepage.
Students
Arrangeandorganize
threadsTheusermay
organizeathreadintoa
customcategorybyclicking
onasettingslinkonagiven
3 thread.
Students

Showwhichthreadsyou
4 havecontributedto

Students

BusinessNeed

Must/
Want

Thepurposeofthisfeatureistoallowthe
usertoreducevisualclutteronthescreen.
Itwillalsoallowtheusertomoreeasily
navigatethroughhigherlevelsofthread
BYUI sectionsortopics.
Must
Thepurposeofthisfeatureistoallowthe
usertodeleteanunwantedpostthatthey
havemadetothediscussionboard.This
featurewillallowformoreusercontrolby
allowingirrelevantorunwantedpoststobe
BYUI removedbytheauthor.
Must
Thepurposeofthisfeatureistoallowthe
usertoorganizethreadscontributedbythe
userintocustomcategoriessotheycanbe
sortedforeasierviewingbythestudent.
Thiswillallowtheusertofilterthroughthe
selectedthreadsquickerandfindthose
BYUI categorizedthreadsmoreeasily.
Want
Thepurposeofthisfeatureistoshowthe
userwhichthreadstheuserhas
contributedto.Thiswillallowtheuserto
tracktheircontributionsmoreaccurately
BYUI andefficiently.

Must

Active/
Inactive Priority

Inactive High

Active

High

Inactive Medium

Inactive High

Notifywhensomeonereplies
5 toyourpostwithinathread Students

Thepurposeofthisfeatureistoallowthe
usertobenotifiedwhensomeoneresponds
BYUI toaposttheusersubmitted.
Must

Showthemostupdated
conclusionneartheoriginal
6 post

Students

Thepurposeofthisfeatureistoshowthe
mostupdatedconclusionneartheoriginal
post.Thisfeaturewillhelpdiscussion
boardusersseethemostupdatedand
relevantanswertoaquestion(asprovided
byamoderatororselectedbyanother
user)withoutscrollingthroughpagesof
BYUI comments.
Must

Inactive Low

Students

Thepurposeofthisfeatureistoallowusers
tovoteonapostwithouthavingtoadda
commenttothethread.Thisshallallowall
userstoparticipateinthevoteandreceive
BYUI moreinteraction.
Must

Inactive Low

Voteonpostswithout
havingtoaddawhole
7 comment

Active

High

92

Theusermayclickonthe
thankbuttonofapostto
givethankstothatusers
8 contribution.

Students

Thepurposeofthisfeatureistoallowusers
tolikepostssothatotherstudentscansee
whichpostsaremostrelevantoruseful
dependingonwhichwerethankedmost.
Thisshallalsoallowtheusertothank
anotheruserfortheircontributionwithout
havingtocreateanewpost.Teachersmay
usethisasanopportunitytoofferextra
BYUI creditforthankingposts.
Must

Inactive Low

Addhashtagstopostsso
thatrelevantsubjectscanbe
9 filteredthrough
Students

Thepurposeofthisfeatureistoallowusers
totagpostswithhashtags.Thiswillallow
relevantsubjectstobefilteredthrough
BYUI moreeasily.
want

Inactive Low

Searchallofthecontentsof
athreadwithoutexpanding
10 it
Students

Thiswillallowtheusertogetmoreaccurate
searchresultsandalsotogettheresults
BYUI moreeasily.
Must

Active

Referenceaspecificperson
11 inapost
Students

Thepurposeofthisfeatureistoallowthe
usertodirecttheirposttoaspecific
person.Thisfeaturewillallowforbetter
communicationasthepersonbeing
referencedwillreceiveanotificationthat
BYUI someonehasaddressedtheminapost.

Emailnotificationsfor
12 importantposts

Haveaccesstoallposts
13 fromonescreen

Removeunread
discussionsboxfromthe
14 currentversionofILearn

Medium

Must

Inactive Medium

Must

Inactive Medium

Students

Thepurposeofthisfeatureistoalert
studentsthroughemailwhenanimportant
posthasbeenmadesoastoensurethat
BYUI everyoneseesit.

Students

Thepurposeofthisfeatureistoreducethe
amountoftimeittakestomakeorreplyto
postsondiscussionboards.Timespent
ondiscussionboardswillbelessenedas
userswillnothavetoclickbackandforth
betweenmultiplepagestoreadinitial
postsandresponseposts.Userswillbe
abletomaketheirinitialpostandreplyto
otherclassmemberspostsfromthesame
page,makingtheprocessfasterand
BYUI simpler.
Must

Inactive High

Students

Thepurposeofthisfeatureistomakethe
homepagecleanerandmakeimportant
informationstandout.Thisfeatureis
arbitraryanddoesntaidintheuseof
BYUI discussionboards.

Must

Inactive Medium

Thereasonbehindthisiswhensomeone
BYUI wantstoviewwhohasparticipatedina

Want

Inactive High

Listofwhocommentedon
15 athread
Students

93

thread,thediscussionboardwillshowa
listofthosewhoareparticipatinginthe
threadsothattheuserwillbeawareof
whoparticipatesinthediscussion.Thiswill
getridofonlyallowingtheuserviewingthe
discussionboardtoviewwho
commentedonthethreadlast.

Listamountofresponseson
16 apost
Students

WordCountonthe
17 commentorpost

Notificationofaresponse
18 toindividualcomments

Students

Students

Thepurposeofthisfeatureiswhenauser
isgivenaspecificamountofpostsheor
sheneedstorespondto,itshallgivea
numberverifyinghowmanyheorshehas
contributedto.Thiswillmakeiteasieron
theuser,sotheywonthavetofindthe
responsesandcountthemindividually.
Whenauseriscuriousastohowinvolved
heorsheisondiscussionboards,they
willeasilyseehowmanythreadsthey
BYUI haverepliedto.
Must

Active

Thereasonbehindthisfeatureisbecause
manyteachersspecifytheminimum
numberofwordsapostand/orreplyneeds
tobe,butthediscussionboardhasno
waytocheckthatwithouthavingto
manuallycounteachword.Thisfeaturewill
makeiteasytoseethewordcountona
postasitsbeingwrittenandafterits
BYUI posted.
Must

Inactive Low

Thepurposeofthisfeatureistoinformthe
originalpostauthorthatanotheruserhas
BYUI respondedtotheirpost.
Must

Done

Active

High

Strongerdistinctionofreplies
19 frompostsandthreads
Students

Thereasonbehindthisisthatitiseasyto
getconfusedwithwhereeachreplygoes.
Thiswillminimizetheamountofconfusion
BYUI betweenareplyandanoriginalpost.

Must

Active

Medium

Moremobilefriendly(bigger
20 buttons)
Students

Thepurposeofthisfeatureistoprovidethe
userwithgreateraccessibilitytoILearn
discussionboardsthroughamore
meaningfulmobileinterface.This
interfacewillbeusedforbothsmartphone
andtabletdevices.Asausernavigatesa
discussionboardusingthemobile
interface,allbuttonswillappearas
functionalbuttonsandnotasstandard
hyperlinkswhichareoftensmalland
BYUI difficulttoworkwith.
Want

Active

Medium

94

Markdownsupportfor
bettercustomizationofthe
21 text

Studentmoderator
22 capability

Allowstudentstoadd
23 discussionboards

Alinktodirectyoutoa
responsewhenyouare
24 notifiedofresponse

Assignmentinstructionon
25 discussionboardpage

Hightrafficpostspotlight
26 (i.e.mostpopular)

Students

Students

Markdownsupportwillallowforboth
studentsandteacherstomoreeffectively
stylethebodycontentofdiscussion
BYUI boards,posts,commentsandresponses. Must
Studentmoderationshallallowforteachers
toassignstudentsasmoderatorsover
coursespecificdiscussions.Thisfeature
willenablestudentstohavemorecontrol
overthediscussionboardsystemin
ILearnallowingforthecreation,
modificationandarchivingofboth
discussionboardsanddiscussion
BYUI boardcomments.
Must

Inactive Medium

Inactive High

Students

thisfeaturewillallowanystudenttheability
tocreateadditionaldiscussionboards
afterbeingmadeamoderatorwithina
course.Thepurposeofthisfeatureisto
allowstudentstocreatetheirowngroup
discussionboardsforteam
BYUI communicationandcollaboration.
Must

Inactive Medium

Students

Thisfeaturewillnotifyusersofdirect
responsestotheirdiscussionboard
posts,commentsandrepliesand
respectivelyprovideadirectlinktothe
BYUI response.

Active

Students

Thepurposeofthisfeatureistomakeit
easierforastudenttolookupindividual
assignmentinstructionswithouthavingto
leavethediscussionboard.Thiswillgive
thestudenttheabilitytoreferbacktothe
instructionswithouthavingtobreaktheir
concentration,resultinginmoreprecise
BYUI responsestothesubjectinquestion.
Must

Students

Notificationofresponsewill
showtheoriginalpostfor
27 context
Students

Thepurposeofthisfeatureistoenable
studentstoquicklyfindthemostrelevant
informationinregardstotheirassignment.
Oftentimesthemosttraffickedresponse
hasthehighestqualityinformationby
spotlightingthisthreadtheclasswillunite
BYUI andwhichwillfosterdeeperdiscussion.

Must

Want

Thepurposeofthisfeatureistoprovide
studentswithcontextinregardstothereply
theyvejustreceived.Studentsaremore
likelytorespondtothatreplywhentheyare
BYUI remindedwhattheoriginalpostsaid.This Must

Medium

Inactive Done

Inactive Low

Inactive Low

95

willencouragemoreinteractionbetween
thestudents.

Shortcuttoprofessors'
28 posts

Students

Thepurposeofthisfeatureistoprovidethe
studentwithamechanismtofindthe
instructorsresponsetotheirposts,aswell
asthreadsthattheinstructorhascreated.
Thiswillenablethestudenttoquicklyfind
valuablefeedback,aswellascrucial
BYUI threadsauthoredbytheinstructor.
Must

Inactive Medium

8.

Appendix

8.1. FunctionModification
8.1.1. Entity5.3.20wasremovedduetothefactthatitwasnotan
operationalsystemdesignrequirement.Thefeaturedoesnotaffect
thefunctionalityorworkingcapabilityofthesystem,butinstead
affectsonlytheusersviewofthesystem.Thisfeaturesimply
changesthewayotherfeaturesaredisplayedtotheuserdepending
onthedevicetheyareusingtoaccessthediscussionboard.

8.2. Contributors
8.2.1. ProjectManagers
8.2.1.1. JaredMackieandAlexandriaLenz
8.2.2. Group1
8.2.2.1. JosephPatterson,JackLaprevote,KamiAnneDastrup
8.2.3. Group2
8.2.3.1. StephanieOgden,DanielBlankenship,TylerStanley
8.2.4. Group3
8.2.4.1. MattLayton,PadenJones,DrewMcMurry,JonnyJob
8.2.5. Group4
8.2.5.1. JaredMackie,AlexandriaLenz,LindseyMoeller,Alex
Barney

96

S-ar putea să vă placă și