USC'sTwoSemesterSoftwareEngineeringGraduateProjectCourseA.WinsorBrownComputerScienceandUSCCenterforSystemsandSoftwareEngineering,UniversityofSouthernCaliforniaLosAngeles,CA90089-0781,USAandSupannika(Sue)KoolmanojwongComputerScience,UniversityofSouthernCaliforniaLosAngeles,CA90089-0781USAABSTRACTFor over 12 years, USC's Computer Science (CSCI)Department has been offering a two-semester softwareengineering course designed by Dr. Barry Boehm andrequired course for the CS department's Specialization inSoftware Engineering. From the beginning, it has beendoing real projects for real clients. The courses focus onactivities not normally covered by regular computerscience.Whilethefocusisonsoftwareengineeringoftheprojects, the project is done in the context of systemsengineering, employing the Incremental CommitmentModel(ICM).Projectteamsareself-organizingandselecttheprojectstheywishtoworkon.Overtheyears,variousonlinetoolshavebeendevelopedspecificallytosupportthecourses.Keywords: Incremental Commitment Model (ICM),ElectronicProcessGuide(EPG),DistanceEducation,RealProjects For Real Clients, Systems Engineering, SoftwareEngineering.1.INTRODUCTIONSoftware engineering project courses provide a way forsoftware engineers in training to both learn about theirtradeandputitintopractice.Suchcourses,especiallywithlargeenrollments,uptoabout200studentsforCSCI577a,require special tools to support them in addition to theexpected software engineering tools for architecture anddesign, configuration management, and bug and issuetracking. PhDstudentshaveevolvedmany ofthecourse-specialized tools over the years as these tools have beenusedtogatherdatafortheirtheses.[1]2.COURSECONCEPTForthesecourses,“SoftwareEngineering”isdefinedasthedisciplines that distinguish the coding of a computerprogram from the development of a software product.These "real projects for real clients' courses" stress thetopicsthatarenotthefocusofclassiccomputerscienceasshowninFigure1.Figure1.CSTraditionalvs.SEfocusFrom the beginning, students are told that the intent is toprepare them for software leadership careers through the2040’s, including balancing agility with discipline andCOTS/OSS,model,andservice-basedandnetworkcentricsystems.AlltheseconsiderationsareintegratedviaValue-Based Software Engineering (VBSE), IncrementalCommitmentModels(ICMs)[2],andprojectexperience.RealclientsforrealprojectsIn the beginning, projects came from the USC Libraries,which often had niche systems they wanted but, withlimited funding, little support from the campus-wide ITdepartment. Other departments, also wanting niche orspecialtysystemsheardabouttheprojectsandtheir"free"labor. CSSE itself has occasionally been a client forspecialtyprojectsandtools,including thoseforthecourseitself. Forthelastseveralyears,however,the bulkoftheclients come from the USC University NeighborhoodOrganizations(UNO)andothernot-for-profitorganizationsthatarepartofanexpandingnetworkofcontactsthatUNOhasdevelopedovertheyears.Thecoursealsotakessomefor-profitsmallorganizationswhoproposeprojects.TeamsTeams are self-selecting and "bid" on projects using apreference ranking. Projects are described with three orfour paragraphs of descriptions that do not explicitlyidentify the client contacts. Some projects are initiallyscoped and identified as "one-semester projects," orprojects that can be completed in one semester, typicallyeitheraskingforevaluationsofCOTSpagealternativesorusingCOTS frameworks,althoughrecentlythecoursehasdoneseveralprojectsusingnetworkcentricservices.Sincethereareinvariablymoreprojects"proposed"thanteamsto serve them,the projects are assigned to teams on a "leastregrets"basis.The teams are expected to have six-or-seven on-campusstudents,supplementedbyone-or-twooff-campusstudentswho participate via USC's Distance Education Network(DEN). DEN provides both live and delayed streamingvideo of the lectures. Most of the DEN students areworkingprofessionalswhoarealloverthecountry.Afterteamsbasedonon-campusgroupingsareformed,theDENstudents get to state their preferences of the selectedprojects.DEN student rolesinthe first semesteraregiventothem.In addition to providing Independent IntegratedVerificationandValidationsthroughevaluationsofstudentdocumentationpackages,someareaskedtoplaytheroleofSystem/Project
View Full Document