Vous êtes sur la page 1sur 34

1

Introduction to
Software Engineering
Prepared By:
Eng.\ Tarig Ahmed Khalid, M.Sc., PMP, CEC, CBAP , MI EEE
General Manager, Financial & Banking Systems Co. (FBS)


2

Name 4 non- American/ non European
software companies that have international
existence.
3
Software Terminologies
Programmer Vs. Developer
Programmer Vs. Software Engineer
System Analyst Vs. Business Analyst
System Designer Vs. System Architect
Software Engineering Vs. Computer Science
Software Engineering Vs. System Engineering
4
Discussion
Do you feel that there are major problems facing
the software industry in Sudan?

Explain?

Do you think that the availability of good
analysts/designers/programmers is quite
sufficient to create successful software industry?
5
Successful Software Projects
Successful projects always finish:
within the planned duration Schedule

within the estimated budget Cost

up to the customers requirements Quality
6
Software Product Life Cycle
Product or Service Project Strategy
1. Business Strategy
2. Business Goals
3. Feasibility + ROI
4. IT Strategy
5. IT Goals
1. Development
Lifecycle
2. Project Management
1. IT Operations
a. Maintenances
b. Upgrading
c. Scrapping
Business Strategy
IT Strategy
Successful IT Projects Sustainable IT Operations
7
Software Development Project Life Cycle
Initiating
Planning Executing
Closing
Monitoring & Controlling
Project Phase (Life Cycle)
8
Standish Group Survey:
72% of IT projects come in late, over budget, or
not at all
26% of the IT projects cancelled before
completion
46% were behind schedule, over budget, or
both
52% of the IT projects cost 189% of its original
estimates
16.2% of the IT projects are completed on time and
on budget.
9
Failure Stories
Oregon Department of Motor Vehicles (DMV) Automation
Project
Objectives:
Downsize the workforce by 20%
Save 7.5 M$ annually
Start date: 1993 Estimated end date: 1998
Budget: 50 M$
In 1995:
Re-estimated end date: 2001 (60% slippage)
Re-estimated total budget: 123 M$ (146% slippage)
In 1996:
Total Failure
Project was cancelled
DMV officials were fired
10
Failure Stories..
Washington State: License Application Mitigation Project (LAMP)
Objectives:
Automating the state vehicles registration & renewal processes
Start date: 1991 Estimated end date: 1995
Estimated Budget: 16 M$
In 1992:
Re-estimated total budget: 41.8 M$
In 1993:
Re-estimated total budget: 51 M$
In 1997:
Re-estimated total budget: 67.5 M$
40 M$ was lost without result
Annual cost of manual process: 800,000 $
Estimated annual cost of automated process: 5 M$ ??????
Project was killed Washington State officials were fired
11
Why do software projects fail?
1. Lack of top management commitment.
2. Lack of vision: some projects do not meet the strategic vision of
the company.
3. Poorly Defined Requirements
4. Poor staffing
5. Poor project planning.
6. Insufficient funding, and incorrect budgeting.
7. No formal Project Management methodologies.
8. Use of new/unproven technology
9. Lack of stakeholders commitment.
10. Lack of public acceptance (negative media)
11. Etc.
12
13
Knowledge, Standards, and Regulations

Each profession has a set of accepted standards and
practices, often codified in regulations.

Standards: document established by consensus and
approved by a recognized body that provides guidelines or
characteristics for activities or their results, aimed at the
achievement of the optimum degree of order in a given
context.
Regulations: a government-imposed requirements,
which specify product, process or service characteristics,
including the applicable administrative provisions, with
which compliance is mandatory.
14
Important Definitions

Specification: A document that prescribes, in a
complete, precise, and verifiable manner, the
requirements, design, behavior, or characteristics of a
system/system component.

De Facto Standards: Specifications that emerge as
standards because of popular use.

De Jure Standards: Specifications released by an
accredited standards development organization.
15
Benefits of Standards
1. Market growth for new and emerging technologies
2. Reduced development time and cost
3. Common practices
4. Decreased trading costs and lowered trade barriers
5. Increased product quality and safety
6. Reduced market risks
7. Protection against obsolescence
16
Development of Standards
Standards
-----------
-----------
-----------
-----------
Consensus
Approved by Recognized Body
1. Knowledge Guide to the Body of Knowledge
2. Accreditation Certification (Career Development)
3. Ethics Code of Ethics
17
Software Engineering Organizations
1. Software Engineering Institute (SEI):
web site: www.sei.cmu.edu
Part of Carnegie Mellon University
Established in 1984
Purpose: is to help organizations to:
1. improve their software engineering capabilities
2. develop or acquire the right software, defect free, within
budget and on time, every time.
Famous Standards:
1. CMMI
2. People CMMI
18
Software Engineering Organizations
2. Institute of Electrical & Electronic Engineers (IEEE):

Web Site: www.ieee.org
American Non pfoit organization
Is the world's leading professional association for the
advancement of technology.
Established in 1963 as the merger of:
1. AIEE (American Institute of Electrical Engineers,
formed in 1884)
2. IRE (Institute of Radio Engineers, formed in 1912).


19
IEEE Quick Facts:
425,000 members over 160 countries.
More than 116,000 student members
333 sections in 10 geographic regions worldwide.
2,195 chapters in 10 regions.
2,345 student branches in 80 countries.
38 societies and 7 technical councils.
148 transactions, journals and magazines
3 million documents in the IEEE Digital Library with 8
million downloads/month
1300 IEEE sponsored or cosponsored conferences
worldwide each year.
1,400 active IEEE standards
20
IEEE standards cover the following fields:

1. Information Technology
2. Software & System Engineering
3. Power And Energy
4. Nuclear Power
5. Instrumentation And Measurement
6. Internet Best Practices
7. Mobile And Stationary Batteries
8. Nanotechnology
9. Organic Electronics
10. Telecommunications
11. Transportation
12. Electrical Safety
13. Green & Clean Technology
21
Software Engineering Organizations
3. IEEE Computer Society:

Web Site: www.computer.org
Founded in 1946 as part of the AIEE (American Institute of
Electrical Engineers, formed in 1884)
Part of the IEEE since 1963
100,000 member
The largest of the 39 societies of the IEEE.
50 % of our members are outside the United States,
The Society maintains a service center office in Tokyo, a
publications office in California, and its headquarters in
Washington DC.
22
IEEE Software Engineering Standards
1. Knowledge
Guide to the Software Engineering Body of
Knowledge (SWEBOK)


2. Accreditation Certification (Career Development)
IEEE- Certified Software Development Professional


3. Ethics Code of Ethics

23
IEEE Accreditations
IEEE released the IEEE Certified Software
Development Professional (CSDP) Credential.
IEEE-CSDP is vendor-neutral.
It covers the whole topics of Software Engineering
It has three stages:
1. Eligibility
2. Exam
3. Continuous Development (Professional Development
Units-PDU)
24
Code of Ethics:
Professional & Ethical Responsibility
Software engineering involves wider responsibilities
than simply the application of technical skills.

Software engineers must behave in an honest and
ethically responsible way if they are to be respected
as professionals.

Ethical behaviour is more than simply upholding the
law.
25
Code of Ethics:
Issues of professional responsibility
1. Confidentiality
2. Competence
3. Intellectual Property Rights
4. Computer Misuse


26
Guide to SWEBOK
Objectives
1. Promote a consistent view of SE worldwide
2. Clarify the place and boundaries of SE relative to other related
disciplines
3. Define/characterize the contents of the SE discipline
4. Provide access to the various components of the SWEBOK
5. Provide a foundation for curriculum development and
individual certification and licensing
27
Project Background:
The Guide to the Software Engineering Body of Knowledge
(SWEBOK) describes generally accepted knowledge about
software engineering.
For the 2004 SWEBOK Guide, SWEBOK editors received and
replied to almost 10,000 comments from 378 reviewers in 41
countries.
The 2004 Guide has also gained international recognition as ISO
Technical Report 19759.
Available free on the web (www.swebok.org)

Currently, SWEBOK ver. 3 is now under development.

28
Engineering:
The application of science and mathematics by which
properties of matter and the sources of energy are made
useful to people

Software Engineering:
The application of a systematic, disciplined,
quantifiable approach to development, operation and
maintenance of software: that is, the application of
engineering to software.

29
Guide to SWEBOK
Knowledge Areas
1. Software Requirements
2. Software Design
3. Software Construction
4. Software Testing
5. Software Maintenance
6. Software Configuration Management
7. Software Engineering Management
8. Software Engineering Tools & Methods
9. Software Engineering Process
10.Software Quality
30
SWEBOK Guide = 10 Knowledge Areas

Software Quality
Software Engineering Tools and Methods
Software Engineering Process
Software Engineering Management
Software Configuration Management
Maintenance Testing Construction Design Requirements
Primary Processes Supporting Processes
31
Quality VS. Grade
Quality: is the degree to which a set of inherent
characteristics fulfill requirements.
Grade: is a category assigned to products or services
having the same functional use but different technical
characteristics.
Low quality is always a problem; low grade may not be.
Examples:
1. A software product can be of high quality (no obvious
defects, readable manual) and low grade (a limited
number of features),
2. A software product can be of low quality (many
defects, poorly organized user documentation) and high
grade (numerous features).
32
SE- Related Disciplines
1. Computer Engineering
2. Computer Science
3. Management
4. Mathematics
5. Projects Management
6. Quality Management
7. Software Ergonomics:
Cognitive Science and Human Factors
8. Systems Engineering

33
Recommended References
1. Text Book: Ian Sommerville, Software Engineering - 9
th
Edition,
Addison Wesley

2. Further Readings :
a. Guide to Software Engineering Body of Knowledge
(www.swebok.org)
b. Business Analysis Body of Knowledge (www.iiba.org)
c. Capability Maturity Model Integration (CMMI)
(www.sei.cmu.edu)
d. IEEE-Computer Society (www.computer.org)
e. Guide to Project Management Body of Knowledge (PMBOK)
(www.pmi.org )
f. System Engineering Body of Knowledge (www.incose.org)
34

Vous aimerez peut-être aussi