Вы находитесь на странице: 1из 10

Software Engineering

Subject Code: BCA 5030/BT 0081/IMC 5030 BKID – B1090


Edition: Spring 2009
Sikkim Manipal University
Directorate of Distance Education
Department of Information Technology
Director & Dean
Directorate of Distance Education
Sikkim Manipal University of Health, Medical & Technological Sciences (SMU DDE)
Board of Studies
Dr. U. B. Pavanaja (Chairman) Mr. Nirmal Kumar Nigam
General Manager – Academics HOP – IT
Manipal Universal Learning Pvt. Ltd. Sikkim Manipal University – DDE
Bangalore Manipal
Prof. Bhushan Patwardhan Dr. A. Kumaran
Chief Academics Research Manager (Multilingual)
Manipal Education, Bangalore Microsoft Research Labs India, Bangalore
Dr. Harishchandra Hebbar Mr. Ravindranath P. S.
Director, Manipal Centre for Director (Quality)
Info. Sciences, Manipal Yahoo India, Bangalore
Dr. N. V. Subba Reddy Dr. Ashok Kallarakkal
HOD – CSE Vice President
Manipal Institute of Technology IBM India
Manipal Bangalore
Dr. Ashok Hegde Mr. H. Hiriyannaiah
Vice President Group Manager
Mind Tree Consulting Ltd., Bangalore EDS Mphasis, Bangalore
Dr. Ramprasad Varadachar Mr. Ashok Kumar K.
Director, Computer Studies Additional Registrar
Dayanand Sagar College of Engg. Sikkim Manipal University – DDE
Bangalore Manipal
Mr. M. K. N. Prasad
Controller of Examinations
Sikkim Manipal University – DDE, Manipal

Edition: Spring 2009


Print: January 2013
This book is a distance education module comprising a collection of learning
materials for our students. All rights reserved. No part of this work may be
reproduced in any form by any means without permission in writing from Sikkim
Manipal University, Gangtok, Sikkim. Printed and Published on behalf of Sikkim
Manipal University, Gangtok, Sikkim by Manipal Global Education Services
Manipal – 576 104. Printed at Manipal Technologies Limited, Manipal.
Author’s Profile
Mr. Balasubramani R. is Assistant Professor in Department of Information
technology, Sikkim Manipal University – DDE, Manipal. He has 19 years of
experience. His area of specialization includes – Computer Architecture, Software
Engineering, Object Oriented Analysis and Design with UML and Digital Image
Processing.
Mr. Arun C. Mudhol was CEO & Executive Director, Grass Root Systems,
Shanghai, China. Currently he is professor at Dayananda Sagar Insitution,
Bangalore. He has 20+ yrs. of experience. His area of interest include Software
Engineering, Software Quality Assurance and DBMS.

Reviewer Profile
Mr. B. V. Ravindra Prasad, B.E. (Computer Science) Mysore University, MS
(Software Engineering) Bits Pilani is Assistant professor in MCIS. He has
experience in Networking, Embedded systems and testing / HCL, CITRIX, IBM,
SATHYAM, LRDE subjects. His area of interest includes RTOS, Networking,
Testing, and Aerospace Standards.

Peer Reviewer’s Profile


Dr. Uma Garimella has an engineering background and a PhD in Computer
Science, and 27 years of experience in teaching, curriculum design and industry.
She was at the University of Hyderabad as a member of the faculty of Computer
Science for 14 years, also taught at School of IT- JNTU, I2IT-Pune and GNITS-
Hyderabad. In addition to her training programs, she is a consultant at IIIT-
Hyderabad's Centre for Education Technology and Learning Sciences. She holds
the Cambridge International Diploma for Teachers and Trainers (CIDTT).
In House Content Review Team
Content Editing:
Mr. Vinayak G. Pai, is Assistant Professor, Department of Information Technology,
in Sikkim Manipal University – DDE. He completed his B.E., M. Tech (Computer
science and Engineering) and has 8 years of teaching experience. His areas of
specialization includes Computer Organization, Cryptography and Network Security,
Operating system.
Ms. Aparna Raman, Assistant professor in Dept. of English, Sikkim Manipal
University – Directorate of Distance Education
Contents

Unit 1
Software Development Approaches 1
Unit 2
Software Design Processes 8
Unit 3
Software Reliability 26
Unit 4
Software Design Principles 52
Unit 5
Object Oriented Design 80
Unit 6
Assessment of Process Lifecycle Models 104
Unit 7
Configuration Management 126
Unit 8
Software Testing Techniques 151
Unit 9
Software Testing Assurance 171
Unit 10
Software Testing Strategies 194

Unit 11
People and Software Engineering 202
Unit 12
Software Technology and Problem Solving 216
Unit 13
Diversification of Problem Solving Strategies in SE 233

Unit 14
Case Study 252
Acknowledgement, References and Suggested Readings 266
BCA 5030/BT 0081/IMC 5030
Software Engineering
SUBJECT INTRODUCTION
Software Engineering (BT0081) is a four credit subject in BScIT Program.
This SLM explores the concepts of software engineering, as its importance
is very well felt in software community and attempts to develop technologies
that will make it easier, faster and less expensive to build high quality
software products. More emphasis is given on software development
strategies and assessment of process life cycle models. This SLM on
“Software Engineering” is divided into fourteen units. The brief account of
them is given below:
Unit 1: Software Development Approaches
Computer software has become a driving force. It is the engine that drives
business decision making. This unit explains the evolving role of software.
Various software characteristics and its applications are also discussed in
this unit.
Unit 2: Software Design Process
Software systems are now omnipresent. Software is used to help run
manufacturing industry, schools, universities, health care, finance and
government. This unit describes the meaning and definition of software
engineering and various software development models such as – serial or
linear sequential development model, iteration model, increment model,
finally parallel or concurrent development model.
Unit 3: Software Reliability
Reliability is the most important dynamic characteristic of almost all software
systems. Unreliable software results in high costs for end-users. This unit
deals with the software reliability metrics and programming for reliability.
This unit also gives a brief account of software reuse.
Unit 4: Software Design Principles
The output of the requirement analysis process is a set of system models
that present abstract description of the system to be developed. This unit
deals with the system models, software and architectural design.
Unit 5: Object Oriented Design
Object-oriented design transforms the analysis model created using object-
oriented analysis into a design model that serves as a blueprint for software
construction. This unit covers the object oriented design, service usage,
object interface design and structural decomposition.
Unit 6: Assessment of Process Life-cycle Models
In software development, the critical role of time as a factor in development
is considered, including not only the various scheduling constraints on time
to develop, but also the business-driven parameter of time to market. This
unit covers the overview of the assessment of process, the dimension of
process, and the need for a business model in software engineering.
Unit 7: Configuration Management
Large software systems may be considered as configuration of components.
Many different versions, made up of different component configurations of
the system are created. This unit covers change management, version and
release management, software maintenance, software reengineering, and
software re-factoring.
Unit 8: Software Testing Techniques
The importance of software testing and its implications with respect to
software quality cannot be overemphasized. This unit deals with the
software testing fundamentals, testing principles, white box testing, control
structure testing, black box testing, boundary value analysis, and testing
GUIs.
Unit 9: Software Testing Assurance
Verification and validation encompass a wide array of software quality
assurance activities that include formal technical reviews, quality and
configuration audits, performance monitoring etc. This unit deals with the
verification and validation (V&V), test plan, test strategies, testing methods
and tools.
Unit 10: Software Testing Strategies
Testing is a set of activities that can be planned in advance and conducted
systematically. For this reason, a template for software testing should be
defined for the software process. This unit covers the organizing for
software testing, software testing strategy, unit testing, top-down integration,
and bottom-up integration testing.
Unit 11: People and Software Engineering
Multidisciplinary thinking helps us to understand problems better and
therefore solve problems more effectively. This unit covers the traditional
software engineering, the importance of people in problem solving process,
and the human driven software engineering.
Unit 12: Software Technology and Problem Solving
Information technology has ubiquitously influenced business and affected
management approaches to problem solving. A key manifestation of this
technology is the software technology that has pervaded all aspects of life,
from household appliances to entertainment devices and communication
media. This unit deals with the software technology as enabling business
tool and a limited business tool.
Unit 13: Diversification of Problem Solving Strategies in SE
The factors that have contributed to the diversification of software process
models have often been related to the expansion in goals and capabilities in
the software industry. This unit covers the understanding of diversification
in software engineering, the hidden value of differences and skills required
at the project management levels.
Unit 14: Case Study
Business schools have been using case studies for years to develop a
student’s analytical abilities, but they are rarely seen in software engineering
courses. Here one such a case study is presented which focus the students
on specific software development problems.
Objective of studying the subject
After studying this subject, you should be able to:
 apply all the software design principles
 develop industry standard software based on object oriented design
 test the developed software using various testing strategies

For various multimedia and other resources on the subject, log


on to EduNxt portal of SMU DDE at www.smude.edu.in.

Вам также может понравиться