You are on page 1of 4

Syllabus

COMP380/L:IntroductiontoSoftwareEngineering
Spring2015
Course Information
Textbooks:

SoftwareEngineering,9thEdition,byIanSommerville,2011,AddisonWesley.
SamsTeachYourselfUMLin24Hours,3rdedition,byJosephSchmuller,2009,
SAMS.
Taehyung(George)Wang,twang@csun.edu
Instructor:
Classwebsite:
http://moodle.csun.edu/
Meetinginformation Lecture:JD2211,TuTh3:304:20pm/Lab:JD2211,TuTh4:305:45pm
Officehour:
JD4447,TuTh2:303:30pm,orbyappointmentonFriday
Midtermexams:
TBD
Finalexam:
TBD
Prerequisite:
COMP282and(COMP222or232)

Course Description
Softwareengineeringisanengineereddisciplineinwhichtheaimistheproductionofsoftware
products,deliveredontimeandwithinasetbudget,thatsatisfiestheclientsneeds.Itcoversall
aspectsofsoftwareproductionrangingfromtheearlystageofproductconcepttodesignand
implementationtopostdeliverymaintenance.Throughgrouplabassignments,studentscanobtain
handsonexperiencesonentirephasesandworkflowofthesoftwareprocess.

Course Objectives
COMP380:
Uponsuccessfulcompletionofthecoursethestudentwillbeableto:
Describethehistoryoftheterm,softwareengineering,andexplainitscurrentmeaning
andimportance.
Explainwellknownsoftwaredevelopmentprocessmodels.
Select,withjustification,asoftwaredevelopmentprocesswhichismostappropriateforthe
developmentandmaintenanceofadiverserangeofsoftwareproducts.
Useacommon,semiformalmethod(forexample,UMLdiagrams)tospecifythe
requirementsofamoderatelysizedsoftwareproduct.
ConductsoftwaredesignusinganacceptedprogramdesignmethodologysuchasUML.
Distinguishbetweendifferenttypesandlevelsoftesting(forinstance,unit,integration,
systems,andacceptance)formediumsizesoftwareproducts.
Discussvarioustestingtechniquessuchaswhiteboxandblackboxtesting.
Discusskeyprinciplesandcommonmethodsforsoftwareprojectmanagementsuchas
scheduling,sizeestimation,costestimationandriskanalysis.
GetfamiliarwithCASEtoolsand/orenvironmentsincludingUMLdrawingtoolsand
Eclipse.
Makepresentationsdescribingaspectsofsoftwaredevelopmentactivities.

COMP380L:
Uponsuccessfulcompletionofthecoursethestudentwillbeableto:
Aspartofateameffort,applyapropersoftwareprocessmodelforgroupprojects.
Aspartofateameffort,developgroupprojectsrequirements.
Aspartofateameffort,createUMLusecase,sequence,andclassdiagramsasappropriate
duringsoftwaredevelopmentactivities.
Notethatthecontentofsyllabuscanbechangedwithoutadvancenotice.

Translatedetaileddesign(forexample,UMLdiagrams)intocodebyusinganintegrated
developmentenvironment(IDE).
Aspartofateameffort,developtestingplansincludingwalkthrough,unittesting,and
producttesting.
Aspartofateameffort,makedocumentationsincludingrequirementsspecification,
design,coding,projectplan,testingplan,andpostmortemreport.
Aspartofateameffort,effectivelyparticipateinateamprojectrelatedtothedevelopment
ofasoftwaresystem.
FamiliarwithCASEtoolsand/orenvironmentsincludingUMLdrawingtoolsandIDEs.
Makepresentationsdescribingaspectsofsoftwaredevelopmentactivities.

Course Requirements
Exams
Examswillaskaboutthedetailedknowledgeaswellasthemajorconcepts.Amidtermandafinal
examwillbegiven.Nomakeupexamisallowedunlessalegaldocumentisprovidedtothe
instructor.
GroupHomeworkAssignments
Homeworkassignmentswillbegivenfortheassessmentofyourunderstandingofclassmaterials.
GroupLabAssignments
Labassignmentsarerelatedtothegroupproject.Eachlabassignmentwillbepartofthegroup
projectorexercisesforthegroupproject.
GroupProject
Asoneofthecourserequirements,thesuccessofthegroupprojectisnecessary.Thestudentsmust
successfullyfinishtheirgroupprojectontime,satisfyingtherequirementsfortheprojectand
deliveringasetoffinalversiondeliverables.Thedeliverablesshallbeconsistent,complete,and
correct.Atthefinalexam,apeerevaluationwillbeconducted.SCRUMwillbeusedfordeveloping
yourproject.

Course Policy
Laptop
Bringingalaptoptotheclassroomisstronglyrecommendedforallclassactivities.
GroupHomework/LabAssignments
Nolateassignmentwillbeaccepted.
Exams
Youshouldtakeexamsduringthespecifiedtimeonthedatesscheduled.Exceptionstothispolicy
willbeallowedonlyifyouhavedocumentedmedicalexcusesandonlyifyoumakearrangements
withmebeforethescheduledexamperiod.
AcademicDishonesty
CheatingorplagiarisminconnectionwithanacademicprogramatacampusislistedinSection
41301,TitleV,CaliforniaCodeofRegulations,asanoffenseforwhichastudentmaybeexpelled,
suspended,orgivenalessseveredisciplinarysanction.UniversityCatalog
(http://www.csun.edu/catalog)
Notethatthecontentofsyllabuscanbechangedwithoutadvancenotice.

Grading
Theportionofeachgradingcomponentandthegradingformulaareasfollows.Notethatthegrade
oflectureandlabwillbethesame.

Percentage
Gradecutoff
Grade
Gradingcomponents
Grouphomeworkassignments
15%
A
>=94.00%
A
>=90.00%
Grouplabassignments
15%
B*
8089.99%
Groupproject
20%
C**
7079.99%
Midtermexams
20%
D***
6069.99%
Finalexam
30%
F
<60%
Total
100%

*(B+>=87%B>=83%B>=80%)
**(C+>=77%C>=73%C>=70%)
***(D+>=67%D>=63%D>=60%)

Course Schedule and Outline

Week 1
Week 2
Week 3
Week 4
Week 5

Topics
The concept of software engineering
Introducing the UML

Readings
Introduction
Introducing the UML

Use case
Requirement engineering
System modeling
Architectural design
CRC and object-orientation

Introducing use case


Requirement Engineering
System modeling
Architectural design
Understanding object-orientation
Working with object-orientation
Understanding aggregations,
composites, interfaces, and
realizations
Working with Relationships
Working with analysis-level class
diagram
Software processes I
Software processes II
Software testing II
Software testing II
Project management - Estimation
Project management - Scheduling
Project management - People
management
Design pattern I
Design pattern II

Week 6

Class relationships, aggregations, composites,


interfaces, realizations and analysis-level class
diagram

Week 7
Week 8
Week 9
Week 10
Week 11
Week 12
Week 13

Software processes I
Software processes II
Software testing I
Software testing II
Project management - Estimation
Project management - Scheduling
Project management - People management

Week 14
Week 15
Week 16
Week 17

Design pattern I
Design pattern II
Project presentation and final exam review
FINAL EXAM

Notethatthecontentofsyllabuscanbechangedwithoutadvancenotice.

Android Application Development Tutorial Materials (Recommended)

AndroidTraining
http://developer.android.com/training/index.html
Tutorial:AndroidApplicationDevelopmentA9,000footoverview
http://www.youtube.com/watch?v=Mf7z_mrce00&feature=relmfu
AndroidTutorialseries
http://www.youtube.com/watch?v=xtsyrKdPZVw
Androidtutorial&lessonsseries
http://www.youtube.com/watch?v=GU6AQpaj1Q&feature=relmfu
AndroidDevelopmentTutorial
http://www.vogella.com/articles/Android/article.html
AndroidProgrammingTutorials
http://www.coreservlets.com/androidtutorial/

Android Application Development Tutorial Schedule and Outline

Week 1
Week 2
Week 3
Week 4
Week 5
Week 6
Week 7
Week 8
Week 9
Week 10
Week 11
Week 12
Week 13
Week 14
Week 15

Topics
Overview of Android and installation of Android development environment
Application basics: activities and intents
A simple user interface and starting another activity
Activity lifecycle
Threads and services
Broadcast receivers and alerts
Android user interface
Location based services
Android multimedia -- image, audio(music)
Android multimedia -- audio(speech), video
Network-based application programs using features such as SMS, URL, and RSS
Data storage
Location based services
Advanced android development
Advanced android development

Notethatthecontentofsyllabuscanbechangedwithoutadvancenotice.

You might also like