Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
Software Engineering
Software Engineering <ul><li>SE is the strategy for producing quality software. </li></ul><ul><li>Software engineering is ...
<ul><li>SE used models which are large, abstract and complex so they must be made visible in documents such as system desi...
Software Products <ul><li>The objective of software engineering is to produce software products.  </li></ul><ul><li>Softwa...
Software Products classes: <ul><li>  </li></ul><ul><li>Generic products.  These are stand-alone systems which are produced...
2 steps in problem solving <ul><li>Analysis is the process of breaking something into small pieces.  </li></ul><ul><li>Syn...
Tool <ul><li>Too is an instrument or automated system for accomplishing something in a better way. </li></ul>
Technique  <ul><li>Technique is a formal procedure or method for producing some result. </li></ul>
common product characteristic and description   Product Characteristic Description Maintainability It should be possible t...
characteristic and description Efficiency Software should not make wasteful use of system resources such as memory and pro...
Software Process <ul><li>The software process is the set of activities and associated results which prduce a software prod...
Four Fundamental Process Activities <ul><li>Software Specification.  The functionality of the software and constraints on ...
Other Characteristics of Quality Software <ul><li>It does what the user wants it to do </li></ul><ul><li>It uses computer ...
Participants in the Production of Quality Software <ul><li>Customer is the company, organization or person who is paying f...
Relationships Customer Developer User Contractual  obligation P Software System needs
Members of the Development Team <ul><li>Analyst.  It works with the customer, breaking what the customer wants into discre...
Software Development Steps <ul><li>1.Requirements Analysis and Definition.  This is the job of the Analyst.  He asks the c...
<ul><li>Program Design.  Creating the lines of codes of the software system based on the system design.  This is done by t...
<ul><li>Integration Testing.  This test focuses on whether a module will integrate well with other modules. </li></ul><ul>...
<ul><li>System Delivery.  It is assigned to the trainers.  The trainers are the one who will teach the users on how they w...
Upcoming SlideShare
Loading in …5
×

Software Engineering

448 views

Published on

  • Be the first to comment

  • Be the first to like this

Software Engineering

  1. 1. Software Engineering
  2. 2. Software Engineering <ul><li>SE is the strategy for producing quality software. </li></ul><ul><li>Software engineering is concerned with the theories, methods and tools that are needed to develop the software for computers. </li></ul><ul><li>In most cases, the software systems, which must be developed, are large and complex systems. </li></ul>
  3. 3. <ul><li>SE used models which are large, abstract and complex so they must be made visible in documents such as system designs, user manuals and so on. </li></ul><ul><li>Producing these documents is as much part of the software engineering process as programming. </li></ul><ul><li>The software engineering is also concerned with evolving these models to meet changing needs and requirements. </li></ul>
  4. 4. Software Products <ul><li>The objective of software engineering is to produce software products. </li></ul><ul><li>Software products are software systems delivered to a customer with the documentation which describes how to install and use the system. </li></ul>
  5. 5. Software Products classes: <ul><li>  </li></ul><ul><li>Generic products. These are stand-alone systems which are produced by a development organization and sold on the open market to any customer who is able to buy them. </li></ul><ul><li>Bespoke products. These are systems which are commissioned by a particular customer. The software is developed specially for that customer by some contractor. </li></ul>
  6. 6. 2 steps in problem solving <ul><li>Analysis is the process of breaking something into small pieces. </li></ul><ul><li>Synthesis is the putting together of a large structure from small building blocks. </li></ul>
  7. 7. Tool <ul><li>Too is an instrument or automated system for accomplishing something in a better way. </li></ul>
  8. 8. Technique <ul><li>Technique is a formal procedure or method for producing some result. </li></ul>
  9. 9. common product characteristic and description Product Characteristic Description Maintainability It should be possible to evolve software to meet the changing needs of customers Dependability Software dependability includes a range of characteristics including reliability, security and safety. Dependable software should not cause physical or economic damage in the event of system failure
  10. 10. characteristic and description Efficiency Software should not make wasteful use of system resources such as memory and processor cycles . Usability Software should have an appropriate user interface and adequate documentation
  11. 11. Software Process <ul><li>The software process is the set of activities and associated results which prduce a software product. These activities are mostly carried out by software engineers. CASE (Computer-aided software engineering) tools may be used to help with some process activities. </li></ul>
  12. 12. Four Fundamental Process Activities <ul><li>Software Specification. The functionality of the software and constraints on its operation must be defined. </li></ul><ul><li>Software Development. The software to meet the specification must be produced. </li></ul><ul><li>Software Validation. The software must be validated to ensure that it does what the customer wants. </li></ul><ul><li>Software evolution. The software must evolve to meet changing customer needs. </li></ul><ul><li>  </li></ul>
  13. 13. Other Characteristics of Quality Software <ul><li>It does what the user wants it to do </li></ul><ul><li>It uses computer resources correctly and efficiently. </li></ul><ul><li>It is easy for the user to learn and use </li></ul><ul><li>The developers can design, code, test and maintain the system with relative ease. </li></ul>
  14. 14. Participants in the Production of Quality Software <ul><li>Customer is the company, organization or person who is paying for the software system to be developed </li></ul><ul><li>Developer is the company, organization or person who is building the software system for the customer </li></ul><ul><li>User is the person or people who will actually use the system. </li></ul>
  15. 15. Relationships Customer Developer User Contractual obligation P Software System needs
  16. 16. Members of the Development Team <ul><li>Analyst. It works with the customer, breaking what the customer wants into discrete requirements </li></ul><ul><li>Designer. The one who generates a system level description of what the system is to do. </li></ul><ul><li>Programmer. It writes the codes which implement on what the requirements specify </li></ul><ul><li>Test Team. These are additional testers who help to catch errors that the programmers overlooked. </li></ul><ul><li>Trainer. It shows the user how to use the system. </li></ul>
  17. 17. Software Development Steps <ul><li>1.Requirements Analysis and Definition. This is the job of the Analyst. He asks the customer of what he wants the software system to do. </li></ul><ul><li>2.System Design. Creating the technical representation of the system based on the analysis of the requirement. The designer and the Analyst are the responsible for this step </li></ul>
  18. 18. <ul><li>Program Design. Creating the lines of codes of the software system based on the system design. This is done by the Programmer with the help of the designer. </li></ul><ul><li>Program Implementation. Implementing the programs. </li></ul><ul><li>Unit testing. This step check each module for errors. This is a job for the programmer and the Test Team </li></ul>
  19. 19. <ul><li>Integration Testing. This test focuses on whether a module will integrate well with other modules. </li></ul><ul><li>System Testing. This test is doe to determine if the system satisfies the requirements given, if its output the customer wants to produce and if the system works in the environment in which it will be used. </li></ul>
  20. 20. <ul><li>System Delivery. It is assigned to the trainers. The trainers are the one who will teach the users on how they will be able to use the system. </li></ul><ul><li>Maintenance. It is a job for all the members of the development team. It is making sure that the system runs accordingly at all times. </li></ul>

×