SlideShare a Scribd company logo
1 of 31
Uploaded By : Genuine Coder
Software
Engineering
Uploaded By : Genuine Coder
Software
 Computer software is the product that software
engineers design and build.
 It encompasses
 programs that execute within a computer of any size and
architecture
 documents that encompass hard-copy and virtual forms
 data that combine numbers and text but also includes
representations of pictorial, video, and audio information.
Uploaded By : Genuine Coder
The evolving role of Software
 Software takes on a dual role;
 Product:- it delivers the computing potential embodied by
computer hardware or, more broadly, a network of
computers that are accessible by local hardware.
 Whether it resides within a cellular phone or operates inside a
mainframe computer, software is an information transformer—
producing, managing, acquiring, modifying, displaying, or
transmitting information that can be as simple as a single bit or
as complex as a multimedia presentation.
 Vehicle for delivering a product:-
 the basis for the control of the computer (operating systems)
 the communication of information (networks)
 the creation and control of other programs (software tools and
environments).
Uploaded By : Genuine Coder
 The role has significant changes over a time span of little
more than 50 years
 Improvements”-
 in hardware performance
 pro-found changes in computing architectures
 vast increases in memory and storage capacity
 a wide variety of exotic input and output options
 The lone programmer of an earlier era has been replaced by
a team of software specialists, each focusing on one part of
the technology required to deliver a complex application.
 For proper estimation and management(Cost, Time, Error)
Uploaded By : Genuine Coder
SOFTWARE
 Software is;
1. instructions (computer programs) that when executed
provide desired function and performance,
2. data structures that enable the programs to adequately
manipulate information,
3. documents that describe the operation and use of the
programs.
 Software is a logical rather than a physical system
element.
Uploaded By : Genuine Coder
Software Characteristics
1. Software is developed or engineered, it is not
manufactured in the classical sense like hardware.
2. Software doesn't "wear out.“
Hardware Software
 software maintenance involves considerably more
complexity than hardware maintenance.
Uploaded By : Genuine Coder
3. Although the industry is moving toward component-
based assembly, most software continues to be
custom built.
 In the hardware world, component reuse is a natural part
of the engineering process.
 Software components had a limited domain of
application.
 Modern reusable components encapsulate
 Data
 The processing applied to the data
 e.g., graphical user interfaces
Uploaded By : Genuine Coder
The changing Nature of
Software & Software
Applications
 Key element in the evolution of computer-based
systems and products
 Evolved from a specialized problem solving and
information analysis tool to an industry in itself.
 Limiting factor in the continuing evolution of
computer-based systems.
Uploaded By : Genuine Coder
 System software
 System software is a collection of programs written to service
other programs.
 e.g., compilers, editors, operating system components, drivers
etc.
 Real-time software
 Software that monitors/analyzes/controls real-world events as
they occur is called real time.
 Business software
 Business information processing
 e.g., payroll, accounts receivable/payable, inventory
Uploaded By : Genuine Coder
 Engineering and scientific software
 Applications range from astronomy to volcanology, from
automotive stress analysis to space shuttle orbital dynamics, and
from molecular biology to automated manufacturing
 Embedded software
 Embedded software resides in read-only memory and is used to
control products and systems for the consumer and industrial
markets.
 e.g., digital functions in an automobile such as fuel control,
dashboard displays, and braking systems
 Personal computer software
 Web-based software
 Artificial intelligence software
 AI software makes use of nonnumerical algorithms to solve complex
problems
 e.g., Expert systems, pattern recognition (image and voice), artificial
neural networks, theorem proving, and game playing
Uploaded By : Genuine Coder
Legacy Software
 Support core business functions
 Have long life and business criticality
 Exhibit poor quality
 Complex code, poor documentation, poor testing, poor
change management
 Reasons for Evolving the Legacy Software
 (Adaptive) Must be adapted to meet the needs of new
computing environments or more modern systems, databases,
or networks
 (Perfective) Must be enhanced to implement new business
requirements
 (Corrective) Must be changed because of errors found in the
specification, design, or implementation
Uploaded By : Genuine Coder
Legacy System Components
Uploaded By : Genuine Coder
 Hardware - may be obsolete mainframe hardware.
 Support software - may rely on support software from
suppliers who are no longer in business.
 Application software - may be written in obsolete
programming languages.
 Application data - often incomplete and inconsistent.
 Business processes - may be constrained by software
structure and functionality.
 Business policies and rules - may be implicit and
embedded in the system software.
Uploaded By : Genuine Coder
Layered Model
Socio-technical system
Hardware
Support software
Application software
Business processes
Uploaded By : Genuine Coder
 Changes to one layer may require consequent changes
to layers that are both above and below.
 Reasons;
 Introduction of new facilities, higher layers need to take
advantage of these facilities.
 Changes may slow down the system; new h/w needed to
improve the system performance.
 Changes in h/w makes it impossible to manage the
interfaces.
Uploaded By : Genuine Coder
Software Engineering
 The application of systematic, disciplined,
quantifiable approach to the development,
operation, and maintenance of software
 Software engineering is an engineering discipline that is
concerned with all aspects of software production.
 Software engineers should adopt
Systematic and organized approach to their work
Use appropriate tools and techniques depending on the problem
to be solved
The development constraints and the resources available
 Apply Engineering Concepts to developing Software
 Challenge for Software Engineers is to produce high quality
software with finite amount of resources & within a predicted
schedule
Uploaded By : Genuine Coder
Software Engineering – Layered
Technology
Layered Technology
A quality focus: the “bedrock”
Process model: the “framework”
Methods: technical “how to’s”
Tools: CASE preferred
Uploaded By : Genuine Coder
A quality Focus
 Every organization is rest on its commitment to quality.
 Total quality management, Six Sigma, or similar continuous improvement
culture and it is this culture ultimately leads to development of increasingly
more effective approaches to software engineering.
 The bedrock that supports software engineering is a quality focus.
Process:
 It’s a foundation layer for software engineering.
 It’s define framework for a set of key process areas (KRA) for effectively
manage and deliver quality software in a cost effective manner
 The processes define the tasks to be performed and the order in which they
are to be performed
Uploaded By : Genuine Coder
Methods:
 It provide the technical how-to's for building software.
 Methods encompass a broad array of tasks that include
requirements analysis, design, program construction, testing, and
support.
 There could be more than one technique to perform a task and
different techniques could be used in different situations.
Tools:
 Provide automated or semi-automated support for the process,
methods and quality control.
 When tools are integrated so that information created by one tool
can be used by another, a system for the support of software
development, called computer-aided software engineering (CASE)
Uploaded By : Genuine Coder
Process framework
Process framework
Umbrella Activities
Framework activity 1
Framework activity n
Software Process
Framework activities
work tasks
work products
milestones & deliverables
QA checkpoints
Process Framework
Umbrella Activities
•Each framework activities is populated
by a set for software engineering
actions – a collection of related tasks.
• Each action has individual work task.
Uploaded By : Genuine Coder
Process framework
Why process :
A process defines who is doing what, when and how to
reach a certain goal.
 To build complete software process.
 Identified a small number of framework activities that
are applicable to all software projects, regardless of
their size or complexity.
 It encompasses a set of umbrella activities that are
applicable across the entire software process.
Uploaded By : Genuine Coder
Umbrella Activities
 Software project tracking and control
 Assessing progress against the project plan.
 Take adequate action to maintain schedule.
 Formal technical reviews
 Assessing software work products in an effort to
uncover and remove errors before goes into next
action or activity.
 Software quality assurance
 Define and conducts the activities required to
ensure software quality.
 Software configuration management
 Manages the effects of change.
Uploaded By : Genuine Coder
 Document preparation and production
 Help to create work products such as models,
documents, logs, form and list.
 Reusability management
 Define criteria for work product reuse
 Mechanisms to achieve reusable components.
 Measurement
 Define and collects process, project, and product
measures
 Assist the team in delivering software that meets
customer’s needs.
 Risk management
 Assesses risks that may effect that outcome of project
or quality of product (i.e. software)
Uploaded By : Genuine Coder
A generic view of process
(Activities) Communication:
 Heavy communication with customers, stakeholders, team
 Encompasses requirements gathering and related
activities
 Planning:
 Workflow that is to follow
 Describe technical task, likely risk, resources will require,
work products to be produced and a work schedule.
 Modeling:
 Help developer and customer to understand requirements
(Analysis of requirements) & Design of software
 Construction
 Code generation: either manual or automated or both
 Testing – to uncover error in the code.
 Deployment:
 Delivery to the customer for evaluation
Uploaded By : Genuine Coder
CASE (Computer-Aided Software
Engineering)
 Software systems that are intended to
provide automated support for
software process activities.
 CASE systems are often used for
method support.
 Upper-CASE
 Tools to support the early process
activities of requirements and design;
 Lower-CASE
 Tools to support later activities such as
Uploaded By : Genuine Coder
Capability Maturity Model Integration
(CMMI)
 The Software Engineering Institute (SEI) has developed
process meta-model to measure organization different
level of process capability and maturity.
 The CMMI defines each process area in terms of
“specific goals” and the “specific practices” required to
achieve these goals.
 Specific goals establish the characteristics that must
exist if the activities implied by a process area are to be
effective.
 Specific practices refine a goal into a set of process-
related activities
Uploaded By : Genuine Coder
Process Maturity Levels
 Level 1: Initial.
 The software process is characterized as ad hoc and occasionally
even chaotic.
 Few processes are defined, and success depends on individual effort.
 Level 2: Repeatable.
 Basic project management processes are established to track cost,
schedule, and functionality.
 The necessary process discipline is in place to repeat earlier
successes on projects with similar applications.
 Level 3: Defined.
 The software process for both management and engineering
activities is documented, standardized, and integrated into an
organization-wide software process.
 All projects use a documented and approved version of the
organization's process for developing and supporting software.
 This level includes all characteristics defined for level 2.
Uploaded By : Genuine Coder
 Level 4: Managed.
 Detailed measures of the software process and product
quality are collected.
 Both the software process and products are quantitatively
understood and controlled using detailed measures.
 This level includes all characteristics defined for level 3.
 Level 5: Optimizing.
 Continuous process improvement is enabled by quantitative
feedback from the process and from testing innovative ideas
and technologies.
 This level includes all characteristics defined for level 4.
Uploaded By : Genuine Coder
Key Process Areas at Each
Levels
 Process maturity level 2
 Software configuration management
 Software quality assurance
 Software subcontract management
 Software project tracking and oversight
 Software project planning
 Requirements management
 Process maturity level 3
 Peer reviews
 Intergroup coordination
 Software product engineering
 Integrated software management
 Training program
 Organization process definition
 Organization process focus
Uploaded By : Genuine Coder
 Process maturity level 4
 Software quality management
 Quantitative process management
 Process maturity level 5
 Process change management
 Technology change management
 Defect prevention
Uploaded By : Genuine Coder
 Each of the KPAs is defined by a set of key practices
that contribute to satisfying its goals.
 The key practices are policies, procedures, and
activities that must occur before a key process area has
been fully instituted.
 The SEI defines key indicators as "those key practices
or components of key practices that offer the greatest
insight into whether the goals of a key process area
have been achieved."
 Assessment questions are designed to probe for the
existence of a key indicator.

More Related Content

What's hot

What's hot (20)

Risk management(software engineering)
Risk management(software engineering)Risk management(software engineering)
Risk management(software engineering)
 
Component based software engineering
Component based software engineeringComponent based software engineering
Component based software engineering
 
Design Concepts in Software Engineering-1.pptx
Design Concepts in Software Engineering-1.pptxDesign Concepts in Software Engineering-1.pptx
Design Concepts in Software Engineering-1.pptx
 
Chapter 01
Chapter 01Chapter 01
Chapter 01
 
Analysis modeling & scenario based modeling
Analysis modeling &  scenario based modeling Analysis modeling &  scenario based modeling
Analysis modeling & scenario based modeling
 
formal verification
formal verificationformal verification
formal verification
 
Cohesion and coupling
Cohesion and couplingCohesion and coupling
Cohesion and coupling
 
Domain Modeling
Domain ModelingDomain Modeling
Domain Modeling
 
Software Process Improvement
Software Process ImprovementSoftware Process Improvement
Software Process Improvement
 
UML Diagrams
UML DiagramsUML Diagrams
UML Diagrams
 
Unified process Model
Unified process ModelUnified process Model
Unified process Model
 
Architectural styles and patterns
Architectural styles and patternsArchitectural styles and patterns
Architectural styles and patterns
 
Software Engineering : Requirement Analysis & Specification
Software Engineering : Requirement Analysis & SpecificationSoftware Engineering : Requirement Analysis & Specification
Software Engineering : Requirement Analysis & Specification
 
OOAD
OOADOOAD
OOAD
 
Software Engineering by Pankaj Jalote
Software Engineering by Pankaj JaloteSoftware Engineering by Pankaj Jalote
Software Engineering by Pankaj Jalote
 
Software process
Software processSoftware process
Software process
 
Ooad presentatin crc cards
Ooad presentatin crc cardsOoad presentatin crc cards
Ooad presentatin crc cards
 
Software process and project metrics
Software process and project metricsSoftware process and project metrics
Software process and project metrics
 
UML diagrams and symbols
UML diagrams and symbolsUML diagrams and symbols
UML diagrams and symbols
 
Function Oriented Design
Function Oriented DesignFunction Oriented Design
Function Oriented Design
 

Viewers also liked

Introduction to Software Engineering 1
Introduction to Software Engineering 1Introduction to Software Engineering 1
Introduction to Software Engineering 1IIUI
 
Lecture 14 requirements modeling - flow and behavior
Lecture 14   requirements modeling - flow and  behaviorLecture 14   requirements modeling - flow and  behavior
Lecture 14 requirements modeling - flow and behaviorIIUI
 
Chapter 09 io devices
Chapter 09 io devicesChapter 09 io devices
Chapter 09 io devicesIIUI
 
Lecture 13 requirements modeling - flow & behavior (2)
Lecture 13   requirements modeling - flow &  behavior (2)Lecture 13   requirements modeling - flow &  behavior (2)
Lecture 13 requirements modeling - flow & behavior (2)IIUI
 
Lecture 20 software testing (2)
Lecture 20   software testing (2)Lecture 20   software testing (2)
Lecture 20 software testing (2)IIUI
 
Lecture 2 introduction to Software Engineering 1
Lecture 2   introduction to Software Engineering 1Lecture 2   introduction to Software Engineering 1
Lecture 2 introduction to Software Engineering 1IIUI
 
Lecture 17 design concepts (2)
Lecture 17   design concepts (2)Lecture 17   design concepts (2)
Lecture 17 design concepts (2)IIUI
 
SE_Lec 00_ Software Engineering 1
SE_Lec 00_ Software Engineering 1SE_Lec 00_ Software Engineering 1
SE_Lec 00_ Software Engineering 1Amr E. Mohamed
 
Lecture 15 requirements modeling - scenario, information and analysis class...
Lecture 15   requirements modeling - scenario, information and analysis class...Lecture 15   requirements modeling - scenario, information and analysis class...
Lecture 15 requirements modeling - scenario, information and analysis class...IIUI
 
Requirement analysis and specification, software engineering
Requirement analysis and specification, software engineeringRequirement analysis and specification, software engineering
Requirement analysis and specification, software engineeringRupesh Vaishnav
 
Lecture 16 requirements modeling - scenario, information and analysis classes
Lecture 16   requirements modeling - scenario, information and analysis classesLecture 16   requirements modeling - scenario, information and analysis classes
Lecture 16 requirements modeling - scenario, information and analysis classesIIUI
 
Chapter 08 secondary storage
Chapter 08 secondary storageChapter 08 secondary storage
Chapter 08 secondary storageIIUI
 
Chapter 04 computer codes
Chapter 04 computer codesChapter 04 computer codes
Chapter 04 computer codesIIUI
 
Introduction to Software Development
Introduction to Software DevelopmentIntroduction to Software Development
Introduction to Software DevelopmentZeeshan MIrza
 

Viewers also liked (16)

Introduction to Software Engineering 1
Introduction to Software Engineering 1Introduction to Software Engineering 1
Introduction to Software Engineering 1
 
Lecture 14 requirements modeling - flow and behavior
Lecture 14   requirements modeling - flow and  behaviorLecture 14   requirements modeling - flow and  behavior
Lecture 14 requirements modeling - flow and behavior
 
Lect3 ch15-unit2
Lect3 ch15-unit2Lect3 ch15-unit2
Lect3 ch15-unit2
 
Chapter 09 io devices
Chapter 09 io devicesChapter 09 io devices
Chapter 09 io devices
 
Lecture 13 requirements modeling - flow & behavior (2)
Lecture 13   requirements modeling - flow &  behavior (2)Lecture 13   requirements modeling - flow &  behavior (2)
Lecture 13 requirements modeling - flow & behavior (2)
 
Lecture 20 software testing (2)
Lecture 20   software testing (2)Lecture 20   software testing (2)
Lecture 20 software testing (2)
 
Lecture 2 introduction to Software Engineering 1
Lecture 2   introduction to Software Engineering 1Lecture 2   introduction to Software Engineering 1
Lecture 2 introduction to Software Engineering 1
 
Lecture 17 design concepts (2)
Lecture 17   design concepts (2)Lecture 17   design concepts (2)
Lecture 17 design concepts (2)
 
SE_Lec 00_ Software Engineering 1
SE_Lec 00_ Software Engineering 1SE_Lec 00_ Software Engineering 1
SE_Lec 00_ Software Engineering 1
 
Lecture 15 requirements modeling - scenario, information and analysis class...
Lecture 15   requirements modeling - scenario, information and analysis class...Lecture 15   requirements modeling - scenario, information and analysis class...
Lecture 15 requirements modeling - scenario, information and analysis class...
 
Requirement analysis and specification, software engineering
Requirement analysis and specification, software engineeringRequirement analysis and specification, software engineering
Requirement analysis and specification, software engineering
 
Lecture 16 requirements modeling - scenario, information and analysis classes
Lecture 16   requirements modeling - scenario, information and analysis classesLecture 16   requirements modeling - scenario, information and analysis classes
Lecture 16 requirements modeling - scenario, information and analysis classes
 
Chapter 08 secondary storage
Chapter 08 secondary storageChapter 08 secondary storage
Chapter 08 secondary storage
 
Chapter 04 computer codes
Chapter 04 computer codesChapter 04 computer codes
Chapter 04 computer codes
 
Introduction to Software Development
Introduction to Software DevelopmentIntroduction to Software Development
Introduction to Software Development
 
Layered Software Architecture
Layered Software ArchitectureLayered Software Architecture
Layered Software Architecture
 

Similar to Software engineering : Layered Architecture

Similar to Software engineering : Layered Architecture (20)

Intro
IntroIntro
Intro
 
Introduction to Software Engineering
Introduction to Software EngineeringIntroduction to Software Engineering
Introduction to Software Engineering
 
Chapter_01.ppt
Chapter_01.pptChapter_01.ppt
Chapter_01.ppt
 
SE UNIT-1.pptx
SE UNIT-1.pptxSE UNIT-1.pptx
SE UNIT-1.pptx
 
Software Engineering pdf
Software Engineering pdfSoftware Engineering pdf
Software Engineering pdf
 
want to contact me login to www.stqa.org
want to contact me login to www.stqa.orgwant to contact me login to www.stqa.org
want to contact me login to www.stqa.org
 
software engineering
software engineeringsoftware engineering
software engineering
 
Software Specifications with details exp
Software Specifications with details expSoftware Specifications with details exp
Software Specifications with details exp
 
Introduction to Software Engineering
Introduction to Software EngineeringIntroduction to Software Engineering
Introduction to Software Engineering
 
SE
SESE
SE
 
Week_01-Intro to Software Engineering-1.ppt
Week_01-Intro to Software Engineering-1.pptWeek_01-Intro to Software Engineering-1.ppt
Week_01-Intro to Software Engineering-1.ppt
 
Lecture 1 SE.pptx
Lecture 1 SE.pptxLecture 1 SE.pptx
Lecture 1 SE.pptx
 
Chapter1
Chapter1Chapter1
Chapter1
 
Software engineering unit 1
Software engineering unit 1Software engineering unit 1
Software engineering unit 1
 
SE Lecture 1.ppt
SE Lecture 1.pptSE Lecture 1.ppt
SE Lecture 1.ppt
 
SE Lecture 1.ppt
SE Lecture 1.pptSE Lecture 1.ppt
SE Lecture 1.ppt
 
ccs356-software-engineering-notes.pdf
ccs356-software-engineering-notes.pdfccs356-software-engineering-notes.pdf
ccs356-software-engineering-notes.pdf
 
Chapter 1 1 - intro ppt
Chapter 1   1 - intro pptChapter 1   1 - intro ppt
Chapter 1 1 - intro ppt
 
Software engineering
Software engineeringSoftware engineering
Software engineering
 
SE18_Lec 01_Introduction to Software Engineering
SE18_Lec 01_Introduction to Software EngineeringSE18_Lec 01_Introduction to Software Engineering
SE18_Lec 01_Introduction to Software Engineering
 

More from Muhammed Afsal Villan

More from Muhammed Afsal Villan (10)

Software development process models
Software development process modelsSoftware development process models
Software development process models
 
Lexical analysis - Compiler Design
Lexical analysis - Compiler DesignLexical analysis - Compiler Design
Lexical analysis - Compiler Design
 
Compiler construction
Compiler constructionCompiler construction
Compiler construction
 
Bluetooth - Comprehensive Presentation
Bluetooth - Comprehensive PresentationBluetooth - Comprehensive Presentation
Bluetooth - Comprehensive Presentation
 
3D Graphics : Computer Graphics Fundamentals
3D Graphics : Computer Graphics Fundamentals3D Graphics : Computer Graphics Fundamentals
3D Graphics : Computer Graphics Fundamentals
 
Properties of Fourier transform
Properties of Fourier transformProperties of Fourier transform
Properties of Fourier transform
 
Barcodes - Types, Working and Hardware
Barcodes - Types, Working and HardwareBarcodes - Types, Working and Hardware
Barcodes - Types, Working and Hardware
 
8255 Programmable parallel I/O
8255 Programmable parallel I/O 8255 Programmable parallel I/O
8255 Programmable parallel I/O
 
Direct memory access (dma) with 8257 DMA Controller
Direct memory access (dma) with 8257 DMA ControllerDirect memory access (dma) with 8257 DMA Controller
Direct memory access (dma) with 8257 DMA Controller
 
Programmable Timer 8253/8254
Programmable Timer 8253/8254Programmable Timer 8253/8254
Programmable Timer 8253/8254
 

Recently uploaded

Active Learning Strategies (in short ALS).pdf
Active Learning Strategies (in short ALS).pdfActive Learning Strategies (in short ALS).pdf
Active Learning Strategies (in short ALS).pdfPatidar M
 
Narcotic and Non Narcotic Analgesic..pdf
Narcotic and Non Narcotic Analgesic..pdfNarcotic and Non Narcotic Analgesic..pdf
Narcotic and Non Narcotic Analgesic..pdfPrerana Jadhav
 
4.16.24 Poverty and Precarity--Desmond.pptx
4.16.24 Poverty and Precarity--Desmond.pptx4.16.24 Poverty and Precarity--Desmond.pptx
4.16.24 Poverty and Precarity--Desmond.pptxmary850239
 
ClimART Action | eTwinning Project
ClimART Action    |    eTwinning ProjectClimART Action    |    eTwinning Project
ClimART Action | eTwinning Projectjordimapav
 
Q4-PPT-Music9_Lesson-1-Romantic-Opera.pptx
Q4-PPT-Music9_Lesson-1-Romantic-Opera.pptxQ4-PPT-Music9_Lesson-1-Romantic-Opera.pptx
Q4-PPT-Music9_Lesson-1-Romantic-Opera.pptxlancelewisportillo
 
ROLES IN A STAGE PRODUCTION in arts.pptx
ROLES IN A STAGE PRODUCTION in arts.pptxROLES IN A STAGE PRODUCTION in arts.pptx
ROLES IN A STAGE PRODUCTION in arts.pptxVanesaIglesias10
 
ANG SEKTOR NG agrikultura.pptx QUARTER 4
ANG SEKTOR NG agrikultura.pptx QUARTER 4ANG SEKTOR NG agrikultura.pptx QUARTER 4
ANG SEKTOR NG agrikultura.pptx QUARTER 4MiaBumagat1
 
Production of Monoclonal Antibodies by Hybridoma Technology.pptx
Production of Monoclonal Antibodies by Hybridoma Technology.pptxProduction of Monoclonal Antibodies by Hybridoma Technology.pptx
Production of Monoclonal Antibodies by Hybridoma Technology.pptxAnupkumar Sharma
 
Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)
Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)
Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)lakshayb543
 
week 1 cookery 8 fourth - quarter .pptx
week 1 cookery 8  fourth  -  quarter .pptxweek 1 cookery 8  fourth  -  quarter .pptx
week 1 cookery 8 fourth - quarter .pptxJonalynLegaspi2
 
ENG 5 Q4 WEEk 1 DAY 1 Restate sentences heard in one’s own words. Use appropr...
ENG 5 Q4 WEEk 1 DAY 1 Restate sentences heard in one’s own words. Use appropr...ENG 5 Q4 WEEk 1 DAY 1 Restate sentences heard in one’s own words. Use appropr...
ENG 5 Q4 WEEk 1 DAY 1 Restate sentences heard in one’s own words. Use appropr...JojoEDelaCruz
 
MECHANISMS OF DIFFERENT TYPES OF HYPERSENITIVITY REACTIONS.pptx
MECHANISMS OF DIFFERENT TYPES OF HYPERSENITIVITY REACTIONS.pptxMECHANISMS OF DIFFERENT TYPES OF HYPERSENITIVITY REACTIONS.pptx
MECHANISMS OF DIFFERENT TYPES OF HYPERSENITIVITY REACTIONS.pptxAnupkumar Sharma
 
Daily Lesson Plan in Mathematics Quarter 4
Daily Lesson Plan in Mathematics Quarter 4Daily Lesson Plan in Mathematics Quarter 4
Daily Lesson Plan in Mathematics Quarter 4JOYLYNSAMANIEGO
 
Measures of Position DECILES for ungrouped data
Measures of Position DECILES for ungrouped dataMeasures of Position DECILES for ungrouped data
Measures of Position DECILES for ungrouped dataBabyAnnMotar
 
Influencing policy (training slides from Fast Track Impact)
Influencing policy (training slides from Fast Track Impact)Influencing policy (training slides from Fast Track Impact)
Influencing policy (training slides from Fast Track Impact)Mark Reed
 
Oppenheimer Film Discussion for Philosophy and Film
Oppenheimer Film Discussion for Philosophy and FilmOppenheimer Film Discussion for Philosophy and Film
Oppenheimer Film Discussion for Philosophy and FilmStan Meyer
 

Recently uploaded (20)

Active Learning Strategies (in short ALS).pdf
Active Learning Strategies (in short ALS).pdfActive Learning Strategies (in short ALS).pdf
Active Learning Strategies (in short ALS).pdf
 
Narcotic and Non Narcotic Analgesic..pdf
Narcotic and Non Narcotic Analgesic..pdfNarcotic and Non Narcotic Analgesic..pdf
Narcotic and Non Narcotic Analgesic..pdf
 
4.16.24 Poverty and Precarity--Desmond.pptx
4.16.24 Poverty and Precarity--Desmond.pptx4.16.24 Poverty and Precarity--Desmond.pptx
4.16.24 Poverty and Precarity--Desmond.pptx
 
ClimART Action | eTwinning Project
ClimART Action    |    eTwinning ProjectClimART Action    |    eTwinning Project
ClimART Action | eTwinning Project
 
Q4-PPT-Music9_Lesson-1-Romantic-Opera.pptx
Q4-PPT-Music9_Lesson-1-Romantic-Opera.pptxQ4-PPT-Music9_Lesson-1-Romantic-Opera.pptx
Q4-PPT-Music9_Lesson-1-Romantic-Opera.pptx
 
INCLUSIVE EDUCATION PRACTICES FOR TEACHERS AND TRAINERS.pptx
INCLUSIVE EDUCATION PRACTICES FOR TEACHERS AND TRAINERS.pptxINCLUSIVE EDUCATION PRACTICES FOR TEACHERS AND TRAINERS.pptx
INCLUSIVE EDUCATION PRACTICES FOR TEACHERS AND TRAINERS.pptx
 
ROLES IN A STAGE PRODUCTION in arts.pptx
ROLES IN A STAGE PRODUCTION in arts.pptxROLES IN A STAGE PRODUCTION in arts.pptx
ROLES IN A STAGE PRODUCTION in arts.pptx
 
ANG SEKTOR NG agrikultura.pptx QUARTER 4
ANG SEKTOR NG agrikultura.pptx QUARTER 4ANG SEKTOR NG agrikultura.pptx QUARTER 4
ANG SEKTOR NG agrikultura.pptx QUARTER 4
 
Production of Monoclonal Antibodies by Hybridoma Technology.pptx
Production of Monoclonal Antibodies by Hybridoma Technology.pptxProduction of Monoclonal Antibodies by Hybridoma Technology.pptx
Production of Monoclonal Antibodies by Hybridoma Technology.pptx
 
Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)
Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)
Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)
 
week 1 cookery 8 fourth - quarter .pptx
week 1 cookery 8  fourth  -  quarter .pptxweek 1 cookery 8  fourth  -  quarter .pptx
week 1 cookery 8 fourth - quarter .pptx
 
YOUVE_GOT_EMAIL_PRELIMS_EL_DORADO_2024.pptx
YOUVE_GOT_EMAIL_PRELIMS_EL_DORADO_2024.pptxYOUVE_GOT_EMAIL_PRELIMS_EL_DORADO_2024.pptx
YOUVE_GOT_EMAIL_PRELIMS_EL_DORADO_2024.pptx
 
LEFT_ON_C'N_ PRELIMS_EL_DORADO_2024.pptx
LEFT_ON_C'N_ PRELIMS_EL_DORADO_2024.pptxLEFT_ON_C'N_ PRELIMS_EL_DORADO_2024.pptx
LEFT_ON_C'N_ PRELIMS_EL_DORADO_2024.pptx
 
ENG 5 Q4 WEEk 1 DAY 1 Restate sentences heard in one’s own words. Use appropr...
ENG 5 Q4 WEEk 1 DAY 1 Restate sentences heard in one’s own words. Use appropr...ENG 5 Q4 WEEk 1 DAY 1 Restate sentences heard in one’s own words. Use appropr...
ENG 5 Q4 WEEk 1 DAY 1 Restate sentences heard in one’s own words. Use appropr...
 
MECHANISMS OF DIFFERENT TYPES OF HYPERSENITIVITY REACTIONS.pptx
MECHANISMS OF DIFFERENT TYPES OF HYPERSENITIVITY REACTIONS.pptxMECHANISMS OF DIFFERENT TYPES OF HYPERSENITIVITY REACTIONS.pptx
MECHANISMS OF DIFFERENT TYPES OF HYPERSENITIVITY REACTIONS.pptx
 
Daily Lesson Plan in Mathematics Quarter 4
Daily Lesson Plan in Mathematics Quarter 4Daily Lesson Plan in Mathematics Quarter 4
Daily Lesson Plan in Mathematics Quarter 4
 
Measures of Position DECILES for ungrouped data
Measures of Position DECILES for ungrouped dataMeasures of Position DECILES for ungrouped data
Measures of Position DECILES for ungrouped data
 
Influencing policy (training slides from Fast Track Impact)
Influencing policy (training slides from Fast Track Impact)Influencing policy (training slides from Fast Track Impact)
Influencing policy (training slides from Fast Track Impact)
 
Mattingly "AI & Prompt Design: Large Language Models"
Mattingly "AI & Prompt Design: Large Language Models"Mattingly "AI & Prompt Design: Large Language Models"
Mattingly "AI & Prompt Design: Large Language Models"
 
Oppenheimer Film Discussion for Philosophy and Film
Oppenheimer Film Discussion for Philosophy and FilmOppenheimer Film Discussion for Philosophy and Film
Oppenheimer Film Discussion for Philosophy and Film
 

Software engineering : Layered Architecture

  • 1. Uploaded By : Genuine Coder Software Engineering
  • 2. Uploaded By : Genuine Coder Software  Computer software is the product that software engineers design and build.  It encompasses  programs that execute within a computer of any size and architecture  documents that encompass hard-copy and virtual forms  data that combine numbers and text but also includes representations of pictorial, video, and audio information.
  • 3. Uploaded By : Genuine Coder The evolving role of Software  Software takes on a dual role;  Product:- it delivers the computing potential embodied by computer hardware or, more broadly, a network of computers that are accessible by local hardware.  Whether it resides within a cellular phone or operates inside a mainframe computer, software is an information transformer— producing, managing, acquiring, modifying, displaying, or transmitting information that can be as simple as a single bit or as complex as a multimedia presentation.  Vehicle for delivering a product:-  the basis for the control of the computer (operating systems)  the communication of information (networks)  the creation and control of other programs (software tools and environments).
  • 4. Uploaded By : Genuine Coder  The role has significant changes over a time span of little more than 50 years  Improvements”-  in hardware performance  pro-found changes in computing architectures  vast increases in memory and storage capacity  a wide variety of exotic input and output options  The lone programmer of an earlier era has been replaced by a team of software specialists, each focusing on one part of the technology required to deliver a complex application.  For proper estimation and management(Cost, Time, Error)
  • 5. Uploaded By : Genuine Coder SOFTWARE  Software is; 1. instructions (computer programs) that when executed provide desired function and performance, 2. data structures that enable the programs to adequately manipulate information, 3. documents that describe the operation and use of the programs.  Software is a logical rather than a physical system element.
  • 6. Uploaded By : Genuine Coder Software Characteristics 1. Software is developed or engineered, it is not manufactured in the classical sense like hardware. 2. Software doesn't "wear out.“ Hardware Software  software maintenance involves considerably more complexity than hardware maintenance.
  • 7. Uploaded By : Genuine Coder 3. Although the industry is moving toward component- based assembly, most software continues to be custom built.  In the hardware world, component reuse is a natural part of the engineering process.  Software components had a limited domain of application.  Modern reusable components encapsulate  Data  The processing applied to the data  e.g., graphical user interfaces
  • 8. Uploaded By : Genuine Coder The changing Nature of Software & Software Applications  Key element in the evolution of computer-based systems and products  Evolved from a specialized problem solving and information analysis tool to an industry in itself.  Limiting factor in the continuing evolution of computer-based systems.
  • 9. Uploaded By : Genuine Coder  System software  System software is a collection of programs written to service other programs.  e.g., compilers, editors, operating system components, drivers etc.  Real-time software  Software that monitors/analyzes/controls real-world events as they occur is called real time.  Business software  Business information processing  e.g., payroll, accounts receivable/payable, inventory
  • 10. Uploaded By : Genuine Coder  Engineering and scientific software  Applications range from astronomy to volcanology, from automotive stress analysis to space shuttle orbital dynamics, and from molecular biology to automated manufacturing  Embedded software  Embedded software resides in read-only memory and is used to control products and systems for the consumer and industrial markets.  e.g., digital functions in an automobile such as fuel control, dashboard displays, and braking systems  Personal computer software  Web-based software  Artificial intelligence software  AI software makes use of nonnumerical algorithms to solve complex problems  e.g., Expert systems, pattern recognition (image and voice), artificial neural networks, theorem proving, and game playing
  • 11. Uploaded By : Genuine Coder Legacy Software  Support core business functions  Have long life and business criticality  Exhibit poor quality  Complex code, poor documentation, poor testing, poor change management  Reasons for Evolving the Legacy Software  (Adaptive) Must be adapted to meet the needs of new computing environments or more modern systems, databases, or networks  (Perfective) Must be enhanced to implement new business requirements  (Corrective) Must be changed because of errors found in the specification, design, or implementation
  • 12. Uploaded By : Genuine Coder Legacy System Components
  • 13. Uploaded By : Genuine Coder  Hardware - may be obsolete mainframe hardware.  Support software - may rely on support software from suppliers who are no longer in business.  Application software - may be written in obsolete programming languages.  Application data - often incomplete and inconsistent.  Business processes - may be constrained by software structure and functionality.  Business policies and rules - may be implicit and embedded in the system software.
  • 14. Uploaded By : Genuine Coder Layered Model Socio-technical system Hardware Support software Application software Business processes
  • 15. Uploaded By : Genuine Coder  Changes to one layer may require consequent changes to layers that are both above and below.  Reasons;  Introduction of new facilities, higher layers need to take advantage of these facilities.  Changes may slow down the system; new h/w needed to improve the system performance.  Changes in h/w makes it impossible to manage the interfaces.
  • 16. Uploaded By : Genuine Coder Software Engineering  The application of systematic, disciplined, quantifiable approach to the development, operation, and maintenance of software  Software engineering is an engineering discipline that is concerned with all aspects of software production.  Software engineers should adopt Systematic and organized approach to their work Use appropriate tools and techniques depending on the problem to be solved The development constraints and the resources available  Apply Engineering Concepts to developing Software  Challenge for Software Engineers is to produce high quality software with finite amount of resources & within a predicted schedule
  • 17. Uploaded By : Genuine Coder Software Engineering – Layered Technology Layered Technology A quality focus: the “bedrock” Process model: the “framework” Methods: technical “how to’s” Tools: CASE preferred
  • 18. Uploaded By : Genuine Coder A quality Focus  Every organization is rest on its commitment to quality.  Total quality management, Six Sigma, or similar continuous improvement culture and it is this culture ultimately leads to development of increasingly more effective approaches to software engineering.  The bedrock that supports software engineering is a quality focus. Process:  It’s a foundation layer for software engineering.  It’s define framework for a set of key process areas (KRA) for effectively manage and deliver quality software in a cost effective manner  The processes define the tasks to be performed and the order in which they are to be performed
  • 19. Uploaded By : Genuine Coder Methods:  It provide the technical how-to's for building software.  Methods encompass a broad array of tasks that include requirements analysis, design, program construction, testing, and support.  There could be more than one technique to perform a task and different techniques could be used in different situations. Tools:  Provide automated or semi-automated support for the process, methods and quality control.  When tools are integrated so that information created by one tool can be used by another, a system for the support of software development, called computer-aided software engineering (CASE)
  • 20. Uploaded By : Genuine Coder Process framework Process framework Umbrella Activities Framework activity 1 Framework activity n Software Process Framework activities work tasks work products milestones & deliverables QA checkpoints Process Framework Umbrella Activities •Each framework activities is populated by a set for software engineering actions – a collection of related tasks. • Each action has individual work task.
  • 21. Uploaded By : Genuine Coder Process framework Why process : A process defines who is doing what, when and how to reach a certain goal.  To build complete software process.  Identified a small number of framework activities that are applicable to all software projects, regardless of their size or complexity.  It encompasses a set of umbrella activities that are applicable across the entire software process.
  • 22. Uploaded By : Genuine Coder Umbrella Activities  Software project tracking and control  Assessing progress against the project plan.  Take adequate action to maintain schedule.  Formal technical reviews  Assessing software work products in an effort to uncover and remove errors before goes into next action or activity.  Software quality assurance  Define and conducts the activities required to ensure software quality.  Software configuration management  Manages the effects of change.
  • 23. Uploaded By : Genuine Coder  Document preparation and production  Help to create work products such as models, documents, logs, form and list.  Reusability management  Define criteria for work product reuse  Mechanisms to achieve reusable components.  Measurement  Define and collects process, project, and product measures  Assist the team in delivering software that meets customer’s needs.  Risk management  Assesses risks that may effect that outcome of project or quality of product (i.e. software)
  • 24. Uploaded By : Genuine Coder A generic view of process (Activities) Communication:  Heavy communication with customers, stakeholders, team  Encompasses requirements gathering and related activities  Planning:  Workflow that is to follow  Describe technical task, likely risk, resources will require, work products to be produced and a work schedule.  Modeling:  Help developer and customer to understand requirements (Analysis of requirements) & Design of software  Construction  Code generation: either manual or automated or both  Testing – to uncover error in the code.  Deployment:  Delivery to the customer for evaluation
  • 25. Uploaded By : Genuine Coder CASE (Computer-Aided Software Engineering)  Software systems that are intended to provide automated support for software process activities.  CASE systems are often used for method support.  Upper-CASE  Tools to support the early process activities of requirements and design;  Lower-CASE  Tools to support later activities such as
  • 26. Uploaded By : Genuine Coder Capability Maturity Model Integration (CMMI)  The Software Engineering Institute (SEI) has developed process meta-model to measure organization different level of process capability and maturity.  The CMMI defines each process area in terms of “specific goals” and the “specific practices” required to achieve these goals.  Specific goals establish the characteristics that must exist if the activities implied by a process area are to be effective.  Specific practices refine a goal into a set of process- related activities
  • 27. Uploaded By : Genuine Coder Process Maturity Levels  Level 1: Initial.  The software process is characterized as ad hoc and occasionally even chaotic.  Few processes are defined, and success depends on individual effort.  Level 2: Repeatable.  Basic project management processes are established to track cost, schedule, and functionality.  The necessary process discipline is in place to repeat earlier successes on projects with similar applications.  Level 3: Defined.  The software process for both management and engineering activities is documented, standardized, and integrated into an organization-wide software process.  All projects use a documented and approved version of the organization's process for developing and supporting software.  This level includes all characteristics defined for level 2.
  • 28. Uploaded By : Genuine Coder  Level 4: Managed.  Detailed measures of the software process and product quality are collected.  Both the software process and products are quantitatively understood and controlled using detailed measures.  This level includes all characteristics defined for level 3.  Level 5: Optimizing.  Continuous process improvement is enabled by quantitative feedback from the process and from testing innovative ideas and technologies.  This level includes all characteristics defined for level 4.
  • 29. Uploaded By : Genuine Coder Key Process Areas at Each Levels  Process maturity level 2  Software configuration management  Software quality assurance  Software subcontract management  Software project tracking and oversight  Software project planning  Requirements management  Process maturity level 3  Peer reviews  Intergroup coordination  Software product engineering  Integrated software management  Training program  Organization process definition  Organization process focus
  • 30. Uploaded By : Genuine Coder  Process maturity level 4  Software quality management  Quantitative process management  Process maturity level 5  Process change management  Technology change management  Defect prevention
  • 31. Uploaded By : Genuine Coder  Each of the KPAs is defined by a set of key practices that contribute to satisfying its goals.  The key practices are policies, procedures, and activities that must occur before a key process area has been fully instituted.  The SEI defines key indicators as "those key practices or components of key practices that offer the greatest insight into whether the goals of a key process area have been achieved."  Assessment questions are designed to probe for the existence of a key indicator.