SlideShare una empresa de Scribd logo
1 de 8
Descargar para leer sin conexión
THE CHANGING NATURE OF SOFTWARE
The 7 broad categories of computer software present continuing challenges for
software engineers:
1) System software
2) Application software
3) Engineering/scientific software
4) Embedded software
5) Product-line software
6) Web-applications
7) Artificial intelligence software.
System software: System software is a collection of programs written to service
other programs. The systems software is characterized by
- heavy interaction with computer hardware
- heavy usage by multiple users
- concurrent operation that requires scheduling, resource sharing, and
sophisticated process management
- complex data structures
- multiple external interfaces
E.g. compilers, editors and file management utilities.
Application software:
- Application software consists of standalone programs that solve a specific
business need.
- It facilitates business operations or management/technical decision making.
- It is used to control business functions in real-time
E.g. point-of-sale transaction processing, real-time manufacturing process
control.
Engineering/Scientific software: Engineering and scientific applications range
- from astronomy to volcanology
- from automotive stress analysis to space shuttle orbital dynamics
- from molecular biology to automated manufacturing
E.g. computer aided design, system simulation and other interactive
applications.
Embedded software:
- Embedded software resides within a product or system and is used to
implement and control features and functions for the end-user and for the
system itself.
- It can perform limited and esoteric functions or provide significant function and
control capability.
E.g. Digital functions in automobile, dashboard displays, braking systems etc.
Product-line software: Designed to provide a specific capability for use by many
different customers, product-line software can focus on a limited and esoteric
market place or address mass consumer markets
E.g. Word processing, spreadsheets, computer graphics, multimedia,
entertainment, database management, personal and business financial
applications
Web-applications: WebApps are evolving into sophisticated computing
environments that not only provide standalone features, computing functions,
and content to the end user, but also are integrated with corporate databases
and business applications.
Artificial intelligence software: AI software makes use of nonnumerical
algorithms to solve complex problems that are not amenable to computation or
straightforward analysis. Application within this area includes robotics, expert
systems, pattern recognition, artificial neural networks, theorem proving, and
game playing.
The following are the new challenges on the horizon:
Ubiquitous computing
Netsourcing
Open source
The “new economy”
Ubiquitous computing: The challenge for software engineers will be to
develop systems and application software that will allow small devices,
personal computers and enterprise system to communicate across vast
networks.
Net sourcing: The challenge for software engineers is to architect simple and
sophisticated applications that provide benefit to targeted end-user market
worldwide.
Open Source: The challenge for software engineers is to build source that is
self descriptive but more importantly to develop techniques that will enable
both customers and developers to know what changes have been made and
how those changes manifest themselves within the software.
The “new economy”: The challenge for software engineers is to build
applications that will facilitate mass communication and mass product
distribution.
-----------***********************---------------------***************----------------------*****************
SOFTWARE ENGINEERING - A LAYERED TECHNOLOGY
Software Engineering: A layered technology Software engineering is a layered
technology as referred in fig shown below.
It consists of four layers as
 A quality focus
 Process
 Methods
 Tools
A quality Focus The bedrock that supports software engineering is a quality
focus. Software engineering approach must rest on the organizational
commitment to quality. Total Quality Management (TQM) philosophies that
support continuous improvement culture leads to the development of
increasingly more approaches to software engineering.
Process Layer It is the foundation of software engineering that defines a
framework for a set of KPA (key process areas) that must be established for
effective delivery of software engineering technology. The KPA form the basis
for management control of software projects and establish the context in which
technical methods are applied, work products (models, documents, data,
reports, forms etc) are produced, milestones are established, quality is ensured,
and change is properly managed.
Methods It provides technical how-to's for building software. Methods
encompass a broad array of tasks that include requirements analysis, design,
program construction, testing, and support. Methods rely on a set of basic
principles that govern each area of the technology and include modeling
activities and other descriptive techniques.
Tools It provide automated or semi-automated support for the process and
methods. Integrated tools establish computer-aided software engineering
(CASE). CASE combines software, hardware and software engineering database
to create a software engineering environment analogous to CAD/CAE (computer
aided design/engineering) for hardware.
-------*********-----------------*************----------------****************----------------************----------
A PROCESS FRAMEWORK:

 Software process must be established for effective delivery of software
engineering technology.
 A process framework establishes the foundation for a complete software
process by identifying a small number of framework activities that are
applicable to all software projects, regardless of their size or complexity.
 The process framework encompasses a set of umbrella activities that are
applicable across the entire software process.
 Each framework activity is populated by a set of software engineering
actions
 Each software engineering action is represented by a number of different
task sets- each a collection of software engineering work tasks, related
work products, quality assurance points, and project milestones.
In brief
"A process defines who is doing what, when, and how to reach a certain goal."
A Process Framework
- establishes the foundation for a complete software process
- identifies a small number of framework activities
- applies to all s/w projects, regardless of size/complexity.
- also, set of umbrella activities
- applicable across entire s/w process.
- Each framework activity has
- set of s/w engineering actions.
- Each s/w engineering action (e.g., design) has
- collection of related tasks (called task sets): work tasks
work products (deliverables) quality assurance points project milestones.
Software process
Generic Process Framework: It is applicable to the vast majority of software
projects
- Communication activity
- Planning activity
- Modelling activity
- analysis action
- requirements gathering work task
- elaboration work task
- negotiation work task
- specification work task
- validation work task
- design action
- data design work task
- architectural design work task
- interface design work task
- component-level design work task
- Construction activity
- Deployment activity
1) Communication: This framework activity involves heavy communication and
collaboration with the customer and encompasses requirements gathering and
other related activities.
2) Planning: This activity establishes a plan for the software engineering work that
follows. It describes 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.
3) Modelling: This activity encompasses the creation of models that allow the
developer and customer to better understand software requirements and the
design that will achieve those requirements. The modelling activity is composed
of 2 software engineering actions- analysis and design.
 Analysis encompasses a set of work tasks.
 Design encompasses work tasks that create a design model.
4) Construction: This activity combines core generation and the testing that is
required to uncover the errors in the code.
5) Deployment: The software is delivered to the customer who evaluates the
delivered product and provides feedback based on the evolution.
These 5 generic framework activities can be used during the development of
small programs, the creation of large web applications, and for the engineering
of large, complex computer-based systems.
The following are the set of Umbrella Activities.
1) Software project tracking and control – allows the software team to assess
progress against the project plan and take necessary action to maintain schedule.
2) Risk Management - assesses risks that may effect the outcome of the project
or the quality of the product.
3) Software Quality Assurance - defines and conducts the activities required to
ensure software quality.
4) Formal Technical Reviews - assesses software engineering work products in an
effort to uncover and remove errors before they are propagated to the next
action or activity.
5) Measurement - define and collects process, project and product measures
that assist the team in delivering software that needs customer’s needs, can be
used in conjunction with all other framework and umbrella activities.
6) Software configuration management - manages the effects of change
throughout the software process.
7) Reusability management - defines criteria for work product reuse and
establishes mechanisms to achieve reusable components.
8) Work Product preparation and production - encompasses the activities
required to create work products such as models, document, logs, forms and
lists.
Intelligent application of any software process model must recognize that
adaption is essential for success but process models do differ fundamentally in:
 The overall flow of activities and tasks and the interdependencies among
activities and tasks.
 The degree through which work tasks are defined within each frame work
activity.
 The degree through which work products are identified and required.
 The manner which quality assurance activities are applied.
 The manner in which project tracking and control activities are applied.
 The overall degree of the detailed and rigor with which the process is
described.
 The degree through which the customer and other stakeholders are
involved with the project.
 The level of autonomy given to the software project team.
 The degree to which team organization and roles are prescribed.

Más contenido relacionado

La actualidad más candente

Designing Techniques in Software Engineering
Designing Techniques in Software EngineeringDesigning Techniques in Software Engineering
Designing Techniques in Software Engineeringkirupasuchi1996
 
Chapter 01 software engineering pressman
Chapter 01  software engineering pressmanChapter 01  software engineering pressman
Chapter 01 software engineering pressmanRohitGoyal183
 
Formal Specification in Software Engineering SE9
Formal Specification in Software Engineering SE9Formal Specification in Software Engineering SE9
Formal Specification in Software Engineering SE9koolkampus
 
Chapter 13 - I/O Systems
Chapter 13 - I/O SystemsChapter 13 - I/O Systems
Chapter 13 - I/O SystemsWayne Jones Jnr
 
Data Designs (Software Engg.)
Data Designs (Software Engg.)Data Designs (Software Engg.)
Data Designs (Software Engg.)Arun Shukla
 
Single pass assembler
Single pass assemblerSingle pass assembler
Single pass assemblerBansari Shah
 
Token, Pattern and Lexeme
Token, Pattern and LexemeToken, Pattern and Lexeme
Token, Pattern and LexemeA. S. M. Shafi
 
Grasp patterns and its types
Grasp patterns and its typesGrasp patterns and its types
Grasp patterns and its typesSyed Hassan Ali
 
ppt on sOFTWARE DEVELOPMENT LIFE CYCLE
 ppt on sOFTWARE DEVELOPMENT LIFE CYCLE ppt on sOFTWARE DEVELOPMENT LIFE CYCLE
ppt on sOFTWARE DEVELOPMENT LIFE CYCLESwarnima Tiwari
 
Program security
Program securityProgram security
Program securityG Prachi
 
Introduction to Software Engineering
Introduction to Software EngineeringIntroduction to Software Engineering
Introduction to Software EngineeringSaqib Raza
 
Software engineering : Layered Architecture
Software engineering : Layered ArchitectureSoftware engineering : Layered Architecture
Software engineering : Layered ArchitectureMuhammed Afsal Villan
 
Software re engineering
Software re engineeringSoftware re engineering
Software re engineeringdeshpandeamrut
 
Uml in software engineering
Uml in software engineeringUml in software engineering
Uml in software engineeringMubashir Jutt
 

La actualidad más candente (20)

Designing Techniques in Software Engineering
Designing Techniques in Software EngineeringDesigning Techniques in Software Engineering
Designing Techniques in Software Engineering
 
Chapter 01 software engineering pressman
Chapter 01  software engineering pressmanChapter 01  software engineering pressman
Chapter 01 software engineering pressman
 
Taxonomy for bugs
Taxonomy for bugsTaxonomy for bugs
Taxonomy for bugs
 
Design notation
Design notationDesign notation
Design notation
 
Formal Specification in Software Engineering SE9
Formal Specification in Software Engineering SE9Formal Specification in Software Engineering SE9
Formal Specification in Software Engineering SE9
 
Chapter 13 - I/O Systems
Chapter 13 - I/O SystemsChapter 13 - I/O Systems
Chapter 13 - I/O Systems
 
Data Designs (Software Engg.)
Data Designs (Software Engg.)Data Designs (Software Engg.)
Data Designs (Software Engg.)
 
Single pass assembler
Single pass assemblerSingle pass assembler
Single pass assembler
 
Common Standards in Cloud Computing
Common Standards in Cloud ComputingCommon Standards in Cloud Computing
Common Standards in Cloud Computing
 
Crash recovery in database
Crash recovery in databaseCrash recovery in database
Crash recovery in database
 
Token, Pattern and Lexeme
Token, Pattern and LexemeToken, Pattern and Lexeme
Token, Pattern and Lexeme
 
Spm unit2
Spm unit2Spm unit2
Spm unit2
 
Google App Engine
Google App EngineGoogle App Engine
Google App Engine
 
Grasp patterns and its types
Grasp patterns and its typesGrasp patterns and its types
Grasp patterns and its types
 
ppt on sOFTWARE DEVELOPMENT LIFE CYCLE
 ppt on sOFTWARE DEVELOPMENT LIFE CYCLE ppt on sOFTWARE DEVELOPMENT LIFE CYCLE
ppt on sOFTWARE DEVELOPMENT LIFE CYCLE
 
Program security
Program securityProgram security
Program security
 
Introduction to Software Engineering
Introduction to Software EngineeringIntroduction to Software Engineering
Introduction to Software Engineering
 
Software engineering : Layered Architecture
Software engineering : Layered ArchitectureSoftware engineering : Layered Architecture
Software engineering : Layered Architecture
 
Software re engineering
Software re engineeringSoftware re engineering
Software re engineering
 
Uml in software engineering
Uml in software engineeringUml in software engineering
Uml in software engineering
 

Similar a 2- THE CHANGING NATURE OF SOFTWARE.pdf

Similar a 2- THE CHANGING NATURE OF SOFTWARE.pdf (20)

ccs356-software-engineering-notes.pdf
ccs356-software-engineering-notes.pdfccs356-software-engineering-notes.pdf
ccs356-software-engineering-notes.pdf
 
Chapter_01.ppt
Chapter_01.pptChapter_01.ppt
Chapter_01.ppt
 
Software engineering
Software engineeringSoftware engineering
Software engineering
 
CS8494 SOFTWARE ENGINEERING Unit-1
CS8494 SOFTWARE ENGINEERING Unit-1CS8494 SOFTWARE ENGINEERING Unit-1
CS8494 SOFTWARE ENGINEERING Unit-1
 
Unit_I.pptx
Unit_I.pptxUnit_I.pptx
Unit_I.pptx
 
Software engineering unit 1
Software engineering unit 1Software engineering unit 1
Software engineering unit 1
 
Introduction of software engineering
Introduction of software engineeringIntroduction of software engineering
Introduction of software engineering
 
Lecture 1 SE.pptx
Lecture 1 SE.pptxLecture 1 SE.pptx
Lecture 1 SE.pptx
 
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
 
Unit1
Unit1Unit1
Unit1
 
Spm unit1
Spm unit1Spm unit1
Spm unit1
 
Chapter 01
Chapter 01Chapter 01
Chapter 01
 
Chapter 01
Chapter 01Chapter 01
Chapter 01
 
Introduction to Software Engineering
Introduction to Software EngineeringIntroduction to Software Engineering
Introduction to Software Engineering
 
Software Specifications with details exp
Software Specifications with details expSoftware Specifications with details exp
Software Specifications with details exp
 
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
 
Chapter 01
Chapter 01Chapter 01
Chapter 01
 
Java learn from basic part chapter_01 short notes to understand the java quic...
Java learn from basic part chapter_01 short notes to understand the java quic...Java learn from basic part chapter_01 short notes to understand the java quic...
Java learn from basic part chapter_01 short notes to understand the java quic...
 

Más de bcanawakadalcollege (20)

Intro to Javascript.pptx
Intro to Javascript.pptxIntro to Javascript.pptx
Intro to Javascript.pptx
 
computer and software are changing.pptx
computer and software are changing.pptxcomputer and software are changing.pptx
computer and software are changing.pptx
 
tIME LINE.pptx
tIME LINE.pptxtIME LINE.pptx
tIME LINE.pptx
 
Basic HTML Tags.PPT
Basic HTML Tags.PPTBasic HTML Tags.PPT
Basic HTML Tags.PPT
 
Cryptography.ppt
Cryptography.pptCryptography.ppt
Cryptography.ppt
 
Confusion and Diffusion.pptx
Confusion and Diffusion.pptxConfusion and Diffusion.pptx
Confusion and Diffusion.pptx
 
cypher tex.ppt
cypher tex.pptcypher tex.ppt
cypher tex.ppt
 
17javascript.ppt
17javascript.ppt17javascript.ppt
17javascript.ppt
 
Logic gates and boolean algebra.ppt
Logic gates and boolean algebra.pptLogic gates and boolean algebra.ppt
Logic gates and boolean algebra.ppt
 
Cyber_Crime_Security.pptx
Cyber_Crime_Security.pptxCyber_Crime_Security.pptx
Cyber_Crime_Security.pptx
 
cybercrime_presentation - Copy.ppt
cybercrime_presentation - Copy.pptcybercrime_presentation - Copy.ppt
cybercrime_presentation - Copy.ppt
 
Hidden Surface Removal methods.pptx
Hidden Surface Removal methods.pptxHidden Surface Removal methods.pptx
Hidden Surface Removal methods.pptx
 
Hidden Surface Removal.pptx
Hidden Surface Removal.pptxHidden Surface Removal.pptx
Hidden Surface Removal.pptx
 
Lecture6.orig.ppt
Lecture6.orig.pptLecture6.orig.ppt
Lecture6.orig.ppt
 
Bezier Curve in Computer Graphics.docx
Bezier Curve in Computer Graphics.docxBezier Curve in Computer Graphics.docx
Bezier Curve in Computer Graphics.docx
 
reliable_unreliable.pptx
reliable_unreliable.pptxreliable_unreliable.pptx
reliable_unreliable.pptx
 
2D-transformation-1.pdf
2D-transformation-1.pdf2D-transformation-1.pdf
2D-transformation-1.pdf
 
computer graphics unit 1-I.pptx
computer graphics unit 1-I.pptxcomputer graphics unit 1-I.pptx
computer graphics unit 1-I.pptx
 
CG_1.pdf
CG_1.pdfCG_1.pdf
CG_1.pdf
 
File System.pptx
File System.pptxFile System.pptx
File System.pptx
 

Último

ICT role in 21st century education and it's challenges.
ICT role in 21st century education and it's challenges.ICT role in 21st century education and it's challenges.
ICT role in 21st century education and it's challenges.MaryamAhmad92
 
Dyslexia AI Workshop for Slideshare.pptx
Dyslexia AI Workshop for Slideshare.pptxDyslexia AI Workshop for Slideshare.pptx
Dyslexia AI Workshop for Slideshare.pptxcallscotland1987
 
Unit-V; Pricing (Pharma Marketing Management).pptx
Unit-V; Pricing (Pharma Marketing Management).pptxUnit-V; Pricing (Pharma Marketing Management).pptx
Unit-V; Pricing (Pharma Marketing Management).pptxVishalSingh1417
 
1029 - Danh muc Sach Giao Khoa 10 . pdf
1029 -  Danh muc Sach Giao Khoa 10 . pdf1029 -  Danh muc Sach Giao Khoa 10 . pdf
1029 - Danh muc Sach Giao Khoa 10 . pdfQucHHunhnh
 
psychiatric nursing HISTORY COLLECTION .docx
psychiatric  nursing HISTORY  COLLECTION  .docxpsychiatric  nursing HISTORY  COLLECTION  .docx
psychiatric nursing HISTORY COLLECTION .docxPoojaSen20
 
How to Give a Domain for a Field in Odoo 17
How to Give a Domain for a Field in Odoo 17How to Give a Domain for a Field in Odoo 17
How to Give a Domain for a Field in Odoo 17Celine George
 
1029-Danh muc Sach Giao Khoa khoi 6.pdf
1029-Danh muc Sach Giao Khoa khoi  6.pdf1029-Danh muc Sach Giao Khoa khoi  6.pdf
1029-Danh muc Sach Giao Khoa khoi 6.pdfQucHHunhnh
 
TỔNG ÔN TẬP THI VÀO LỚP 10 MÔN TIẾNG ANH NĂM HỌC 2023 - 2024 CÓ ĐÁP ÁN (NGỮ Â...
TỔNG ÔN TẬP THI VÀO LỚP 10 MÔN TIẾNG ANH NĂM HỌC 2023 - 2024 CÓ ĐÁP ÁN (NGỮ Â...TỔNG ÔN TẬP THI VÀO LỚP 10 MÔN TIẾNG ANH NĂM HỌC 2023 - 2024 CÓ ĐÁP ÁN (NGỮ Â...
TỔNG ÔN TẬP THI VÀO LỚP 10 MÔN TIẾNG ANH NĂM HỌC 2023 - 2024 CÓ ĐÁP ÁN (NGỮ Â...Nguyen Thanh Tu Collection
 
Micro-Scholarship, What it is, How can it help me.pdf
Micro-Scholarship, What it is, How can it help me.pdfMicro-Scholarship, What it is, How can it help me.pdf
Micro-Scholarship, What it is, How can it help me.pdfPoh-Sun Goh
 
SKILL OF INTRODUCING THE LESSON MICRO SKILLS.pptx
SKILL OF INTRODUCING THE LESSON MICRO SKILLS.pptxSKILL OF INTRODUCING THE LESSON MICRO SKILLS.pptx
SKILL OF INTRODUCING THE LESSON MICRO SKILLS.pptxAmanpreet Kaur
 
Holdier Curriculum Vitae (April 2024).pdf
Holdier Curriculum Vitae (April 2024).pdfHoldier Curriculum Vitae (April 2024).pdf
Holdier Curriculum Vitae (April 2024).pdfagholdier
 
Magic bus Group work1and 2 (Team 3).pptx
Magic bus Group work1and 2 (Team 3).pptxMagic bus Group work1and 2 (Team 3).pptx
Magic bus Group work1and 2 (Team 3).pptxdhanalakshmis0310
 
SOC 101 Demonstration of Learning Presentation
SOC 101 Demonstration of Learning PresentationSOC 101 Demonstration of Learning Presentation
SOC 101 Demonstration of Learning Presentationcamerronhm
 
Third Battle of Panipat detailed notes.pptx
Third Battle of Panipat detailed notes.pptxThird Battle of Panipat detailed notes.pptx
Third Battle of Panipat detailed notes.pptxAmita Gupta
 
Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhi
Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in DelhiRussian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhi
Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhikauryashika82
 
On National Teacher Day, meet the 2024-25 Kenan Fellows
On National Teacher Day, meet the 2024-25 Kenan FellowsOn National Teacher Day, meet the 2024-25 Kenan Fellows
On National Teacher Day, meet the 2024-25 Kenan FellowsMebane Rash
 
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...ZurliaSoop
 
This PowerPoint helps students to consider the concept of infinity.
This PowerPoint helps students to consider the concept of infinity.This PowerPoint helps students to consider the concept of infinity.
This PowerPoint helps students to consider the concept of infinity.christianmathematics
 

Último (20)

ICT role in 21st century education and it's challenges.
ICT role in 21st century education and it's challenges.ICT role in 21st century education and it's challenges.
ICT role in 21st century education and it's challenges.
 
Dyslexia AI Workshop for Slideshare.pptx
Dyslexia AI Workshop for Slideshare.pptxDyslexia AI Workshop for Slideshare.pptx
Dyslexia AI Workshop for Slideshare.pptx
 
Spatium Project Simulation student brief
Spatium Project Simulation student briefSpatium Project Simulation student brief
Spatium Project Simulation student brief
 
Unit-V; Pricing (Pharma Marketing Management).pptx
Unit-V; Pricing (Pharma Marketing Management).pptxUnit-V; Pricing (Pharma Marketing Management).pptx
Unit-V; Pricing (Pharma Marketing Management).pptx
 
1029 - Danh muc Sach Giao Khoa 10 . pdf
1029 -  Danh muc Sach Giao Khoa 10 . pdf1029 -  Danh muc Sach Giao Khoa 10 . pdf
1029 - Danh muc Sach Giao Khoa 10 . pdf
 
psychiatric nursing HISTORY COLLECTION .docx
psychiatric  nursing HISTORY  COLLECTION  .docxpsychiatric  nursing HISTORY  COLLECTION  .docx
psychiatric nursing HISTORY COLLECTION .docx
 
How to Give a Domain for a Field in Odoo 17
How to Give a Domain for a Field in Odoo 17How to Give a Domain for a Field in Odoo 17
How to Give a Domain for a Field in Odoo 17
 
1029-Danh muc Sach Giao Khoa khoi 6.pdf
1029-Danh muc Sach Giao Khoa khoi  6.pdf1029-Danh muc Sach Giao Khoa khoi  6.pdf
1029-Danh muc Sach Giao Khoa khoi 6.pdf
 
TỔNG ÔN TẬP THI VÀO LỚP 10 MÔN TIẾNG ANH NĂM HỌC 2023 - 2024 CÓ ĐÁP ÁN (NGỮ Â...
TỔNG ÔN TẬP THI VÀO LỚP 10 MÔN TIẾNG ANH NĂM HỌC 2023 - 2024 CÓ ĐÁP ÁN (NGỮ Â...TỔNG ÔN TẬP THI VÀO LỚP 10 MÔN TIẾNG ANH NĂM HỌC 2023 - 2024 CÓ ĐÁP ÁN (NGỮ Â...
TỔNG ÔN TẬP THI VÀO LỚP 10 MÔN TIẾNG ANH NĂM HỌC 2023 - 2024 CÓ ĐÁP ÁN (NGỮ Â...
 
Micro-Scholarship, What it is, How can it help me.pdf
Micro-Scholarship, What it is, How can it help me.pdfMicro-Scholarship, What it is, How can it help me.pdf
Micro-Scholarship, What it is, How can it help me.pdf
 
SKILL OF INTRODUCING THE LESSON MICRO SKILLS.pptx
SKILL OF INTRODUCING THE LESSON MICRO SKILLS.pptxSKILL OF INTRODUCING THE LESSON MICRO SKILLS.pptx
SKILL OF INTRODUCING THE LESSON MICRO SKILLS.pptx
 
Mehran University Newsletter Vol-X, Issue-I, 2024
Mehran University Newsletter Vol-X, Issue-I, 2024Mehran University Newsletter Vol-X, Issue-I, 2024
Mehran University Newsletter Vol-X, Issue-I, 2024
 
Holdier Curriculum Vitae (April 2024).pdf
Holdier Curriculum Vitae (April 2024).pdfHoldier Curriculum Vitae (April 2024).pdf
Holdier Curriculum Vitae (April 2024).pdf
 
Magic bus Group work1and 2 (Team 3).pptx
Magic bus Group work1and 2 (Team 3).pptxMagic bus Group work1and 2 (Team 3).pptx
Magic bus Group work1and 2 (Team 3).pptx
 
SOC 101 Demonstration of Learning Presentation
SOC 101 Demonstration of Learning PresentationSOC 101 Demonstration of Learning Presentation
SOC 101 Demonstration of Learning Presentation
 
Third Battle of Panipat detailed notes.pptx
Third Battle of Panipat detailed notes.pptxThird Battle of Panipat detailed notes.pptx
Third Battle of Panipat detailed notes.pptx
 
Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhi
Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in DelhiRussian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhi
Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhi
 
On National Teacher Day, meet the 2024-25 Kenan Fellows
On National Teacher Day, meet the 2024-25 Kenan FellowsOn National Teacher Day, meet the 2024-25 Kenan Fellows
On National Teacher Day, meet the 2024-25 Kenan Fellows
 
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
 
This PowerPoint helps students to consider the concept of infinity.
This PowerPoint helps students to consider the concept of infinity.This PowerPoint helps students to consider the concept of infinity.
This PowerPoint helps students to consider the concept of infinity.
 

2- THE CHANGING NATURE OF SOFTWARE.pdf

  • 1. THE CHANGING NATURE OF SOFTWARE The 7 broad categories of computer software present continuing challenges for software engineers: 1) System software 2) Application software 3) Engineering/scientific software 4) Embedded software 5) Product-line software 6) Web-applications 7) Artificial intelligence software. System software: System software is a collection of programs written to service other programs. The systems software is characterized by - heavy interaction with computer hardware - heavy usage by multiple users - concurrent operation that requires scheduling, resource sharing, and sophisticated process management - complex data structures - multiple external interfaces E.g. compilers, editors and file management utilities. Application software: - Application software consists of standalone programs that solve a specific business need. - It facilitates business operations or management/technical decision making. - It is used to control business functions in real-time E.g. point-of-sale transaction processing, real-time manufacturing process control. Engineering/Scientific software: Engineering and scientific applications range - from astronomy to volcanology - from automotive stress analysis to space shuttle orbital dynamics - from molecular biology to automated manufacturing
  • 2. E.g. computer aided design, system simulation and other interactive applications. Embedded software: - Embedded software resides within a product or system and is used to implement and control features and functions for the end-user and for the system itself. - It can perform limited and esoteric functions or provide significant function and control capability. E.g. Digital functions in automobile, dashboard displays, braking systems etc. Product-line software: Designed to provide a specific capability for use by many different customers, product-line software can focus on a limited and esoteric market place or address mass consumer markets E.g. Word processing, spreadsheets, computer graphics, multimedia, entertainment, database management, personal and business financial applications Web-applications: WebApps are evolving into sophisticated computing environments that not only provide standalone features, computing functions, and content to the end user, but also are integrated with corporate databases and business applications. Artificial intelligence software: AI software makes use of nonnumerical algorithms to solve complex problems that are not amenable to computation or straightforward analysis. Application within this area includes robotics, expert systems, pattern recognition, artificial neural networks, theorem proving, and game playing. The following are the new challenges on the horizon: Ubiquitous computing Netsourcing Open source The “new economy” Ubiquitous computing: The challenge for software engineers will be to develop systems and application software that will allow small devices, personal computers and enterprise system to communicate across vast networks.
  • 3. Net sourcing: The challenge for software engineers is to architect simple and sophisticated applications that provide benefit to targeted end-user market worldwide. Open Source: The challenge for software engineers is to build source that is self descriptive but more importantly to develop techniques that will enable both customers and developers to know what changes have been made and how those changes manifest themselves within the software. The “new economy”: The challenge for software engineers is to build applications that will facilitate mass communication and mass product distribution. -----------***********************---------------------***************----------------------***************** SOFTWARE ENGINEERING - A LAYERED TECHNOLOGY Software Engineering: A layered technology Software engineering is a layered technology as referred in fig shown below. It consists of four layers as  A quality focus  Process  Methods
  • 4.  Tools A quality Focus The bedrock that supports software engineering is a quality focus. Software engineering approach must rest on the organizational commitment to quality. Total Quality Management (TQM) philosophies that support continuous improvement culture leads to the development of increasingly more approaches to software engineering. Process Layer It is the foundation of software engineering that defines a framework for a set of KPA (key process areas) that must be established for effective delivery of software engineering technology. The KPA form the basis for management control of software projects and establish the context in which technical methods are applied, work products (models, documents, data, reports, forms etc) are produced, milestones are established, quality is ensured, and change is properly managed. Methods It provides technical how-to's for building software. Methods encompass a broad array of tasks that include requirements analysis, design, program construction, testing, and support. Methods rely on a set of basic principles that govern each area of the technology and include modeling activities and other descriptive techniques. Tools It provide automated or semi-automated support for the process and methods. Integrated tools establish computer-aided software engineering (CASE). CASE combines software, hardware and software engineering database to create a software engineering environment analogous to CAD/CAE (computer aided design/engineering) for hardware. -------*********-----------------*************----------------****************----------------************---------- A PROCESS FRAMEWORK:   Software process must be established for effective delivery of software engineering technology.  A process framework establishes the foundation for a complete software process by identifying a small number of framework activities that are applicable to all software projects, regardless of their size or complexity.  The process framework encompasses a set of umbrella activities that are applicable across the entire software process.
  • 5.  Each framework activity is populated by a set of software engineering actions  Each software engineering action is represented by a number of different task sets- each a collection of software engineering work tasks, related work products, quality assurance points, and project milestones. In brief "A process defines who is doing what, when, and how to reach a certain goal." A Process Framework - establishes the foundation for a complete software process - identifies a small number of framework activities - applies to all s/w projects, regardless of size/complexity. - also, set of umbrella activities - applicable across entire s/w process. - Each framework activity has - set of s/w engineering actions. - Each s/w engineering action (e.g., design) has - collection of related tasks (called task sets): work tasks work products (deliverables) quality assurance points project milestones. Software process
  • 6. Generic Process Framework: It is applicable to the vast majority of software projects - Communication activity - Planning activity - Modelling activity - analysis action - requirements gathering work task - elaboration work task - negotiation work task - specification work task - validation work task - design action - data design work task - architectural design work task - interface design work task - component-level design work task - Construction activity - Deployment activity 1) Communication: This framework activity involves heavy communication and collaboration with the customer and encompasses requirements gathering and other related activities. 2) Planning: This activity establishes a plan for the software engineering work that follows. It describes 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.
  • 7. 3) Modelling: This activity encompasses the creation of models that allow the developer and customer to better understand software requirements and the design that will achieve those requirements. The modelling activity is composed of 2 software engineering actions- analysis and design.  Analysis encompasses a set of work tasks.  Design encompasses work tasks that create a design model. 4) Construction: This activity combines core generation and the testing that is required to uncover the errors in the code. 5) Deployment: The software is delivered to the customer who evaluates the delivered product and provides feedback based on the evolution. These 5 generic framework activities can be used during the development of small programs, the creation of large web applications, and for the engineering of large, complex computer-based systems. The following are the set of Umbrella Activities. 1) Software project tracking and control – allows the software team to assess progress against the project plan and take necessary action to maintain schedule. 2) Risk Management - assesses risks that may effect the outcome of the project or the quality of the product. 3) Software Quality Assurance - defines and conducts the activities required to ensure software quality. 4) Formal Technical Reviews - assesses software engineering work products in an effort to uncover and remove errors before they are propagated to the next action or activity. 5) Measurement - define and collects process, project and product measures that assist the team in delivering software that needs customer’s needs, can be used in conjunction with all other framework and umbrella activities. 6) Software configuration management - manages the effects of change throughout the software process. 7) Reusability management - defines criteria for work product reuse and establishes mechanisms to achieve reusable components. 8) Work Product preparation and production - encompasses the activities required to create work products such as models, document, logs, forms and lists.
  • 8. Intelligent application of any software process model must recognize that adaption is essential for success but process models do differ fundamentally in:  The overall flow of activities and tasks and the interdependencies among activities and tasks.  The degree through which work tasks are defined within each frame work activity.  The degree through which work products are identified and required.  The manner which quality assurance activities are applied.  The manner in which project tracking and control activities are applied.  The overall degree of the detailed and rigor with which the process is described.  The degree through which the customer and other stakeholders are involved with the project.  The level of autonomy given to the software project team.  The degree to which team organization and roles are prescribed.