General information CSE 230 : Introduction to Software Engineering
Published byModified over 4 years ago
Presentation on theme: "General information CSE 230 : Introduction to Software Engineering"— Presentation transcript:
0 CSE 230: Introduction to Software Engineering Topics covered:Course outline and schedule
1 General information CSE 230 : Introduction to Software Engineering Instructor : Swapna S. GokhalePhone :Office : ITEB 237Lecture time : Mon/Fri 11:00am – 12:15 pmOffice hours : By appointment(I will hang around for a few minutes at the end ofeach class).Web page :(Lecture notes, project, and general announcements willbe posted on the web page)TA : Derek DoranOffice hours : The TA will announce his office hours.
2 Course goalsAppreciation and motivation for the study of software engineeringSoftware qualities and software engineering principlesSoftware design techniquesTraditional and object-oriented design.Software specification techniquesSoftware verification techniquesSoftware production processManagement of software engineeringSoftware engineering tools and environmentsSoftware architectureDesign patternsIntroduction to Java (though this is not a Java programming course)Communication skills, and cooperative effort via a team project.
3 Expected learning outcomes Be able to reason about the qualities that a software system must possessBe able to describe traditional and object-oriented design.UML class diagrams for describing an OO designDemonstrate various software specification techniquesUML use-case, activity, and state-chart diagramsDemonstrate software verification techniquesEmpirical testing and informal analysis techniquesBe able to describe the software production process and various life cycle modelsDescribe and apply the management process to a software project.Understand and be able to describe the importance of software engineering tools and environmentsBecome familiar with various architectural styles and design patternsDevelop communication skills and work effectively as a team
4 Textbooks Required text book: 1. Fundamentals of Software Engineering by Carlo Ghezzi, Mehdi Jazayeri,and Dino Mandrioli, Second Edition, Prentice Hall, NJ.Reference texts:1. Software Engineering: A Practitioner’s Approach, By Roger S. Pressman2. Budd book3. The Mythical Man Month, By Fred P. Brooks4. Any Java text book.5. Papers may be handed out in the class.6. Additional reference texts may be used from time to time, and willbe announced in the class
5 Course topics Introduction Software qualities Historical perspective, state of the practice, why software engineering, relationship of software engineering to computer science and other disciplinesSoftware qualitiesQualities of the software product and processSoftware engineering principlesGeneral principles to be followed in the development of a software productSoftware designTraditional and OO design concepts, notations for describing traditional and OO designsSoftware specificationVarious techniques used for specifying the behavior and properties of software
6 Course topics (contd..) Software verification Execution and non-execution based verification techniquesVerification of software qualitiesSoftware production processPhases in the software production, various life cycle modelsManagement of software engineeringProject planning, estimation and risk managementSoftware engineering tools and environmentVarious tools to facilitate software engineering techniquesSoftware architecture and design patternsIntroduction to software architecture, software architectural styles and design patterns
7 Grading system Midterm #1, #2, #3: 45% Final : 30% Project : 25% (Several parts)
8 Project The purpose of the project is to: Introduce you to various aspects of software engineering, namely, requirements, design, implementation, and verification.Enhance your communication skills, and your capability to cooperate and work as a part of a team.Points will be allocated for documentation, requirements, and test plans in addition to demonstrating that your program works.Projects will be carried out in teams of two.Please select your team member and let the TA know within the next couple of weeks.Your team member should be from the same lab section.
11 Course topics calendar Week #11 (Nov. 5):Nov. 5: No classNov. 9: Software Production Process (Chap. 7)Week #12 (Nov. 12):Nov. 12: Software Production Process (contd..) (Chap. 7)Nov. 16: Software Engineering Management (Chap. 8)Week #13 (Nov. 19)Thanksgiving break (no class)Week #14: (Nov. 26)Nov. 26: Software Engineering Management (contd..) (Chap. 8)Nov. 30: Midterm #3Week #15: (Apr. 26)Dec 3: Software engineering tools.Dec. 7: Make up class
12 Grading policyRefer to the University policy regarding Student Conduct(Plagiarism, etc.)Grading of project/exams is handled by the TA, if you cannotresolve a problem with the TA, see me.Submit the lab assignments directly to the TA.Late submissions are penalized by a loss of 33% per day late(so 3 days late is as late as you can get).If you have any conflict with the exam date, please see me inadvance for an alternative arrangement.Project grading:At the end of the semester, each one of you will be asked to providefeedback about your team memberYour final project grade will take into consideration, the feedbackprovided by your team member.
13 Attendance policy Attendance not mandatory. Attending classes helps! Case studies in the classEverything not in the lecture notes
14 Labs Labs will be handled by the TA Java will be introduced in the labs.Please feel free to discuss any Java related issues with the TA or meI request you to attend the lab, as the project will be introduced ona part by part basis in the lab.
15 FeedbackPlease provide informal feedback early and often, before the formalreview process.