SlideShare a Scribd company logo
1 of 72
1
Software Engineering
Ch Anwar ul Hassan
Department of Computer Science and Software
Engineering
Federal Urdu University of Arts, Sciences & Technology,
Islamabad
anwarchaudary@gmail.com
Today is Introductory Session
Today’s Agenda
 Resource Person
 Participants
 Course
Federal Urdu University of Arts, Sciences & Technology, Islamabad
About Myself
Federal Urdu University of Arts, Sciences & Technology, Islamabad
Introduction of Participants
 Name
 Previous qualification & experties
 Courses studies in area of SE & Programming
 Expectations from this course
Federal Urdu University of Arts, Sciences & Technology, Islamabad
How to be successful in my class
1. Come to class
2. Strive to learn
3. Be on time for class
4. Pay attention in class. Ask questions.
5. If you don’t understand a topic and/or don’t understand why it’s
relevant, ASK.
6. Be prepared to answer questions in class (Revise Previous
lectures).
7. Play fair
8. DO NOT walk out of class during a class
9. Be respectful
10. As corny as this sounds, try to have some fun in learning this
stuff.
Federal Urdu University of Arts, Sciences & Technology, Islamabad
Course Profile
Credit Hours: 03
Evaluation Criteria
Survey Report 05%
Presentation 05%
Assignments/Quiz 10%
Mid term 30%
Final exam 50%
Federal Urdu University of Arts, Sciences & Technology, Islamabad
7
Course Contents
 Introduction to Software Engineering
 Software Processes
 Requirements Engineering
 Software Analysis & Design
 Software Project Management
 Software Costing & Estimation
 Software Testing
 Software Quality Assurance
Federal Urdu University of Arts, Sciences & Technology, Islamabad
8
Course Objectives
 To learn about all the difficulties in developing
software so that we can avoid pitfalls and
myths in software design
 To learn about different software processes
so that we can choose a suitable one
 To learn to design high-quality efficient
software so that it is usable and maintainable
 To learn about advanced methods for
software engineering
Federal Urdu University of Arts, Sciences & Technology, Islamabad
9
Chapter 1
Introduction to Software
Engineering
An overview of software engineering, types
of software, ethics for software engineers,
challenges facing to software engineering,
software crisis, myths, methods, evolution.
10
Contents
 What is Software & its Importance
 Types of Software
 Software Crisis & Software Myths
 What is Software Engineering
 Evolution of Software Engineering
 State-of-art in Software Engineering
Federal Urdu University of Arts, Sciences & Technology, Islamabad
Recommended Text Book;
Software Engineering: Seventh Edition (Ian Sommervill)
11
What is Software?
Software is a set of items or objects
that form a “configuration” that
includes
• programs
• documents
• data ...
(“Software Engineering- a practitioner’s
approach,” Pressman, 5ed. McGraw-Hill)
Federal Urdu University of Arts, Sciences & Technology, Islamabad
12
What is Software (ctd.)?
Or you may want to say:
 Software consists of
 (1) instructions (computer programs) that when
executed provided desired function and performance,
 (2) data structures that enable the programs to
adequately manipulate information, and
 (3) documents that describe the operation and use of
the programs.
Federal Urdu University of Arts, Sciences & Technology, Islamabad
13
What is Software (ctd.)?
But these are only the concrete part of software that
may be seen, there exists also invisible part which is
more important:
 Software is the dynamic behavior of programs on real
computers and auxiliary equipment.
 “… a software product is a model of the real world, and the
real world is constantly changing.”
 Software is a digital form of knowledge. (“Software
Engineering,” 7ed. Sommerville, Addison-Wesley, 2000)
Federal Urdu University of Arts, Sciences & Technology, Islamabad
14
The statistics – Chaos Report
Project completion
16%
31%
53%
On time, on budget,
with all of the specified
features and functions
Cancelled before they
were completed
delivered and
operational but over-
budget, over-schedule
or with fewer features
and functions than
specified
 Standish Group – 1995
 365 IT executives in US
companies in diverse industry
segments.
 8,380 projects
average cost
overrun = 189%
average
time
overrun =
222%.
61% of originally specified
features included


?
In Averages
• 189% of original budget
• 221% of original schedule
• 61% of original functionality
Federal Urdu University of Arts, Sciences & Technology, Islamabad
15
Symptom of Software Crisis
 About US$250 billions spent per year in the
US on application development
 Out of this, about US$140 billions wasted
due to the projects getting abandoned or
reworked; this in turn because of not
following best practices and standards
Ref: Standish Group, 1996
Federal Urdu University of Arts, Sciences & Technology, Islamabad
16
Symptom of Software Crisis
 10% of client/server apps are abandoned or
restarted from scratch
 20% of apps are significantly altered to avoid
disaster
 40% of apps are delivered significantly late
Source: 3 year study of 70 large c/s apps 30 European firms.
Compuware (12/95)
Federal Urdu University of Arts, Sciences & Technology, Islamabad
17
 Software products:
 fail to meet user requirements
 crash frequently
 expensive
 difficult to alter, debug, enhance
 often delivered late
Observed Problems
Federal Urdu University of Arts, Sciences & Technology, Islamabad
18
Why is the Statistics so Bad?
 Misconception on software development
 Software myths, e.g., the man-month myth
 False assumptions
 Not distinguishing the coding of a computer program
from the development of a software product
 Software programs have exponential growth in
complexity and difficulty level with respect to size.
 The ad hoc approach breaks down when size of
software increases.
Federal Urdu University of Arts, Sciences & Technology, Islamabad
19
Why is the Statistics so Bad?
 Software professionals lack engineering
training
 Programmers have skills for programming
but without the engineering mindset about a
process discipline
 Internal complexities
 Essences and accidents made by Fred.
Brooks
Federal Urdu University of Arts, Sciences & Technology, Islamabad
20
How is Software usually Constructed …
The requirements
specification was
defined like this
The developers
understood it in
that way
This is how the
problem was
solved before.
This is how the
problem is
solved now
That is the program
after debugging
This is how the program is
described by marketing dept.
This, in fact, is what the
customer wanted … ;-)
21
Software Myths
(Customer Perspectives)
 A general statement of objectives is sufficient to get
started with the development of software.
Missing/vague requirements can easily be
incorporated/detailed out as they get concretized.
 Application requirements can never be stable;
software can be and has to be made flexible enough
to allow changes to be incorporated as they happen.
Federal Urdu University of Arts, Sciences & Technology, Islamabad
22
Software Myths
(Developer Perspectives)
Once the software is demonstrated, the job is done.
Usually, the problems just begin!
Federal Urdu University of Arts, Sciences & Technology, Islamabad
23
Until the software is coded and is available for testing,
there is no way for assessing its quality.
Usually, there are too many
tiny bugs inserted at every stage
that grow in size and complexity
as they progress thru further stages!
Software Myths
(Developer Perspectives)
Federal Urdu University of Arts, Sciences & Technology, Islamabad
24
The only deliverable for a software
development project is the tested code.
The code is only
the externally visible component
of the entire software complement!
Software Myths
(Developer Perspectives)
25
Software Myths
(Management Perspectives)
As long as there are good standards and clear procedures in my
company, I shouldn’t be too concerned.
But the proof of the pudding
is in the eating;
not in the Recipe !
Federal Urdu University of Arts, Sciences & Technology, Islamabad
26
Software Myths
(Management Perspectives)
As long as my software engineers(!) have access to the fastest
and the most sophisticated computer environments and state-
of-the-art software tools, I shouldn’t be too concerned.
The environment is
only one of the several factors
that determine the quality
of the end software product!
Federal Urdu University of Arts, Sciences & Technology, Islamabad
27
Software Myths
(Management Perspectives)
When my schedule slips, what I have to do is to start a
fire-fighting operation: add more software specialists,
those with higher skills and longer experience - they
will bring the schedule back on the rails!
Unfortunately,
software business does not
entertain schedule compaction
beyond a limit!
Federal Urdu University of Arts, Sciences & Technology, Islamabad
28
Misplaced Assumptions
 All requirements can be pre-specified
 Users are experts at specification of their
needs
 Users and developers are both good at
visualization
 The project team is capable of unambiguous
communication
Ref: Larry Vaughn
Federal Urdu University of Arts, Sciences & Technology, Islamabad
29
Types of Software
Software has mainly divided into two
Categories:
 System software
Systems software includes the programs that are dedicated to
managing the computer itself, such as the operating system.
 Application software
Application software, or simply applications, are often called
productivity programs or end-user programs because they enable
the user to complete tasks, such as creating documents
 specific to the task it is designed e.g. word processing software
Federal Urdu University of Arts, Sciences & Technology, Islamabad
30
 Usually small in size
 Author himself is sole
user
 Single developer
 Lacks proper user
interface
 Lacks proper
documentation
 Ad hoc development.
 Large
 Large number of
users
 Team of developers
 Well-designed
interface
 Well documented &
user-manual prepared
 Systematic development
Programs Software Products
Confused with Programs and Products
Federal Urdu University of Arts, Sciences & Technology, Islamabad
31
 Deterioration: To grow worse; to be
impaired in quality e.g. Road Structure
Changes in software development on the later stages,
make the structure worse.
 Wear-out : Get tired through overuse e.g.
Bath Tub Curve
Wear Out vs Deterioration
Federal Urdu University of Arts, Sciences & Technology, Islamabad
Wear Out vs Deterioration
32
Software doesn’t Wear-out the hardware begins to Wear-
out with time
Software becomes reliable our time, not a physical identity.
Bath Tub Curve
Federal Urdu University of Arts, Sciences & Technology, Islamabad
33
What is Software Engineering?
 Different focuses for this term exist in various
textbooks. Some are listed below.
 The application of a systematic, disciplined,
quantifiable approach to development, operation,
and maintenance of software; that is, the
application of engineering to software. (IEEE
Standard Computer Dictionary, 610.12, ISBN 1-
55937-079-3, 1990)
Federal Urdu University of Arts, Sciences & Technology, Islamabad
34
What is Software Engineering? (ctd)
 Software engineering is concerned with the theories,
methods and tools for developing, managing and
evolving software products. (I. Sommerville, 6ed.)
 A discipline whose aim is the production of quality
software, delivered on time, within budget, and
satisfying users' needs. (Stephen R. Schach,
Software Engineering, 2ed.)
 Multi-person construction of multi-version software
(Parnas, 1987)
Federal Urdu University of Arts, Sciences & Technology, Islamabad
35
 The practical application of scientific knowledge in
the design and construction of computer programs
and the associated documentation required to
develop, operate and maintain them (B.W. Boehm)
 The establishment and use of sound engineering
principles in order to obtain economically software
that is reliable and works efficiently on real
machines (F.L. Bauer)
What is Software Engineering? (ctd.)
Federal Urdu University of Arts, Sciences & Technology, Islamabad
36
 The technological and managerial discipline
concerned with systematic production and
maintenance of software products that are
developed and modified on time and within cost
constraints (R. Fairley)
 A discipline that deals with the building of software
systems which are so large that they are built by a
team or teams of engineers (Ghezzi, Jazayeri,
Mandrioli)
What is Software Engineering? (ctd.)
Federal Urdu University of Arts, Sciences & Technology, Islamabad
37
Casting the Term
 The field of software engineering was born in NATO
Conferences, 1968 in response to chronic failures
of large software projects to meet schedule and
budget constraints
 Since then, term became popular because software
is getting more and more important to industry and
business but the “software crisis” still persists.
Federal Urdu University of Arts, Sciences & Technology, Islamabad
38
Other Definitions of Software
Engineering
 “A systematic approach to the analysis, design,
implementation and maintenance of software.” (The Free
On-Line Dictionary of Computing)
 “The systematic application of tools and techniques in
the development of computer-based applications.” (Sue
Conger in The New Software Engineering)
 “Software Engineering is about designing and
developing high-quality software.” (Shari Lawrence
Pfleeger in Software Engineering -- The Production of
Quality Software)
Federal Urdu University of Arts, Sciences & Technology, Islamabad
39
So, Software Engineering is …
 Scope
 study of software process, development
principles, techniques, and notations
 Goals
 production of quality software,
 delivered on time,
 within budget,
 satisfying customers’ requirements and users’
needs
Federal Urdu University of Arts, Sciences & Technology, Islamabad
40
Software Programming ≠ Software
Engineering
 Software programming: the process of translating a problem from
its physical environment into a language that a computer can
understand and obey. (Webster’s New World Dictionary of
Computer Terms)
 Single developer
 “Toy” applications
 Short lifespan
 Single or few stakeholders
 Architect = Developer = Manager = Tester = Customer = User
 One-of-a-kind systems
 Built from scratch
 Minimal maintenance
Federal Urdu University of Arts, Sciences & Technology, Islamabad
41
Software Programming ≠ Software
Engineering
 Software engineering
 Teams of developers with multiple roles
 Complex systems
 Indefinite lifespan
 Numerous stakeholders
 Architect ≠ Developer ≠ Manager ≠ Tester ≠ Customer ≠ User
 System families
 Reuse to amortize costs
 Maintenance accounts for over 60% of overall development
costs
Federal Urdu University of Arts, Sciences & Technology, Islamabad
42
Unique Characteristics of Software
 Software is malleable
 Software construction is human-intensive
 Software is intangible and hard to measure
 Software problems are usually complex
 Software directly depends upon the hardware
 It is at the top of the system engineering “food chain”
 Software doesn’t wear out but will deteriorate
 Software solutions require unusual rigor
 Software has discontinuous operational nature
Federal Urdu University of Arts, Sciences & Technology, Islamabad
Engineering vs Manufacturing
43
Engineering is the application of science and math to solve
problems. Engineers figure out how things work and find
practical uses for scientific discoveries.
https://www.livescience.com/47499-what-is-engineering.html
Federal Urdu University of Arts, Sciences & Technology, Islamabad
Engineering vs Manufacturing
44
Manufacturing; The making of articles on a large scale
using machinery; industrial production or the Process of
converting raw materials, components, or parts into finished
goods
Federal Urdu University of Arts, Sciences & Technology, Islamabad
45
Software Process
 Software Development life cycle
 Waterfall Model
 Prototype Model
 Spiral Model
 Incremental Model
Federal Urdu University of Arts, Sciences & Technology, Islamabad
46
Traditional Software Engineering
Software Systems
DataFunction Behavior
Entity-Relation
Diagram
Data Flow
Diagram
State Transition
Diagram
Federal Urdu University of Arts, Sciences & Technology, Islamabad
47
Object-Oriented Software Engineering
Software Systems
FunctionObject Behavior
Data Flow
Diagram
Class
Diagram
State Chart
Federal Urdu University of Arts, Sciences & Technology, Islamabad
48
Evolution of Software Industry
 Independent Programming Service
 Software Product
 Enterprise Solution
 Packaged Software for the Mass
 Internet Software and Services
Federal Urdu University of Arts, Sciences & Technology, Islamabad
49
Independent Programming Services
(Era 1)
 Feb 1955, Elmer Kubie and John Sheldon
founded CUC
 the First Software Company that devoted to the
construction of software especially for hardware
company.
 Promoting Software Industry: two Major
Projects,
 SABRE, airline reservation system, $30 million.
 SAGE, air defense system (1949~1962)
700/1000 programmers in the US. $8 billion.
Federal Urdu University of Arts, Sciences & Technology, Islamabad
50
Software Product (Era 2)
 1964 Martin Goetz developed Flowchart
Software -- Autoflow for RCA, but rejected.
 Sale to the customer of RCA & IBM.
 Develop and market software products not specifically
designed for a particular hardware platform.
 MARK IV, a pre-runner for the database
management system.
 IBM unbundled software from hardware.
Federal Urdu University of Arts, Sciences & Technology, Islamabad
51
Enterprise Solutions (Era 3)
 Dietmar Hopp. IBM Germany
 Systems, Applications and Products (SAP)
$3.3billion (1997)
 Setting up shop in Walldorf, Germany.
 Marked by the emergence of enterprise solutions
providers.
e.g. Baan 1978. Netherlands. $680 million (1997)
Oracle 1977. U.S.
Larry Ellison.
 ERP, $45 billion (1997)
Federal Urdu University of Arts, Sciences & Technology, Islamabad
52
Packaged Software for the Masses
(Era 4)
 Software products for the masses. 1979.
 VisiCalc, Spreadsheet program.
 August 1981: The deal of the century.
 Bill Gates bought the first version of the OS from a small
firm called Seattle Computer Products for $50,000 without
telling them it was for IBM.
 The development of the IBM PC, 1981, initiated a 4th
software era.
 PC-based mass-market software. Few additional services are
required for installation.
 Microsoft reached revenues of $11.6 billion. Packaged
Software Products, $57 billion (1997)
Federal Urdu University of Arts, Sciences & Technology, Islamabad
53
Internet Software and Services (Era 5)
 Internet and value-added services period,
1994. W
 with Netscape’s browser software for the internet.
Federal Urdu University of Arts, Sciences & Technology, Islamabad
54
Object-Oriented
Ad hoc
Data flow-based
Data structure-
based
Control flow-
based
Evolution of Design Techniques
Federal Urdu University of Arts, Sciences & Technology, Islamabad
55
Related Knowledge
Maths
Application
domain
knowledge
Advanced
SE
Knowledge
Guide to the
SWEBOK
Ironman
C.S.
...
Knowledge of
a Software
Engineer
Specialized
SE
Knowledge
Federal Urdu University of Arts, Sciences & Technology, Islamabad
56
IT Market
Hardware
products
Hardware
maintenance
Software Products
& Services
Processing Services
and Internet Services
Embedded
Software
Professional
Service
Software
Products
Enterprise
Solution
Packaged
Mass-Market
Software
Federal Urdu University of Arts, Sciences & Technology, Islamabad
57
Software Products and Services
Enterprise
Solutions
IBM
Oracle
Computer Associates
SAP
HP
Fujitsu
Hitachi
Parametric Technology
People Soft
Siemens
Packaged Mars-Market
Software
Microsoft
IBM
Computer Associates
Adobe
Novell
Symantec
Intuit
Autodesk
Apple
The Learning Company
Professional Software
Services
Anderson Consulting
IBM
EDS
CSC
Science Applications
Cap Gemini
Hp
DEC
Fujitsu
BSO Origin
58
Software Engineering Today?
 Organizations “go with what has worked in
the past”
 Everyone is too busy getting product out the
door to spend time in education or training or
addressing these problems effectively
 “Out of date” practices become
institutionalized
Federal Urdu University of Arts, Sciences & Technology, Islamabad
59
Software Engineering Today?
 Few people know, or can integrate, best
practices
 Unable to adopt and utilize proven
methodologies in timely fashion
 Although significant improvements have been
made in specific areas, the rapidly evolving
nature of the software industry has resulted in
little overall improvement in the overall
situation.
Federal Urdu University of Arts, Sciences & Technology, Islamabad
60
Not Crisis, but a Chronic Problem
 The crisis persists
 After 35 years later, the software “crisis” is still with
us
 Major problems are still the same:
 poor quality (correctness, usability, maintainability, etc)
 over budget
 delivered late, or not at all
 It is not a crisis but a chronic problem
 It becomes a persistent, chronic condition that
software industry has to face with
Federal Urdu University of Arts, Sciences & Technology, Islamabad
61
What’s Wrong?
 Does software engineering have no progress at all?
Not quite true.
 We have indeed seen a lot of improvements, e.g. high level
programming, object-oriented technology, etc.
 But it does not achieve its promise, why?
 production of fault-free software, delivered on time
and within budget, that satisfies the users’ needs,
and is easy to maintain, etc.
Federal Urdu University of Arts, Sciences & Technology, Islamabad
62
A More Close Look
 The comparison with 1995’s report does show that there is some
progress in the past eight years.
Federal Urdu University of Arts, Sciences & Technology, Islamabad
63
So, What’s the Problem?
 Software issues: software industry has
changes a lot in the past years
 Education issue: more emphasis on methods
and tools but lack of sufficient education and
training on people
 Process and quality issue: there lacks of a
set of known proven practices for software
engineers to follow with
Federal Urdu University of Arts, Sciences & Technology, Islamabad
64
Software Changes in the Past Years
 Changes in software over time:
 grew in size from 10’s or 100’s of lines to 1000’s
to 1,000,000’s of lines of code
 operating environment changed from simple
“batch” operations to complex multiprogramming
systems, to time-sharing and distributed
computing to today’s Internet network computing
environment.
Federal Urdu University of Arts, Sciences & Technology, Islamabad
65
Software Changes in the Past Years
 As computer systems (both hardware and
software) have become larger and more
complex, the software development process
has also become more and more complex
 the simple art of “programming in the small” is no
longer capable of coping with the task.
Federal Urdu University of Arts, Sciences & Technology, Islamabad
66
Situations for Software are Different Too
 Driven by intense market forces, including
persistent pressure to deliver software on
unrealistic time schedules
 Rapidly changing requirements
 Pressures for faster time to market
 Continuing rapid evolution of software
methodologies and systems
 Integration of new processes and techniques
 Need to re-design major systems
Federal Urdu University of Arts, Sciences & Technology, Islamabad
67
Situations for Software are Different Too
 Talent shortage: needed software engineering
skills often in short supply
 What even worse
 Moore’s law means always trying new things
 Complexity moves into software
 Can’t find the limits except by trial and error
Federal Urdu University of Arts, Sciences & Technology, Islamabad
68
The Software Industry Today
 Even though much is now known about how
to improve software production, the overall
state is not much better than ever, due to the
urgency of meeting unrealistic delivery
schedules and the continuing rapid evolution
of the software industry
 i.e. poor quality, late delivery, over budget
Federal Urdu University of Arts, Sciences & Technology, Islamabad
69
The Software Industry Today
 Component-Based Engineering and Integration
 Technological Heterogeneity
 Enterprise Heterogeneity
 Greater potential for Dynamic Evolution
 Internet-Scale Deployment
 Many competing standards
 Much conflicting terminology
Federal Urdu University of Arts, Sciences & Technology, Islamabad
70
 Ability to collaborate; be able to communicate
clearly and concisely both to laypeople and peers.
 Able to follow instructions, make a team stronger
for your presence and not weaker.
 Ability to see the bigger picture and differing
perspectives; to compromise, to balance
competing priorities, and to priorities the user
Ethics for Software Engineers
Federal Urdu University of Arts, Sciences & Technology, Islamabad
71
 You write clean, reusable code that’s easier to read and
test
 You understand how your code helps drive the overall
business
 You listen more than you speak—or you at least listen
before you speak.
 You are disciplined (not sacrifice quality, focused time
for development work)
 You get help from strangers on the internet.
 You go beyond skill to achieve expertise, You are open
to new things
Ethics for Software Engineers
72
Three key Challenges
Software engineering in the 21st century
faces three key challenges:
 Legacy systems
 Old, valuable systems must be maintained and updated
 Heterogeneity
 Systems are distributed and include a mix of hardware and
software
 Delivery
 There is increasing pressure for faster delivery of software
Federal Urdu University of Arts, Sciences & Technology, Islamabad

More Related Content

What's hot

Booth’s algorithm.(a014& a015)
Booth’s algorithm.(a014& a015)Booth’s algorithm.(a014& a015)
Booth’s algorithm.(a014& a015)Piyush Rochwani
 
Lecture 01 Introduction to Software Engineering
Lecture 01 Introduction to Software EngineeringLecture 01 Introduction to Software Engineering
Lecture 01 Introduction to Software EngineeringAchmad Solichin
 
REQUIREMENT ENGINEERING
REQUIREMENT ENGINEERINGREQUIREMENT ENGINEERING
REQUIREMENT ENGINEERINGSaqib Raza
 
Software Coding- Software Coding
Software Coding- Software CodingSoftware Coding- Software Coding
Software Coding- Software CodingNikhil Pandit
 
Software Engineering Layered Technology Software Process Framework
Software Engineering  Layered Technology Software Process FrameworkSoftware Engineering  Layered Technology Software Process Framework
Software Engineering Layered Technology Software Process FrameworkJAINAM KAPADIYA
 
Algorithms Lecture 1: Introduction to Algorithms
Algorithms Lecture 1: Introduction to AlgorithmsAlgorithms Lecture 1: Introduction to Algorithms
Algorithms Lecture 1: Introduction to AlgorithmsMohamed Loey
 
Software Engineering : Requirement Analysis & Specification
Software Engineering : Requirement Analysis & SpecificationSoftware Engineering : Requirement Analysis & Specification
Software Engineering : Requirement Analysis & SpecificationAjit Nayak
 
Genetic algorithms vs Traditional algorithms
Genetic algorithms vs Traditional algorithmsGenetic algorithms vs Traditional algorithms
Genetic algorithms vs Traditional algorithmsDr. C.V. Suresh Babu
 
data structures and its importance
 data structures and its importance  data structures and its importance
data structures and its importance Anaya Zafar
 
Object Oriented Analysis and Design
Object Oriented Analysis and DesignObject Oriented Analysis and Design
Object Oriented Analysis and DesignHaitham El-Ghareeb
 
Architectural structures and views
Architectural structures and viewsArchitectural structures and views
Architectural structures and viewsDr Reeja S R
 

What's hot (20)

Software Engineering Practice
Software Engineering PracticeSoftware Engineering Practice
Software Engineering Practice
 
Booth’s algorithm.(a014& a015)
Booth’s algorithm.(a014& a015)Booth’s algorithm.(a014& a015)
Booth’s algorithm.(a014& a015)
 
Lecture 01 Introduction to Software Engineering
Lecture 01 Introduction to Software EngineeringLecture 01 Introduction to Software Engineering
Lecture 01 Introduction to Software Engineering
 
REQUIREMENT ENGINEERING
REQUIREMENT ENGINEERINGREQUIREMENT ENGINEERING
REQUIREMENT ENGINEERING
 
Software Coding- Software Coding
Software Coding- Software CodingSoftware Coding- Software Coding
Software Coding- Software Coding
 
Demand paging
Demand pagingDemand paging
Demand paging
 
Software Myths
Software MythsSoftware Myths
Software Myths
 
13 Boolean Algebra
13 Boolean Algebra13 Boolean Algebra
13 Boolean Algebra
 
Design notation
Design notationDesign notation
Design notation
 
Software Engineering Layered Technology Software Process Framework
Software Engineering  Layered Technology Software Process FrameworkSoftware Engineering  Layered Technology Software Process Framework
Software Engineering Layered Technology Software Process Framework
 
Predicate logic
 Predicate logic Predicate logic
Predicate logic
 
Software requirements
Software requirementsSoftware requirements
Software requirements
 
Software process
Software processSoftware process
Software process
 
Algorithms Lecture 1: Introduction to Algorithms
Algorithms Lecture 1: Introduction to AlgorithmsAlgorithms Lecture 1: Introduction to Algorithms
Algorithms Lecture 1: Introduction to Algorithms
 
computer Architecture
computer Architecturecomputer Architecture
computer Architecture
 
Software Engineering : Requirement Analysis & Specification
Software Engineering : Requirement Analysis & SpecificationSoftware Engineering : Requirement Analysis & Specification
Software Engineering : Requirement Analysis & Specification
 
Genetic algorithms vs Traditional algorithms
Genetic algorithms vs Traditional algorithmsGenetic algorithms vs Traditional algorithms
Genetic algorithms vs Traditional algorithms
 
data structures and its importance
 data structures and its importance  data structures and its importance
data structures and its importance
 
Object Oriented Analysis and Design
Object Oriented Analysis and DesignObject Oriented Analysis and Design
Object Oriented Analysis and Design
 
Architectural structures and views
Architectural structures and viewsArchitectural structures and views
Architectural structures and views
 

Similar to Introduction to Software Engineering

se01.ppt
se01.pptse01.ppt
se01.pptxiso
 
Software Engineering Overview
Software Engineering OverviewSoftware Engineering Overview
Software Engineering OverviewPrachi Sasankar
 
Application Of Software Engineering Field
Application Of Software Engineering FieldApplication Of Software Engineering Field
Application Of Software Engineering FieldMichelle Singh
 
Application Of Software Engineering Field
Application Of Software Engineering FieldApplication Of Software Engineering Field
Application Of Software Engineering FieldJessica Howard
 
Rekayasa-Perangkat-Lunak-Pertemuan-1.ppt
Rekayasa-Perangkat-Lunak-Pertemuan-1.pptRekayasa-Perangkat-Lunak-Pertemuan-1.ppt
Rekayasa-Perangkat-Lunak-Pertemuan-1.pptAuliyaRahman9
 
Soft Eng - Introduction
Soft Eng - IntroductionSoft Eng - Introduction
Soft Eng - IntroductionJomel Penalba
 
Oose unit 1 ppt
Oose unit 1 pptOose unit 1 ppt
Oose unit 1 pptDr VISU P
 
Software Evaluation
Software EvaluationSoftware Evaluation
Software EvaluationLori Gilbert
 
Quality and productivity factors
Quality and productivity factorsQuality and productivity factors
Quality and productivity factorsNancyBeaulah_R
 
OOSE Unit 1 PPT.ppt
OOSE Unit 1 PPT.pptOOSE Unit 1 PPT.ppt
OOSE Unit 1 PPT.pptitadmin33
 
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.orgnazeer pasha
 
Lecture-1,2-Introduction to SE.pptx
Lecture-1,2-Introduction to SE.pptxLecture-1,2-Introduction to SE.pptx
Lecture-1,2-Introduction to SE.pptxYaseenNazir3
 

Similar to Introduction to Software Engineering (20)

se01.ppt
se01.pptse01.ppt
se01.ppt
 
Software Engineering Overview
Software Engineering OverviewSoftware Engineering Overview
Software Engineering Overview
 
Application Of Software Engineering Field
Application Of Software Engineering FieldApplication Of Software Engineering Field
Application Of Software Engineering Field
 
Application Of Software Engineering Field
Application Of Software Engineering FieldApplication Of Software Engineering Field
Application Of Software Engineering Field
 
Lect 01
Lect 01Lect 01
Lect 01
 
se
sese
se
 
Rekayasa-Perangkat-Lunak-Pertemuan-1.ppt
Rekayasa-Perangkat-Lunak-Pertemuan-1.pptRekayasa-Perangkat-Lunak-Pertemuan-1.ppt
Rekayasa-Perangkat-Lunak-Pertemuan-1.ppt
 
Lecture 1 SE.pptx
Lecture 1 SE.pptxLecture 1 SE.pptx
Lecture 1 SE.pptx
 
Soft Eng - Introduction
Soft Eng - IntroductionSoft Eng - Introduction
Soft Eng - Introduction
 
Ch1
Ch1Ch1
Ch1
 
Ch1
Ch1Ch1
Ch1
 
Lecture1422914635
Lecture1422914635Lecture1422914635
Lecture1422914635
 
Oose unit 1 ppt
Oose unit 1 pptOose unit 1 ppt
Oose unit 1 ppt
 
Unit 1 OOSE
Unit 1 OOSEUnit 1 OOSE
Unit 1 OOSE
 
Software Evaluation
Software EvaluationSoftware Evaluation
Software Evaluation
 
Quality and productivity factors
Quality and productivity factorsQuality and productivity factors
Quality and productivity factors
 
OOSE Unit 1 PPT.ppt
OOSE Unit 1 PPT.pptOOSE Unit 1 PPT.ppt
OOSE Unit 1 PPT.ppt
 
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
 
26968 software developer career
26968 software developer career26968 software developer career
26968 software developer career
 
Lecture-1,2-Introduction to SE.pptx
Lecture-1,2-Introduction to SE.pptxLecture-1,2-Introduction to SE.pptx
Lecture-1,2-Introduction to SE.pptx
 

More from AnwarrChaudary

Intro to Data warehousing lecture 20
Intro to Data warehousing   lecture 20Intro to Data warehousing   lecture 20
Intro to Data warehousing lecture 20AnwarrChaudary
 
Intro to Data warehousing lecture 19
Intro to Data warehousing   lecture 19Intro to Data warehousing   lecture 19
Intro to Data warehousing lecture 19AnwarrChaudary
 
Intro to Data warehousing lecture 18
Intro to Data warehousing   lecture 18Intro to Data warehousing   lecture 18
Intro to Data warehousing lecture 18AnwarrChaudary
 
Intro to Data warehousing lecture 17
Intro to Data warehousing   lecture 17Intro to Data warehousing   lecture 17
Intro to Data warehousing lecture 17AnwarrChaudary
 
Intro to Data warehousing lecture 16
Intro to Data warehousing   lecture 16Intro to Data warehousing   lecture 16
Intro to Data warehousing lecture 16AnwarrChaudary
 
Intro to Data warehousing lecture 15
Intro to Data warehousing   lecture 15Intro to Data warehousing   lecture 15
Intro to Data warehousing lecture 15AnwarrChaudary
 
Intro to Data warehousing lecture 14
Intro to Data warehousing   lecture 14Intro to Data warehousing   lecture 14
Intro to Data warehousing lecture 14AnwarrChaudary
 
Intro to Data warehousing lecture 13
Intro to Data warehousing   lecture 13Intro to Data warehousing   lecture 13
Intro to Data warehousing lecture 13AnwarrChaudary
 
Intro to Data warehousing lecture 12
Intro to Data warehousing   lecture 12Intro to Data warehousing   lecture 12
Intro to Data warehousing lecture 12AnwarrChaudary
 
Intro to Data warehousing lecture 11
Intro to Data warehousing   lecture 11Intro to Data warehousing   lecture 11
Intro to Data warehousing lecture 11AnwarrChaudary
 
Intro to Data warehousing lecture 10
Intro to Data warehousing   lecture 10Intro to Data warehousing   lecture 10
Intro to Data warehousing lecture 10AnwarrChaudary
 
Intro to Data warehousing lecture 09
Intro to Data warehousing   lecture 09Intro to Data warehousing   lecture 09
Intro to Data warehousing lecture 09AnwarrChaudary
 
Intro to Data warehousing lecture 08
Intro to Data warehousing   lecture 08Intro to Data warehousing   lecture 08
Intro to Data warehousing lecture 08AnwarrChaudary
 
Intro to Data warehousing lecture 07
Intro to Data warehousing   lecture 07Intro to Data warehousing   lecture 07
Intro to Data warehousing lecture 07AnwarrChaudary
 
Intro to Data warehousing Lecture 06
Intro to Data warehousing   Lecture 06Intro to Data warehousing   Lecture 06
Intro to Data warehousing Lecture 06AnwarrChaudary
 
Intro to Data warehousing lecture 05
Intro to Data warehousing   lecture 05Intro to Data warehousing   lecture 05
Intro to Data warehousing lecture 05AnwarrChaudary
 
Intro to Data warehousing Lecture 04
Intro to Data warehousing   Lecture 04Intro to Data warehousing   Lecture 04
Intro to Data warehousing Lecture 04AnwarrChaudary
 
Intro to Data warehousing lecture 03
Intro to Data warehousing   lecture 03Intro to Data warehousing   lecture 03
Intro to Data warehousing lecture 03AnwarrChaudary
 
Intro to Data warehousing lecture 02
Intro to Data warehousing   lecture 02Intro to Data warehousing   lecture 02
Intro to Data warehousing lecture 02AnwarrChaudary
 
Introduction to Data Warehouse
Introduction to Data WarehouseIntroduction to Data Warehouse
Introduction to Data WarehouseAnwarrChaudary
 

More from AnwarrChaudary (20)

Intro to Data warehousing lecture 20
Intro to Data warehousing   lecture 20Intro to Data warehousing   lecture 20
Intro to Data warehousing lecture 20
 
Intro to Data warehousing lecture 19
Intro to Data warehousing   lecture 19Intro to Data warehousing   lecture 19
Intro to Data warehousing lecture 19
 
Intro to Data warehousing lecture 18
Intro to Data warehousing   lecture 18Intro to Data warehousing   lecture 18
Intro to Data warehousing lecture 18
 
Intro to Data warehousing lecture 17
Intro to Data warehousing   lecture 17Intro to Data warehousing   lecture 17
Intro to Data warehousing lecture 17
 
Intro to Data warehousing lecture 16
Intro to Data warehousing   lecture 16Intro to Data warehousing   lecture 16
Intro to Data warehousing lecture 16
 
Intro to Data warehousing lecture 15
Intro to Data warehousing   lecture 15Intro to Data warehousing   lecture 15
Intro to Data warehousing lecture 15
 
Intro to Data warehousing lecture 14
Intro to Data warehousing   lecture 14Intro to Data warehousing   lecture 14
Intro to Data warehousing lecture 14
 
Intro to Data warehousing lecture 13
Intro to Data warehousing   lecture 13Intro to Data warehousing   lecture 13
Intro to Data warehousing lecture 13
 
Intro to Data warehousing lecture 12
Intro to Data warehousing   lecture 12Intro to Data warehousing   lecture 12
Intro to Data warehousing lecture 12
 
Intro to Data warehousing lecture 11
Intro to Data warehousing   lecture 11Intro to Data warehousing   lecture 11
Intro to Data warehousing lecture 11
 
Intro to Data warehousing lecture 10
Intro to Data warehousing   lecture 10Intro to Data warehousing   lecture 10
Intro to Data warehousing lecture 10
 
Intro to Data warehousing lecture 09
Intro to Data warehousing   lecture 09Intro to Data warehousing   lecture 09
Intro to Data warehousing lecture 09
 
Intro to Data warehousing lecture 08
Intro to Data warehousing   lecture 08Intro to Data warehousing   lecture 08
Intro to Data warehousing lecture 08
 
Intro to Data warehousing lecture 07
Intro to Data warehousing   lecture 07Intro to Data warehousing   lecture 07
Intro to Data warehousing lecture 07
 
Intro to Data warehousing Lecture 06
Intro to Data warehousing   Lecture 06Intro to Data warehousing   Lecture 06
Intro to Data warehousing Lecture 06
 
Intro to Data warehousing lecture 05
Intro to Data warehousing   lecture 05Intro to Data warehousing   lecture 05
Intro to Data warehousing lecture 05
 
Intro to Data warehousing Lecture 04
Intro to Data warehousing   Lecture 04Intro to Data warehousing   Lecture 04
Intro to Data warehousing Lecture 04
 
Intro to Data warehousing lecture 03
Intro to Data warehousing   lecture 03Intro to Data warehousing   lecture 03
Intro to Data warehousing lecture 03
 
Intro to Data warehousing lecture 02
Intro to Data warehousing   lecture 02Intro to Data warehousing   lecture 02
Intro to Data warehousing lecture 02
 
Introduction to Data Warehouse
Introduction to Data WarehouseIntroduction to Data Warehouse
Introduction to Data Warehouse
 

Recently uploaded

Procuring digital preservation CAN be quick and painless with our new dynamic...
Procuring digital preservation CAN be quick and painless with our new dynamic...Procuring digital preservation CAN be quick and painless with our new dynamic...
Procuring digital preservation CAN be quick and painless with our new dynamic...Jisc
 
Alper Gobel In Media Res Media Component
Alper Gobel In Media Res Media ComponentAlper Gobel In Media Res Media Component
Alper Gobel In Media Res Media ComponentInMediaRes1
 
Types of Journalistic Writing Grade 8.pptx
Types of Journalistic Writing Grade 8.pptxTypes of Journalistic Writing Grade 8.pptx
Types of Journalistic Writing Grade 8.pptxEyham Joco
 
Like-prefer-love -hate+verb+ing & silent letters & citizenship text.pdf
Like-prefer-love -hate+verb+ing & silent letters & citizenship text.pdfLike-prefer-love -hate+verb+ing & silent letters & citizenship text.pdf
Like-prefer-love -hate+verb+ing & silent letters & citizenship text.pdfMr Bounab Samir
 
AMERICAN LANGUAGE HUB_Level2_Student'sBook_Answerkey.pdf
AMERICAN LANGUAGE HUB_Level2_Student'sBook_Answerkey.pdfAMERICAN LANGUAGE HUB_Level2_Student'sBook_Answerkey.pdf
AMERICAN LANGUAGE HUB_Level2_Student'sBook_Answerkey.pdfphamnguyenenglishnb
 
Grade 9 Q4-MELC1-Active and Passive Voice.pptx
Grade 9 Q4-MELC1-Active and Passive Voice.pptxGrade 9 Q4-MELC1-Active and Passive Voice.pptx
Grade 9 Q4-MELC1-Active and Passive Voice.pptxChelloAnnAsuncion2
 
call girls in Kamla Market (DELHI) 🔝 >༒9953330565🔝 genuine Escort Service 🔝✔️✔️
call girls in Kamla Market (DELHI) 🔝 >༒9953330565🔝 genuine Escort Service 🔝✔️✔️call girls in Kamla Market (DELHI) 🔝 >༒9953330565🔝 genuine Escort Service 🔝✔️✔️
call girls in Kamla Market (DELHI) 🔝 >༒9953330565🔝 genuine Escort Service 🔝✔️✔️9953056974 Low Rate Call Girls In Saket, Delhi NCR
 
MULTIDISCIPLINRY NATURE OF THE ENVIRONMENTAL STUDIES.pptx
MULTIDISCIPLINRY NATURE OF THE ENVIRONMENTAL STUDIES.pptxMULTIDISCIPLINRY NATURE OF THE ENVIRONMENTAL STUDIES.pptx
MULTIDISCIPLINRY NATURE OF THE ENVIRONMENTAL STUDIES.pptxAnupkumar Sharma
 
Atmosphere science 7 quarter 4 .........
Atmosphere science 7 quarter 4 .........Atmosphere science 7 quarter 4 .........
Atmosphere science 7 quarter 4 .........LeaCamillePacle
 
ROOT CAUSE ANALYSIS PowerPoint Presentation
ROOT CAUSE ANALYSIS PowerPoint PresentationROOT CAUSE ANALYSIS PowerPoint Presentation
ROOT CAUSE ANALYSIS PowerPoint PresentationAadityaSharma884161
 
DATA STRUCTURE AND ALGORITHM for beginners
DATA STRUCTURE AND ALGORITHM for beginnersDATA STRUCTURE AND ALGORITHM for beginners
DATA STRUCTURE AND ALGORITHM for beginnersSabitha Banu
 
Keynote by Prof. Wurzer at Nordex about IP-design
Keynote by Prof. Wurzer at Nordex about IP-designKeynote by Prof. Wurzer at Nordex about IP-design
Keynote by Prof. Wurzer at Nordex about IP-designMIPLM
 
Crayon Activity Handout For the Crayon A
Crayon Activity Handout For the Crayon ACrayon Activity Handout For the Crayon A
Crayon Activity Handout For the Crayon AUnboundStockton
 
ENGLISH6-Q4-W3.pptxqurter our high choom
ENGLISH6-Q4-W3.pptxqurter our high choomENGLISH6-Q4-W3.pptxqurter our high choom
ENGLISH6-Q4-W3.pptxqurter our high choomnelietumpap1
 
Computed Fields and api Depends in the Odoo 17
Computed Fields and api Depends in the Odoo 17Computed Fields and api Depends in the Odoo 17
Computed Fields and api Depends in the Odoo 17Celine George
 
Framing an Appropriate Research Question 6b9b26d93da94caf993c038d9efcdedb.pdf
Framing an Appropriate Research Question 6b9b26d93da94caf993c038d9efcdedb.pdfFraming an Appropriate Research Question 6b9b26d93da94caf993c038d9efcdedb.pdf
Framing an Appropriate Research Question 6b9b26d93da94caf993c038d9efcdedb.pdfUjwalaBharambe
 
Field Attribute Index Feature in Odoo 17
Field Attribute Index Feature in Odoo 17Field Attribute Index Feature in Odoo 17
Field Attribute Index Feature in Odoo 17Celine George
 
Earth Day Presentation wow hello nice great
Earth Day Presentation wow hello nice greatEarth Day Presentation wow hello nice great
Earth Day Presentation wow hello nice greatYousafMalik24
 

Recently uploaded (20)

Procuring digital preservation CAN be quick and painless with our new dynamic...
Procuring digital preservation CAN be quick and painless with our new dynamic...Procuring digital preservation CAN be quick and painless with our new dynamic...
Procuring digital preservation CAN be quick and painless with our new dynamic...
 
Raw materials used in Herbal Cosmetics.pptx
Raw materials used in Herbal Cosmetics.pptxRaw materials used in Herbal Cosmetics.pptx
Raw materials used in Herbal Cosmetics.pptx
 
Rapple "Scholarly Communications and the Sustainable Development Goals"
Rapple "Scholarly Communications and the Sustainable Development Goals"Rapple "Scholarly Communications and the Sustainable Development Goals"
Rapple "Scholarly Communications and the Sustainable Development Goals"
 
Alper Gobel In Media Res Media Component
Alper Gobel In Media Res Media ComponentAlper Gobel In Media Res Media Component
Alper Gobel In Media Res Media Component
 
Types of Journalistic Writing Grade 8.pptx
Types of Journalistic Writing Grade 8.pptxTypes of Journalistic Writing Grade 8.pptx
Types of Journalistic Writing Grade 8.pptx
 
Like-prefer-love -hate+verb+ing & silent letters & citizenship text.pdf
Like-prefer-love -hate+verb+ing & silent letters & citizenship text.pdfLike-prefer-love -hate+verb+ing & silent letters & citizenship text.pdf
Like-prefer-love -hate+verb+ing & silent letters & citizenship text.pdf
 
AMERICAN LANGUAGE HUB_Level2_Student'sBook_Answerkey.pdf
AMERICAN LANGUAGE HUB_Level2_Student'sBook_Answerkey.pdfAMERICAN LANGUAGE HUB_Level2_Student'sBook_Answerkey.pdf
AMERICAN LANGUAGE HUB_Level2_Student'sBook_Answerkey.pdf
 
Grade 9 Q4-MELC1-Active and Passive Voice.pptx
Grade 9 Q4-MELC1-Active and Passive Voice.pptxGrade 9 Q4-MELC1-Active and Passive Voice.pptx
Grade 9 Q4-MELC1-Active and Passive Voice.pptx
 
call girls in Kamla Market (DELHI) 🔝 >༒9953330565🔝 genuine Escort Service 🔝✔️✔️
call girls in Kamla Market (DELHI) 🔝 >༒9953330565🔝 genuine Escort Service 🔝✔️✔️call girls in Kamla Market (DELHI) 🔝 >༒9953330565🔝 genuine Escort Service 🔝✔️✔️
call girls in Kamla Market (DELHI) 🔝 >༒9953330565🔝 genuine Escort Service 🔝✔️✔️
 
MULTIDISCIPLINRY NATURE OF THE ENVIRONMENTAL STUDIES.pptx
MULTIDISCIPLINRY NATURE OF THE ENVIRONMENTAL STUDIES.pptxMULTIDISCIPLINRY NATURE OF THE ENVIRONMENTAL STUDIES.pptx
MULTIDISCIPLINRY NATURE OF THE ENVIRONMENTAL STUDIES.pptx
 
Atmosphere science 7 quarter 4 .........
Atmosphere science 7 quarter 4 .........Atmosphere science 7 quarter 4 .........
Atmosphere science 7 quarter 4 .........
 
ROOT CAUSE ANALYSIS PowerPoint Presentation
ROOT CAUSE ANALYSIS PowerPoint PresentationROOT CAUSE ANALYSIS PowerPoint Presentation
ROOT CAUSE ANALYSIS PowerPoint Presentation
 
DATA STRUCTURE AND ALGORITHM for beginners
DATA STRUCTURE AND ALGORITHM for beginnersDATA STRUCTURE AND ALGORITHM for beginners
DATA STRUCTURE AND ALGORITHM for beginners
 
Keynote by Prof. Wurzer at Nordex about IP-design
Keynote by Prof. Wurzer at Nordex about IP-designKeynote by Prof. Wurzer at Nordex about IP-design
Keynote by Prof. Wurzer at Nordex about IP-design
 
Crayon Activity Handout For the Crayon A
Crayon Activity Handout For the Crayon ACrayon Activity Handout For the Crayon A
Crayon Activity Handout For the Crayon A
 
ENGLISH6-Q4-W3.pptxqurter our high choom
ENGLISH6-Q4-W3.pptxqurter our high choomENGLISH6-Q4-W3.pptxqurter our high choom
ENGLISH6-Q4-W3.pptxqurter our high choom
 
Computed Fields and api Depends in the Odoo 17
Computed Fields and api Depends in the Odoo 17Computed Fields and api Depends in the Odoo 17
Computed Fields and api Depends in the Odoo 17
 
Framing an Appropriate Research Question 6b9b26d93da94caf993c038d9efcdedb.pdf
Framing an Appropriate Research Question 6b9b26d93da94caf993c038d9efcdedb.pdfFraming an Appropriate Research Question 6b9b26d93da94caf993c038d9efcdedb.pdf
Framing an Appropriate Research Question 6b9b26d93da94caf993c038d9efcdedb.pdf
 
Field Attribute Index Feature in Odoo 17
Field Attribute Index Feature in Odoo 17Field Attribute Index Feature in Odoo 17
Field Attribute Index Feature in Odoo 17
 
Earth Day Presentation wow hello nice great
Earth Day Presentation wow hello nice greatEarth Day Presentation wow hello nice great
Earth Day Presentation wow hello nice great
 

Introduction to Software Engineering

  • 1. 1 Software Engineering Ch Anwar ul Hassan Department of Computer Science and Software Engineering Federal Urdu University of Arts, Sciences & Technology, Islamabad anwarchaudary@gmail.com
  • 2. Today is Introductory Session Today’s Agenda  Resource Person  Participants  Course Federal Urdu University of Arts, Sciences & Technology, Islamabad
  • 3. About Myself Federal Urdu University of Arts, Sciences & Technology, Islamabad
  • 4. Introduction of Participants  Name  Previous qualification & experties  Courses studies in area of SE & Programming  Expectations from this course Federal Urdu University of Arts, Sciences & Technology, Islamabad
  • 5. How to be successful in my class 1. Come to class 2. Strive to learn 3. Be on time for class 4. Pay attention in class. Ask questions. 5. If you don’t understand a topic and/or don’t understand why it’s relevant, ASK. 6. Be prepared to answer questions in class (Revise Previous lectures). 7. Play fair 8. DO NOT walk out of class during a class 9. Be respectful 10. As corny as this sounds, try to have some fun in learning this stuff. Federal Urdu University of Arts, Sciences & Technology, Islamabad
  • 6. Course Profile Credit Hours: 03 Evaluation Criteria Survey Report 05% Presentation 05% Assignments/Quiz 10% Mid term 30% Final exam 50% Federal Urdu University of Arts, Sciences & Technology, Islamabad
  • 7. 7 Course Contents  Introduction to Software Engineering  Software Processes  Requirements Engineering  Software Analysis & Design  Software Project Management  Software Costing & Estimation  Software Testing  Software Quality Assurance Federal Urdu University of Arts, Sciences & Technology, Islamabad
  • 8. 8 Course Objectives  To learn about all the difficulties in developing software so that we can avoid pitfalls and myths in software design  To learn about different software processes so that we can choose a suitable one  To learn to design high-quality efficient software so that it is usable and maintainable  To learn about advanced methods for software engineering Federal Urdu University of Arts, Sciences & Technology, Islamabad
  • 9. 9 Chapter 1 Introduction to Software Engineering An overview of software engineering, types of software, ethics for software engineers, challenges facing to software engineering, software crisis, myths, methods, evolution.
  • 10. 10 Contents  What is Software & its Importance  Types of Software  Software Crisis & Software Myths  What is Software Engineering  Evolution of Software Engineering  State-of-art in Software Engineering Federal Urdu University of Arts, Sciences & Technology, Islamabad Recommended Text Book; Software Engineering: Seventh Edition (Ian Sommervill)
  • 11. 11 What is Software? Software is a set of items or objects that form a “configuration” that includes • programs • documents • data ... (“Software Engineering- a practitioner’s approach,” Pressman, 5ed. McGraw-Hill) Federal Urdu University of Arts, Sciences & Technology, Islamabad
  • 12. 12 What is Software (ctd.)? Or you may want to say:  Software consists of  (1) instructions (computer programs) that when executed provided desired function and performance,  (2) data structures that enable the programs to adequately manipulate information, and  (3) documents that describe the operation and use of the programs. Federal Urdu University of Arts, Sciences & Technology, Islamabad
  • 13. 13 What is Software (ctd.)? But these are only the concrete part of software that may be seen, there exists also invisible part which is more important:  Software is the dynamic behavior of programs on real computers and auxiliary equipment.  “… a software product is a model of the real world, and the real world is constantly changing.”  Software is a digital form of knowledge. (“Software Engineering,” 7ed. Sommerville, Addison-Wesley, 2000) Federal Urdu University of Arts, Sciences & Technology, Islamabad
  • 14. 14 The statistics – Chaos Report Project completion 16% 31% 53% On time, on budget, with all of the specified features and functions Cancelled before they were completed delivered and operational but over- budget, over-schedule or with fewer features and functions than specified  Standish Group – 1995  365 IT executives in US companies in diverse industry segments.  8,380 projects average cost overrun = 189% average time overrun = 222%. 61% of originally specified features included   ? In Averages • 189% of original budget • 221% of original schedule • 61% of original functionality Federal Urdu University of Arts, Sciences & Technology, Islamabad
  • 15. 15 Symptom of Software Crisis  About US$250 billions spent per year in the US on application development  Out of this, about US$140 billions wasted due to the projects getting abandoned or reworked; this in turn because of not following best practices and standards Ref: Standish Group, 1996 Federal Urdu University of Arts, Sciences & Technology, Islamabad
  • 16. 16 Symptom of Software Crisis  10% of client/server apps are abandoned or restarted from scratch  20% of apps are significantly altered to avoid disaster  40% of apps are delivered significantly late Source: 3 year study of 70 large c/s apps 30 European firms. Compuware (12/95) Federal Urdu University of Arts, Sciences & Technology, Islamabad
  • 17. 17  Software products:  fail to meet user requirements  crash frequently  expensive  difficult to alter, debug, enhance  often delivered late Observed Problems Federal Urdu University of Arts, Sciences & Technology, Islamabad
  • 18. 18 Why is the Statistics so Bad?  Misconception on software development  Software myths, e.g., the man-month myth  False assumptions  Not distinguishing the coding of a computer program from the development of a software product  Software programs have exponential growth in complexity and difficulty level with respect to size.  The ad hoc approach breaks down when size of software increases. Federal Urdu University of Arts, Sciences & Technology, Islamabad
  • 19. 19 Why is the Statistics so Bad?  Software professionals lack engineering training  Programmers have skills for programming but without the engineering mindset about a process discipline  Internal complexities  Essences and accidents made by Fred. Brooks Federal Urdu University of Arts, Sciences & Technology, Islamabad
  • 20. 20 How is Software usually Constructed … The requirements specification was defined like this The developers understood it in that way This is how the problem was solved before. This is how the problem is solved now That is the program after debugging This is how the program is described by marketing dept. This, in fact, is what the customer wanted … ;-)
  • 21. 21 Software Myths (Customer Perspectives)  A general statement of objectives is sufficient to get started with the development of software. Missing/vague requirements can easily be incorporated/detailed out as they get concretized.  Application requirements can never be stable; software can be and has to be made flexible enough to allow changes to be incorporated as they happen. Federal Urdu University of Arts, Sciences & Technology, Islamabad
  • 22. 22 Software Myths (Developer Perspectives) Once the software is demonstrated, the job is done. Usually, the problems just begin! Federal Urdu University of Arts, Sciences & Technology, Islamabad
  • 23. 23 Until the software is coded and is available for testing, there is no way for assessing its quality. Usually, there are too many tiny bugs inserted at every stage that grow in size and complexity as they progress thru further stages! Software Myths (Developer Perspectives) Federal Urdu University of Arts, Sciences & Technology, Islamabad
  • 24. 24 The only deliverable for a software development project is the tested code. The code is only the externally visible component of the entire software complement! Software Myths (Developer Perspectives)
  • 25. 25 Software Myths (Management Perspectives) As long as there are good standards and clear procedures in my company, I shouldn’t be too concerned. But the proof of the pudding is in the eating; not in the Recipe ! Federal Urdu University of Arts, Sciences & Technology, Islamabad
  • 26. 26 Software Myths (Management Perspectives) As long as my software engineers(!) have access to the fastest and the most sophisticated computer environments and state- of-the-art software tools, I shouldn’t be too concerned. The environment is only one of the several factors that determine the quality of the end software product! Federal Urdu University of Arts, Sciences & Technology, Islamabad
  • 27. 27 Software Myths (Management Perspectives) When my schedule slips, what I have to do is to start a fire-fighting operation: add more software specialists, those with higher skills and longer experience - they will bring the schedule back on the rails! Unfortunately, software business does not entertain schedule compaction beyond a limit! Federal Urdu University of Arts, Sciences & Technology, Islamabad
  • 28. 28 Misplaced Assumptions  All requirements can be pre-specified  Users are experts at specification of their needs  Users and developers are both good at visualization  The project team is capable of unambiguous communication Ref: Larry Vaughn Federal Urdu University of Arts, Sciences & Technology, Islamabad
  • 29. 29 Types of Software Software has mainly divided into two Categories:  System software Systems software includes the programs that are dedicated to managing the computer itself, such as the operating system.  Application software Application software, or simply applications, are often called productivity programs or end-user programs because they enable the user to complete tasks, such as creating documents  specific to the task it is designed e.g. word processing software Federal Urdu University of Arts, Sciences & Technology, Islamabad
  • 30. 30  Usually small in size  Author himself is sole user  Single developer  Lacks proper user interface  Lacks proper documentation  Ad hoc development.  Large  Large number of users  Team of developers  Well-designed interface  Well documented & user-manual prepared  Systematic development Programs Software Products Confused with Programs and Products Federal Urdu University of Arts, Sciences & Technology, Islamabad
  • 31. 31  Deterioration: To grow worse; to be impaired in quality e.g. Road Structure Changes in software development on the later stages, make the structure worse.  Wear-out : Get tired through overuse e.g. Bath Tub Curve Wear Out vs Deterioration Federal Urdu University of Arts, Sciences & Technology, Islamabad
  • 32. Wear Out vs Deterioration 32 Software doesn’t Wear-out the hardware begins to Wear- out with time Software becomes reliable our time, not a physical identity. Bath Tub Curve Federal Urdu University of Arts, Sciences & Technology, Islamabad
  • 33. 33 What is Software Engineering?  Different focuses for this term exist in various textbooks. Some are listed below.  The application of a systematic, disciplined, quantifiable approach to development, operation, and maintenance of software; that is, the application of engineering to software. (IEEE Standard Computer Dictionary, 610.12, ISBN 1- 55937-079-3, 1990) Federal Urdu University of Arts, Sciences & Technology, Islamabad
  • 34. 34 What is Software Engineering? (ctd)  Software engineering is concerned with the theories, methods and tools for developing, managing and evolving software products. (I. Sommerville, 6ed.)  A discipline whose aim is the production of quality software, delivered on time, within budget, and satisfying users' needs. (Stephen R. Schach, Software Engineering, 2ed.)  Multi-person construction of multi-version software (Parnas, 1987) Federal Urdu University of Arts, Sciences & Technology, Islamabad
  • 35. 35  The practical application of scientific knowledge in the design and construction of computer programs and the associated documentation required to develop, operate and maintain them (B.W. Boehm)  The establishment and use of sound engineering principles in order to obtain economically software that is reliable and works efficiently on real machines (F.L. Bauer) What is Software Engineering? (ctd.) Federal Urdu University of Arts, Sciences & Technology, Islamabad
  • 36. 36  The technological and managerial discipline concerned with systematic production and maintenance of software products that are developed and modified on time and within cost constraints (R. Fairley)  A discipline that deals with the building of software systems which are so large that they are built by a team or teams of engineers (Ghezzi, Jazayeri, Mandrioli) What is Software Engineering? (ctd.) Federal Urdu University of Arts, Sciences & Technology, Islamabad
  • 37. 37 Casting the Term  The field of software engineering was born in NATO Conferences, 1968 in response to chronic failures of large software projects to meet schedule and budget constraints  Since then, term became popular because software is getting more and more important to industry and business but the “software crisis” still persists. Federal Urdu University of Arts, Sciences & Technology, Islamabad
  • 38. 38 Other Definitions of Software Engineering  “A systematic approach to the analysis, design, implementation and maintenance of software.” (The Free On-Line Dictionary of Computing)  “The systematic application of tools and techniques in the development of computer-based applications.” (Sue Conger in The New Software Engineering)  “Software Engineering is about designing and developing high-quality software.” (Shari Lawrence Pfleeger in Software Engineering -- The Production of Quality Software) Federal Urdu University of Arts, Sciences & Technology, Islamabad
  • 39. 39 So, Software Engineering is …  Scope  study of software process, development principles, techniques, and notations  Goals  production of quality software,  delivered on time,  within budget,  satisfying customers’ requirements and users’ needs Federal Urdu University of Arts, Sciences & Technology, Islamabad
  • 40. 40 Software Programming ≠ Software Engineering  Software programming: the process of translating a problem from its physical environment into a language that a computer can understand and obey. (Webster’s New World Dictionary of Computer Terms)  Single developer  “Toy” applications  Short lifespan  Single or few stakeholders  Architect = Developer = Manager = Tester = Customer = User  One-of-a-kind systems  Built from scratch  Minimal maintenance Federal Urdu University of Arts, Sciences & Technology, Islamabad
  • 41. 41 Software Programming ≠ Software Engineering  Software engineering  Teams of developers with multiple roles  Complex systems  Indefinite lifespan  Numerous stakeholders  Architect ≠ Developer ≠ Manager ≠ Tester ≠ Customer ≠ User  System families  Reuse to amortize costs  Maintenance accounts for over 60% of overall development costs Federal Urdu University of Arts, Sciences & Technology, Islamabad
  • 42. 42 Unique Characteristics of Software  Software is malleable  Software construction is human-intensive  Software is intangible and hard to measure  Software problems are usually complex  Software directly depends upon the hardware  It is at the top of the system engineering “food chain”  Software doesn’t wear out but will deteriorate  Software solutions require unusual rigor  Software has discontinuous operational nature Federal Urdu University of Arts, Sciences & Technology, Islamabad
  • 43. Engineering vs Manufacturing 43 Engineering is the application of science and math to solve problems. Engineers figure out how things work and find practical uses for scientific discoveries. https://www.livescience.com/47499-what-is-engineering.html Federal Urdu University of Arts, Sciences & Technology, Islamabad
  • 44. Engineering vs Manufacturing 44 Manufacturing; The making of articles on a large scale using machinery; industrial production or the Process of converting raw materials, components, or parts into finished goods Federal Urdu University of Arts, Sciences & Technology, Islamabad
  • 45. 45 Software Process  Software Development life cycle  Waterfall Model  Prototype Model  Spiral Model  Incremental Model Federal Urdu University of Arts, Sciences & Technology, Islamabad
  • 46. 46 Traditional Software Engineering Software Systems DataFunction Behavior Entity-Relation Diagram Data Flow Diagram State Transition Diagram Federal Urdu University of Arts, Sciences & Technology, Islamabad
  • 47. 47 Object-Oriented Software Engineering Software Systems FunctionObject Behavior Data Flow Diagram Class Diagram State Chart Federal Urdu University of Arts, Sciences & Technology, Islamabad
  • 48. 48 Evolution of Software Industry  Independent Programming Service  Software Product  Enterprise Solution  Packaged Software for the Mass  Internet Software and Services Federal Urdu University of Arts, Sciences & Technology, Islamabad
  • 49. 49 Independent Programming Services (Era 1)  Feb 1955, Elmer Kubie and John Sheldon founded CUC  the First Software Company that devoted to the construction of software especially for hardware company.  Promoting Software Industry: two Major Projects,  SABRE, airline reservation system, $30 million.  SAGE, air defense system (1949~1962) 700/1000 programmers in the US. $8 billion. Federal Urdu University of Arts, Sciences & Technology, Islamabad
  • 50. 50 Software Product (Era 2)  1964 Martin Goetz developed Flowchart Software -- Autoflow for RCA, but rejected.  Sale to the customer of RCA & IBM.  Develop and market software products not specifically designed for a particular hardware platform.  MARK IV, a pre-runner for the database management system.  IBM unbundled software from hardware. Federal Urdu University of Arts, Sciences & Technology, Islamabad
  • 51. 51 Enterprise Solutions (Era 3)  Dietmar Hopp. IBM Germany  Systems, Applications and Products (SAP) $3.3billion (1997)  Setting up shop in Walldorf, Germany.  Marked by the emergence of enterprise solutions providers. e.g. Baan 1978. Netherlands. $680 million (1997) Oracle 1977. U.S. Larry Ellison.  ERP, $45 billion (1997) Federal Urdu University of Arts, Sciences & Technology, Islamabad
  • 52. 52 Packaged Software for the Masses (Era 4)  Software products for the masses. 1979.  VisiCalc, Spreadsheet program.  August 1981: The deal of the century.  Bill Gates bought the first version of the OS from a small firm called Seattle Computer Products for $50,000 without telling them it was for IBM.  The development of the IBM PC, 1981, initiated a 4th software era.  PC-based mass-market software. Few additional services are required for installation.  Microsoft reached revenues of $11.6 billion. Packaged Software Products, $57 billion (1997) Federal Urdu University of Arts, Sciences & Technology, Islamabad
  • 53. 53 Internet Software and Services (Era 5)  Internet and value-added services period, 1994. W  with Netscape’s browser software for the internet. Federal Urdu University of Arts, Sciences & Technology, Islamabad
  • 54. 54 Object-Oriented Ad hoc Data flow-based Data structure- based Control flow- based Evolution of Design Techniques Federal Urdu University of Arts, Sciences & Technology, Islamabad
  • 55. 55 Related Knowledge Maths Application domain knowledge Advanced SE Knowledge Guide to the SWEBOK Ironman C.S. ... Knowledge of a Software Engineer Specialized SE Knowledge Federal Urdu University of Arts, Sciences & Technology, Islamabad
  • 56. 56 IT Market Hardware products Hardware maintenance Software Products & Services Processing Services and Internet Services Embedded Software Professional Service Software Products Enterprise Solution Packaged Mass-Market Software Federal Urdu University of Arts, Sciences & Technology, Islamabad
  • 57. 57 Software Products and Services Enterprise Solutions IBM Oracle Computer Associates SAP HP Fujitsu Hitachi Parametric Technology People Soft Siemens Packaged Mars-Market Software Microsoft IBM Computer Associates Adobe Novell Symantec Intuit Autodesk Apple The Learning Company Professional Software Services Anderson Consulting IBM EDS CSC Science Applications Cap Gemini Hp DEC Fujitsu BSO Origin
  • 58. 58 Software Engineering Today?  Organizations “go with what has worked in the past”  Everyone is too busy getting product out the door to spend time in education or training or addressing these problems effectively  “Out of date” practices become institutionalized Federal Urdu University of Arts, Sciences & Technology, Islamabad
  • 59. 59 Software Engineering Today?  Few people know, or can integrate, best practices  Unable to adopt and utilize proven methodologies in timely fashion  Although significant improvements have been made in specific areas, the rapidly evolving nature of the software industry has resulted in little overall improvement in the overall situation. Federal Urdu University of Arts, Sciences & Technology, Islamabad
  • 60. 60 Not Crisis, but a Chronic Problem  The crisis persists  After 35 years later, the software “crisis” is still with us  Major problems are still the same:  poor quality (correctness, usability, maintainability, etc)  over budget  delivered late, or not at all  It is not a crisis but a chronic problem  It becomes a persistent, chronic condition that software industry has to face with Federal Urdu University of Arts, Sciences & Technology, Islamabad
  • 61. 61 What’s Wrong?  Does software engineering have no progress at all? Not quite true.  We have indeed seen a lot of improvements, e.g. high level programming, object-oriented technology, etc.  But it does not achieve its promise, why?  production of fault-free software, delivered on time and within budget, that satisfies the users’ needs, and is easy to maintain, etc. Federal Urdu University of Arts, Sciences & Technology, Islamabad
  • 62. 62 A More Close Look  The comparison with 1995’s report does show that there is some progress in the past eight years. Federal Urdu University of Arts, Sciences & Technology, Islamabad
  • 63. 63 So, What’s the Problem?  Software issues: software industry has changes a lot in the past years  Education issue: more emphasis on methods and tools but lack of sufficient education and training on people  Process and quality issue: there lacks of a set of known proven practices for software engineers to follow with Federal Urdu University of Arts, Sciences & Technology, Islamabad
  • 64. 64 Software Changes in the Past Years  Changes in software over time:  grew in size from 10’s or 100’s of lines to 1000’s to 1,000,000’s of lines of code  operating environment changed from simple “batch” operations to complex multiprogramming systems, to time-sharing and distributed computing to today’s Internet network computing environment. Federal Urdu University of Arts, Sciences & Technology, Islamabad
  • 65. 65 Software Changes in the Past Years  As computer systems (both hardware and software) have become larger and more complex, the software development process has also become more and more complex  the simple art of “programming in the small” is no longer capable of coping with the task. Federal Urdu University of Arts, Sciences & Technology, Islamabad
  • 66. 66 Situations for Software are Different Too  Driven by intense market forces, including persistent pressure to deliver software on unrealistic time schedules  Rapidly changing requirements  Pressures for faster time to market  Continuing rapid evolution of software methodologies and systems  Integration of new processes and techniques  Need to re-design major systems Federal Urdu University of Arts, Sciences & Technology, Islamabad
  • 67. 67 Situations for Software are Different Too  Talent shortage: needed software engineering skills often in short supply  What even worse  Moore’s law means always trying new things  Complexity moves into software  Can’t find the limits except by trial and error Federal Urdu University of Arts, Sciences & Technology, Islamabad
  • 68. 68 The Software Industry Today  Even though much is now known about how to improve software production, the overall state is not much better than ever, due to the urgency of meeting unrealistic delivery schedules and the continuing rapid evolution of the software industry  i.e. poor quality, late delivery, over budget Federal Urdu University of Arts, Sciences & Technology, Islamabad
  • 69. 69 The Software Industry Today  Component-Based Engineering and Integration  Technological Heterogeneity  Enterprise Heterogeneity  Greater potential for Dynamic Evolution  Internet-Scale Deployment  Many competing standards  Much conflicting terminology Federal Urdu University of Arts, Sciences & Technology, Islamabad
  • 70. 70  Ability to collaborate; be able to communicate clearly and concisely both to laypeople and peers.  Able to follow instructions, make a team stronger for your presence and not weaker.  Ability to see the bigger picture and differing perspectives; to compromise, to balance competing priorities, and to priorities the user Ethics for Software Engineers Federal Urdu University of Arts, Sciences & Technology, Islamabad
  • 71. 71  You write clean, reusable code that’s easier to read and test  You understand how your code helps drive the overall business  You listen more than you speak—or you at least listen before you speak.  You are disciplined (not sacrifice quality, focused time for development work)  You get help from strangers on the internet.  You go beyond skill to achieve expertise, You are open to new things Ethics for Software Engineers
  • 72. 72 Three key Challenges Software engineering in the 21st century faces three key challenges:  Legacy systems  Old, valuable systems must be maintained and updated  Heterogeneity  Systems are distributed and include a mix of hardware and software  Delivery  There is increasing pressure for faster delivery of software Federal Urdu University of Arts, Sciences & Technology, Islamabad