THISASSIGNMENTIS44%ofOURGRADE!WECANDOTHIS!
Section5ofthestandardincludedinthetextbookismandatory.Clearlyidentifyyourdesign
entitiesandprovidealltenattributedescriptionsforeachdesignentity.Providea
requirementstraceabilitymatrixforfunctionalrequirementsdonotduplicatethisinformation
elsewhereinthedocument.Besuretospecifyyourchoiceoflanguage(s)andoperating
system(s).
Providesufficientdetailsuchthatyoucouldtransmityourdesigntoaprogrammer(inIndiaor
China)andreceivetheproductyouintended.Whileyoushouldprovideadetailedstatementof
functionalityforeachmodule,youdonotneedtoprovidepseudocode
Note,toalign,number,andindentthetextinyoursection:
pressshift+enteraftertheheadingtoaddablankline
pressenteragainandtabtoindentitandapplythenumbering.
pressshift+enterafteryourparagraphtoaddanotherblankline
Toindentnumberingtotheleft,ortounindentthings
Moveyourcursertotheleftmostpartofthetext(butrightofthenumber)
pressshift+tab
Jonny
1.
Scope
ProjectManager
1.1.
2.
References
ALLaddREFERENCES(ifapplicable
2.1.
3.
Abbreviations
3.1.
4.
Definitions
4.1.
5.
ConsiderationsforproducingSDD
5.1. Softwarelifecycle
5.2. SDDwithinthelifecycle
5.3.
PurposeofSDD
6.
DesignDescriptionInformationContent
6.1. Introduction
6.1.1.
6.2. DesignEntities
6.2.1.
6.3. DesignEntitiesAttributes
Pleasereferencepages282284inthetextbookfordescriptions
6.3.1. CollapsableThreads(Group3AndrewMcMurry)
6.3.1.1. Identification:Collapsingandexpandingthreads
6.3.1.2. Type:Process
6.3.1.3. Purpose
6.3.1.3.1. Thepurposeofthisfeatureistoallowtheuserto
collapseorexpandvariousthreadsinadiscussion
board.
6.3.1.3.2. Thiswillallowuserstomoreeasilynavigate
discussionboardsandtoreducevisualclutter.
6.3.1.4. Function
6.3.1.4.1. Thisprocesswillprovideaninterfaceforallowing
userstoeithercollapseorexpandthreadsectionsor
topics.
6.3.1.4.2. Auserwillbecapableofexpandingathreadtosee
allsubsectionswithinthatthread.
6.3.1.4.3. Auserwillbeabletocollapseathreadtoreduce
visualclutterandhidecontentthattheyarenot
interestedin.
6.3.1.5. Subordinates
6.3.1.5.1. Theprocessofviewingthediscussionboards
function.
6.3.1.5.2. Theprocessofviewingthreads.
6.3.1.6. Dependencies
6.3.1.6.1. Thisprocessdependsonthediscussionboards
currentprocessofdisplayingposts.
6.3.1.6.2. Userinteractionwithcollapsingandexpanding
threadswilldependontheprocessesofreceiving
inputthroughthewebandoutputtinginformation
onthescreentotheuser.
6.3.1.7. Interface
6.3.1.7.1. Theuserinteractswiththisprocessbyclickingon
the+symbolassociatedwiththethread.The
communicationbetweentheuserandtheprogram
hereismadepossiblethroughuseofcommonweb
browserinterfacecomponents.
6.3.1.7.2. Theprocesswillexpandallsubsectionsandmake
themeasilyvisibletotheuser.
6.3.1.7.3. Thesystemwillreplacethe+symbolwitha
symbolsignifyingtheabilitytonowcollapsethe
thread.
6.3.1.7.4. Theuserinteractswiththisprocessbyclickingon
thesymbolassociatedwiththethread.
6.3.1.7.5.
Theprocesswillcollapseallsubsectionsandmake
themhiddenfromtheuser.
6.3.1.7.6. Thesystemwillreplacethesymbolwitha+
symbolsignifyingtheabilitytonowexpandthe
thread.
6.3.1.8. Resources
6.3.1.8.1. Thisprocesswillnotrequireanyadditional
resourcesthanarerequiredforthecurrent
discussionboardsystem.
6.3.1.9. Processing
6.3.1.9.1. Theuserwillhavetheabilitytoexpandand
collapsethreads.
6.3.1.9.2. Underthemaindiscussionboardprocess,theuser
hastheabilitytoviewalistofthreadseachwitha
+symbollocatedtotheright
6.3.1.9.3. Whentheuserclicksonthe+symbolitwill
expandallsubsectionsofthatthreadmakingthem
visibletotheuser.The+symbolwillturnintoa
symbolafterbeingclickedonce.
6.3.1.9.4. Whentheuserclicksonthesymbolitwill
collapseallsubsectionsofthatthreadmakingthem
hiddentotheuser.Thesymbolwillturnback
intoa+symbolafterbeingclickedonce.
6.3.1.10. Data
6.3.1.10.1. Nodatawillbestoredinthedatabasewithuseof
thecollapsiblethreads.Forusabilitypurposesall
discussionboardswillbecollapsedbydefaulteven
iftheuserexpandedtheminapriorsession.
6.3.2. DeletePosts(Group3AndrewMcMurry)
6.3.2.1. Identification:Deletingofunwantedorunintendedposts
6.3.2.2. Type:Process
6.3.2.3. Purpose
6.3.2.3.1.
Thepurposeofthisfeatureistoallowtheusermore
controlovertheircontributionstoadiscussion
board.
6.3.2.3.2. Thiswillallowausertodeletetheirownpoststhat
mayhavebeenunwantedorirrelevant.
6.3.2.4. Function
6.3.2.4.1. Thisprocesswillprovideaninterfaceforallowing
userstodeletepoststhattheyhavemade.
6.3.2.5. Subordinates
6.3.2.5.1. Theprocessofviewingthediscussionboards
function.
6.3.2.5.2. Theprocessofviewingthreads.
6.3.2.6. Dependencies
6.3.2.6.1. Thisprocessdependsonthediscussionboards
currentprocessofremovingapost.
6.3.2.6.2. Theusermustbeallowedtoreadfromandwriteto
thedatabase.
6.3.2.6.3. Userinteractionwithdeletingtheirownthreadswill
dependontheprocessesofreceivinginputthrough
thewebandoutputtinginformationonthescreento
theuser.
6.3.2.7. Interface
6.3.2.7.1. Theuserinteractswiththisprocessbyclickingon
theDeletebuttonlocatedontheirauthoredthread
bytheEditPostbutton.Thecommunication
betweentheuserandtheprogramhereismade
possiblethroughuseofcommonwebbrowser
interfacecomponents.
6.3.2.7.2. Theuserwillbeabletoconfirmtheirintentionto
deleteorcanceltheprocessinadeletion
confirmationdialogafterclickingtheDelete
button.
6.3.2.7.2.1. Optionallytheuserwillbeabletospecify
withinthedialogwhetherornottosimply
deletefuturepostswithoutthedialoginthe
futurewhentheDeletebuttonisclicked.
6.3.2.7.3. Theprocesswillaccessthedatabaseandremovethe
postifitcontainsnoreplies,orremovethethepost
authorandpostcontentiftherearereplies(thereby
keepingtherepliespresentinboththediscussion
boardandthedatabase.)
6.3.2.7.4.
Tocanceloutofthedeletionconfirmationdialog
theuserwillclickoutoftheboxorclickonthe
Cancelbutton.
6.3.2.8. Resources
6.3.2.8.1. Thisprocesswillnotrequireanyadditional
resourcesthanarerequiredforthecurrent
discussionboardsystem.
6.3.2.9. Processing
6.3.2.9.1. Theuserwillhavetheabilitytodeleteanypostthat
theyaretheauthorof.
6.3.2.9.1.1. Underthemaindiscussionboardprocess,
theuserhastheabilitytodeleteanyoftheir
ownposts.
6.3.2.9.1.2. WhentheuserclicksontheDeletebutton
ontheirposttheywillbepresentedwitha
confirmationdialogtoeitherconfirmthe
deletionorcancelit.
6.3.2.10. Data
6.3.2.10.1. Thedatabasecanremovethepostdataintheposts
tableinthediscussionboarddatabase.
6.3.2.10.1.1. Whentheuserconfirmsthedeletionand
therearenorepliesattachedtothepost:The
row,basedonthepostid,willbedeleted.
6.3.2.10.1.2. Whentheuserconfirmsthedeletionand
therearerepliesattachedtothepost:The
row,basedonthepostid,willhaveits
authorcolumnchangedtoDeletedandits
contentcolumnchangedtoDeleted.
6.3.2.10.2. Anewcolumnwillbeaddedtotheusertableas
auto_post_delete
user
...
...
auto_post_delete
bool
ThischangeistoaddresstheoptionalDeleteall
futurepostswithoutconfirming.optionwithinthe
postdeletionconfirmationdialog.
6.3.3. ArrangeandOrganizeThreads(Group3MattLayton)
6.3.3.1. Identification:ArrangingandOrganizingThreadsUnder
SpecificCategories
6.3.3.2. Type:Process
6.3.3.3. Purpose
6.3.3.3.1. Thepurposeofthisfeatureistoallowtheuserto
organizethreads
contributedbytheuserintocustom
categoriessotheycanbesortedforeasierviewing
bythestudent.
6.3.3.3.2. Thiswillallowtheusertofilterthroughtheselected
threadsquicklyandfindthosecategorizedthreads
easily.
6.3.3.4. Function
6.3.3.4.1. Thisprocessprovidesaninterfacethatwillallow
theusertoviewandarrangethreadswithinthe
discussionboards.
6.3.3.4.2. Auserwillbecapableofcreatingacustomizable
categorywithinthefilterofarrangingand
organizingthethreads.
6.3.3.4.3. Theuserwillhavetheabilitytoorganizeathread
byassigningthegiventhreadtoacustomcategory.
6.3.3.5.
Subordinates
6.3.3.5.1.
Theprocessofviewingthediscussionboards
function.
6.3.3.5.2. Theprocessofviewingthreadsthatotherusershave
contributedto
(describedin5.3.4).
6.3.3.5.3. Theprocessofthankingpostsbetweenall
studentscontributingtoadiscussion(describedin
5.2.8).
6.3.3.6. Dependencies
6.3.3.6.1. Thisprocessdependsonthediscussionboards
currentprocessofcreatingandstoringapost,along
withbeingabletoviewwhichthreadsthecurrent
userhascontributedto.
6.3.3.6.2. Theusermustbeallowedtoreadandwritefromthe
database.
6.3.3.6.3. Userinteractionwitharrangingandorganizing
threadswilldependontheprocessesofreceiving
inputthroughthewebandoutputtinginformation
onthescreentotheuser.
6.3.3.7. Interface
6.3.3.7.1. Theuserinteractswiththisprocessbyclickingon
theFilterBydropdownmenuandclickingona
6.3.3.7.2.
6.3.3.7.3.
6.3.3.7.4.
6.3.3.7.5.
6.3.3.7.6.
categoryprovidedbythediscussionboardorbya
customcategorymadebytheuser.The
communicationbetweentheuserandtheprogram
hereismadepossiblethroughuseofcommonweb
browserinterfacecomponents.
Theusercanalsointeractwiththisprocessby
clickingtheStudentAccounttabandthen
clickingonCreateCustomCategory.Thisthen
allowstheusertoinputacustomcategory.When
submitted,thecustomcategoryisoutputtedtothe
userthroughtheFilterBydropdownmenu.
Theprocesswillaccessthedatabasebyaddinga
customcategoryviathedescriptionabove.
Theusercanassignathreadtoacustomcategory
byclickingontheSettingsiconandthe
Organizetaboutputtingbythediscussionboard
underthegiventhread.Thediscussionboardthen
outputsalistofcategories,withtheabilitytoassign
oneofthemtothegiventhread.
Theprocesswillaccessthedatabasebyaddinga
customcategorytoaspecificthread.
TocanceloutofSettings,OrganizeorCreate
CustomCategorytabs,clickoutoftheboxorclick
ontheCancelbutton.
6.3.3.8. Resources
6.3.3.8.1. Thisprocesswillnotrequireanyadditional
resourcesthanarerequiredforthecurrent
discussionboardsystem.
6.3.3.9. Processing
6.3.3.9.1. Theuserwillhavetheabilitytoarrangeand
organizethreadsbasedoffofcategories.
6.3.3.9.1.1. Underthemaindiscussionboardprocess,
theuserhastheabilitytoviewalistof
threadsorganizedundercategoriesunderthe
FilterBydropdownmenu.
6.3.3.9.1.2.
Whentheuserclicksonacategory,itwill
gobacktothemaindiscussionboard
processbutinsteaddisplaysthreadsbased
onthecategoryselected.
Theuserwillhavetheabilitytoaddacustom
6.3.3.9.2.
category.
6.3.3.9.1.3.
Whenatthemaindiscussionboardprocess,
underStudentAccounttherewillbealink
toCreateCustomCategory.
6.3.3.9.1.4. UndertheCreateCustomCategorythe
userwillthenbeabletoinputtheirown
categoryandaddittothedatabase.
6.3.3.9.1.5. Thiswillthenallowtheusertoassigna
threadtothecustomcategorycreated.
6.3.3.9.3.
Theuserwillhavetheabilitytoassignathread
underacustomcategory.
6.3.3.9.1.6. Underagiventhread,theuserwillhavethe
abilitytoclickontheSettingsofthe
thread.
6.3.3.9.1.7. WhenunderSettingstheuserwillhave
theabilitytoclickonOrganize,which
willbethelocationwheretheusercan
assignthegiventhreadtoacategory.
6.3.3.9.1.8. TheOrganizelinkwillprovideapopup
thatwillhaveamenuofcategories.
6.3.3.9.1.9. WhentheuserclicksontheAssignbutton
nexttothecategory,thecategorywillthen
beassignedtothegiventhread.
6.3.3.9.1.10. Aftercategoryisassigned,theusermaynow
beabletoviewthegiventhreadunderthe
maindiscussionboardprocessunderthe
categoryselectedbytheFilterBydrop
downmenu.
6.3.3.10. Data
6.3.3.10.1.
Thedatabasecanstorethedatainthefollowing
tablesinthediscussionboarddatabase.
6.3.3.10.1.1.
Thecustom_categorytablestoresthe
categoriesavailabletoarrangethethreads
by.Eachcategoryshouldhaveauniqueid.
6.3.3.10.1.1.1. Theidshallbetheprimarykeyand
shallbeautomaticallyincremented.
6.3.3.10.1.1.2. Thecategory_nameshallnotaccept
anullvalue.
custom_category
id
int
category_name
varchar(60)
6.3.3.10.1.2. Thethreadtablestoresthethread_name,
thread,andtherelationshiptoacategory.
6.3.3.10.1.2.1. Theidshallbetheprimarykeyand
shallbeautomaticallyincremented.
6.3.3.10.1.2.2. Thecategory_idshallreferencethe
idfromthecategoriestable.
6.3.3.10.1.2.3. Thethread_nameshallnotaccepta
nullvalue.
6.3.3.10.1.2.4. Thethreadshallnotacceptanull
value.
thread
thread_id
int
category_id
int
Referencescustom_category(id)
thread_nam
e
varchar(60
)
thread
text
6.3.4.
ContributedThreads(Group3MattLayton)
6.3.4.1. Identification:Viewingcontributorstoposts
6.3.4.2. Type:Process
6.3.4.3. Purpose
6.3.4.3.1. Thepurposeofthisprocessistoshowthethreads
theuserhascontributedto.Thiswillallowtheuser
totracktheircontributionsmoreaccuratelyand
efficiently.
6.3.4.3.2. Theuserwillalsobeabletoviewothers
contributionstootherthreadsbasedoffoflatest
posttooldestsothattheusercantrackwhata
personhadmadecontributionsto.
6.3.4.4. Function
6.3.4.4.1. Theprocessshallprovideaninterfacethatwill
allowtheusertoviewcontributionsmadetoa
specificthreadunderthethreaditself.
6.3.4.4.2. Theinterfaceshallshowthecontributionsmadeby
auserbasedoffofhowrecentacontributionwas
made.
6.3.4.4.3. Theinterfaceshallalsoallowfortheusertoclick
onthecontributorsprofilepictureandviewother
contributionsthathavebeenmadebytheuserbased
offofmostrecentcontributiontoathread.
6.3.4.5.
Subordinates
6.3.4.5.1.
Theprocessofviewingathreadunderthemain
discussionboardprocess.
6.3.4.6. Dependencies
6.3.4.6.1. Thisprocessdependsonthediscussionboards
currentprocessofcreatingandstoringapostwithin
athread.
6.3.4.6.2. Theremustbeaccesstoadatabase,allowingthe
processtoreadfromandwritetoit.
6.3.4.6.3. Userinteractionwiththeprocesswilldependonthe
processesofreceivinginputthroughtheweb
interface,aswellasthatofdisplayinginformation
onthescreentotheuser.
6.3.4.7. Interface
6.3.4.7.1. Theuserfirstinteractswiththisprocessbyselecting
athreadandviewingcontributionsmadetothe
threadbasedoffoftheirprofilepicture.The
communicationbetweentheuserandtheprogram
hereismadepossiblethroughuseofcommonweb
browserinterfacecomponents.
6.3.4.7.2. Theprocesswillaccessthedatabasebyretrieving
contributionresultsmadeonathread.
6.3.4.7.3. Theprocesswilladdtothedatabasenew
contributionsmadetoaspecificthread.
6.3.4.7.4. Theprocesswillalsoaccessthedatabaseby
retrievingcontributionresultsmadebyeachuser.
6.3.4.8. Resources
6.3.4.8.1. Thisprocesswillnotrequireanyadditional
resourcesthanarerequiredforthecurrent
discussionboardsystem.
6.3.4.9. Processing
6.3.4.9.1.
Theuserwillhavetheabilitytoviewprofile
picturesofthosewhomadecontributionstoaspecificthread.
6.3.4.9.1.1. Fromthemaindiscussionboardprocess,the
userwillclickonalistofthreads.
6.3.4.9.1.2. Atthebottomofeachthreadwillbealistof
contributorsofthethreaditselfbasedoffof
theuser'sprofilepicture.
6.3.4.9.2.
Theuserwillhavetheabilitytoviewacontributor's
contributionstootherthreads.
6.3.4.9.1.3. Fromthegiventhread,theusershallhave
theabilitytoclickontheprofilepictureofa
contributor.
6.3.4.9.1.4. Oncetheprofilepictureisclicked,itshall
pullupapopuppage.
6.3.4.9.1.5. Theusershallthenbeabletoviewfromthe
popuppagethethreadcontributionsmade
bytheuser.
6.3.4.9.1.6.
6.3.4.9.1.7.
Thethreadsshallbeorganizedfromnewest
contributiontotheoldest.
Theusershallhavetheabilitytoclickthe
Cancelbuttontoreturntothethread.
6.3.4.10. Data
6.3.4.10.1.Thedatabasecanstorethedatainthefollowing
tablesinthediscussionboarddatabase.
6.3.4.10.1.1. Thecontributionstableshallbethelink
betweenamanytomanyrelationshipwith
theusertableandthethreadtable.
6.3.4.10.1.1.1. Theuser_idshallreferencetheid
fromtheusertable.
6.3.4.10.1.1.2. Thethread_idshallreferencetheid
fromthethreadtable.
contributions
user_id
int
Referencesuser(id)
thread_id
int
Referencesthread(id)
6.3.5. ReplyNotification
6.3.5.1. Identification:ReplyNotification
6.3.5.2. Type:Process
6.3.5.3. Purpose
6.3.5.3.1. Thisentityexistsbecauseitisessentialforauserto
bealertedwhensomeonehasrepliedtotheirpost.
Byreceivingareplynotificationauserwillbeable
toquicklyrespondtotheirresponses,creatinga
friendly,cooperativeenvironment.
6.3.5.4. Function
6.3.5.4.1. Whenauserreceivesaresponsetoaposttheywill
bealertedintwoways:iftheuserisloggedin,a
temporaryalertwillappearontheirscreenalerting
themofareply,theywillalsoreceiveanew
notificationinthenotificationareathatwhen
clickedwilltakethemtothespecificdiscussion
board.
6.3.5.5. Subordinates
6.3.5.5.1. Thisentitywillprovidetwointerfacemodulesfor
theusertointeractwith.Thefirstisapopup
notificationthatwillappearinthebottomright
corneroftheirwebbrowser,thisiscalledapopup
notificationandwillbeasmallrectanglewith
roundededgesthatstates,Notification:userxhas
repliedtoyourpostExamplePost.Thesecond
modulewillsimplybeanotificationthatappears
withtheglobalnotifications.
6.3.5.6. Dependencies
6.3.5.6.1. Thisentityisdependentonthepostentity.Whena
postissubmittedthereplynotificationentitywill
immediatelynotifythepostauthorthataresponse
hasbeenpostbymeansofthedesktopnotification
aswellasaglobalnotificationarea.
6.3.5.7. Interface
6.3.5.7.1. Theonlyentitythatinteractswiththisentityisthe
globalnotificationarea.Oncethereplynotification
isread,theglobalnotificationareawillreflectthis
changeandmarkthenotificationasread.
6.3.5.8. Resources
6.3.5.8.1. Thisprocesswillnotrequireanyadditional
resourcesthanarerequiredforthecurrent
discussionboardsystem.
6.3.5.9. Processing
6.3.5.9.1. Thereplynotificationentitywillbeinvokedoncea
replyhasbeenmadetoanauthorspost.Atthis
pointintimeitwillsendtwonotificationstothe
author,onebrowserpopup(iftheuserislogged
in),andanotificationintheglobalnotificationarea.
6.3.5.10. Data
6.3.5.10.1. PostIdtheidofthepostinthedatabase
AuthorIdtheidofthepostauthorinthedatabase
PostTitlethetitleofthepostforthenotification
6.3.6. UpdatedConclusionNearOriginalPost(Group3PadenJones)
6.3.6.1. Identification:PrioritizedConclusion
6.3.6.2. Type:Process
6.3.6.3. Purpose
6.3.6.3.1. Thepurposeofthisentityistoprovideuserswith
aneasytofindconclusiontoapostthread.This
willreducetheamountoftimeusersspendsifting
throughpostresponseslookingfortheconclusion.
6.3.6.4. Function
6.3.6.4.1. Thisentitywillplacethebestconclusionreply
(votedonbyusers)directlyunderneaththeoriginal
post.Userswillvoteonresponsesandtheresponse
withthemostvoteswillbepostedthere.Userswill
havetheoptiontohidetheprioritizedconclusionat
will.
6.3.6.5. Subordinates
6.3.6.5.1. Thisentitywillusethestandardreplyentity.
Essentiallythebodyofthemostvotedpostwill
appearinanewreplyentitydirectlybeneaththe
post.
6.3.6.6. Dependencies
6.3.6.6.1. ThisentitywillbedependentontheVoting
Capabilityentityasitwillrequireuserstovoteon
thebestconclusion.Itwillalsobedependedonthe
replyentityasitwilluseitasawrapper.
6.3.6.7. Interface:
6.3.6.7.1. Theinterfacewillmimicthereplyentity.
6.3.6.8. Resources:
6.3.6.8.1.
Thisprocesswillnotrequireanyadditional
resourcesthanarerequiredforthecurrent
discussionboardsystem.
6.3.6.9. Processing:
6.3.6.9.1. Votesonthebestconclusionwillbetotalled,the
bodyofthereplythathasthemostvoteswillbe
copiedtothefirstreplyonthepost.Allsubsequent
replieswillbelistedbelow.
6.3.6.10. Data:
6.3.6.10.1. ReplyIdidofthepostinthedatabase
6.3.6.10.2. ReplyBodythetextualbodyofthereplyfromthe
database
6.3.6.10.3. VoteCountthenumberofvotesthereplyhas
6.3.7. Voting(Group3)
6.3.7.1. Identification:VotingCapability
6.3.7.2. Type:Process
6.3.7.3. Purpose
6.3.7.3.1. Thepurposeofthisprocessistofacilitatetheactof
voting,whichissometimesdoneforclass
groupassignments.
6.3.7.3.2. Thiswillfacilitatetheprocessofcountingthe
resultsastherewouldbenoneedtomanuallycount
thevotes.
6.3.7.3.3. Theprocesswillmakeitmoreconvenientforthe
usertotracktheprogressofthevoteastheresults
aredisplayedtotheparticipantsautomatically
duringthevotingperiodwithoutrequiringanyone
torepeatedlyupdatetheresultbyhand.
6.3.7.4. Function
6.3.7.4.1. Thisprocessprovidesaninterfacethatwillallow
theusertoselectoneofanumberofoptions
withouthavingtopostauniqueentryona
discussionthread.
6.3.7.4.2. Auserwillbecapableofdesignatingapostasa
votepost,aspecialtypeofpostthatallows
6.3.7.4.3.
membersoftheclasstoselectoneoftheprovided
options.
Thepostitselfdisplaysthesubjectofthevote,the
options,andtheresultsforeachoption(acountof
thosewhohavevotedforthatoption)
6.3.7.5. Subordinates
6.3.7.5.1. Theprocessofcreatingavotepost(aspecialtype
ofpostthatallowsmembersoftheclasstoselect
oneoftheprovidedoptions.)
6.3.7.5.2. Theprocessofplacingavotebyselectingoneof
theoptionsinthevotepostandthenclickingthe
votebutton.
6.3.7.5.3. Theprocessofreadingvotedata(fromthe
discussionboarddatabase)specifictoanyonevote
post.
6.3.7.5.4. Theprocessofdeterminingwhetherauserhas
alreadyplacedavoteinaspecificvotepost.
6.3.7.5.5. Theprocessofwritingvotedata(tothediscussion
boarddatabase)specifictoanyonepost.
6.3.7.5.6. Theprocessofoverwritingvotedata(tothe
discussionboarddatabase)iftheuserhasalready
hadapreviousvote.
6.3.7.6. Dependencies
6.3.7.6.1. Thisprocessdependsonthediscussionboards
currentprocessofcreatingandstoringapost,asthe
6.3.7.6.2.
6.3.7.6.3.
votepostwillbeaslightmodificationofthe
existingprocess.
Theremustbeaccesstoadatabase,allowingthe
processtoreadfromandwritetoit.
Userinteractionwiththeprocesswilldependonthe
processesofreceivinginputthroughtheweb
interface,aswellasthatofdisplayinginformation
onthescreentotheuser.
6.3.7.7. Interface
6.3.7.7.1. Theuserfirstinteractswiththisprocessbyselecting
thevotepostcheckbox(withinthenewpostinput
area)afterchoosingtocreateapost.The
communicationbetweentheuserandtheprogram
hereismadepossiblethroughuseofcommonweb
browserinterfacecomponents.
6.3.7.7.2. Theuseragaincommunicateswiththeprogram
throughthebrowserinterfacebyinputtingthe
informationneededtocreateavotepost:namely
thesubjectofvotingandtheoptions.
6.3.7.7.3. Thecreationofthevotepostcanbeterminatedby
clickingtheCancelbutton,doingsowillcausethe
inputareatodisappear.
6.3.7.7.4.
Theprocesswillaccessthedatabasebyretrieving
voteresultsaswellasthevotesubjectandoptions
tobedisplayed.
6.3.7.7.5. Theprocesswilladdtothedatabasenewlycreated
votesubjectsandoptions,andusersfirstvote
(alongwiththeiruseridforuniqueidentification)
onanygivenvotepost.
6.3.7.7.6. Theprocesswillmodifythedatabasewhenauser
changeshisorhervoteafterhavingalreadyvoted.
Theprogramcanrecognizewhetherornottheuser
hasvotedinanygivenpostbysearchingforthe
usersidinthedatabase.
6.3.7.8. Resources
6.3.7.8.1. Thisprocesswillnotrequireanyadditional
resourcesthanarerequiredforthecurrent
discussionboardsystem.
6.3.7.9. Processing
6.3.7.9.1. Theprocessshallbeinitiatedwhenauserchecksa
votepostcheckboxduringthecreationofapost.
6.3.7.9.1.1. Thecreationofapostreferstowhenthe
userclicksreplyonsomeonespost.
6.3.7.9.1.2. Theoriginalpostcreationboxshallbe
replacedwiththevotepostcreationbox.
6.3.7.9.1.3. Forthisboxthereshallbeareastoreceive
userdefinedoptions,ratherthanthepost
bodyinputareaseenintheoriginalpost
creationbox.
6.3.7.9.1.4. Bydefaultthereshallbetwoareasinwhich
theusercantypeanoption.
6.3.7.9.1.5. UponclickingtheAddOptionbutton,
anotherareaforinputtinganoptionshall
appearbelowtheothers.
6.3.7.9.1.6. UponclickingtheRemoveOptionbutton,
thesystemshallremovethelastoption.
6.3.7.9.1.6.1. Thisshallonlyworkifthereareat
leastthreeoptionsavailablebefore
thetransaction.
6.3.7.9.1.6.2.
Iftherearenotatleastthreeoptions
available,thesystemshalldisplaya
notificationtotheusersaying:
Theremustbeatleasttwooptions
6.3.7.9.1.7. Theusershallfillintheavailableareas.
6.3.7.9.1.8. UponclickingthePostbutton(atthe
bottomofthepostcreationbox)thesystem
shallverifytoseethatalloftheinputareas
havebeenfilled.
6.3.7.9.1.9. Ifanyoftheboxeshavenotbeenfilled,the
systemshalldisplayanotificationtothe
userasitdoesforthecurrentsystem.
Howeveraddedtothelistoferrorswillbe
Alloptionsmustbefilled.
6.3.7.9.1.10. Iftheinputshavebeenfilledcorrectly,the
systemshalladdanewvoteposttothe
database,includingthevotesubjectandthe
options.
6.3.7.9.1.11. Ifthereisanerroraddingtheoptionstothe
database,theusershallbenotifiedwiththe
followingmessageinthesameplacewhere
errormessagesaredisplayedintheexisting
discussionboardsystem:Therewasan
errorsavingthevotepost,pleasetryagain
later
6.3.7.9.1.12. Alsouponfailuretowritetothedatabase,
thesystemshallremainintheeditingstate
thatitwasinbeforeclickingthePost
button.
6.3.7.9.1.13. Thesystemshallremainintheeditingstate
untiloneofthefollowingoccurs:clicking
Postsuccessfullywritestothedatabase,
theuserclicksCancel,ortheuser
performssomeotheractionbythebrowser
thatwouldnavigateawayfromthe
discussionboard.
6.3.7.9.2. Uponsuccessfullywritingtothedatabase,the
systemshallreturntothemaindiscussionboard
process,thenewlycreatedpostshallbeshownjust
asitwouldbefortheexistingsystem.
6.3.7.9.2.1. Thevotepostshallbedistinguishedfroma
normalpostbydisplayingthewordVote
abovetheQuestion.
6.3.7.9.2.2. Thequestionshallappearasthetopicina
normalpost.
6.3.7.9.2.3. Everyoptionshallappearbelowthetopic,
oneoptionperline.
6.3.7.9.2.3.1. Everyoptionshallbeprecededby
thenumberofvotesthathavebeen
castforthatoption,aswellasa
buttonthatcanbeclickedtoselect
anoption.
6.3.7.9.2.3.1.1. Thebuttonshallhavea
uniqueletteridentifyingthe
option,startingwithaasthe
first.
6.3.7.9.2.3.1.2. Iftherearemorethan26
options,the27thoptionshall
beidentifiedwithaa,the
28thbyabandsoforth
continuingthepattern.
6.3.7.9.3. Oncethevoteposthasbeencreated,alluserswill
beabletoparticipateinthevotebyfirstclickingthe
buttonnexttoanoptionandthenclickingthe
Votebuttonatthebottomofthepost.
6.3.7.9.3.1. Clickingthebuttonnexttoanoptionshall
changetheimageofthebuttonsothatitis
distinguishablefromthosethathavenot
beenselected.
6.3.7.9.3.2. UponclickingtheVotebutton,thesystem
shallverifythatoneoftheoptionshasbeen
selected.
6.3.7.9.3.2.1. Iftheuserhasnotyetselectedan
option,anotificationshallappear,
saying:Pleasefirstselectanoption
byclickingthebuttonnexttoit.
6.3.7.9.3.3.
Iftheuserhadselectedoneoftheoptions
beforeclickingVotethesystemshall
proceedtoverifyiftheuserhadvoted
beforeinthisspecificvotepost.
6.3.7.9.3.3.1. Thesystemshallaccess(fromthe
database)alistofuserswhohave
participatedinthegivenvotepost.
6.3.7.9.3.3.2. Iftheusersuniqueidentifieris
foundinthatlist,thesystemshall
accessthepreviousvotestoredby
thatuserandshalltemporarilystore
thevalue.
6.3.7.9.3.4. Iftheuserhadnotplacedavote,thesystem
shalladdtheusersvoteaswellastheusers
uniqueidentifiertothedatabase.
6.3.7.9.3.5. Iftheuserhadalreadyplacedavote,the
systemshallmodifythevotecount,
removingtheusersoldvote(asstored
previously)andaddingthenewvote.
6.3.7.9.3.6. Ifthereisafailureaddingtheinformationto
thedatabase,thesystemshallnotifytheuser
withthefollowingmessage:Therewasan
errorreceivingyourvote,pleasetryagain
later.
6.3.7.9.3.7. Uponfailuretoaccessthedatabase,the
systemshallreturntothestatethatitwasin
immediatelyprevioustotheclickofthe
Votebutton.
6.3.7.9.4. Ifthevoteissuccessfullyplacedandstored,the
systemshallupdatetheviewtoshowthenewvote
countforeachoptioninthepost.
6.3.7.9.4.1. Theoptionwiththemostvotesshallbe
distinguishedbyagreensquarearoundthe
number.
6.3.7.9.4.1.1. Ifmultipleoptionshavethesame
count,tiedforthemostbutnot0,
eachofthoseoptionsshallhavea
yellowsquarearoundthecount.
6.3.7.10. Data
6.3.7.10.1. Thedatabasecanstorethedatainthefollowing
tablesinthediscussionboarddatabase.
6.3.7.10.1.1. Thevote_poststableistokeeptrackofeach
individualvotepost,storingthesubject
thatusersaretovotefor.Eachposthasa
uniqueid.
6.3.7.10.1.1.1. Theidshallbetheprimarykeyand
shallbeautomaticallyincremented.
6.3.7.10.1.1.2. Thesubjectshallnotacceptavalue
ofnull.
vote_posts
id
int
subject
text
6.3.7.10.1.2.
Thevote_optionstablestoresallofthe
optionsofallofthevotepostsinthe
system.Eachoptionhasthecontentofthe
option,auniqueid,aswellasanassociated
votepost.Therewillbemorethanone
optionassociatedwitheachvotepost.
6.3.7.10.1.2.1. Theidcolumnshallbeaprimary
key,automaticallyincrementedupon
creation.
6.3.7.10.1.2.2. Theoptioncolumnshallnotallow
avalueofnulltobestored.
6.3.7.10.1.2.3. Thevote_postcolumnshallnot
receiveanumberthatdoesnot
correspondtotheidvalueofanentry
inthevote_poststable.
vote_options
id
int
option
text
vote_post
int
Referencesvote_posts(id)
6.3.7.10.1.3.
Theuser_votestablekeepstrackofallofthe
votesmadeinalloftheposts.Eachvote
references(byforeignkey)anoptionfrom
theoptionstableaswellasthepostwith
whichitisassociated.Theuser_idisalso
storedsothatthesystemcankeeptrackof
whohasalreadyplacedvotesforagiven
post.
6.3.7.10.1.3.1. Thepost_idcolumnshallnotaccept
anumberthatdoesnotcorrespondto
theidvalueofanentryinthe
vote_poststable.
6.3.7.10.1.3.2. Theuser_idcolumnshallnotaccept
avalueofnull.
6.3.7.10.1.3.3. Theuser_votecolumnshallnot
receiveanumberthatdoesnot
correspondtotheidvalueofanentry
inthevote_optionstable.
user_votes
post_id
int
Referencesvote_posts(id)
user_id
text
user_vote
int
Referencesvote_options(id)
6.3.7.10.1.4.
Forsimplicity,thetablesareshownasifthis
wereastandaloneprocesshoweverthere
willlikelybeothercomponentstothetable
neededinorderforthediscussionboard
systemtoworkwiththenewpostsasit
6.3.7.10.1.5.
currentlydoeswiththetraditionalposts.
Therefore,theshowntablesmaybeseenas
includingrowsthatmaybeaddedtothe
system,whetherindependentlyoras
additionstoexistingtables.
Theforeignkeyrelationshipbetweenthe
tablesissummarizedwiththefollowing
image.
6.3.8.
ThankPosts(Group3)
6.3.8.1. Identification:Capabilitytothankposts
6.3.8.2. Type:Process
6.3.8.3. Purpose
6.3.8.3.1. Thepurposeofthisprocessistohelpthemost
usefulandrelevantpoststostandoutsothat
studentscanmoreeasilyfindtheinformationthat
theyarelookingfor.
6.3.8.3.2. Oftenquestionsarepostedonthediscussionboards,
someanswersmaybemoreusefulthanothers.
6.3.8.3.2.1. Somepostsmaynotevenhaveanswers,
suchasthosewithclarifyingquestions.
6.3.8.3.2.2. Someanswersmayhavebeencreatedby
studentswhomisunderstoodthequestion.
Someanswersmaybespeculations,whose
conclusionswereunclearwhenposted.
Whenothersareabletoputtheideainto
practice,theymayfindittobeavaluable
post.
6.3.8.3.2.3. Somepostssimplyoughttobemadeto
standoutbecauseoftheirqualitycontent.
6.3.8.3.3. Studentscanshowandreceiveappreciationfor
effortswithouthavingtocluttertheboardwith
moreposts.
6.3.8.3.3.1. Thispositivereinforcementmayencourage
studentstoparticipateinthediscussion
boards.
6.3.8.3.4. Professorsmayofferanextracreditincentiveto
thosewhocreatethemostusefulposts,encouraging
qualitycontributionstotheclass.
6.3.8.4. Function
6.3.8.4.1. Auserclicksthethankbuttonatthebottomofa
post.
6.3.8.4.2. Oneisaddedtothethankcount(anumbernextto
thethankbutton)aslongasthatpersonhasnot
alreadythankedthatpost.
6.3.8.5. Subordinates
6.3.8.5.1. Theprocessofaccessingthedatabasetodetermine
thenumberofthanksthathavebeenmadeforeach
post.
6.3.8.5.2. Theprocessofaccessingthedatabasetodetermine
whetherauserhasalreadythankedacertainpost.
6.3.8.5.3. Theprocessofmodifyingthedatabasetoupdatethe
numberofthanksforapost.
6.3.8.5.4. Theprocessofupdatingtheviewsothattheuser
canseethatthethankwascounted.
6.3.8.6. Dependencies
6.3.8.6.1. Thisprocessdependsonthediscussionboard
havingpostssothatthisfeaturecanbeaddedto
them.
6.3.8.6.2. Theremustbeaccesstoadatabase,allowingthe
processtoreadfromandwritetoit.
6.3.8.6.3.
Userinteractionwiththeprocesswilldependonthe
processesofreceivinginputthroughtheweb
interface,aswellasthatofdisplayinginformation
onthescreentotheuser.
6.3.8.7. Interface
6.3.8.7.1. Theusershallinteractwiththesystembyclicking
thethankbuttonthatappearsonapost.The
communicationbetweentheuserandtheprogram
hereismadepossiblethroughuseofcommonweb
browserinterfacecomponents.
6.3.8.7.2. Theprocesswillaccessthedatabaseinorderto
determinewhetherornotauserhasalreadythanked
apost.
6.3.8.7.3. Theprocesswillmodifythedatabaseinorderto
updatethethankcountforagivenpost.
6.3.8.7.4. Theprocesswilladdtheusersuniqueidentifierto
thedatabasetoshowthatheorshehasthankedthat
post.
6.3.8.8. Resources
6.3.8.8.1. Thisprocesswillnotrequireanyadditional
resourcesthanarerequiredforthecurrent
discussionboardsystem.
6.3.8.9. Processing
6.3.8.9.1. Theprocessshallbeinitiatedwhenauserclicksthe
thankbutton.
6.3.8.9.2. Thesystemshallsearchfortheuser_idinthepartof
thedatabaseassociateswiththegivenposttoseeif
thegivenuserhasalreadythankedthatpost.
6.3.8.9.3. Iftheuserhasalreadythankedthepost,theprocess
willendandthediscussionboardwillreturntoits
normalprocess.
6.3.8.9.4. Iftheuserhasnotthankedthepost,thesystemshall
accessthethankcountfromthedatabaseincrement
itbyone,andmodifythepreviousvalueby
replacingitwiththenewvalue.
6.3.8.9.5. Thediscussionboardwillthenreturntoitsnormal
process,displayingthepostwiththeupdatedthank
count.
6.3.8.10. Data
6.3.9. Hashtags(Group1)
6.3.9.1. Identification
6.3.9.1.1. Hashtaginclusion
6.3.9.2. Type:Process
6.3.9.3. Purpose
6.3.9.3.1. Thepurposeofthisfeatureistoallowuserstotag
postswithhashtags.
6.3.9.3.2. Thiswillallowrelevanttopicstobefilteredthrough
moreeasilywithclickablehashtags.
6.3.9.4. Function
6.3.9.4.1. Ausermayaddahashtagtoapostbyplacingthe
poundsign#infrontofawordorphrasewithout
spaces.
6.3.9.4.2. Thepostwillrecognizeitasahashtagandturnit
intoaclickablesearchlink.
6.3.9.4.3. Oncethepostissubmitted,usersmayclickonthe
hashtagtosearchthroughallpostsforthatsame
hashtag.
6.3.9.4.4. Thesystemwilldisplayalistofpostscontaining
thathashtagwiththemostrecentlistedatthetop.
6.3.9.5. Subordinates
6.3.9.5.1. Aprocesstowritepostsonthediscussionboard.
6.3.9.5.2. Aprocesstodisplaythepostswrittenonthe
discussionboard.
6.3.9.5.3. Aprocesstosearchpostswithinmultiplediscussion
boards.
6.3.9.6. Dependencies
6.3.9.6.1. Thisprocessdependsonthediscussionboard
havingthecapabilitytocreateanewpost.
6.3.9.6.2. Theremustbeaconnectionwiththedatabaseto
saveandretrievepoststothediscussionboard.
6.3.9.6.3. Thisprocessmustalsobeabletoaccessallofthe
postsonalloftheclassdiscussionboardstosearch
forpostswiththesamehashtag.
6.3.9.7. Interface
6.3.9.7.1. Auserfirstinteractswiththesystembyclickingthe
buttontocreateanewpost.
6.3.9.7.2. Thesystemthendisplaysapostboxfortheuser.
6.3.9.7.3.
6.3.9.7.4.
6.3.9.7.5.
6.3.9.7.6.
Theuserthentypestheirmessageinthepostbox,
includingapoundsigntocreatethehashtag.
Theuserthenhitsthepostbuttontosubmitthepost
tothedatabase.
Thesystemconvertsthehashtagintoaclickable,
searchablelink.
Thedatabasestoresthepostanddisplaysthepost
onthediscussionboard.
6.3.9.8. Resources
6.3.9.8.1. Thisprocesswillnotrequireanyadditional
resourcesthanarerequiredforthecurrent
discussionboardsystem.
6.3.9.9. Processing
6.3.9.9.1. Theprocessbeginswhentheuserstartsanewpost
onthediscussionboard.
6.3.9.9.2. Thesystemshalldisplayablankpostboxforthe
usertoentertheirmessage.
6.3.9.9.3. Thesystemshallallowuserstoaddhashtagstothe
contentoftheirpostbyrecognizingwordswritten
directlyafterapoundsign#asahashtag.
6.3.9.9.4. Theusermustthensubmitthepostforprocessing.
6.3.9.9.5. Thesystemshallconvertthehashtagintoa
clickable,searchablelink.
6.3.9.9.6. Thesystemshallsavethepostinthedatabaseand
displaythemessageonthediscussionboard.
6.3.9.10. Data
6.3.9.10.1. Theuserspostshallbesavedinthedatabase.
6.3.9.10.2. Theusershashtagshallbesavedaspartofthe
message.
6.3.9.10.3. Theusershashtagshallalsobesavedinahashtag
databasewithalinktotheposttomakesearching
quicker.
6.3.10. SearchContent(Group1)
6.3.10.1. Identification:Searchpostcontentwithoutexpansion
6.3.10.2.
Type:Process
6.3.10.3. Purpose
6.3.10.3.1. Thisfeaturewillallowuserstosearchallofthe
contentsofathreadwithoutexpandingeach
individualpost.
6.3.10.3.2. Thiswillallowtheusertogetmoreaccuratesearch
resultsandtogetthemmoreeasily.
6.3.10.4. Function
6.3.10.4.1. Ausercantypeasearchtermintothesearchbox
providedatthetopofthediscussionpage.
6.3.10.4.2. Thesystemwillperformasearchthroughallofthe
postsinthediscussionboardincludingvisibleand
collapsedposts.
6.3.10.4.3. Thesystemwilldisplayalistofpostscontaining
thatsearchtermsortedbydatewiththemostrecent
postlistedatthetop.
6.3.10.5. Subordinates
6.3.10.5.1. Aprocesstodisplaypostswritteninthediscussion
board.
6.3.10.5.2. Aprocesstosearchpostswritteninthediscussion
board.
6.3.10.6. Dependencies
6.3.10.6.1. Thisprocessdependsonthesystemhaveaccessto
thedatabase.
6.3.10.6.2. Messagesmustbestoredinthedatabase.
6.3.10.6.3. Searchesmustbeperformedatthedatabaselevelin
ordertosearchthroughallvisibleandcollapsed
posts.
6.3.10.7. Interface
6.3.10.7.1. Theuserstartstheinteractionwiththesystemby
enteringasearchtermintotheprovidedsearchbox
andclickingthesearchbutton.
6.3.10.7.2. Thesystemreceivesthesearchtermandsorts
throughmessagesinthedatabasetofindposts
containingthatsearchterm.
6.3.10.7.3. Thesystemdisplaysthelistofsearchresultsonthe
discussionboardfortheuser.
6.3.10.8. Resources
6.3.10.8.1. Thisprocesswillnotrequireanyadditional
resourcesthanarerequiredforthecurrent
discussionboardsystem.
6.3.10.9. Processing
6.3.10.9.1. Thesystemshalldisplayasearchboxatthetopof
thediscussionboardalongwithasearchbuttonnext
tothebox.
6.3.10.9.2. Theusermaytypeasearchtermintothesearchbox
andclickthesearchbuttontoperformthesearch.
6.3.10.9.3. Thesystemshallsearchthroughpostsinthe
databasetofindanypostthatcontainsthematching
phrase.
6.3.10.9.4.
Thesystemshalldisplayalistofpoststhatcontain
thesearchterm.
6.3.10.10. Data
6.3.10.10.1. Allpostsshallbesavedinthedatabaseforquick
searchingcapabilities.
6.3.10.10.2. Postsshallbedisplayedonthediscussionboard.
6.3.10.10.3. Searchtermswillbesavedasatemporaryvariable
thatwillbedeletedoncethesearchisfinished.
6.3.11. ReferencePersons(Group1)
6.3.11.1. Identification:Referenceanotheruser
6.3.11.2. Type:Process
6.3.11.3. Purpose
6.3.11.3.1. Thepurposeofthisfeatureistoallowtheuserto
directtheirposttoaspecificperson.
6.3.11.3.2. Thisfeaturewillallowforbettercommunicationas
thepersonbeingreferencedwillreceivea
notificationthatsomeonehasaddressedthemina
post.
6.3.11.4. Function
6.3.11.4.1. Ausercanaddareferencetoanotheruserbytyping
anatsymbolfollowedbyaleftparenthesis@(.
6.3.11.4.2. Theusercanthentypethenameoftheuserthey
wouldliketoreferenceinthepost.
6.3.11.4.3. Thesystemwillpopulatealistofsuggestedusers
thatmatchthetypednameastheuseristypingin
thename.
6.3.11.4.4. Theusercanthenselectthenamefromthe
populatedlistortypeoutthefullname.
6.3.11.4.5. Iftheuserwouldliketoreferenceanotheruser,they
canseparatethembytypingacommabeforetyping
thenextusersname.
6.3.11.4.6. Theusermustfinishthereferencebyclosingitwith
arightparenthesis).
6.3.11.4.7.
Oncetheposthasbeensubmitted,thesystemwill
sendanotificationtothetaggeduser(s)referencing
theposttheyhavebeenreferencedin.
6.3.11.5. Subordinates
6.3.11.5.1. Theprocesstowritepoststothediscussionboard.
6.3.11.5.2. Theprocesstodisplaypostswrittenonthe
discussionboard.
6.3.11.5.3. Theprocesstoaccessalluserswithaccesstothat
discussionboard.
6.3.11.5.4. Theprocesstodisplaytheuserswithaccesstothat
discussionboard.
6.3.11.5.5. Theprocesstosendnotificationstousers.
6.3.11.6. Dependencies
6.3.11.6.1. Thesystemmusthaveaccesstothedatabasetosave
anddisplayposts.
6.3.11.6.2. Thesystemmusthaveaccesstothedatabaseto
searchforusers.
6.3.11.6.3. Thesystemmustbeabletosendnotificationsto
users.
6.3.11.7. Interface
6.3.11.7.1. Theprocessbeginswhentheusercreatesanew
post.
6.3.11.7.2. Thesystemdisplaysanemptypostboxfortheuser
tocreatethepost.
6.3.11.7.3. Theuserstartsareferencetoanotheruserbytyping
@(followedbytheusersname.
6.3.11.7.4. Thesystemsearchesthedatabaseanddisplays
optionsofusersthatmatchtheenteredtext.
6.3.11.7.5. Theuserclicksontheusertheywishtoreference.
6.3.11.7.6. Theuserfinishesthereferencebytyping)and
clickingpost.
6.3.11.7.7. Thesystemsavestheposttothedatabase.
6.3.11.7.8.
6.3.11.7.9.
Thesystemnotifiestheuserthathasbeentaggedin
thepost.
Thesystemdisplaysallpostsonthediscussion
board.
6.3.11.8. Resources
6.3.11.8.1. Thisprocesswillnotrequireanyadditional
resourcesthanarerequiredforthecurrent
discussionboardsystem.
6.3.11.9. Processing
6.3.11.9.1. Theusershallfirstclickthenewpostbuttonto
createanewpostinthediscussionboard.
6.3.11.9.2. Thesystemshalldisplayanemptypostboxforthe
usertotypetheirmessage.
6.3.11.9.3. Theusermayreferenceanotheruserinthepostby
typing@(followedbytheusersname.
6.3.11.9.4. Thesystemshallsearchthedatabaseforallusers
whohaveaccesstothatdiscussionboard.
6.3.11.9.5. Thesystemshallpopulatealistfortheuserthat
includesallnamesthatmatchthetypedname.
6.3.11.9.6. Theusermayclickonanamethatmatchestheuser
theywishtoreference.
6.3.11.9.7. Theusershallclickposttosubmittheirpostand
reference.
6.3.11.9.8. Thesystemshallsavetheposttothedatabase.
6.3.11.9.9. Thesystemshallnotifythereferenceduserthatthey
havebeenreferencedinadiscussionboardpost.
6.3.11.9.10. Thesystemshalldisplaythepostswrittenonthe
discussionboard.
6.3.11.10. Data
6.3.11.10.1. Thediscussionboardpostshallbesavedtothe
database.
6.3.11.10.2. Thedatabaseshalldisplaythepostsforthat
discussionboard.
6.3.11.10.3. Thereferencednameshallbesavedinthedatabase
andtiedtothemessageitwasreferencedin.
6.3.12.
EmailNotifications(Group1)
6.3.12.1. Identification:EmailNotifications
6.3.12.2. Type:Process
6.3.12.3. Purpose
6.3.12.3.1. Thepurposeofthisfeatureistoalertstudents
throughemailwhenanimportantposthasbeen
madesoastoensurethateveryoneseesit.
6.3.12.4. Function
6.3.12.4.1. Theuserwillbeabletomarkapostasimportant
whentheyaremakingthepost.Doingsowillsend
anemailnotificationtoallusersofthatdiscussion
board,indicatingthatanimportantposthasbeen
made.
6.3.12.4.2. Anypostshallhavetheabilitytobemarkedas
important.
6.3.12.4.3. Theareainwhichapostisinputshallcontaina
buttonallowingtheusertoindicatethatthepostis
important.
6.3.12.4.4. Ifthisbuttonisclickedasecondtime(afterhaving
clickeditasimportant),thesystemwillrestorethe
statusofthemessagetobenotimportant.
6.3.12.4.5. Anemailnotificationshallbesenttoallusersofthe
discussionboardeverytimeapostissubmittedafter
havingmarkedasimportant.
6.3.12.4.6. Theemailshallcontainthenameofthediscussion
topicandthreadaswellasalinktothepost.
6.3.12.4.7. Thesystemshallperformthesametaskswiththe
emailedlinkasitwouldwiththediscussionboard
pagelink.
6.3.12.5. Subordinates
6.3.12.5.1. Aprocessformarkingapostasimportant.
6.3.12.5.2. Aprocessforsendinganemailmessagetoallusers
ofadiscussionboardinwhichapostismarkedas
important.
6.3.12.5.3. Aprocessoflinkingtospecificdiscussionboard
posts
6.3.12.6. Dependencies
6.3.12.6.1. ThisprocessdependsontheILearnscurrentability
tosendemails
6.3.12.6.2. Thisprocessrequiresaccesstothedatabase,
allowingtheprocesstoreadfromandwritetoit.
6.3.12.6.3. Userinteractionwiththeprocesswilldependonthe
processesofreceivinginputthroughtheweb
interface,aswellasthatofdisplayinginformation
onthescreentotheuser.
6.3.12.7. Interface
6.3.12.7.1. Theuserinteractswiththisprocessbyclickinga
MarkasImportantbuttonwhilecreatingorediting
thepost.
6.3.12.7.2.
6.3.12.7.3.
6.3.12.7.4.
Theuserinteractswiththisprocesswhenclickinga
linkwithintheiremailthatdirectsthemtoposts
withinthethreadmarkedasimportant.
Theprocesswillaccessthedatabasetoretrieve
emailaddressesandusersassociatedwitha
discussionboard.
6.3.12.7.5.
Theprocesswillmodifythedatabasetomarkapost
asimportant.
6.3.12.8. Resources
6.3.12.8.1. Thisprocesswillnotrequireanyadditional
resourcesthanarerequiredforthecurrent
discussionboardsystem.
6.3.12.9. Processing
6.3.12.9.1. Theprocesswillbeinitiatedwhenauserclicksthe
markpostasimportantbuttonduringthecreation
oreditofapost.
6.3.12.10. Data
6.3.12.10.1. Thedatabasewillstoreanimportantflagoneach
post.
6.3.12.10.2. Thedatabasewillstoreallusersassociatedwitha
discussionboard
6.3.12.10.3. Thedatabasewillstorealogofwhichstudentswere
emailedforapostandwhen.
6.3.13. SingleScreenAccess(Group1)
6.3.13.1. Identification:SingleScreenAccess
6.3.13.2. Type:Process
6.3.13.3. Purpose
6.3.13.3.1. Thepurposeofthisfeatureistoreducetheamount
oftimeittakestomakeorreplytopostson
discussionboards.
6.3.13.3.2. Timespentondiscussionboardswillbelessenedas
userswillnothavetoclickbackandforthbetween
multiplepagestoreadinitialpostsandresponse
posts.
6.3.13.3.3. Userswillbeabletomaketheirinitialpostand
replytootherclassmemberspostsfromthesame
page,makingtheprocessfasterandsimpler.
6.3.13.4. Function
6.3.13.4.1.
6.3.13.4.2.
6.3.13.4.3.
6.3.13.4.4.
6.3.13.4.5.
6.3.13.4.6.
6.3.13.4.7.
6.3.13.4.8.
6.3.13.4.9.
6.3.13.4.10.
6.3.13.4.11.
6.3.13.4.12.
6.3.13.4.13.
6.3.13.4.14.
Theuserwillbeabletoselectatopicfromthe
ILearndiscussionboardpageandtheywillhave
accesstoallposts(includinginitialpostsandany
replyposts)relatedtothetopic
Fromthesamepagetheywillalsobeabletomake
theirowninitialpost,orreplytoanexistingpost.
Thesystemshallallowtheusertoseeallexisting
posts(inallthreadsrelatedtoatopic)fromthetopic
page.
Thesystemshallallowtheusertoexpandany
numberofthreadsrelatedtoasingletopicfromthe
topicpage.
Allcommentswillbeinacollapsedstatebydefault.
Whenapostisexpandedanycommentsbelowthe
expandedpostwillbepushedfurtherdownthepage
tomakeroomfortheexpandedpost.
Onceexpandedapostwillremainexpandeduntil
theusercollapsesit.
Thesystemshallallowtheusertocollapseany
numberofthreadsrelatedtoasingletopicfromthe
topicpage.
Thesystemshallallowtheusertomakeanewpost
onthetopicpagewithouthavingtonavigatetoa
newpage.
Postsundereachtopicwillbeorganizedwiththe
mostrecentpostatthetopandolderpostsbeneath,
withonlytheexceptionofimportantorliked
postsabovethemostrecentpost.
Thesystemshallallowtheusertoreplytoan
existingpostfromthetopicpagewithouthavingto
navigatetoanewpage.
Theuserwillhavetheabilitytoreplytoapostonly
whentheposthasbeenexpanded.
Thesystemshallrememberthearrangementof
threads(whichoneswerecollapsedandwhichwere
expanded)whentheuniqueuserleavesthepage.
Thesystemshallrestorethearrangementofthreads
(whichoneswerecollapsedandwhichwere
expanded)whentheuniqueuserloadsthepageafter
havingpreviouslyarrangedit.
6.3.13.5. Subordinates
6.3.13.5.1. Theprocessofdisplayingallpostswithinathread
onasinglepage.
6.3.13.5.2. Theprocessofaddinganewpost.
6.3.13.5.3. Theprocessofrespondingtoapost.
6.3.13.5.4. Theprocessofexpandingandcollapsingathread.
6.3.13.5.5. Theprocessofsortingpostsbyimportant,liked,
andage.
6.3.13.5.6. Theprocessofstoringthecollapsedandexpanded
stateofdiscussionthreadsforeachuser.
6.3.13.5.7. Theprocessofrestoringthecollapsedandexpanded
stateofdiscussionthreadsforeachuser.
6.3.13.6. Dependencies
6.3.13.6.1. Thisprocessdependsontheabilitytoviewthreads
andposts
6.3.13.6.2. Thisprocessdependsontheabilitytocollapseand
expandadiscussionthread.
6.3.13.6.3. Thisprocessdependsontheabilitytoaddanew
post.
6.3.13.6.4. Thisprocessdependsontheabilitytostoreand
restorethecollapsedandexpandedstateof
discussionthreads.
6.3.13.7. Interface
6.3.13.7.1. Theuserwillbeabletoselectatopicfromthe
ILearndiscussionboardpageandtheywillhave
accesstoallposts(includinginitialpostsandany
replyposts)relatedtothetopic
6.3.13.7.2. Fromthesamepagetheywillalsobeabletomake
theirowninitialpost,orreplytoanexistingpost.
6.3.13.7.3. Theuserwillbeabletoexpandorcollapseaportion
ofathreadoranentirethread.Thecollapsedor
expandedthreadswillberememberedperuser.
6.3.13.8. Resources
6.3.13.8.1. Thisprocesswillnotrequireanyadditional
resourcesthanarerequiredforthecurrent
discussionboardsystem.
6.3.13.9. Processing
6.3.13.9.1. Theprocesswillbeinitiatedwhenauserclicksa
linktoadiscussionboardtopic.
6.3.13.10. Data
6.3.13.10.1. Thedatabasewillstoreacollapsedorexpanded
stateforeachcommentthread.
6.3.13.10.2.
Thiscollapsedorexpandedstatewillbestored
uniquelyforeachuser.
6.3.14. Removeunreaddiscussionsbox(Group1)
6.3.14.1. Identification:Removeunreaddiscussionbox
6.3.14.2. Type:Process
6.3.14.3. Purpose
6.3.14.3.1. Thepurposeofthisfeatureistomakethehomepage
cleanerandmakeimportantinformationstandout.
6.3.14.3.2. Theunreaddiscussionsfeatureisarbitraryand
doesntaidintheuseofdiscussionboards.
6.3.14.4. Function
6.3.14.4.1. TheILearnhomepagewillnolongerdisplaythe
unreaddiscussionsboxassociatedwiththecurrent
discussionboardsystem.
6.3.14.4.2. TheILearnhomepageMyCoursessectionshall
havenomentionofunreaddiscussionposts.
6.3.14.5. Subordinates
6.3.14.5.1. Nosubordinates
6.3.14.6. Dependencies
6.3.14.6.1. Nodependencies
6.3.14.7. Interface
6.3.14.7.1. ThischangewillremovetheUnreadDiscussion
Postsnotificationshowninthefollowingimage:
Theupdatedhomepagewilllooklikethisimage:
6.3.14.8. Resources
6.3.14.8.1. Thisprocesswillnotrequireanyadditional
resourcesthanarerequiredforthecurrent
discussionboardsystem.
6.3.14.9. Processing
6.3.14.9.1. Noprocessingrequiredforthisprocess.
6.3.14.10. Data
6.3.14.10.1. Thisprocesswillrequirenodatachangesasthe
readstateofapostwillstillberequired.
6.3.15. Listofwhocommentedonathread(Group1)
6.3.15.1. Identification:Listofwhocommentedonathread
6.3.15.2. Type:Process
6.3.15.3. Purpose
6.3.15.3.1. Theprocesswillprovidealistofcommenterstoa
discussionthreadforthepurposeofmakingitmore
convenientfortheusertoknowthecontributorstoa
particularthread.
6.3.15.3.2. Thiswillhelpinstructorsingradingwhenan
assignmentcallsforadiscussioncontribution.
6.3.15.3.3. Theprocesswillcreateconvenienceforuserswho
arelookingforacommentfromacertainuser,e.g.
agroupmember.Theuserwillbeabletoreference
thislistinsteadofopeningandscrollingthroughthe
thread.
6.3.15.4. Function
6.3.15.4.1. Thisprovidesalistofallthreadcontributorstobe
displayedonthethreadpost.Thelistwillbe
6.3.15.4.2.
6.3.15.4.3.
6.3.15.4.4.
6.3.15.4.5.
6.3.15.4.6.
providedintheclickablearea(toenterthethread)
ofthepost.
Thelistwillbedisplayedintheorderofthelast
contributor.
Nouserwillbedisplayedmoreonce.Twopostsby
thesameuserwillnotdisplaytheusertwiceonthis
list.
Theorderinthelistofauserwillbedeterminedby
theirlastpost.
Thelistwillbelimitedtoeightcontributorsorto
thelimitofallowablespaceinthedisplayedthread
post.
Contributorsoverthelimitwillbedisplayedasa
number.Example:11commentsgivenbydifferent
individualswouldyieldtodisplayingthelasteight
contributorswitha+3indicatingthecontributing
usersoverthedisplayablelimit.
6.3.15.5. Subordinates
6.3.15.5.1. Aprocessforextractingallcontributorstoacertain
thread
6.3.15.5.2. Aprocessfororderingthoseuserschronologically
(see5.3.15.4fordeterminingtheorderofthelist)
6.3.15.5.3. Theprocessofdisplayingthelinktoentera
discussionthread.
6.3.15.6. Dependencies
6.3.15.6.1. Theprocessmustbeabletoreadthedatabase.The
abilitytowritetooreditthedatabasewillnotbe
needed.
6.3.15.6.2. Theprocessdependsontheprocessofdisplaying
thelinktoenterathread
6.3.15.7. Interface
6.3.15.7.1. Thelistwillbedisplayedinasectionofthelinkto
enterthethread.
6.3.15.7.2. Thisprocessisadisplayonlyprocess.
6.3.15.7.3. Theuserinteractswiththisprocessbycontributing
acommenttoathread.Thiswilladdthemtolist
andarrangethemasthelastcontributororif
alreadyacontributor,willsimplyarrangethemas
thelastcontributor.
6.3.15.8. Resources
6.3.15.8.1. Noadditionalresourcesareneeded.
6.3.15.9. Processing
6.3.15.9.1. Theprocesswillbeginwhenthelinktoathreadis
tobedisplayed.
6.3.15.9.2. Theprocesswillaccessthedatabaseforthelistof
contributorstothethreadusingthepost_id.All
usersassociatedwiththepost_idwillbeaddedto
thethread_contributortable.
6.3.15.9.3. Onlythelasteightcontributorswillbedisplayed.
Theremainderwilldisplayedasanamountandnot
byusername.
6.3.15.10. Data
6.3.15.10.1. Theprocesswillusethefollowingdatathedatabase
willprovidetothethread_contributortable
6.3.15.10.2. user_ididentifiestheuserbyanintegerinorderto
differentiateusers,theremustbenouser_idthatare
thesamereferencesthestudenttable.
6.3.15.10.3. post_ididentifieseachthreadreferencesthepost
table
6.3.15.10.4. usernameidentifiestheuserbytheirusernameused
bytheschoolreferencesthestudenttable.
6.3.15.10.5. display_nameidentifiestheuserbythedisplay
namegivenbythestudentintheirprofile,two
identicaldisplaynamesareallowedintheeventtwo
studentshavethesamenamereferencesthestudent
table.
6.3.16. Listamountofresponses(Group1)
6.3.16.1. Identification:Listamountofresponses/posts
6.3.16.2. Type:Process
6.3.16.3. Purpose
6.3.16.3.1. Theprocesswillprovidetheamountof
contributionsauserhasmadetoadiscussion
thread.
6.3.16.3.2. Thiswillhelpinstructorsingradingwhenan
assignmentcallsforacertainnumberofdiscussion
contributions.
6.3.16.3.3. Theprocesswillcreateconvenienceforuserswho
arelookingfortheamountofcontributionsthey
havemadetoathreadforthepurposeofcompleting
anassignmentorotherwise.
6.3.16.4. Function
6.3.16.4.1. Thisprovidesadisplaytotheuseroftheamountof
contributionstoathreadtheuserhasmade.
6.3.16.4.2.
Theprocesswillalsoprovidethetotalamountof
postsfromauserfortheclass
6.3.16.5. Subordinates
6.3.16.5.1. Aprocessforextractingalltheuserspostsfromthe
database.
6.3.16.5.2. Theprocessofdisplayingadiscussionthread.
6.3.16.6. Dependencies
6.3.16.6.1. Theprocessmustbeabletoreadthedatabase.The
abilitytowritetooreditthedatabasewillnotbe
needed.
6.3.16.6.2. Theprocessdependsontheprocessofdisplayinga
thread.
6.3.16.7. Interface
6.3.16.7.1. Thelistwillbedisplayedatthetopofadiscussion
thread.
6.3.16.7.2. Thisprocessisadisplayonlyprocess.
6.3.16.7.3. Theuserinteractswiththisprocessbymakinga
post.Thiswilladdtothenumberofpoststheuser
hascontributed.
6.3.16.8. Resources
6.3.16.8.1. Noadditionalresourcesareneeded.
6.3.16.9. Processing
6.3.16.9.1. Theprocesswillbeginwhenadiscussionthreadis
tobedisplayed.
6.3.16.9.2. Theprocesswillaccessthedatabaseforallpost_id
andreply_post_idassociatedwiththeuser.
6.3.16.10. Data
6.3.16.10.1. Theprocesswillusethefollowingdatathedatabase
willprovidetothepost_amounttable.
6.3.16.10.2. user_ididentifiestheuserbyanintegerinorderto
differentiateusers,theremustbenouser_idthatare
thesamereferencesthestudenttable.
6.3.16.10.3.
6.3.16.10.4.
6.3.16.10.5.
6.3.16.10.6.
post_ididentifieseachthreadreferencesthepost
table.
reply_post_ididentifiesareplytopostreferences
thereply_posttable.
reply_amountisthecountofreplypostsassociated
toapost_id.
total_amountisthecountofallpostsassociatedto
theuserincludingallpost_idandreply_post_id.
6.3.17.
WordCount(Group4Lindsey)
6.3.17.1. Identification:WordCount
6.3.17.2.
Type:Process
6.3.17.3. Purpose
6.3.17.3.1. Thepurposeofthisentityistoallowthestudentto
easilyseehowmanywordstheyhavetypedintheir
discussionpost.
6.3.17.3.2. Additionally,instructorswhowillbegradingthe
discussionpostwillalsobeabletoseetheword
countforeachpost.
6.3.17.3.3.
Occasionally,instructorsrequireaminimumword
countondiscussionboardposts.Thisfeaturewould
allowbothstudentsandteacherstoeasilyknow
whetherornottherequirementhadbeenmet.
6.3.17.4. Function
6.3.17.4.1. Asauser(studentorinstructor)istypinganew
discussionpostthewordcountwillautomatically
appearintheeditoratthebottomofthetextbox.
6.3.17.4.2. Thewordcountforeachpostwillbevisibleatthe
bottomofeachpostaftertheuserhaspublishedthe
post.
6.3.17.5. Subordinates
6.3.17.5.1. Theprocessofwritingthedataforeachpost.
6.3.17.5.2. Theprocessofstoringthedataforeachindividual
post.
6.3.17.5.3. Theprocessofdisplayingthedatarelevanttoeach
post.
6.3.17.6. Dependencies
6.3.17.6.1. Dependsonthediscussionboardscurrentprocess
ofcreatingandstoringapost,asthewordcount
willbedisplayedwithitsassociatedpost.
6.3.17.7. Interface
6.3.17.7.1. Usersdonotinteractdirectlywiththisfeatureand
cannotalterormodifyit.Thewordcountisonly
modifiedorchangedwhenausertypes,thetotal
wordcountisoutputordisplayedtotheuser.
6.3.17.7.2. Whenauserpublishestheirpost,thewordcountis
alsovisibletoallviewersofthediscussionpost.
6.3.17.8. Resources
6.3.17.8.1. Thisentitywillnotrequireadditionalresources
beyondwhatisrequiredforthecurrentsystem.
6.3.17.9. Processing
6.3.17.9.1.
6.3.17.9.2.
6.3.17.9.3.
6.3.17.9.4.
6.3.17.9.5.
6.3.17.9.6.
Thewordcountprocessisinitiatedwhenauser
opensthediscussionboardeditortomakeanew
post.
Thedefaultvalueofthewordcountis0butwill
increaseasausertypes,consistentwiththenumber
ofwordstyped.
Ifauserdeleteswords,thenumberwilldecrement,
consistentwiththenumberofwordsdeleted.
Whentheuserpublishestheirpost,thefinalnumber
ofwordstheytypedwillbedisplayedatthebottom
oftheirpost.
Ifapostiseditedafterithasbeenpublished,the
wordcountwillagainincrementordecrementto
showtheactualwordcount.
Whenpublished,thenewwordcountwillbe
displayed.
6.3.17.10. Data
6.3.17.10.1. Wordcountwillbestoredinthedatabaseasarow
inthediscussion_boardtable.
6.3.18. Notifications(Group4Alex)
6.3.18.1. Identification:Notificationofaresponsetoindividual
comments
6.3.18.2. Type:Module
6.3.18.3. Purpose
6.3.18.3.1. Thepurposeofthisfeatureistoinformtheoriginal
postauthorthatanotheruserhasrespondedtotheir
post.
6.3.18.3.2. Whenaresponsehasbeenmadetoacomment,the
systemwillautomaticallysenda
notification
tothe
owneroftheoriginalpost,alertingthemtothenew
commentontheirpost.
6.3.18.4. Function
6.3.18.4.1.
6.3.18.4.2.
Oncetheuserpublishesanoriginalpost,subsequent
responsesfromotheruserswilltriggera
notification.
Thisnotificationwillbesenttotheusersregistered
emailaddressaswellasanotificationalertonthe
iLearn3.0Dashboard.
6.3.18.5. Subordinates
6.3.18.5.1. Theprocessofpublishingadiscussionboardpost
6.3.18.5.2. Theprocessofreplyingtoadiscussionboardpost
6.3.18.5.3. TheprocessofiLearn3.0dashboardalerts
6.3.18.6. Dependencies
6.3.18.6.1. Theconditionsforthisentityisdependentupona
publishedpostfromasingleuserandasecondpost
inresponsetotheoriginal.Onlythencana
notificationcanbesent.
6.3.18.6.2. UseCaseDiagram
6.3.18.7.
Interface
6.3.18.7.1.
6.3.18.7.2.
6.3.18.7.3.
6.3.18.7.4.
Theuserwillnotberequiredtointeractwiththis
designentity.Itisautomaticallygeneratedas
anotherusercreatesaresponsepost.
TheuserwillreceiveanotificationontheiriLearn
3.0dashboardindicatingthattherehasbeena
responsetotheirpost
Oncetheuserclicksonthenotificationbutton,the
responseindicatorwilldisappearuntilanother
responsehasbeenposted
Therearenoinputsoroutputerrorcodesnecessary
6.3.18.8. Resources
6.3.18.8.1. Theprocessdoesnotrequireanyadditional
resourcesotherthanthoseforthecurrentsystem
6.3.18.9. Processing
6.3.18.9.1. ActivityDiagram
6.3.18.9.2.
6.3.18.9.3.
Theaboveactivitydiagramexplainstheprocessof
creatinganewresponsepost.Uponthecompletion
ofthisactivity,anotificationwillbesenttothe
user.
Thenotificationalertiscontingentonanotheruser
mustrespondintheappropriatefashiontotheusers
originalpost
6.3.18.10. Data
6.3.18.10.1. Thenotificationdatawillbeadynamicvaluethat
willchangeaccordingtothenumberofresponse
postscreated.
6.3.18.10.2. Thevaluewillrefreshtozeroaftereachtimethe
usercheckstheirnotificationalerts.
6.3.18.10.3. Allpastnotificationswillbestoredinordertobe
referencedifneededbyuser.
6.3.19. Strongerdistinctionofreplies(Group4Jared)
6.3.19.1. Identification:Strongdistinctionbetweenpostandreply
6.3.19.2. Type:Process
6.3.19.3. Purpose
6.3.19.3.1. Thereasonbehindthisisthatitiseasytoget
confusedwithwhereeachreplygoes.Thiswill
minimizetheamountofconfusionbetweenareply
andanoriginal
post
.
6.3.19.3.2. Beabletorespondandfindspecificrepliesand
postsinagiventhread
6.3.19.4. Function
6.3.19.4.1. Whenclickingonthebuttontosubmitaresponseto
anotherresponse,thegeneratedresponsepostshall
indentaninch.
6.3.19.4.2. Theleftmostsideofeachreplypostinathreadshall
beindentedoneinchtotherightoftheleftmostside
ofthepost
towhichitisreplying.
6.3.19.4.3.
Ifathreadcontainsmorethanfivelevelsof
indentation,theindentationdistanceforallbutthe
lastindentationlevelwillbereducedtoahalfofan
inch.
6.3.19.5. Subordinates
6.3.19.5.1. Theprocessofcollapsiblethreads.
6.3.19.5.2. Theprocessofviewingathreadunderthemain
discussionboardprocess.
6.3.19.5.3. Theprocessofviewingareplytoaspecificpostor
comment
6.3.19.5.4. Theprocessofcreatingareplytoaspecificpostor
comment
6.3.19.6. Dependencies
6.3.19.6.1. Dependentonbeingabletoaccessadatabasewith
thenumberofrepliestoapostorcomment
6.3.19.6.2. Dependantonwebpagefunctionalitytobeableto
increasetheindentationofthereplytothepostor
comment
6.3.19.6.3. UseCaseDiagram
6.3.19.7. Interface
6.3.19.7.1. Theuserinteractswiththisentityanytimetheuser
createsandviewsareplytoapostorcomment.
6.3.19.7.2. Theuserinteractswiththisentityanytimetheuser
createswantstocollapseathread
6.3.19.7.3. Theuserinteractswiththisentityanytimetheuser
wantstowrite,edit,modify,like,hashtag,vote,
sort,seewordcount,andanyotherchangetoa
comment.
6.3.19.8. Resources
6.3.19.8.1. Theprocessdoesnotrequireanyadditional
resourcesotherthanthoseforthecurrentsystem
6.3.19.9. Processing
6.3.19.9.1.
6.3.19.9.2.
Theprocesscanbecompletedoncethecollapsible
threadentityiscompleted.
Oncecollapsiblethreadentityisimplementedthe
specificationscanbechangedtomakesureeach
replyisintendedoneinch.
6.3.19.10. Data
6.3.19.10.1. Theonlydataassociatedwiththisentityisthe
numberofrepliestoapostorcomment.Ifthe
numberisgreaterthan5thanthesizeofthe
indentationisreducedtoinchinsteadof1inch.
6.3.20.
MobileFriendly(Group4)
6.3.20.1. Identification
6.3.20.1.1. SEEAPPENDIX7.1.1
6.3.21. MarkdownSupport(Group2)
6.3.21.1. Identification:MarkdownSupport
6.3.21.2. Type:Process
6.3.21.3. Purpose
6.3.21.3.1. Allowsforbothstudentsandteacherstomore
effectivelystylethebodycontentof
discussion
boards,posts,commentsandresponses.
6.3.21.4. Function
6.3.21.4.1. Asausertypesmarkuptheyseeapreviewofitin
anassociatedpreviewpane.Iftheusertriestoexit
whiletypingthenorwhileitisopenthentheyare
promptedtosaveorleavethechangestheyhave
madeunsaved
6.3.21.4.2. Theinputareasfordiscussionboardpostsshall
recognizemarkdownsyntaxandstylethetext
accordingly.
6.3.21.4.3. Theusershallbecapableofusingheaders,rules,
bodycopy,emphasis,blockquotes,lists,code,
tables,linksandimagesthroughmarkdownsyntax.
6.3.21.5. Subordinates
6.3.21.5.1. Theprocessofpreviewingthemarkdown
6.3.21.5.2. Theprocessofpostingmarkdownchangestoposts
6.3.21.6. Dependencies
6.3.21.6.1. Theconditionsforthisprocessarethatsaidpost,
commentorresponsemuststillexistandnotbeen
deletedbythecreatorormoderator
6.3.21.7. Interface
6.3.21.7.1. Asausertypesmarkuptheyseeapreviewofitin
anassociatedpreviewpane.Iftheusertriestoexit
whiletypingthenorwhileitisopenthentheyare
promptedtosaveorleavethechangestheyhave
madeunsaved
6.3.21.8. Resources
6.3.21.8.1. Theprocessdoesnotrequireanyadditional
resourcesotherthanthoseforthecurrentsystem
6.3.21.9. Processing
6.3.21.9.1. Theprocesswillbecompleteoncethemarkdown
hasbeensuccessfullysavedinthepreviewpane
6.3.21.10. Data
6.3.21.10.1. Themarkdownwillbestoredinuser_discussion
database
6.3.22. StudentModerator(Group2)
6.3.22.1. Identification:StudentModerator
6.3.22.2. Type:Process
6.3.22.3. Purpose
6.3.22.3.1. Studentmoderationshallallowforteachersto
assignstudentsasmoderatorsovercoursespecific
discussions.
6.3.22.4. Function
6.3.22.4.1. Thisfeaturewillenablestudentstohavemore
controloverthediscussionboardsysteminILearn
allowingforthecreation,modificationand
archivingofbothdiscussionboardsanddiscussion
boardcomments.
6.3.22.4.2. WhenateacherclickstheAssignbuttonfoundin
adiscussionboardtheywillbeabletoassign1or
morestudentsasmoderators.Studentswillbe
notifiedandhavetheiruserprivilegeschangedto
allowthemtocreate,editandarchivediscussion
boards,discussionboardcontentanddiscussion
boardcomments.
6.3.22.4.3. Thesystemshallnotifytheteacher/courseowner
whenastudentmoderatorhasperformedany
moderatingfunctiononacourseowneddiscussion.
6.3.22.4.4. Thesystemshallnotifyastudentwhentheyhave
beengivenmoderationpermissionsoveracourse
owneddiscussionboard.
6.3.22.4.5. Thesystemshallnotifyastudentmoderatorwhen
theyhavehadtheirmoderatingprivilegesremoved
onacourseowneddiscussionboard.
6.3.22.4.6. Thesystemshallallowthemoderatingstudentsto
beabletocontinuetoseeandalteranyhidden,
lockedorarchiveddiscussionboardsand
comments.
6.3.22.5. Subordinates
6.3.22.5.1. Whenastudentbecomesamoderatorinacourse
theywillhavenewuserpermissionsthatallowthem
createnew/additionaldiscussionboards
6.3.22.5.2. Moderatorswillbepermittedtoeditcontentwithin
thediscussionboardaswellasthecomments.This
includesthearchivingofdiscussionboardsand
comments.
6.3.22.5.3. Whenamoderatorarchivesadiscussionboardor
commenttheywillbepresentedwithaconfirmation
dialogthatallowsthemtocancelorconfirmthe
archival.Additionaloptionswillbepresentinthe
confirmationdialogallowingthearchivaltoeither
hidethediscussionboardorcommentfromallor
specifiedusers,or,lockthediscussionboardor
commentfromallorspecifiedusers.
6.3.22.6. Dependencies
6.3.22.6.1. Requirestheteachertograntmoderatorstatus
6.3.22.7. Interface
6.3.22.7.1. Thiswillbedoneviaabuttonabovethecourse
discussionsectiononlyavailableforteacheruse.
6.3.22.8. Resources
6.3.22.8.1. Thisprocesswillrequirenomoreresourcesthanthe
currentsystemrequires.
6.3.22.9. Processing
6.3.22.9.1.
Theprocesswillbeginwhentheteacherassigns
moderatorstatustoastudent.
6.3.22.10. Data
6.3.22.10.1. Thisinformationwillbestoredintheuserdatabase
6.3.23. AdditionalDiscussionBoards(Group2)
6.3.23.1. Identification
6.3.23.2. Type
6.3.23.3. Purpose
6.3.23.4. Function
6.3.23.5. Subordinates
6.3.23.6. Dependencies
6.3.23.7. Interface
6.3.23.8. Resources
6.3.23.9. Processing
6.3.23.10. Data
6.3.24. NotificationResponseLink(Group2)
6.3.24.1. Identification:NotificationResponseLink
6.3.24.2. Type:Process
6.3.24.3. Purpose
6.3.24.3.1. Thepurposeofthisprocessistoallowauserto
haveadirectlinktothecontentofthenotification.
6.3.24.3.2. Whenausermakesaresponsetoyourpost,the
systemwillsendyouanotification.Theusercan
thenopenthenotificationandclickonalinkwhich
willsendtheusertotheresponse.
6.3.24.4. Function
6.3.24.4.1. Whenanotherusermakesaresponsetoastudents
post,itwillsendanotificationtotheiriLearn3.0
accountaswellastheirassociatedemail.Each
notificationwillcontainalinktotheassociated
post.
6.3.24.4.2. Whentheuserclicksonthelink,itwillredirect
themtotheassociatedpost.Thesamefunctionality
willoccurwhetherthelinkisaccessedfrominside
theusersemail,orifthelinkisaccessedfrom
insideofiLearn3.0.
6.3.24.5. Subordinates
6.3.24.5.1. Theprocessofpublishingadiscussionboardpost.
6.3.24.5.2. Theprocessofreplyingtoadiscussionboardpost.
6.3.24.5.3. TheprocessofiLearn3.0dashboardalerts.
6.3.24.5.4. TheprocessofNotifications.
6.3.24.6. Dependencies
6.3.24.6.1. Theconditionsforthisentityisdependentupona
publishedpostfromasingleuserandasecondpost
inresponsetotheoriginal.Onlythencana
notificationcanbesent.
6.3.24.6.2. Theconditionsforthisentityarealsocompletely
dependentontheNotificationprocess.
6.3.24.7. Interface
6.3.24.7.1. Thenotificationresponselinkinterfacewillbevery
similartoiLearn3.0.Itwillhavetheclassthatthe
notificationrelatestoatthetopofthedropdown.It
willthenhavethetitleoftheassignment.Finally,it
willhavethelinktothespecificpostwithinthe
assignment.
6.3.24.8. Resources
6.3.24.8.1. Thisentitywillnotrequireadditionalresources
beyondwhatisrequiredforthecurrentsystem.
6.3.24.9. Processing
6.3.24.9.1. Theprocesswillbeinitiatedwhenanotheruser
respondstoauserspostonadiscussionboard.
6.3.24.9.2. Thenotificationwillberesolvediftheuserhas
alreadyviewedtheresponsebeforeviewingthe
notification.
6.3.24.9.3. Thenotificationwillberesolvedwhenthe
notificationiconispressedandthenotifications
havebeenlisted.
6.3.24.10. Data
Thenotificationresponselinkwillbestoredasacolumninthe
user_notificationdatabasetable.
6.3.25. AssignmentInstructionLocation(Group2)
6.3.25.1. Identification:AssignmentInstruction
6.3.25.2. Type:Datastore
6.3.25.3. Purpose
6.3.25.3.1. Thepurposeofthisistomaketheassignmentclear,
andeasytoaccessatthetopofthediscussion
board.
6.3.25.3.2. Thiswillfacilitatetheprocessofshiftingbackand
forthbetweentheassignmentdiscussionboardand
theinstructions,astheywillbegroupedtogether.
6.3.25.3.3. Thiswillmakeiteasierfortheusertohave
everythingtheyneedfortheassignmentonthe
samewebpage.
6.3.25.4. Function
6.3.25.4.1. Thisdataentitywillstoreinstructionaldetailsfor
usersonthesamepageasthediscussionboards.
6.3.25.4.2. Userswillbeabletoeasilyidentifyassignment
instructionsandproceedaccordingly.
6.3.25.5. Subordinates
6.3.25.5.1. Theprocessofwritingdataspecifictoindividual
assignmentsanddiscussionboards.
6.3.25.5.2. Theprocessofstoringdata.
6.3.25.5.3.
Theprocessofdisplayingthedataatthetopofeach
discussionboard.
6.3.25.6. Dependencies
6.3.25.6.1. Thisprocessdependsonthediscussionboards
currentprocessofcreatingandstoringapost.
6.3.25.6.2. Theremustbeaccesstoadatabase,allowingthe
processtoreadfromandwritetoit.
6.3.25.6.3. Thisprocessisforstoringanddisplayingdataonly.
6.3.25.7. Interface
6.3.25.7.1. Theuserfirstinteractswiththisprocessbyseeing
theinstructionslistedintheinstructionboxatthe
topofthepage.Thecommunicationbetweenthe
userandtheprogramhereismadepossiblethrough
useofthedatabase.
6.3.25.7.2. Thedatawillaccessthedatabasebyretrieving
instructionresultstobedisplayed.
6.3.25.7.3. Thedatawillmodifythedatabasewhenaprofessor
addsto,changes,and/ordeleteshisorher
instructionsfortheassignment.
6.3.25.8. Resources
6.3.25.8.1. Thisprocesswillnotrequireanyadditional
resourcesthanarerequiredforthecurrent
discussionboardsystem.
6.3.25.9. Processing
6.3.25.9.1. Theprocessshallbeinitiatedwhenauseropensthe
discussionboard.
6.3.25.9.2. Ifthereisanerroropeningtheinstructions,orthe
assignmenthasnotyetbeenreleased,theusershall
benotifiedwiththefollowingmessageinthesame
placewhereerrormessagesaredisplayedinthe
existingdiscussionboardsystem:Therewasan
erroropeningtheinstructions,youcanaccessthis
assignmenton7/12(forexample),pleasetryagain
later
6.3.25.10. Data
6.3.25.10.1. Thedatabasecanstoretheinstructionaldatainthe
followingtablesinthediscussionboarddatabase.
6.3.25.10.2. Thesubjectshallnotacceptavalueofnull.
6.3.26. HighTrafficPost(Group2)
6.3.26.1. Identification:HighTrafficPost
6.3.26.2. Type:Process
6.3.26.2.1. HighTrafficPostsforeachclassareaccessible
underthestudenticon.Thisallowsforfrequently
accessedandusedthreadstobeeasiertoaccess.
6.3.26.3. Purpose
6.3.26.3.1. Ittakesmultiplestepstoaccessmostthreadsin
iLearn3.0.Thiswillallowoftenusedthreadstobe
easilyaccessibletoagivenuser.
6.3.26.3.2. Oneexampleisathreadforgroupcoordination.
Thismaybeusedoftenandfrequentlybyanentire
class.HighTrafficPostsareidentifiedbytheir
frequencyofuseandtheoverallnumberofpostson
agiventhread.
6.3.26.4. Function
6.3.26.4.1. Anypostthatisaccessedmorethanthe
HIGH_TRAFFIClimit,willbeclassifiedasaHigh
TrafficPost.HIGH_TRAFFICisaglobalvariable
thatcanbechangedlater.
6.3.26.4.2. ThegivenHighTrafficPostwillthenbelisted
underagivenstudentprofileunderaspecificclass.
Uponclickingonthetitleofthepost,theuserwill
beredirectedtothepost.
6.3.26.5. Subordinates
6.3.26.5.1. Theprocessofcollapsiblethreads.
6.3.26.5.2. Theprocessofpublishingadiscussionboardpost.
6.3.26.5.3. Theprocessofreplyingtoadiscussionboardpost.
6.3.26.5.4. TheprocessofiLearn3.0dashboardalerts.
6.3.26.5.5. TheprocessofNotifications.
6.3.26.6. Dependencies
6.3.26.6.1. Thisprocessisdependentuponuserspostingand
replyingonadiscussionboard.
6.3.26.6.2. Theprocessisdependentuponthenumberof
repliestoagivenpostbecominggreaterthanan
establishedlimitwithinthesystem.
6.3.26.7. Interface
6.3.26.7.1. TheinterfacefortheHighTrafficPostwillbethe
sameastheinterfaceforanyotherpost.Theonly
differencewillbethelargenumberofposts.
6.3.26.7.2. Theinterfacewillalsoimplementcollapsible
threadstoallowforeasierscanningofthetoplevel
postsandreplies
6.3.26.8. Resources
6.3.26.8.1. Thisentitywillnotrequireadditionalresources
beyondwhatisrequiredforthecurrentsystem.
6.3.26.9. Processing
6.3.26.9.1. Thisprocesswillbeginwhenenoughusershave
respondedtoagivenpost.Thiswillflagthepostas
ahightrafficpost.
6.3.26.9.2. Anupdatewilloccuronthestudentsaccount.The
studentisthenabletoviewagivenhightrafficpost
foraclass.Thesehightrafficpostswillchange
dependingonupdatestothesystemastheclass
goeson.
6.3.26.10. Data
6.3.26.10.1. Ahightrafficpostwillbedeterminedbysumming
thenumberofrepliesonagivenpost.This
informationcanbefoundbycomparingthetotal
numberofrepliesoneachpostforagivenclass.
6.3.27. NotificationResponseInclusionofOriginalPost(Group2)
6.3.27.1. Identification:NotificationResponseInclusionof
OriginalPost
6.3.27.2. Type:Process
6.3.27.3. Purpose
6.3.27.3.1. Thisistoallowastudenttoviewtheoriginalpost
thatanotheruserisrespondingtoaspartofa
Notification.
6.3.27.4. Function
6.3.27.4.1. Wheneverastudentreceivesanotification,itwill
informthemoftheclass,assignment,andoriginal
post.Thenotificationdropdownwillthenincludea
linktothepostthathasbeenrespondedto.
6.3.27.5. Subordinates
6.3.27.5.1. Theprocessofcollapsiblethreads.
6.3.27.5.2. Theprocessofpublishingadiscussionboardpost.
6.3.27.5.3. Theprocessofreplyingtoadiscussionboardpost.
6.3.27.5.4. TheprocessofiLearn3.0dashboardalerts.
6.3.27.5.5. TheprocessofNotifications.
6.3.27.6. Dependencies
6.3.27.6.1. Theconditionsforthisentityisdependentupona
publishedpostfromasingleuserandasecondpost
inresponsetotheoriginal.Onlythencana
notificationcanbesent.
6.3.27.6.2. Theconditionsforthisentityarealsocompletely
dependentontheNotificationprocess.
6.3.27.7. Interface
6.3.27.7.1. Thisinterfaceisthesameastheonementionedin
thenotificationresponselinkprocess.Thisprocess
hastodospecificallywiththethreadnameonthe
originalpost.Thisallowsausertoquicklyidentify
whichpostauserrespondedto.
6.3.27.7.2.
6.3.27.8. Resources
6.3.27.8.1. Thisentitywillnotrequireadditionalresources
beyondwhatisrequiredforthecurrentsystem.
6.3.27.9. Processing
6.3.27.9.1. Theprocesswillbeinitiatedwhenanotheruser
respondstoauserspostonadiscussionboard.
6.3.27.9.1.1. Thenotificationwillberesolvediftheuser
hasalreadyviewedtheresponsebefore
viewingthenotification.
6.3.27.9.2. Thenotificationwillberesolvedwhenthe
notificationiconispressedandthenotifications
havebeenlisted.
6.3.27.10. Data
6.3.27.10.1. Thenotificationresponselinkandtheoriginal
threadnamewillbestoredasacolumninthe
user_notificationdatabasetable.
6.3.28. Shortcuttoprofessors'posts(Group2)
6.3.28.1. Identification:ProfessorsPosts
6.3.28.2. Type:Datastore
6.3.28.3. Purpose
6.3.28.3.1. Thepurposeofthisistoprovideashortcutforusers
toquicklyseethepoststheprofessorhasmadeon
thediscussionboard.
6.3.28.3.2. Thiswillmakeiteasyforuserstoseeany
additionalfeedback,comments,updatespostedby
theprofessor.
6.3.28.4. Function
6.3.28.4.1. Thisdataentityshallstorepostsmadeby
professors.
6.3.28.4.2. Thiswillallowuserstoeasilyaccessprofessors
postsandseeanyupdates,comments,andfeedback
givenbyspecificinstructors.
6.3.28.5. Subordinates
6.3.28.5.1. Theprocessofwritingdatainputfromthe
professor.
6.3.28.5.2. Theprocessofstoringdata.
6.3.28.5.3. Theprocessofretrievingdatawhenuserclickson
appropriatelink.
6.3.28.6. Dependencies
6.3.28.6.1. Thisprocessdependsonthediscussionboards
currentprocessofcreatingandstoringapost.
6.3.28.6.2. Theremustbeaccesstoadatabase,allowingthe
processtoreadfromandwritetoit.
6.3.28.6.3. Userinteractionwiththeprocesswilldependonthe
processesofreceivinginputthroughtheweb
interface,aswellasthatofdisplayinginformation
onthescreentotheuser.
6.3.28.7. Interface
6.3.28.7.1. Theuserfirstinteractswiththisprocessbyselecting
theprofessorsposticon(alongthetopmenubar).
Thecommunicationbetweentheuserandthe
programhereismadepossiblethroughuseof
commonwebbrowserinterfacecomponentsandthe
database.
6.3.28.7.2. Theprocesswillaccessthedatabasebyretrieving
professorspostresultstobedisplayed.
6.3.28.7.3. Thedatawillmodifythedatabasewhenaprofessor
addsto,changes,and/ordeleteshisorherpost.
6.3.28.8. Resources
6.3.28.8.1. Thisprocesswillnotrequireanyadditional
resourcesthanarerequiredforthecurrent
discussionboardsystem.
6.3.28.9. Processing
6.3.28.9.1. Theprocessshallbeinitiatedwhenauserclickson
theprofessorsposticon.
6.3.28.9.2. Ifthereisanerroropeningthepostsfromthe
database,theusershallbenotifiedwiththe
followingmessageinthesameplacewhereerror
messagesaredisplayedintheexistingdiscussion
boardsystem:Therewasanerroropeningthe
professorspost,pleasetryagainlater.
6.3.28.9.3. Theprofessorspostshallbedistinguishedfroma
normalpostbydisplayingthewordProfessor
abovetheeachprofessorspost.
6.3.28.9.4. Thesystemshallremaininreviewingstateuntilthe
followingoccurs:theuserclicksCancel,orthe
userperformssomeotheractionbythebrowserthat
wouldnavigateawayfromthediscussionboard.
6.3.28.10. Data
6.3.28.10.1. Thedatabasecanstorethedatainthefollowing
tablesinthediscussionboarddatabase.
6.3.28.10.2. Theprofessors_poststableistokeeptrackofeach
postmadebytheprofessor.Eachposthasaunique
id.
6.3.28.10.3. Thesubjectshallnotacceptavalueofnull.
7.
RequirementsTraceabilityMatrix
(ProjectManagers)
Requirementtype,andprioritytoaddtoit.
ID
RequirementsDescription
Org/
Requestor Dep
BusinessNeed
Must/
Want
Active/
Inactive Status
Thepurposeofthisfeatureistoallowthe
usertoreducevisualclutteronthescreen.It
willalsoallowtheusertomoreeasily
navigatethroughhigherlevelsofthread
BYUI sectionsortopics.
Must
Active
Done
DeletePostsTheusershall
beabletodeleteagiven
postwithouthavingtoreload
2 thepage.
Students
Thepurposeofthisfeatureistoallowthe
usertodeleteanunwantedpostthatthey
havemadetothediscussionboard.This
featurewillallowformoreusercontrolby
allowingirrelevantorunwantedpoststobe
BYUI removedbytheauthor.
Active
InProgress
Arrangeandorganize
threadsTheusermay
organizeathreadintoa
customcategorybyclicking
onasettingslinkonagiven
3 thread.
Students
Thepurposeofthisfeatureistoallowthe
usertoorganizethreadscontributedbythe
userintocustomcategoriessotheycanbe
sortedforeasierviewingbythestudent.
Thiswillallowtheusertofilterthroughthe
selectedthreadsquickerandfindthose
BYUI categorizedthreadsmoreeasily.
Want
Inactive Hold
Showwhichthreadsyou
4 havecontributedto
Students
Thepurposeofthisfeatureistoshowthe
userwhichthreadstheuserhascontributed
to.Thiswillallowtheusertotracktheir
contributionsmoreaccuratelyand
BYUI efficiently.
Must
Active
Done
Notifywhensomeonereplies
5 toyourpostwithinathread Students
Thepurposeofthisfeatureistoallowthe
usertobenotifiedwhensomeoneresponds
BYUI toaposttheusersubmitted.
Must
Active
InProgress
Showthemostupdated
conclusionneartheoriginal
6 post
Students
Thepurposeofthisfeatureistoshowthe
mostupdatedconclusionneartheoriginal
post.Thisfeaturewillhelpdiscussionboard
usersseethemostupdatedandrelevant
answertoaquestion(asprovidedbya
moderatororselectedbyanotheruser)
withoutscrollingthroughpagesof
BYUI comments.
Must
Inactive Hold
Voteonpostswithouthaving
7 toaddawholecomment
Students
Thepurposeofthisfeatureistoallowusers
tovoteonapostwithouthavingtoadda
commenttothethread.Thisshallallowall
userstoparticipateinthevoteandreceive
BYUI moreinteraction.
Must
Active
CollapsibleThreadsThe
systemshallallowtheuser
tohidesubsectionsofa
1 thread.
Students
Must
Done
Theusermayclickonthe
thankbuttonofaposttogive
thankstothatusers
8 contribution.
Students
Thepurposeofthisfeatureistoallowusers
tolikepostssothatotherstudentscansee
whichpostsaremostrelevantoruseful
dependingonwhichwerethankedmost.
Thisshallalsoallowtheusertothank
anotheruserfortheircontributionwithout
havingtocreateanewpost.Teachersmay
usethisasanopportunitytoofferextra
BYUI creditforthankingposts.
Must
Active
Addhashtagstopostsso
thatrelevanttopicscanbe
9 filteredthrough
Students
Thepurposeofthisfeatureistoallowusers
totagpostswithhashtags.Thiswillallow
relevanttopicstobefilteredthroughmore
BYUI easily.
want
Inactive Hold
Searchallofthecontentsof
10 athreadwithoutexpandingit Students
Thiswillallowtheusertogetmoreaccurate
searchresultsandalsotogettheresults
BYUI moreeasily.
Must
Active
Done
Referenceaspecificperson
11 inapost
Students
Thepurposeofthisfeatureistoallowthe
usertodirecttheirposttoaspecificperson.
Thisfeaturewillallowforbetter
communicationasthepersonbeing
referencedwillreceiveanotificationthat
BYUI someonehasaddressedtheminapost.
Must
Active
InProgress
Emailnotificationsfor
12 importantposts
Students
Thepurposeofthisfeatureistoalert
studentsthroughemailwhenanimportant
posthasbeenmadesoastoensurethat
BYUI everyoneseesit.
Inactive Hold
Students
Thepurposeofthisfeatureistoreducethe
amountoftimeittakestomakeorreplyto
postsondiscussionboards.Timespenton
discussionboardswillbelessenedasusers
willnothavetoclickbackandforthbetween
multiplepagestoreadinitialpostsand
responseposts.Userswillbeabletomake
theirinitialpostandreplytoother
classmemberspostsfromthesamepage,
BYUI makingtheprocessfasterandsimpler.
Must
Active
Done
Students
Thepurposeofthisfeatureistomakethe
homepagecleanerandmakeimportant
informationstandout.Thisfeatureis
arbitraryanddoesntaidintheuseof
BYUI discussionboards.
Active
InProgress
Haveaccesstoallposts
13 fromonescreen
Removeunread
discussionsboxfromthe
14 currentversionofILearn
Listofwhocommentedona
15 thread
Students
Must
Must
Thereasonbehindthisiswhensomeone
wantstoviewwhohasparticipatedina
BYUI thread,thediscussionboardwillshowalist Want
InProgress
Inactive Hold
ofthosewhoareparticipatinginthethread
sothattheuserwillbeawareofwho
participatesinthediscussion.Thiswillget
ridofonlyallowingtheuserviewingthe
discussionboardtoviewwhocommented
onthethreadlast.
Listamountofresponseson
16 apost
Students
Thepurposeofthisfeatureiswhenauser
isgivenaspecificamountofpostsheorshe
needstorespondto,itshallgiveanumber
verifyinghowmanyheorshehas
contributedto.Thiswillmakeiteasieron
theuser,sotheywonthavetofindthe
responsesandcountthemindividually.
Whenauseriscuriousastohowinvolved
heorsheisondiscussionboards,theywill
easilyseehowmanythreadstheyhave
BYUI repliedto.
Must
Active
Done
WordCountonthecomment
17 orpost
Students
Thereasonbehindthisfeatureisbecause
manyteachersspecifytheminimumnumber
ofwordsapostand/orreplyneedstobe,
butthediscussionboardhasnowayto
checkthatwithouthavingtomanuallycount
eachword.Thisfeaturewillmakeiteasyto
seethewordcountonapostasitsbeing
BYUI writtenandafteritsposted.
Must
Active
InProgress
Notificationofaresponseto
18 individualcomments
Students
Thepurposeofthisfeatureistoinformthe
originalpostauthorthatanotheruserhas
BYUI respondedtotheirpost.
Must
Inactive Hold
Strongerdistinctionofreplies
19 frompostsandthreads
Students
Thereasonbehindthisisthatitiseasyto
getconfusedwithwhereeachreplygoes.
Thiswillminimizetheamountofconfusion
BYUI betweenareplyandanoriginalpost.
Must
Active
Done
Moremobilefriendly(bigger
20 buttons)
Students
Thepurposeofthisfeatureistoprovidethe
userwithgreateraccessibilitytoILearn
discussionboardsthroughamore
meaningfulmobileinterface.Thisinterface
willbeusedforbothsmartphoneandtablet
devices.Asausernavigatesadiscussion
boardusingthemobileinterface,allbuttons
willappearasfunctionalbuttonsandnotas
standardhyperlinkswhichareoftensmall
BYUI anddifficulttoworkwith.
Want
Active
InProgress
Markdownsupportforbetter
21 customizationofthetext
Students
Markdownsupportwillallowforboth
BYUI studentsandteacherstomoreeffectively
Inactive Hold
Must
stylethebodycontentofdiscussionboards,
posts,commentsandresponses.
22 Studentmoderatorcapability Students
Studentmoderationshallallowforteachers
toassignstudentsasmoderatorsover
coursespecificdiscussions.Thisfeaturewill
enablestudentstohavemorecontrolover
thediscussionboardsysteminILearn
allowingforthecreation,modificationand
archivingofbothdiscussionboardsand
BYUI discussionboardcomments.
Must
Active
Done
Allowstudentstoadd
23 discussionboards
Students
thisfeaturewillallowanystudenttheability
tocreateadditionaldiscussionboardsafter
beingmadeamoderatorwithinacourse.
Thepurposeofthisfeatureistoallow
studentstocreatetheirowngroup
discussionboardsforteamcommunication
BYUI andcollaboration.
Must
Active
InProgress
Students
Thisfeaturewillnotifyusersofdirect
responsestotheirdiscussionboardposts,
commentsandrepliesandrespectively
BYUI provideadirectlinktotheresponse.
Must
Inactive Hold
Students
Thepurposeofthisfeatureistomakeit
easierforastudenttolookupindividual
assignmentinstructionswithouthavingto
leavethediscussionboard.Thiswillgive
thestudenttheabilitytoreferbacktothe
instructionswithouthavingtobreaktheir
concentration,resultinginmoreprecise
BYUI responsestothetopicinquestion.
Must
Active
Done
Hightrafficpostspotlight(i.e.
26 mostpopular)
Students
Thepurposeofthisfeatureistoenable
studentstoquicklyfindthemostrelevant
informationinregardstotheirassignment.
Oftentimesthemosttraffickedresponsehas
thehighestqualityinformationby
spotlightingthisthreadtheclasswillunite
BYUI andwhichwillfosterdeeperdiscussion.
Want
Active
InProgress
Notificationofresponsewill
showtheoriginalpostfor
27 context
Thepurposeofthisfeatureistoprovide
studentswithcontextinregardstothereply
theyvejustreceived.Studentsaremore
likelytorespondtothatreplywhentheyare
remindedwhattheoriginalpostsaid.This
willencouragemoreinteractionbetweenthe
BYUI students.
Must
Inactive Hold
Alinktodirectyoutoa
responsewhenyouare
24 notifiedofresponse
Assignmentinstructionon
25 discussionboardpage
Students
28 Shortcuttoprofessors'posts Students
Thepurposeofthisfeatureistoprovidethe
studentwithamechanismtofindthe
instructorsresponsetotheirposts,aswell
asthreadsthattheinstructorhascreated.
Thiswillenablethestudenttoquicklyfind
valuablefeedback,aswellascrucial
BYUI threadsauthoredbytheinstructor.
Must
Active
8.
Appendix
8.1. FunctionModification
8.1.1. Entity5.3.20wasremovedduetothefactthatitwasnotan
operationalsystemdesignrequirement.Thefeaturedoesnotaffect
thefunctionalityorworkingcapabilityofthesystem,butinstead
affectsonlytheusersviewofthesystem.Thisfeaturesimply
changesthewayotherfeaturesaredisplayedtotheuserdepending
onthedevicetheyareusingtoaccessthediscussionboard.
Youarepermittedtoincludeanappendixmodifyingrequirements.All
requirementsmodificationsmustbeapprovedbytheinstructor.Clearlystatewhich
requirementsyouaredeleting.Clearlystatetherequirementsyouareaddingor
modifyingfollowtheformatusedinyoursoftwarerequirementsspecification.Providea
justificationforeachchange
Done