PESIT Bangalore South Campus
Department of MCA SOFTWARE ENGINEERING
1. GENERAL INFORMATION
Academic Year: JULY-NOV 2015 Semester(s):III
Title Code Duration (hrs)
SOFTWARE
ENGINEERING 13MCA33 Lectures 52Hrs
2. COURSE PREREQUISITE
Students should have understanding and grasping power of the theoretical concepts.
3. COURSE OBJECTIVES
knowledge of basic SW engineering methods and practices, and their appropriate application;
A general understanding of software process models such as the waterfall and evolutionary models.
An understanding of the role of project management including planning, scheduling, risk management, etc.
An understanding of software requirements and the SRS document.
An understanding of different software architectural styles.
An understanding of implementation issues such as modularity and coding standards.
An understanding of approaches to verification and validation including static analysis, and reviews.
An understanding of software testing approachs such as unit testing and integration testing.
An understanding of software evolution and related issues such as version management.
An understanding on quality control and how to ensure good quality software.
An understanding of some ethical and professional issues that are important for software engineers.
development of significant teamwork and project based experience
4. COURSE OUTCOMES The student should be able to
Analyze the problem and prepare Software requirement specification.
Design, verify, validate, implement, apply, and maintain software systems.
Demonstrate the ability to work effectively as a team member and/or leader in an ever-changing professional environment
5. FACULTY DETAILS
Details Name Manjula.C.M.Prasad Department MCA
Room Number 508
Phone No. 080-66186629
E-mail address manjulaprasad@pes.
edu
Contact Hours Office Hours
6. VENUE AND HOURS/WEEK
All lectures will normally be held V/VI Floor.
Lecture Hours/week: 4Hrs
7. MODULE MAP
Class
# Chapter # Topics to be covered
% of portions covered Referen
Chapter ce
Cumulati ve 1
UNIT 1:
Overvie w
Introduction : Professional Software Development Attributes of good software,
5.76 5.76 2
Software engineering diversity, IEEE/
ACM code of software engineering ethics,
3 case studies
4
UNIT 2:
Software Process
& Agile Software Development
Software process models: waterfall, incremental development,
19.23 24.99
5 reuses oriented
6 Process activities
7 Coping with change,
8 The rational Unified process
9 Agile methods
10 Plan-driven and agile Development,
11 Extreme Programming,
12 Agile project management,
13 Scaling agile methods.
14
UNIT 3:
Requirements Engineering
Functional and non functional requirements
11.53 36.52 15 The software requirements document
16 Requirements specification,
17 Requirements engineering processes, 18 Requirement elicitation and
analysis,
19 Requirements validation, Requirements management
20 Context models, 67.28
21 UNIT 4:
System Modeling, Architectural Design & Design
and imple mentation
Interaction models,
30.76
22 Structural models,
23 Behavioral models,
24 Model-driven
engineering,
25 Case studies
26 Software architecture: the role of software architecture
27
architectural views
28
component and connector view,
29
Architectural styles for C&C view,
30
Documenting architectural .Design: Design concepts,
31
Function oriented design
32
Function oriented design
33
detailed design,
34
detailed design,
35
verification,
matrix (Complexity matrix for function oriented design),
36 UNIT 5:
Component-based software engineering
Components and component model,
7.69 74.97
37 CBSE process
38 CBSE process
39
Component composition
40 UNIT 6:
Distributed Software engineering
Distributed system issues,
9.61 84.58
41 Client-server computing,
42 Architectural patterns for distributed
systems
43 Architectural patterns for distributed systems
44 Software as a service.
45
UNIT 7:
Planning a software Project
Process planning, Effort estimation,
7.69 92.27 46 Project scheduling and staffing
47 Software configuration
management plan, Quality plan
48 Risk Management, Project monitoring plan.
49
UNIT-8 Software Testing
Testing fundamentals,
7.69
100.00
50 Black-box testing,
51 White-box testing,
52 Testing process
8. RECOMMENDED BOOKS/WEBSITES A. PRESCRIBED TEXTBOOK
Ian Sommerville: Software engineering, 9th Edition, person Education Ltd., 2007
B. REFERENCE BOOKS
a. Roger. S . Pressman: Software Engineering- A practitioners approach, 7
thedition, McGraw-Hill, 2007.
b. Shari Lawrenca pfleeger, Joanne M. Atlee: software Engineering Theory and Practice, 3rd Edition, Pearson Education, 2006
c. Waman S Jawadekar : Software Engineering Principles and practice, Tata McGraw Hill, 2004
C.
WEBSITE
www.softwareEngineeing-9.com 9. ASSESSMENT
A. WRITTEN EXAMINATION
Paper Structure No. Of
Questions 8 Main
Questions No. of questions to be answered 5
Exams date Paper Duration 3
Hrs
Total Marks 100 Pass Marks 40
B. CONTINUOUS ASSESSMENT
Weighting (%) Assignment(s): 5 Marks
(10%) Seminar(s): 5 Marks
(10%) Class Test(s): 5 Marks
(10%) Overall
Performace:
5 Marks (10%) Test(s): 30 Marks
(60%) Total Marks: 50 Marks
ASSIGNMENT(S)
Assignment 1: Considering any problem, the student is asked to write the complete software requirement specification.
Assignment 2: For the above problem designing through any tool and a part of implementation(any one module).
Assignment 3: Testing is done through any testing tool.
10. QUESTION BANK
Unit 1: Overview
Objectives: The objective of this topic is to understand the
Answers to key questions about Software Engineering Process and Product
Ethical and professional issues.
Concept of socio-technical systems, emergent properties and system engineering
Organizations, people and computer systems
1. Define software product and software engineering (IEEE Def). 05 2. What is software? Explain attributes of good software. 05 3. “Software is not merely a collection of programs- Is
programming systems product”. Elucidate. 05
4. What are the main phases in software development? 05 5. What are the key challenges in software engineering? 05 6. What are the goals and objectives in software engineering? 05 7. What are the stakeholders in software engineering? 05 8. What is the difference between computer science and software
engineering? 05
9. What is the difference between software engineering and
system engineering? 05
10. What is software process? 05
11. What are the characteristics of software process? 05
12. What is software process model? 05
13. What is cost of software engineering? 05
14. What is “Computer Aided Software Engineering? 05 15. Explain the salient features of IEEE code of Ethics for software
engineering professionals. 08
16. Discuss the social responsibilities of a software engineer.
17. What are socio-technical systems? Discuss the characteristics
of socio-technical systems. 08
18. What are the emergent properties of socio-technical systems?
Give examples. 06
19. Explain different phases of system engineering. 12
20. Discuss system procurement process. 08
21. Write an explanatory note on legacy system. 06
Unit 2: Software Processes & Agile software development Objectives: The objective of this topic is to understand the
Critical systems and system dependability.
The Software Engineering Process activities
Various Process Models- Case study and comparisons
Rational Unified Process and Computer Aided Software Engineering
22. What are the most important aspects of dependability? Discuss. 05 23. Explain the relationship between dependability and cost of
system development. Why it is impossible to design 100%
dependable system? Explain. 04
24. What are the critical systems? Explain the classification of
critical systems. 06
25. What are the critical systems? Explain the significance of
dependability in critical systems. 05
26. Write short notes on:
i) Reliability 5*4
ii) Availability iii) Safety iv) Security
27. Explain different stages of software development life cycle. Indicate the proportion of time spent in each stage of SDLC. 08 28. What do you understand by software process model and its
significance? 06
29. Explain waterfall model giving its merits and drawbacks. 10 30. Explain evolutionary development method giving its merits and
demerits. 10
31. Discuss component-based software engineering. 08 32. What is process iteration? Explain incremental development. 10 33. Explain the spiral model with illustration. Write advantages and
disadvantages. 10
34. Explain the software specifications phase of software
development 07
35. What are the important activities in design phase of software development? 07 36. Explain the validation phase of software development. 08
37. Compare the software development models. 08
38. Discuss the risk management in spiral model. 05 39. Mention the drawbacks of each of the software development
models. 06
40. Write a short note on CASE tools. 05
41. Explain different classification of CASE tools. 06 42. Explain Rational Unified Process in detail. 07 Unit 3: Requirements Engineering
Objective: The objective of this topic is to understand the
Various categories of software requirements
Software requirements document
Requirements Engineering process