0% found this document useful (0 votes)
153 views23 pages

Cs8494 Software Engineering: Course Instructor Mrs.A.Tamizharasi, AP/CSE, RMDEC Mrs. Remya Rose S, AP/CSE, RMDEC

This document provides information about the CS8494 Software Engineering course offered in the 2020-2021 even semester, including the course instructors, objectives, units, outcomes, textbooks, and some key concepts about software and software engineering. The course aims to help students understand the software development process and fundamental concepts in requirements engineering, analysis, design, testing, and maintenance. It covers topics like the software process, agile development, requirements analysis, software design methodologies, testing, project management, and more.

Uploaded by

Tamizharasi A
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
153 views23 pages

Cs8494 Software Engineering: Course Instructor Mrs.A.Tamizharasi, AP/CSE, RMDEC Mrs. Remya Rose S, AP/CSE, RMDEC

This document provides information about the CS8494 Software Engineering course offered in the 2020-2021 even semester, including the course instructors, objectives, units, outcomes, textbooks, and some key concepts about software and software engineering. The course aims to help students understand the software development process and fundamental concepts in requirements engineering, analysis, design, testing, and maintenance. It covers topics like the software process, agile development, requirements analysis, software design methodologies, testing, project management, and more.

Uploaded by

Tamizharasi A
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
You are on page 1/ 23

CS8494 SOFTWARE ENGINEERING

2020-2021(Even Semester)

COURSE INSTRUCTOR
Mrs.A.Tamizharasi,AP/CSE,RMDEC
Mrs. Remya Rose S,AP/CSE,RMDEC
COURSE OBJECTIVE
• To understand the phases in a software project

• To understand fundamental concepts of


requirements engineering and Analysis Modeling.
• To understand the various software design
methodologies
• To learn various testing and maintenance measures
• UNIT I SOFTWARE PROCESS AND AGILE DEVELOPMENT

Introduction to Software Engineering, Software Process, Perspective and Specialized


Process Models –Introduction to Agility-Agile process-Extreme programming-XP Process.

UNIT II REQUIREMENTS ANALYSIS AND SPECIFICATION 9 Software Requirements: Functional


and Non-Functional, User requirements, System requirements, Software Requirements
Document – Requirement Engineering Process: Feasibility Studies, Requirements
elicitation and analysis, requirements validation, requirements managementClassical
analysis: Structured system Analysis, Petri Nets- Data Dictionary.

UNIT III SOFTWARE DESIGN

Design process – Design Concepts-Design Model– Design Heuristic – Architectural Design -


Architectural styles, Architectural Design, Architectural Mapping using Data Flow- User
Interface Design: Interface analysis, Interface Design –Component level Design:
Designing Class based components, traditional Components.
UNIT IV TESTING AND MAINTENANCE

Software testing fundamentals-Internal and external views of Testing-white box


testing - basis path testing-control structure testing-black box testing- Regression
Testing – Unit Testing – Integration Testing – Validation Testing – System Testing
And Debugging –Software Implementation Techniques: Coding practices-
Refactoring-Maintenance and Reengineering-BPR model-Reengineering process
model-Reverse and Forward Engineering.

UNIT V PROJECT MANAGEMENT

Software Project Management: Estimation – LOC, FP Based Estimation, Make/Buy


Decision COCOMO I & II Model – Project Scheduling – Scheduling, Earned Value
Analysis Planning – Project Plan, Planning Process, RFP Risk Management –
Identification, Projection - Risk Management-Risk Identification-RMMM Plan-CASE
TOOLS
OUTCOMES
• Identify the key activities in managing a software project.

• Compare different process models.

• Concepts of requirements engineering and Analysis Modeling.

• Apply systematic procedure for software design and

deployment.

• Compare and contrast the various testing and maintenance.

• Manage project schedule, estimate project cost and effort

required.
TEXT BOOKS
1. Roger S. Pressman, “Software Engineering – A
Practitioner‟s Approach”, Seventh Edition, Mc
Graw-Hill International Edition, 2010.

2. 2. Ian Sommerville, “Software Engineering”, 9th


Edition, Pearson Education Asia, 2011.
REFERENCE BOOKS
• 1. Rajib Mall, “Fundamentals of Software Engineering”,
Third Edition, PHI Learning PrivateLimited, 2009.
• 2. Pankaj Jalote, “Software Engineering, A Precise
Approach”, Wiley India, 2010.
• 3. Kelkar S.A., “Software Engineering”, Prentice Hall of
India Pvt Ltd, 2007.
• 4. Stephen R.Schach, “Software Engineering”, Tata
McGraw-Hill Publishing Company Limited,2007.
• 5. http://nptel.ac.in/.
SOFTWARE
• Software is a set of instructions that provides
desired features, function, and performance
on execution.
• Software is a data structure that enable the
programs to adequately manipulate
information
CHARACTERISTICS OF SOFTWARE
• Software is developed or engineered, it is not
manufactured in the classical sense.
• Software does not wear out. However it
deteriorates due to change.
• Software is custom built rather than assembling
existing components. -Although the industry is
moving towards component based construction,
most software continues to be custom built
CATEGORIES OF SOFTWARE
• System software
• Application software
• Engineering and scientific software
• Embedded software
• Product-line software
• Web-applications
• Artificial intelligence software
1. System software: such as compilers, editors, file management utilities

2. Application software: stand-alone programs for specific needs.

3. Engineering/scientific software: Characterized by “number crunching”algorithms.


such as automotive stress analysis, molecular biology, orbital dynamics etc

4. Embedded software resides within a product or system. (key pad control of a


microwave oven, digital function of dashboard display in a car)

5. Product-line software focus on a limited marketplace to address mass consumer


market. (word processing, graphics, database management)

6. WebApps (Web applications) network centric software. As web 2.0 emerges, more
sophisticated computing environments is supported integrated with remote
database and business applications.

7. AI software uses non-numerical algorithm to solve complex problem. Robotics,


expert system, pattern recognition game playing
SOFTWARE MYTHS

Three types of myth

1. Management myth

2.Customer myth

3.Practitioner’s myth
SOFTWARE ENGINEERING

• SE is defined as systematic, disciplined and


quantifiable approach for the development,
operation and maintenance of software
SOFTWARE ENGINEERING-A LAYERED
TECHNOLOGY
Process
• Process defines a framework for effective delivery
of software engineering technology.

Methods
• Software engineering methods provide the
technical how-to’s for building software.

Tools
• Software engineering tools provide automated
support for the process and the methods.
ELEMENTS OF A SOFTWARE PROCESS
Activity:

An activity helps to achieve a broad objective (e.g.,


communication with stakeholders) and is applied regardless
of the application domain, size, complexity and degree of
rigor with which software engineering is to be applied.

Action Actions consist of the set of tasks that is used to


produce the product.

Task A task focuses on a small, but well-defined objective that


produces a tangible outcome.
A PROCESS FRAMEWORK
GENERIC PROCESS ACTIVITIES
• Communication

• Planning

• Modeling

• Construction

• Deployment
Communication -The main objective is to understand stakeholders’ objectives
for the project and to gather requirements that helps to define software
features and functions.

Planning-Software project plan defines the software engineering work by


describing the technical tasks to be conducted, the risks that are likely, the
resources that will be required, the work products to be produced, and a
work schedule.

Modeling-Model helps to better understand software requirements and the


design that will achieve those requirements.

Construction-This activity combines code generation and the testing that is


required to uncover the errors in the code.

Deployment-The software is delivered to the customer, who evaluates the


product and provides feedback based on the evaluation.
UMBRELLA ACTIVITIES
• Software project tracking and control helps to assess progress
against the project plan and take any necessary action to maintain
the schedule.
• Risk management assesses risks that may affect the outcome and
quality of the project.
• Software quality assurance defines the activities required to ensure
software quality.
• Technical reviews assess the products to uncover and remove errors
before they are propagated to the next activity.
• Measurement defines and collects process, project, and product
measures that assist the team in delivering software that meets
stakeholders’ needs.
• Software configuration management manages the effects of change
throughout the software process.
• Reusability management defines criteria for work product reuse and
establishes mechanisms to achieve reusable components.
• Work product preparation and production encompasses the
activities required to create work products such as models,
documents, and lists.
PROCESS MODEL
PROCESS FLOW
• Linear process flow executes each of the five activities
in sequence.
• An iterative process flow repeats one or more of the
activities before proceeding to the next.
• An evolutionary process flow executes the activities in
a circular manner. Each evolution leads to a more
complete version of the software.
• A parallel process flow executes one or more activities
in parallel with other activities.
PROCESS FLOW

You might also like