Your SlideShare is downloading. ×
MELJUN CORTES Software Engineering
Upcoming SlideShare
Loading in...5

Thanks for flagging this SlideShare!

Oops! An error has occurred.


Saving this for later?

Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime - even offline.

Text the download link to your phone

Standard text messaging rates apply

MELJUN CORTES Software Engineering


Published on

MELJUN CORTES Software Engineering

MELJUN CORTES Software Engineering

  • Be the first to comment

  • Be the first to like this

No Downloads
Total Views
On Slideshare
From Embeds
Number of Embeds
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

No notes for slide


  • 1. WHAT IS SOFTWARE ENGINEERING? A presentation by QAI INDIA | USA | UK | CHINA QAI India Limited. All rights reserved. © | MALAYSIA | SINGAPORE
  • 2. What isSoftware Engineering?
  • 3. What is Software?• Program• Data• Document 3
  • 4. Types of Software• Application software - Application software is used to provide services to customers and run businesses more efficiently. Examples: accounting system, a management information system (MIS), and an enterprise resource planning (ERP) system.• System software - System software is used to operate and maintain a computer system. It enables customers to use the computer resources directly and through other software. Examples: operating systems, compilers, and system utilities. What is embedded software? 4
  • 5. Engineering Principles• Fundamental engineering principles: – Understanding the problem – Communicating with the customer – Defined methods for designing – Best practices for implementing the solution – Good strategy and tactics for testing 5
  • 6. Engineering and Software Engineering• Engineering is the systematic application of scientific knowledge in creating and building cost-effective solutions to practical problems in the service of mankind.• Software engineering is that form of engineering that applies the principles of computer science and mathematics to achieving cost-effective solutions to software problems. 1990 SEI Report on Undergraduate Software Engineering Education ( CMU/SEI-90-TR-003 ) 6
  • 7. What is Software Engineering• The term “software engineering” was first coined at the 1968 NATO conference where Mr. Bauer was a principle organizer• The term “Software Engineering” has been around for 34 years! 7
  • 8. Why Software Engineering?• A 1994 study by the Standash Group of 8,380 projects in the government and private sectors in the U.S. showed that: - 31% of software projects are cancelled before they are completed. - 53% of those are completed cost an average of 189% of their original estimates. - of those 53%, only 42% have their original set of proposed features and functions. - only 9% of the projects were completed on time and within budget. 8
  • 9. Software Engineering Layers• Process: A framework that helps the project manager control project management and engineering activities• Methods: The technical activities required for the creation of work products• Tools: The automated assistance for processes and methods 9
  • 10. Software Engineering• Objectives - to ensure that – software delivers functionality, features – project is completed on time – project is completed within budget – software is manageable – software is changeable and long living – system is maintainable by a developer who is not part of the original design team The application of a systematic, disciplined, quantifiable approach to the development, operation, and maintenance of software : The application of engineering to software 14
  • 11. Scope of Software Engineering Processes for development, e.g., - contract - concept - requirements - design - coding - testing - change-over - maintenanceSupporting processes, e.g.,- project management- quality assurance- configuration management- training- measurement / metrics 15
  • 12. Software Life Cycle• The period of time that begins when a software product is conceived and ends when the software is no longer available for use – phases overlap, are performed iteratively, etc. – different approaches possible – another common term - SDLC• Software life cycle models are also called software engineering paradigms 16
  • 13. Sample Software Life Cycle Concept Exploration Requirements Analysis Design Coding Test Installation Operation/ Maintenance Retirement 17
  • 14. Lifecycle Stages• Analysis• Design• Coding/ Development• Testing• Implementation 18
  • 15. Software Requirements• A consolidated set of requirements explaining the business needs of the customer• Translation of the customer requirements to the requirements of the software to be built• Important concepts – Technical requirements – Non technical requirements – Functional requirements – Non Functional requirements – Scope of Work as an input – Acceptance criteria 19
  • 16. Requirements Engineering• Requirements Definition – Elicitation – Analysis or Modeling – Documentation – Validation• Requirements Management – Change Control – Requirements traceability 20
  • 17. Software Design• A representation of software created to facilitate analysis, planning, implementation and decision making• The software design description is used as a medium for communicating software design information, and may be thought of as a blueprint of the system• Often described as : – high level (system design, global design, interfaces) – low level (program / component level)• Format, contents depend on type of application, objective and audience 21
  • 18. Coding• Expressing a design (implementing a design) in a programming language based on program specifications• The main visible work• Also called programming or construction or development phase 22
  • 19. Testing• Checking whether the software product meets requirements• The purpose of testing is to uncover as many problems as possible• If coder and tester are same, testing may be biased 23
  • 20. User Acceptance• Acceptance criteria forms the basis of acceptance of the product / deliverable – Criteria to be frozen early – to be agreed between the supplier and customer – E.g., • No defects in core functionalities • Performance criteria within a tolerance of + and – 2 % • No interoperability issues• The user may do an acceptance testing before accepting the system 24
  • 21. Installation and Change over• Moving the system to the customer site• User training• Parallel run• Installation manual / instructions• Environment set up 25
  • 22. Operations and Maintenance• The “real purpose” of the system• The largest phase• Changes required to systems for various reasons - problems to be fixed, new requirements, changes in policies, statutory laws, etc.• Often treated as a separate project 26
  • 23. Software Engineering SDLC• Software Development Life Cycles – Classic life cycle • a sequential paradigm – Prototyping • a modeling paradigm – Evolutionary models like • Incremental • Spiral, etc. 27
  • 24. Core Activities & RoleCore Activities RoleBusiness Requirement Business AnalystSoftware Requirement System AnalystDesign Tech Lead/ArchitectCoding DeveloperTesting Testing EngineerDeployment Developers 28
  • 25. Supporting Activities and roleSupporting Activities RoleProject Management Project Manager Project Leader Senior ManagementSoftware Configuration Configuration ControllerManagement Software Configuration Control BoardQuality Assurance SQA Analyst Auditor 29
  • 26. INDIA USA UK CHINA MALAYSIA Click here for more on Software Engineering SINGAPORE and Testing CONTACT USQAI India: QAI USA: QAI Malaysia:1010 - 1012, Ansal Towers, 38 Nehru Place Windsor at Metro Center, 2101 Park Center Level 36, Menara Citibank, 165, JalanNew Delhi - 110019, India Dr., Suite 200, Orlando, FL 32835-7614 Ampang, 50450 Kuala Lumpur, MalaysiaPhone: +91- 11- 26219792, 26220580 Phone: +407-363-1111 Phone: +603 2169 conferences@qaiglobal.comQAI UNICOM / UK: QAI Singapore: QAI China:Unicom R&D House, One Oxford Road 391B Orchard Road #23-01, Rm. 1211, No. 498 Guoshoujing Rd. ShanghaiUxbridge, Middlesex, London, United Ngee Ann City Tower B, Zhangjiang Hi-Tech Park, Pudong New Area,Kingdom, Zip: UB9 4DA Singapore - 238874 Shanghai, China Zip: 201203Phone : +44 (0)1895 256484 Phone:+65-6225-8139 Phone : © QAI © QAI India Limited. All rights All rights reserved. No part of this document may be reproduced or distributed in any form or by any means, or stored in a database or retrieval system, without prior written permission of QAI