ASP.net web application project

profileYELLOWFISH24
Part3TermProject-BlackboardCourseManagement-Fall2017.pdf

CIS​ ​3342​ ​Term​ ​Project​ ​–​ ​Part​ ​3 Blackboard​ ​Course​ ​Management

The​ ​final​ ​portion​ ​of​ ​the​ ​term​ ​project​ ​involves​ ​implementing​ ​the​ ​Blackboard​ ​Course​ ​Management​ ​aspect of​ ​this​ ​application​ ​where​ ​the​ ​course​ ​builders​ ​will​ ​be​ ​able​ ​to​ ​manage​ ​their​ ​courses​ ​and​ ​content,​ ​and student​ ​users​ ​will​ ​be​ ​able​ ​to​ ​access​ ​course​ ​content​ ​and​ ​interact​ ​with​ ​the​ ​course​ ​tools.​ ​This​ ​part​ ​of​ ​the project​ ​will​ ​also​ ​implement​ ​Blackboard​ ​administrators​ ​who​ ​can​ ​manage​ ​accounts,​ ​course​ ​creation,​ ​and course​ ​deletion.

1. Requirements​ ​for​ ​Course​ ​Builders: 1.1. View​ ​Courses

The​ ​course​ ​builder​ ​will​ ​need​ ​to​ ​be​ ​able​ ​to​ ​view​ ​all​ ​Blackboard​ ​courses​ ​that​ ​are​ ​owned​ ​by​ ​the course​ ​builder.​ ​This​ ​list​ ​should​ ​be​ ​displayed​ ​on​ ​a​ ​starting​ ​page​ ​that​ ​is​ ​presented​ ​to​ ​the​ ​user when​ ​they​ ​successfully​ ​log-in​ ​to​ ​their​ ​Blackboard​ ​account.​ ​The​ ​user​ ​will​ ​select​ ​a​ ​course​ ​from this​ ​list​ ​to​ ​access​ ​and​ ​modify​ ​it.

1.2. Create​ ​a​ ​Content​ ​Section The​ ​course​ ​builder​ ​will​ ​need​ ​to​ ​be​ ​able​ ​to​ ​add​ ​content​ ​sections​ ​(pages)​ ​to​ ​their​ ​course​ ​that contain​ ​content​ ​like​ ​Word​ ​documents,​ ​PowerPoint​ ​presentations,​ ​etc….​ ​A​ ​content​ ​section​ ​is simply​ ​a​ ​page​ ​that​ ​acts​ ​as​ ​a​ ​container​ ​for​ ​content.

Each​ ​content​ ​section​ ​added​ ​to​ ​a​ ​course​ ​must​ ​appear​ ​in​ ​a​ ​navigation​ ​menu​ ​that​ ​is​ ​dynamically built​ ​and​ ​displayed​ ​at​ ​all​ ​times.​ ​This​ ​navigation​ ​menu​ ​will​ ​be​ ​used​ ​by​ ​both​ ​the​ ​course​ ​builders and​ ​the​ ​student​ ​users​ ​to​ ​navigate​ ​the​ ​content​ ​sections​ ​and​ ​course​ ​tools.

Hint:​ ​look​ ​into​ ​ASP​ ​Panels,​ ​divs,​ ​and​ ​other​ ​server-side​ ​container​ ​controls​ ​to​ ​provide​ ​this capability.

1.3. Modify​ ​a​ ​Content​ ​Section A​ ​course​ ​builder​ ​will​ ​need​ ​to​ ​be​ ​able​ ​to​ ​add​ ​content​ ​(Word​ ​documents,​ ​PowerPoint presentations,​ ​and​ ​other​ ​files)​ ​to​ ​a​ ​content​ ​section.​ ​​ ​Provide​ ​a​ ​way​ ​to​ ​delete​ ​the​ ​content​ ​in​ ​a content​ ​section.

Note:​ ​do​ ​not​ ​allow​ ​the​ ​user​ ​to​ ​upload​ ​images,​ ​audio,​ ​and​ ​video​ ​files​ ​for​ ​copyright​ ​infringement purposes.​ ​This​ ​project​ ​will​ ​deal​ ​with​ ​simple​ ​text​ ​documents​ ​(Word,​ ​Excel,​ ​PowerPoint,​ ​text, etc…).

1.4. Delete​ ​a​ ​Content​ ​Section Provide​ ​a​ ​way​ ​of​ ​deleting​ ​the​ ​entire​ ​content​ ​section​ ​and​ ​the​ ​content​ ​contained​ ​in​ ​it.

1.5. Course​ ​Announcements​ ​Section Provide​ ​a​ ​course​ ​tool​ ​that​ ​allows​ ​the​ ​course​ ​builder​ ​to​ ​post​ ​announcements​ ​to​ ​the​ ​class.​ ​This tool​ ​can​ ​simply​ ​display​ ​a​ ​list​ ​of​ ​messages​ ​in​ ​a​ ​separate​ ​content​ ​section.​ ​When​ ​posting​ ​a​ ​new announcement,​ ​the​ ​course​ ​builder​ ​should​ ​be​ ​given​ ​the​ ​option​ ​to​ ​send​ ​the​ ​announcement​ ​out as​ ​an​ ​email.​ ​Also,​ ​provide​ ​tools​ ​to​ ​allow​ ​the​ ​course​ ​builder​ ​to​ ​modify​ ​and​ ​delete announcements.​ ​Utilize​ ​the​ ​Web​ ​Service​ ​you​ ​created​ ​in​ ​Term​ ​Project​ ​–​ ​Part​ ​2​ ​to​ ​implement this.

1.6. Course​ ​Assignments​ ​Tool Provide​ ​a​ ​course​ ​tool​ ​that​ ​allows​ ​the​ ​course​ ​builder​ ​the​ ​ability​ ​to​ ​post​ ​assignments.​ ​This​ ​tool​ ​is similar​ ​to​ ​an​ ​announcement​ ​except​ ​that​ ​student​ ​users​ ​can​ ​make​ ​submissions​ ​for​ ​these​ ​types​ ​of postings.​ ​Each​ ​assignment​ ​posting​ ​must​ ​contain​ ​a​ ​description,​ ​due​ ​date,​ ​and​ ​a​ ​maximum​ ​point value​ ​used​ ​for​ ​grades.

1.7. Grade​ ​Assignments The​ ​course​ ​builder​ ​should​ ​be​ ​able​ ​to​ ​view​ ​all​ ​submissions​ ​for​ ​a​ ​particular​ ​assignment,​ ​select​ ​a student​ ​submission,​ ​and​ ​assign​ ​a​ ​grade​ ​and​ ​comment​ ​for​ ​the​ ​assignment​ ​submission.​ ​The grades​ ​and​ ​comments​ ​assigned​ ​to​ ​the​ ​assignments​ ​will​ ​be​ ​available​ ​to​ ​student​ ​users​ ​through the​ ​My​ ​Grades​ ​Tool​ ​(see​ ​item​ ​​2.4​).

1.8. Course​ ​Roster​ ​Tool The​ ​course​ ​builder​ ​should​ ​be​ ​able​ ​to​ ​view​ ​all​ ​students​ ​enrolled​ ​in​ ​the​ ​course,​ ​add​ ​students,​ ​and remove​ ​students​ ​from​ ​a​ ​course.​ ​If​ ​a​ ​student​ ​is​ ​removed​ ​from​ ​a​ ​course,​ ​they​ ​will​ ​no​ ​longer​ ​be able​ ​to​ ​access​ ​the​ ​course​ ​and​ ​its​ ​content.​ ​If​ ​a​ ​student​ ​is​ ​added​ ​to​ ​a​ ​course,​ ​they​ ​will​ ​able​ ​to access​ ​the​ ​course​ ​and​ ​its​ ​content.​ ​A​ ​student​ ​must​ ​already​ ​have​ ​an​ ​account​ ​in​ ​Blackboard​ ​before they​ ​can​ ​be​ ​added​ ​to​ ​a​ ​course.​ ​Utilize​ ​the​ ​Web​ ​Service​ ​you​ ​created​ ​in​ ​Term​ ​Project​ ​–​ ​Part​ ​2​ ​to implement​ ​this.

1.9. Menu​ ​Management The​ ​course​ ​builder​ ​should​ ​be​ ​able​ ​to​ ​modify​ ​the​ ​navigation​ ​menu​ ​used​ ​to​ ​access​ ​course​ ​tools and​ ​content​ ​sections.​ ​Provide​ ​a​ ​way​ ​for​ ​the​ ​course​ ​builder​ ​to​ ​rearrange​ ​the​ ​order​ ​of​ ​items​ ​in the​ ​menu​ ​and​ ​rename​ ​the​ ​menu​ ​items.

2. Requirements​ ​for​ ​Student​ ​Users: 2.1. View​ ​Courses

A​ ​student​ ​user​ ​will​ ​need​ ​to​ ​be​ ​able​ ​to​ ​view​ ​all​ ​Blackboard​ ​courses​ ​in​ ​which​ ​they​ ​are​ ​enrolled. This​ ​list​ ​should​ ​be​ ​displayed​ ​on​ ​a​ ​starting​ ​page​ ​that​ ​is​ ​presented​ ​to​ ​the​ ​user​ ​when​ ​they

successfully​ ​log-in​ ​to​ ​their​ ​Blackboard​ ​account.​ ​The​ ​user​ ​will​ ​select​ ​a​ ​course​ ​from​ ​their​ ​list​ ​of enrolled​ ​courses​ ​in​ ​order​ ​to​ ​access​ ​and​ ​view​ ​the​ ​course’s​ ​content.

2.2. View​ ​Course​ ​Content The​ ​student​ ​user​ ​should​ ​be​ ​able​ ​to​ ​view​ ​all​ ​course​ ​content​ ​(announcements,​ ​assignments, etc…)​ ​for​ ​a​ ​particular​ ​course​ ​they​ ​are​ ​enrolled.​ ​The​ ​user​ ​should​ ​be​ ​presented​ ​with​ ​the Announcements​ ​section​ ​and​ ​a​ ​navigation​ ​menu​ ​that​ ​contains​ ​links​ ​to​ ​the​ ​content​ ​sections​ ​for the​ ​course.​ ​Also,​ ​allow​ ​the​ ​user​ ​to​ ​download​ ​files​ ​that​ ​were​ ​posted​ ​by​ ​the​ ​course​ ​builder.

2.3. My​ ​Grades​ ​Tool This​ ​tool​ ​will​ ​allow​ ​the​ ​student​ ​user​ ​to​ ​view​ ​their​ ​grades​ ​on​ ​assignments.​ ​The​ ​grades​ ​should​ ​be ordered​ ​by​ ​course.​ ​This​ ​tool​ ​will​ ​be​ ​available​ ​from​ ​the​ ​starting​ ​page​ ​presented​ ​to​ ​the​ ​user​ ​when they​ ​successfully​ ​log-in​ ​to​ ​their​ ​Blackboard​ ​account.

2.4. Assignment​ ​Submission​ ​Tool The​ ​student​ ​should​ ​be​ ​able​ ​to​ ​make​ ​a​ ​submission​ ​for​ ​each​ ​assignment​ ​posted​ ​in​ ​the​ ​Course Assignments​ ​Tool.​ ​The​ ​submission​ ​process​ ​should​ ​allow​ ​the​ ​student​ ​to​ ​upload​ ​a​ ​file​ ​for​ ​the specified​ ​assignment.​ ​The​ ​assignment​ ​submission​ ​should​ ​record​ ​the​ ​student​ ​account​ ​making the​ ​submission​ ​and​ ​the​ ​file,​ ​which​ ​the​ ​course​ ​builder​ ​will​ ​be​ ​able​ ​to​ ​view​ ​and​ ​grade​ ​(see​ ​item 1.7​).

2.5. Enroll​ ​in​ ​a​ ​class This​ ​tool​ ​will​ ​allow​ ​the​ ​student​ ​user​ ​the​ ​ability​ ​to​ ​enroll​ ​in​ ​a​ ​course.​ ​However,​ ​the​ ​student​ ​will not​ ​gain​ ​immediate​ ​access​ ​nor​ ​will​ ​the​ ​course​ ​show​ ​up​ ​in​ ​their​ ​list​ ​on​ ​the​ ​start​ ​page​ ​until​ ​the course​ ​builder​ ​changes​ ​their​ ​level​ ​of​ ​access.

3. Requirements​ ​for​ ​Blackboard​ ​Administrators: 3.1. Create​ ​a​ ​Blackboard​ ​Course

Blackboard​ ​administrators​ ​must​ ​be​ ​able​ ​to​ ​create​ ​a​ ​Blackboard​ ​Course​ ​and​ ​attach​ ​course builders​ ​to​ ​a​ ​particular​ ​course.​ ​Upon​ ​creation​ ​of​ ​a​ ​Blackboard​ ​Course,​ ​the​ ​course​ ​builders​ ​will be​ ​able​ ​to​ ​view​ ​this​ ​course​ ​from​ ​their​ ​starting​ ​page​ ​and​ ​modify​ ​its​ ​content.​ ​Blackboard administrators​ ​are​ ​not​ ​course​ ​builders;​ ​they​ ​simply​ ​create​ ​the​ ​course​ ​that​ ​course​ ​builders​ ​will own​ ​and​ ​modify.​ ​Utilize​ ​the​ ​Web​ ​Service​ ​you​ ​created​ ​in​ ​Term​ ​Project​ ​–​ ​Part​ ​2​ ​to​ ​implement this.

3.2. Delete​ ​a​ ​Blackboard​ ​Course Blackboard​ ​administrators​ ​must​ ​be​ ​able​ ​to​ ​delete​ ​existing​ ​Blackboard​ ​Courses.

3.3. Enroll​ ​Users​ ​in​ ​a​ ​Blackboard​ ​Course Blackboard​ ​administrators​ ​must​ ​be​ ​able​ ​to​ ​enroll​ ​student​ ​users​ ​in​ ​Blackboard​ ​Courses.​ ​After​ ​a

student​ ​is​ ​enrolled​ ​in​ ​a​ ​course,​ ​it​ ​will​ ​appear​ ​in​ ​the​ ​student’s​ ​starting​ ​page​ ​that​ ​lists​ ​the​ ​courses they​ ​are​ ​enrolled.

4. Additional​ ​Requirements This​ ​project​ ​requires​ ​implementing​ ​all​ ​the​ ​concepts​ ​learned​ ​in​ ​class.

Utilize​ ​AJAX The​ ​web​ ​application​ ​must​ ​make​ ​use​ ​of​ ​AJAX​ ​to​ ​implement​ ​a​ ​more​ ​responsive​ ​web​ ​application. You​ ​need​ ​to​ ​come​ ​up​ ​with​ ​a​ ​creative​ ​way​ ​to​ ​add​ ​this​ ​to​ ​your​ ​web​ ​application.​ ​You​ ​must​ ​use​ ​it​ ​in a​ ​different​ ​way​ ​than​ ​the​ ​class​ ​examples​ ​discussed​ ​in​ ​class.

Custom​ ​User​ ​Control The​ ​web​ ​application​ ​must​ ​utilize​ ​2​ ​Custom​ ​User​ ​Controls​ ​(ASCX)​ ​and​ ​it​ ​must​ ​be​ ​different​ ​from the​ ​class​ ​examples.

Serialization

The​ ​web​ ​application​ ​must​ ​utilize​ ​serialization​ ​and​ ​deserialization​ ​to​ ​store​ ​an​ ​object​ ​in​ ​the database.​ ​You​ ​need​ ​to​ ​come​ ​up​ ​with​ ​a​ ​creative​ ​way​ ​to​ ​add​ ​this​ ​to​ ​your​ ​web​ ​application.

Make​ ​your​ ​site​ ​look​ ​professional The​ ​entire​ ​site​ ​should​ ​make​ ​use​ ​of​ ​images,​ ​alignment,​ ​and​ ​styling​ ​to​ ​make​ ​the​ ​site​ ​look professional​ ​and​ ​attractive.​ ​You​ ​may​ ​use​ ​CSS,​ ​BootStrap,​ ​or​ ​any​ ​other​ ​UI​ ​design​ ​tools​ ​to​ ​make the​ ​site​ ​look​ ​attractive.

5. Overall​ ​Design​ ​Requirements

Points​ ​will​ ​be​ ​awarded​ ​for​ ​various​ ​aspects​ ​of​ ​design​ ​which​ ​include:

● The​ ​Blackboard​ ​administrators,​ ​course​ ​builders,​ ​and​ ​student​ ​users​ ​should​ ​be​ ​presented​ ​a starting​ ​page​ ​after​ ​a​ ​successful​ ​log-in.​ ​This​ ​page​ ​will​ ​be​ ​the​ ​user’s​ ​home​ ​page​ ​that​ ​gives them​ ​a​ ​set​ ​of​ ​tools​ ​and​ ​information​ ​about​ ​their​ ​account.​ ​The​ ​starting​ ​page​ ​will​ ​also​ ​display​ ​a list​ ​of​ ​courses​ ​they​ ​are​ ​enrolled​ ​and/or​ ​a​ ​list​ ​of​ ​courses​ ​they​ ​own​ ​as​ ​a​ ​course​ ​builder.

● A​ ​navigation​ ​menu​ ​should​ ​be​ ​displayed​ ​after​ ​entering​ ​a​ ​course​ ​that​ ​provides​ ​a​ ​set​ ​of​ ​links​ ​to each​ ​content​ ​area/section​ ​and​ ​tools​ ​available​ ​in​ ​the​ ​course.

● Most​ ​effective​ ​implementation​ ​of​ ​the​ ​​step​s.

● Good​ ​navigation​ ​among​ ​pages.​ ​​ ​Requiring​ ​the​ ​user​ ​to​ ​use​ ​the​ ​Browser​ ​Back​ ​and​ ​Forward buttons​ ​is​ ​extremely​ ​poor​ ​design.​ ​​ ​On​ ​each​ ​page,​ ​the​ ​users​ ​of​ ​the​ ​application​ ​should​ ​have every​ ​logical​ ​option​ ​of​ ​moving​ ​around​ ​the​ ​site.

● Appropriate​ ​Client-side​ ​and​ ​Server-side​ ​validation,​ ​with​ ​precedence​ ​being​ ​given​ ​to server-side​ ​wherever​ ​possible.​​ ​This​ ​means​ ​you​ ​are​ ​required​ ​to​ ​use​ ​server-side​ ​input validation;​ ​you​ ​aren’t​ ​required​ ​to​ ​write​ ​client-side​ ​JavaScript.​ ​The​ ​application​ ​should​ ​make use​ ​of​ ​custom​ ​validation​ ​controls​ ​that​ ​are​ ​processed​ ​on​ ​the​ ​client-side,​ ​but​ ​you​ ​still​ ​need​ ​to include​ ​server-side​ ​input​ ​validation.

● Good​ ​placement​ ​and​ ​sizing​ ​of​ ​labels​ ​and​ ​controls.​ ​​ ​For​ ​example,​ ​you​ ​should​ ​not​ ​place​ ​a control​ ​with​ ​absolute​ ​positioning​ ​underneath​ ​a​ ​dynamically​ ​populated​ ​list​ ​(gridview, dropdownlist,​ ​etc.).​ ​​ ​When​ ​the​ ​control​ ​expands,​ ​it​ ​may​ ​cover​ ​the​ ​control.​ ​​ ​Another​ ​example is​ ​leaving​ ​extraneous​ ​controls​ ​on​ ​the​ ​screen.​ ​​ ​This​ ​occurs​ ​when​ ​you​ ​do​ ​not​ ​make​ ​proper​ ​use of​ ​visibility.

● Clear​ ​instructional​ ​labels​ ​regarding​ ​help​ ​the​ ​user​ ​perform​ ​tasks,​ ​and​ ​clear​ ​error​ ​messages.

● Good​ ​presentation​ ​of​ ​the​ ​web​ ​pages​ ​in​ ​regards​ ​to​ ​layout​ ​and​ ​alignments.​ ​Make​ ​use​ ​of​ ​CSS, Bootstrap,​ ​or​ ​any​ ​other​ ​UI​ ​tools​ ​to​ ​style​ ​your​ ​pages​ ​and​ ​make​ ​them​ ​look​ ​professional.

● Each​ ​member​ ​must​ ​contribute​ ​an​ ​equal​ ​amount​ ​of​ ​work​ ​coding​ ​the​ ​project​ ​and​ ​designing the​ ​GUI​ ​for​ ​the​ ​web​ ​application.​ ​This​ ​means​ ​that​ ​the​ ​one​ ​person​ ​cannot​ ​code​ ​the​ ​project and​ ​another​ ​designs​ ​the​ ​GUI.​ ​Each​ ​person​ ​must​ ​contribute​ ​equally​ ​to​ ​both​ ​aspects​ ​of​ ​the project.​ ​Members​ ​that​ ​cannot​ ​substantiate​ ​their​ ​work​ ​will​ ​not​ ​receive​ ​a​ ​grade​ ​on​ ​the project.​ ​If​ ​you​ ​are​ ​unable​ ​to​ ​answer​ ​questions​ ​or​ ​fix​ ​changes​ ​made​ ​to​ ​your​ ​application during​ ​a​ ​private​ ​meeting​ ​with​ ​me,​ ​you​ ​will​ ​receive​ ​a​ ​0​ ​on​ ​the​ ​project.

Due​: See​ ​project​ ​posting​ ​under​ ​the​ ​Assignments​ ​section​ ​of​ ​Blackboard.

Submission​: The​ ​submission​ ​process​ ​is​ ​slightly​ ​different​ ​from​ ​the​ ​previous​ ​projects,​ ​so​ ​read​ ​this​ ​section​ ​carefully.​ ​You

need​ ​to​ ​publish​ ​your​ ​web​ ​application​ ​project​ ​to​ ​the​ ​cis-iis2​ ​web​ ​server​ ​folder​ ​TermProject,​ ​update​ ​your CIS3342​ ​Home​ ​Page,​ ​and​ ​upload​ ​zip​ ​file​ ​containing​ ​the​ ​solution​ ​with​ ​all​ ​your​ ​code​ ​to​ ​Blackboard.

***​ ​Your​ ​submission​ ​must​ ​include​ ​a​ ​written​ ​comment​ ​with​ ​the​ ​following​ ​information:

● Your​ ​partner’s​ ​name. ● The​ ​URL​ ​to​ ​the​ ​web​ ​application’s​ ​start​ ​page​ ​to​ ​grade. ● The​ ​database​ ​account​ ​to​ ​grade. ● A​ ​description​ ​of​ ​where​ ​(names​ ​of​ ​the​ ​pages​ ​including​ ​the​ ​URLs)​ ​and​ ​how​ ​you

implemented​ ​the​ ​AJAX. ● A​ ​description​ ​of​ ​where​ ​(names​ ​of​ ​the​ ​pages​ ​including​ ​the​ ​URLs)​ ​and​ ​how​ ​you

implemented​ ​Custom​ ​User​ ​Controls​ ​(ASCX). ● A​ ​description​ ​of​ ​where​ ​(names​ ​of​ ​the​ ​pages​ ​including​ ​the​ ​URLs)​ ​and​ ​how​ ​you

implemented​ ​Serialization​ ​and​ ​Deserialization.

Make​ ​sure​ ​you​ ​zip​ ​the​ ​root​ ​folder​ ​for​ ​your​ ​solution​ ​into​ ​a​ ​single​ ​zip​ ​file​ ​and​ ​submit​ ​the​ ​assignment​ ​in Blackboard.​ ​To​ ​submit​ ​the​ ​assignment,​ ​you​ ​need​ ​to​ ​click​ ​the​ ​Assignment’s​ ​Title​ ​“Term​ ​Project”​ ​to​ ​view the​ ​submission​ ​form​ ​and​ ​upload​ ​the​ ​file.

Make​ ​sure​ ​you​ ​properly​ ​submit​ ​your​ ​assignment​ ​and​ ​that​ ​it​ ​works.​ ​Programs​ ​that​ ​don’t​ ​run​ ​or​ ​don’t contain​ ​all​ ​the​ ​necessary​ ​files​ ​will​ ​not​ ​be​ ​graded​ ​and​ ​marked​ ​late.

Please​ ​be​ ​sure​ ​to​ ​save​ ​your​ ​work​ ​periodically​ ​as​ ​you​ ​proceed​ ​and​ ​also​ ​back​ ​it​ ​up.​ ​​ ​You​ ​may​ ​want​ ​to​ ​store it​ ​on​ ​your​ ​flash​ ​drive.​ ​​ ​If​ ​you​ ​are​ ​going​ ​to​ ​zip​ ​an​ ​application​ ​in​ ​order​ ​to​ ​store​ ​it,​ ​BE​ ​SURE​ ​TO​ ​FIRST​ ​CLOSE Visual​ ​Studio.​ ​If​ ​you​ ​do​ ​store​ ​information​ ​on​ ​your​ ​flash​ ​drive​ ​be​ ​sure​ ​to​ ​copy​ ​it​ ​to​ ​a​ ​hard​ ​drive​ ​on​ ​your computer​ ​before​ ​working​ ​with​ ​the​ ​project.