Software Engineering Ppt

Topics: Software engineering, Object-oriented programming, Software development process Pages: 13 (1590 words) Published: September 15, 2012
Introduction to Software Engineering
Somnuk Keretho, Assistant Professor Department of Computer Engineering Faculty of Engineering, Kasetsart University Email: URL:

Somnuk Keretho/Kasetsart University

Outline of this presentation
• • • • • • Scope of Software Engineering Object-Oriented Software Development Software Process Software Life-Cycle Models Object Orientation Software Quality Assessment

Reference to Chapter 1/2/3 of “Software Engineering with JAVA”, S.R. Schach, McGraw-Hill, 1997. 2

Somnuk Keretho/Kasetsart University

Scope of Software Engineering
• Software engineering is a discipline whose aim is the production of fault-free software, that is delivered on time, within budget, and satisfies the user’s needs.

Somnuk Keretho/Kasetsart University


Scope of Software Engineering
• Historical Aspects:
– 1967, a NATO group coined the term “Software Engineering” – 1968 NATO Software Engineering Conference concurred that “Software production should be an engineering-like activity”. – Using philosophies and paradigms of established engineering disciplines to solve “Software Crisis: that the quality of software was generally unacceptably low and that deadlines and cost limits were not being met”. Somnuk Keretho/Kasetsart University


Scope of Software Engineering
• Economic Aspects
– Software Engineering v.s. Computer Science
• The computer scientist investigates several ways to produce software, some good and some bad. • But the software engineer is interested in only those techniques that make sound economic sense. For example: A coding technique that can execute very efficiently but with higher maintenance cost may not be a good choice.

Somnuk Keretho/Kasetsart University


Scope of Software Engineering
• Maintenance Aspects
– Software Life Cycle / Software Process
• • • • • • • Requirements Phase Specification (Analysis) Phase Planning Phase Design Phase Implementation Phase Integration Phase Maintenance Phase (highest cost among all these phases) – Corrective, Perfective, and Adaptive Maintenance

• Retirement

Somnuk Keretho/Kasetsart University


Scope of Software Engineering
Maintenance is so important, a major aspect of software engineering consists of techniques, tools, and practices that lead to a reduction in maintenance cost.

Maintenance 67%

Requirement 2% Specification 4% Planning 1% Design 6% Module Coding 5% Module Testing 7% Integration 8% Maintenance 76% Approximate relative costs of the phases of the software life cycle.

Somnuk Keretho/Kasetsart University


Scope of Software Engineering
• Specification and Design Aspects
– Software professionals are humans, and humans can make error. – The fact that so many faults are introduced early in the software life cycle, highlights another important aspects of software engineering, namely, techniques that yield better specifications and designs. • For example, reducing specification and design faults by 10% will reduce the overall number of faults by 6-7%.

Somnuk Keretho/Kasetsart University


Scope of Software Engineering
• Team Programming Aspects
– Most software being developed and maintained by a team of software engineers – Scope of software engineering must also include techniques for ensuring that teams are properly organized and managed. • For example, team programming leads to interface problems among code components and communication problems among team members.

Somnuk Keretho/Kasetsart University


Scope of Software Engineering
• Several techniques have been suggested to help solve the software crisis. – ~1975-1985: Structured Paradigm
• Structured Systems Analysis, Composite/Structured Design, Structured Programming, Structured Testing • Lead to major improvements for software industry. • But only good for small programs (say, 5,000-50,000 lines of codes) • Not scale well with today larger...
Continue Reading

Please join StudyMode to read the full document

You May Also Find These Documents Helpful

  • Software Engineering Notes Essay
  • Essay about Software Engineering Outline
  • Software Engineering Lawas Essay
  • Software Engineering Detailed Documentation Outline Essay
  • Software Engineering and Data Flow Diagram Essay
  • Essay on Software Development Life Cycle
  • Essay about Software Maintenance and Change Control
  • Feb 2013Lesson 38 Software Acquisition Development Essay

Become a StudyMode Member

Sign Up - It's Free