SOFTWARE ENGINEERING
SUBJECT : SOFTWARE ENGINERING
SUBJECT CODE : CM-605/ECN-504/IT-603
PERIODS PER WEEK : 06
PERIODS PER SEMESTER : 90
Sno | Topics | Weightage of marks | Short questions | Essay question |
1 | Introduction & Life cycle Models | 10 | 1 | 1 |
2 | Software Project Management | 36 | 3 | 2 |
3 | Requirement Analysis and Specification | 20 | 2 | 1 |
4 | Software Design, Coding & Testing | 48 | 3 | 3 |
5 | Reliability And Quality Management & Maintenance | 10 | 1 | 1 |
OBJECTIVES
1.0 Introduction & Life Cycle Models
1.1 The Software Engineefing Discipline Evolution and Impact
1.2 Evolution of an art to an engineering discipline
1.3 A solution to the software crisis?
1.4 Programs vs software products
1.5 Emergence of software engineering
1.6 Early computer programming
1.7 High level language programming
1.8 Control flow based design
1.9 Data structure-oriented design
1.10 Data flow oriented design
1.11 Object oriented design
1.12 Other developments
1.13 Notable changes in software development practices
1.14 Computers systems engineering
1.15 Sotware life cycle models-classical waterfall model classical waterfall model feasisbility study
1.16 Requirement analysis and specifications
1.17 Design
1.18 Coding and unit testing
1.19 Integration and system testing
1.20 Maintenance
1.21 Iterative water fall model
1.22 Prototype model
1.23 Evolutinary model
1.24 Spiral model
1.25 Comparision of different life cycle models
2.0 Software project management
2.1 Responsibilities of a software project manager
2.1.1 Job responsibilities of a software project manager skills necessary for software project management
2.2 Software project planning
2.3 The SPMP Document
2.4 Metrics for Project Size Estimation
2.4.1 Lines of code
2.4.2 Function point metric
2.4.3 Project estimation techniques
2.4.4 Empirical estimation techniques
2.4.5 Heuristic techniques
2.4.6 Analytical estimation technique
2.4.7 Expert judgment technique
2.4.8 Delphi cost estimation
2.5 Staffing Level Estimation
2.5.1 Nordens Work
2.5.2 Putnam’s work
2.6 Scheduling
2.6.1 Work break down structure
2.6.2 Activity networks and critical path method
2.6.3 Gantt charts
2.6.4 Pert charts
2.6.5 Project monitoring and control
2.7 Organization and team structures
2.8 Organization Structure
2.9 Team Structure
2.10 Staffing
2.11 Who is a Good software Engineer?
2.12 Risk management
2.13 Risk Identification
2.14 Risk Assessment
2.15 Risk Containment
2.16 Software Configuration Management
2.17 Necessity of Software configuration Managemnt
2.18 Configuration Management Activities
2.19 Source Code control System(SCCS ) & RCS
3.0 Requirement Analysis & Specification
3.1 Requirements gathering and analysis
3.2 Software Requirement specification(SRS)
3.2.1 Contents of the SRS document
3.3 Functional Requirements
3.4 How to identify the functional requirements
3.5 How to Document the functional requirements Traceability
3.6 Characteristics of a good SRS document
3.7 Examples of Bad SRS Document
3.8 Organization of the SRS Document
3.9 Technique for Representing Complex Logic
4.0 Software Design,Coding & Testing
4.1 What is a good Software Design?
4.2 Cohesion and Coupling- Classification of Cohesiveness Classification of Coupling.
4.3 Software design Approaches:- Function Oriented Design , Object Oriented Design. Function –Oriented vs Object Oriented Design.
4.4 User Interface Design-Characteristics of a good User Interfaces Basic Concepts-User guidance and Online Help Mode Based vs Modeless Interface-Graphical User Interface (GUI) vs Text Based User Interface- Types of User Interface Command Language Based Interface- Menu-Based Interface Direct Manipulation Interfaces-Component-Based GUI Development-Window System Types of Widgets
4.5 Software Coding and Testing-Coding Standards and Guidelines code Review-Code Walk-throughs-code Inspection Clean Room Testing-Software Documentation-Software Testing What is Testing?-Verification vs Validation Design of test cases testing in the large vs testing in the small-unit testing- driver and stub modules-Black-Box testing-white-box testing
4.6 Debugging-Debugging approaches-debugging guidelines program analysis tools-static analysis tools-dynamic analysis tools-Integration Testing Phases vs Incremental Integration Testing System Testing-Performance Testing- Error Seeding
5.0 Reliability quality Management & Maintenance
5.1 software reliability
5.2 Hardware vs software reliability
5.3 Reliability Metrics
5.4 Reliability Growth Modeling
5.5 Statistical testing
5.6 Software Quality
5.7 Software quality management system
5.8 Evolution of quality systems
5.9 ISO9000
5.10 What is ISO 9000 Certification
5.11 ISO 9000 for Software Industry
5.12 Why get ISO 9000 Certification?
5.13 How to Get ISO 9001 Certification?
5.14 Summary of ISO 9001 Requirements
5.15 Shortcomings of ISO 9000 Certification
5.16 SEI Capability Maturity Model
5.17 Comparison Between ISO 9000 Certification and SEI
COURSE CONTENTS
- Introduction to software engineering- Life Cycle Models.
- software Project Management- Responsibilities of a Software Manager-Project planning- Metrics-Project Estimation Technical Scheduling-Risk Management.
- Requirement Analysis and specification-SRS Document function requirements-traceability.
- software design function-oriented software design, Object oriented software design, user interface design.
- software reliability and quality management-hardware vs software reliability-software quality-ISO 9000 & ISO9001 Certification
TEXT BOOKS
Fundamentals of software engineering- Rajib Mall
Reference: BOOKS
- Software engineering- Jawadekar
- software engineering concepts – fairley
sir change the font color .. we cant see
ReplyDelete