40
Software Engineering Hans-Petter Halvorsen Project Selection B. Lund. Lunch. Available: http://www.lunchstriper.no, http://www.dagbladet.no/tegneserie/lunch/

Project Selection - The Technical Guy - a Blog about …€¢ If 2 different Teams select the same Project, we need to have a Lottery selection or something (fist fight?) Project Selection

  • Upload
    ngoque

  • View
    215

  • Download
    2

Embed Size (px)

Citation preview

SoftwareEngineering

Hans-PetterHalvorsen

ProjectSelection

B.Lund.Lunch.Available:http://www.lunchstriper.no,http://www.dagbladet.no/tegneserie/lunch/

• EachTeamshouldselectoneofthefollowingProjects(write3optionsonthewhiteboard)

• 2differentTeamscannottakethesameProject• If2differentTeamsselectthesameProject,we

needtohaveaLotteryselectionorsomething(fistfight?)

ProjectSelection

ProjectSelectionList1. BigDataandMachineLearning2. InternetofThings(IoT)3. Industry4.0andAutomationSystem4. IoTSystemforEnvironmentalData5. DataLoggingSystem6. WeatherSystem7. ProcessSimulatorSystem8. ProcessControl&Monitoring

SystemYoufindmoreprojectsonthenextslide...

9. HomeAutomationSystem

10. PaymentSystem11. Web-shop12. SocialTeachingNetwork13. StudentAttendance

System14. Game-basedLearning

System15. TeamCalendar

ProjectSelectionList16. Multiple-choiceTestSystem17. ScheduleManager18. DigitalExamSystem19. AssessmentSystem20. WorkSchedulePlanningSystem21. Forum/NetworkCommunity22. OfficeManagementSystem23. BugReportSystem

24. TaskBoard25. EvaluationSystem26. VideoViewer27. LabInventorySystem28. RoomBookingSystem29. EquipmentErrorSystem30. DigitalMultimeter

ApplicationFormoredetails,seenextslides...

SystemSpecifications/Requirements

You needtocreatethespecifications/requirementsindetails!AnimportantpartofthiscourseisaboutRequirementsEngineeringandhowtocreateRequirements/Designatdifferentlevels.

B.Lund.Lunch.Available:http://www.lunchstriper.no,http://www.dagbladet.no/tegneserie/lunch/

High-LevelRequirements

ThenextslideswillgiveanoverviewoftheHigh-LevelRequirementsforalltheProjects

GUI

High-LevelRequirements

GUI

Application(s)WebForm(ASP.NET)(orWinForm)

VisualStudio/C#PresentationTier

DatabaseSQL

Server

DataTier

DatabaseTables

Views,StoredProcedures

APIBusiness/LogicTier

StructuredQueryLanguage(SQL)

Design,Develop,DocumentandDeploy

ERwinforDatabaseDesign

VisualStudio/C#

1.BigDataandMachineLearningTopics:• DataloggingandcollectionfrommultipleDevicesandSources• MonitoringofthecollectedData• BigDataAnalysisanddevelopment/useofMachineLearning

Algorithms• Module-based:DataloggingModule,ManagementModule,

MonitoringModule,DataAnalysisandMachineLearningModule,...

🔨 Hardware:DAQDevicesT0-01,USB-6008orsimilar

Moreinformation:https://www.halvorsen.blog/documents/technology/machine_learning

Team1

2.InternetofThings(IoT)• DevelopaSystemforhandlingthelargeamountofIoTdevices• FlexibleDatabasestructureforhandlinglargeamountofDevices

andData• DevelopmentofstandardsorintegratewithexistingIoT

communicationprotocolstomakeiteasytointegrateIoTdevicesfromdifferentvendors

• DealingwithSecurityissues• etc.

🔨 Hardware:DAQDeviceUSB-6008orsimilar

Moreinformation:https://www.halvorsen.blog/documents/technology/iot

3.Industry4.0andAutomationSystem

• CreatethenextgenerationAutomationSystem• Industry4.0elementssuchasInternetofThings(IoT),IndustrialInternetofThings(IIoT),cloudhostingandcomputing.

• Module-based:ControlModule,ManagementModule,MonitoringModule,AlarmModule...

🔨 Hardware:DAQDeviceUSB-6008orsimilar

Moreinformation: https://www.halvorsen.blog/documents/technology/industry40

4.IoTSystemforEnvironmentalData• EnvironmentalPublicHealthInformationManagementSystem

(EPH)forcollectionandpresentationofenvironmentaldatainGrenland

• Measure,collectandmonitoringenvironmentalissuesinGrenland

• Aflexibledatabaseneedstobedevelopedforhandlingdifferenttypesofdata

• DataAnalysisandStatistics

🔨 Hardware:DAQDeviceUSB-6008orsimilar

Moreinformation:https://www.halvorsen.blog/documents/projects/projects/eph.php

5.DataLoggingandMonitoringSystem• ThisAppshouldbeusedby“everybody”thatneedtologdata,buthaveno

programmingexperience.ThismeanstheAppneedstobehighlyconfigurable.• ReadDatafromDAQdeviceandplotthemintoaChart• PossibletoLogDatatoDatabaseandFiles.PossibletologfrommultipleDAQdevices?• DeviceInformation(DAQDevice)

– DeviceName,Vendor,Channels,...

• Configuration:– LoggingInterval– TerminalWiring(Differential/RSE),NumberofChannels(USB-6008:Differential:0-3,RSE:0-7)– ScalingforeachChannel(Volt->EngineeringUnit)– Start/StopLogging,LoggingSchedule(From/ToDateTime)– ...

• Module-based:LoggingModule,ConfigurationModule,MonitoringandAnalysisModule,...

🔨 Hardware:DAQDeviceUSB-6008orsimilar

Moreinformation:https://www.halvorsen.blog/documents/technology/datalogging

6.WeatherSystem• LoggingandPresentationofDatafromdifferentSensors,suchas

Temperature,AirPressure,...• LoggingWeatherDatafromdifferentsensorstotheDatabase• MonitoringandPresentationofWeatherData• Modulebased,i.e.TheAdministration,LoggingandPresentation

shouldbedifferentmodules?• Shouldbeabletoadd(orremove)newsensorswithoutchanging

theDatabaseDesign(tables) orHMI/GUI

🔨 Hardware:DAQDevice,e.g.TC-01,USB-6008/myDAQ

Moreinformation:http://home.hit.no/~hansha/weather.htm

Team2

7.ProcessSimulatorSystem• DevelopmentofProcessSimulatorSystem,includingdifferenttypes

ofsimulatedprocesses(LevelSystem,Reactor,...)andcontrolstrategies(PID,..)

• ShouldbeusedinteachingofControlTheoryandControlprinciples,e.g.,inthecourse“Automatiseringsteknikk”orsimilarcourses

• Themostcommoncontrolprinciplesshouldbeimplemented(PID,Feedforward,...)

• Possibletousedifferentprocesses(leveltank,...)• Itshouldbemodularized,meaningitshouldbeeasytoaddnew

simulatorslater• Webbased?(thennolocalinstallationisneededontheclients)

🔨 Hardware(optional):LevelTank,AirHeater,USB-6008

8.ProcessControl&MonitoringSystem• SCADAsystem(SupervisoryControlandDataAcquisition)• Themainfunctionalityofthesystem:Control,Datalogging,Monitoring,Show

Alarms(theseshouldbedifferentmodules)• AlldatashouldbestoredinaSQLServer• Controlone(ormore)oftheMiniatureProcessModelsatHiT (e.g.,AirHeater,

LevelTank,2-Tank,...).Shouldbepossibleto“easily”addseveralprocesses• Inadditiontocontrolrealsystems,simulationsusingmathematicalmodels

shouldbepossible• Itshouldbemodularized(Control,Datalogging,monitoring,...shouldbe

separatemodules)

🔨 Hardware:LevelTank,AirHeater,USB-6008Moreinformation:https://www.halvorsen.blog/documents/technology/scada

9.HomeAutomationSystem• Asystemforloggingdata,monitoringandcontrolofdifferentdevicesinthe

Home• AllData(Temperature,...)shouldbestoredinacentralSQLServerDatabase• Possibletoseestatusinformationforthedifferentdevicesthatare

connected• Module-based(loggingdata,monitoringandcontrolshouldtypicallybe

differentmodules)• Possibletoaddnewdeviceswithoutchangingthedatabasestructure• WebAPIforImport/ExportofData

🔨 Hardware:DAQDevice,e.g.USB-6008,myDAQ

Moreinformation:https://www.halvorsen.blog/documents/projects/projects/smart_buildings.php

10.PaymentSystem• Shopterminal(likewehaveingroceriesstores)• TheSystemAdministratorshouldbeabletoAdd/EditItems(Name,barcode,price,numberinstock,...)AseparateModuleforthis?

• Thesalesmanneeds tologin beforehecanuseit• PossibletoScanitems basedonBarcodes• Paymentsolution,Cashonly?Paypalintegration?• Possibletosee salesinformation,howmuchyouhavesold,etc.AseparateModuleforthis?

🔨 Hardware:BarcodePrinter,BarcodeReader,RFIDReader

11.Web-shop• OnlineWebshopthatcanbeusedtosellitemsontheInternet(it

couldbee.g.,books,CDs,antiques,...)• AdministratorshouldbeabletoAdd,Edit,DeleteItemsand

inventoryinformation.AseparateModuleforthis(Thismoduledoesn'tneedtobeawebmodule)?

• Theusershouldbeabletosearchandadd(andremove)itemstoaShoppingCart.

• Paymentsolution(Paypalintegration?)• Thesystemshouldbegeneric/configurabletobeabletosellall

kindsofitems🔨 Hardware:Nohardwareneeded(exceptPC)

Team4

12.SocialTeachingNetwork• CreateaSocialTeachingNetwork• “Facebook@Work”/”Facebook@School”• Thesystemcouldbeusedinteaching,communication,etc.

• Thestudentscoulduseittowritemessagesorquestionstotheteacherortootherstudentsinacourse,class,studyprogram,etc.

• Itshouldbepossibletohaveinternal(discussion-) groupswithindifferentClassesandCourses,etc.

• AseparateMessengermodule(InstantMessaging)?• AseparateConfigurationModule?

13.StudentAttendanceSystem• Systemforrecordingattendance• Insomecourses(oratleastsomepartsofit,e.g.labwork,etc.)

havecompulsoryattendance• AnAdministatorshouldbeablesetupnewattendances(e.g.a

lab,acourse,aseminar,anexcursion,etc.).Itcouldbeonetimeorawholesemester.AseparateModuleforthis?

• TheMATLABcourseislikethis,thestudentscannotbeabsentmorethan3timesinordertobeable totakethefinaltest/examandinordertogetadiploma

• Itshouldbegeneric,soeverybodythatneedsanAttendanceSystemcanuseit

🔨 Hardware:e.g.,RFIDReader,BarcodeReader,etc

14.Game-basedLearningSystem• CreateaGame-basedLearningSystem• Shouldbeusedtomakelearningmorefun,e.g.inthiscourse(if

possibleJ)• Administratorshouldbeableto,e.g.,createmultiple-choice

questionswithanswers.AseparateModuleforthis?• Theusersneedstoenteracodeinordertoenterthequiz.Multiple

usersshouldbeabletotakethequizatthesametimeshowingtheresultsontheAdministratorsPCinreal-time

• Seehttps://getkahoot.com andhttps://kahoot.it forinspiration

Team3

15.TeamCalendar• AsharedCalendarforseveralpersonsinaTeam(ora

company,department,etc.)• WebbasedCalendarview• AseparateModulethatimportsAppointmentsfromOutlook• SimpleinterfaceforaddingAppointments,callinsick,etc.• PrimaryuseatHiT/TFonalargeTVscreeninthehall,butalso

ontheTeammemberspersonalcomputers(differentmodules?)orSmartphonesandTablets

• AccessControl:AccesstogroupsorindividualCalendars,etc.• Day,WeekandMonthview

🔨 Hardware:Nohardwareneeded(exceptPC)

16.Multiple-choiceTest/ExamSystem• ThesystemshallspecificallybeusedintheMATLABcourse(butmaybe

usedinanysituationwhereyouneedatest/examwithmultiplechoice,soitneedstobegeneric)

• AnAdministratorshouldbeabletocreatenewtestsandquestionswithinthattest,setnumbersofquestionforagiventest,etc. Gradecriteria(0-100%,Approved/NotApproved,A-F).SeparateModule?

• Theuserneedstoregisterinformationabouthimself,beforehecantakeatest(Name,Class,etc.)

• Beforetheusercantakethetest,e.g.acodeneedstobeentered• Theusershouldbepresentedonequestionatthetimeinasequenceor

randomorder(foreachtestshouldhaveabankwithquestionsitcanpickfrom)

• Whenfinished, theusershouldbeabletoprintadiploma• Administratorshouldbeabletoseetestresults,statistics,etc

17.ScheduleManager• Systemforcreating(Webbased)Schedules (Norwegian:”Fremdriftsplan”)for

thedifferentcoursesatHiT(orotherschoolsforthatmatter)• MulipleTeacherinacourseshouldbeabletoeditthecourseschedule• ShouldbeabletoaddTopicstext,AttachDocuments(pdf)suchasExercises,

powerpoints,andotherresources• DifferentViewsshouldbepossible,Semesterviewwithallweeksinonepage

andWeek/DayViewsfordetails?• Overviewpagewithallcoursesandlinktoscheduleforeachcourse.You

shouldonlyseethecoursesthatyouareapartof• PossibletoaddalinktothescheduleinthecorrespondingFronterroom• (seethescheduleforthiscourseforinspiration)

18.DigitalExamSystem• AsystemforhavingdigitalexamswherestudentscanusetheirownPC

• Ateachershouldusethissystemtocreatetheexamquestions (andsuggestedsolutions?)inadditiontoAddinformationsuchasExamName,Class,aids,time,teachers,etc.

• Inadditiontowritesimpletextanswers,itshouldbepossibletouploaddocuments,drawings,codefiles,etc.

• Whentheexamisfinished,theteachershouldgetaccessthetheanswersforsettinggrades,givecomments,“sendit”toanexternalsensor,etc.

19.AssessmentSystem• Usedbyteacherforgradingassignments,reports,labwork,

etc.(i.a.apdfreport)• ShouldbepossibletouploadtheTask/Assignmentasapdffile• ShouldbepossibletouploadtheStudentsanswers(pdf

report)• Possiblefortheteachertowritecommentsandgivegrades• Multipleteacherandsensorsshouldbeabletoseethe

studentwork,givecommentsandpreliminarygrades• Possibletousedifferentscales(0-100%,A-F,includingthenew

AssessmentFormusedforBachelor/MasterThesis)• AccesscontrolandLoginpossibilities

20.WorkSchedulePlanningSystem• WorkSchedulePlanningSystemusedforPlanningyourweeklyanddailywork.

• MakeTo-DoLists• PossibletocreatedifferentCategoriesorgroupyourTo-DoItems

• PossibletohavepersonallistandlistssharedbyaTeam

• TimeEstimates,etc.Example:https://todo.microsoft.com

21.Forum/NetworkCommunity• CreateaWeb-basedForum/NetworkCommunity

• Itisusedtogivecommentsandfeedbackonnewsarticles,blogposts,questionsandanswers,etc.

• Seehttps://disqus.com forinspiration.Disqusisusedonlotsofwebsites

• ShouldbepossibleforAdministratortoapprove,delete,etc.

• Shouldbepossibletoincludeinyourpersonalwebsiteorblog.

22.OfficeManagementSystem• RegistrationofOfficeInformationatUSN– Location,Building,OfficeNumber,EmployeeName,WorkTitle,OfficeSize,Department,Equipment(PC,..)

• PossibletoexecutedifferentkindsofReports(SearchforspecificinformationintheDatabase)

• AutomaticallysendingE-mailtoDriftorITdepartment

• PrintDoorsigns

23.BugReportSystem• ASystemthatkeeptrackofallBugsandNewFeatures.

• Shouldbeeasyandintuitivetotouse.VSTShastomanyfeaturesandmaybealittlecomplicatedtouse.

• PossibletoAddNewBugsandFeatures• Possibletoset“ResponsiblePerson”• PossibletochangeStatus,suchas“New”,“Fixed”,“Closed”,etc.

• Searchfeatures,e.g.,see“Allbugs”,“MyBugs”

24.TaskBoard• SystemusedinProjectManagementandPlanning– Makea“ScrumTaskBoard”thatiswaysimplertousethanVSTS

• SystemforcreatingTasksandAssignthemtospecificPersons,SetDeadline,NumberofHours,etc.

• SetStatuslike“ToDo”,“InProgress”,“Done”

Example

25.EvaluationSystem• TogivefeedbackonTeaching,LabWork,StudentPresentations,submittedwork,etc.

• TheAdministratorshouldbeabletocreateasetofQuestions.AseparateModuleforthis?

• Multiplechoice,textanswers,0-100%,1-6,...• TheAdministratorshouldbeabletoseethetestresultsandsomeStatistics

• Accesscontrol,Administrators,Users,...• AstandardizedAssessmentFormforBachelor/MasterThesisshouldbeincluded

26.VideoViewer• Web-basedVideoViewerforshowingVideosfromdifferentsources,e.g.,YouTube,Mediasite,localvideos,...

• PossibletoAddandStructureVideosintologicalGroups,Playlist,etc.

• GUIforViewingtheVideos• PossibletoRateandgiveComments

• etc.

Prototype

27.LabInventorySystem• OverviewofLaboratoryEquipment(Name,Type,Numberof

Units,Vendor,...)• Shouldbepossibletoloanandreturnequipments(likebooks

inalibrary)• Administratorshouldbeabletoadd/editlaboratoryitems• Administratorshouldseelistofexistingloans• BarcodePrintingmodule(Printingbarcodelabelsonthe

equipment)• BarcodeorRFIDscanning shouldbepossiblewithaseparate

module🔨 Hardware:BarcodePrinter,BarcodeReader,RFIDReader

28.RoomBookingSystem• Shouldbeusedforbookinge.g.,Grouprooms,Meetingrooms,etc.

• AdministratorshouldbeabletoAdd(orremove)newrooms,etc.AseparateModuleforthis?

• Usersneedtoregister/loginbeforeuse• Shouldbepossibletoseefree,occupiedrooms,etc.• Statistics.Whichroomsaremostinuse,etc.• Itshouldbegeneric,soeverybodythatneedsaRoomBookingSystemcanuseit

29.EquipmentErrorSystem• SystemforregisteringandhandlingEquipmentErrors• Possibleforstudentsandemployeestoreportequipmentthathaserrors(EquipmentName,Model,Number,..)

• Whensomeonereportserrors,itshouldtypicallysendanemailtoresponsibleperson

• Work Lists(AlistofEquipmentthatneedstobefixed).Arepairmancanthenprioritizeandfixit,setstatus,addinformation,etc.

• Statistics.Whichequipmentcontainsmanyerrors,etc.🔨 Hardware:e.g.,RFIDReader,BarcodeReader,etc.

30.DigitalMultimeterApplication• CreateanApplicationthatreplacesatraditionalmultimeter• WeshouldcreateanapplicationaroundaDACdevicesuchas

USB-6008tocreateadigitalmultimeterapplicationthathasmultipleinputchannelsandalsomultipleoutputchannels

• Auser-friendlyandintuitiveGUIisimportant• Shouldbeeasytoconfigure• PossibletosavedatatotheDatabase,exportdatatoExcel,..• Oscilloscopefeatures,FunctionGenerator,etc.• API

🔨 Hardware:DAQDeviceUSB-6008orsimilarForInspiration:http://www.ni.com/en-no/shop/electronic-test-instrumentation/virtualbench/what-is-virtualbench.html

Let'sgetstarted!

Comparedtoothercourses,youneedtostartworkingfromday1!!

Ifyouarelaggingbehindfromthebeginning,youwillhaveproblemscatchingup!

B.Lund.Lunch.Available:http://www.lunchstriper.no,http://www.dagbladet.no/tegneserie/lunch/

PlanyourWorkProperly

B.Lund.Lunch.Available:http://www.tu.no/tegneserier/lunch

Ifyouplanyourworkproperlyandworkharddaybyday,everythinggetssomuchbetter

Hans-PetterHalvorsen

UniversityofSoutheastNorwaywww.usn.no

E-mail:[email protected]:https://www.halvorsen.blog