AY 2007-2008/Sem-1/Software Engineering
From IIITM-k-wiki
Contents |
Software Engineering
About the Course
Software Engineering is defined in IEEE Standard 610.12 as "the application of a systematic, disciplined, quantifiable approach to the development, operation, and maintenance of software; that is, the application of engineering to software". It is a discipline that encompasses the process associated with software development, the methods used to analyze, design and test computer software, the management techniques associated with the control and monitoring of software projects and the tools used to support process, methods, techniques and management.
Objective
The 0bjective of this course is
- To prepare students to develop fault-free or fault-tolerant software that satisfies the user's needs and that is delivered on time and within budget.
- To provide the students with a thorough understanding of the principles, processes and tools required for the successful design and development of dependable, large software systems.
- To provide the students with experience in teamwork and management, preparing them for the role of technical management.
Instructor(s)
- Instructor :Dr. Elizabeth Sherly, Assoc. Professor, IIITM-K, sherly_at_iiitmk.ac.in
- Instructor :Mr. Pradeep Kumar, Sr. Design Engineer, IIITM-K, pradeep_at_iiitmk.ac.in
- Associate instructor :Mrs. Smitha rani, Project Associate, IIITM-K, smitharani_at_iiitmk.ac.in
Class Schedule
- to be Announced
Target Audience and Prerequisite
PGDIT Students of IIITM-K
Syllabus
Module-1: Introduction to Software Engineering Introduction to the course, History of the development of Software Engineering and its importance
Module-2:Software engineering Models: Software Life cycle Models, Water fall, Incremental, Prototype, Spiral, Iterative models
Module-3:Requirements Management: Requirement Analysis, SRS preparation, Requirement Reviews
Module-4:Software Measurements: software Metrics, Software costing, Function Point analysis, COCOMO model
Module-5:Configuration and Risk management: SCM Processes, version control, change management, Risk Management
Module-6: Software Testing: Various testing Methodologies like unit testing, functional, integrated, stress testing, Performance evaluation, Defect density, Test case preparations
Module-7: Software Quality: Quality Assurance, Quality control,Statistical Quality control, Software Defects, reviews, SQA plan
Module-8: Software Project Management: Project Management Processes, Project Estimations, Project Planning and Tracking, scheduling,Scope Management, Communications Management, Cost Management, Integrated Change Management
Module-9: Review Processes: Review/inspection procedure document, checklists, Recording Defects and Actions Recommended
Module-10:Process Frameworks: Five levels of CMM, Introduction to CMMi, Introduction to six sigma, DMAIC model
Instructional Process for Learning
- Class room Teaching
- Online Course Management System (Moodle)
- Video lectures, online quizzes, online assignment submission
- Projects in Groups
- Presentations
Attendance
For PGDIT students : 85 %
Grading Scheme
Mid term Exam: 30%
End Term Exam: 30%
Quiz/Assignment: 20%
Student Seminars: 10%
Attendance, class participation: 10%
References
Pressman R.S, Software Engineering: A Practitioner's Approach(6th Edition), McGraw Hill, 2005
Ian Sommerville, Software Engineering(7th Edition), Pearson Education Asia, 2004
Steve Schach ,Classical and Object Oriented Software Engineering(6th Edition), McGrawHill International, 2005

