1 / 9

Software Engineering

Software Engineering. Introduction. Software. Generic Products: Stand alone systems produced by a development organization Customized Products Software: Computer Program Documentation. Software Engineering. Refinement of knowledge into levels of abstraction

coligny
Download Presentation

Software Engineering

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Software Engineering Introduction

  2. Software • Generic Products: Stand alone systems produced by a development organization • Customized Products • Software: • Computer Program • Documentation

  3. Software Engineering • Refinement of knowledge into levels of abstraction • Traceability of information through levels

  4. Software Process • Set of activities and associated results that produce a software product • Fundamental process activities: • Software specification • Software development • Software validation • Software evolution

  5. Software Process Models • Simplified description of a software process: • Workflow model: Sequence of activities with their inputs/outputs and dependencies. Activities represent human actions • Dataflow/activity model: Data transformations carried out by people or by computers • Role/action model: Roles of people involved in the process and activities for which they are responsible

  6. Software Development Models • Three paradigms of software development: • The waterfall approach: each activity is represented as a phase that leads to the next one. • Iterative development: activities are interleaved. “Rapid development of prototypes” • Component-based software engineering: development as an integration of preexistent and new parts

  7. Good Software Attributes • Maintainability: capacity for evolution • Dependability: reliability, security and safety • Efficiency: regarding usage of resources. Responsiveness, processing time, memory utilization, etc. • Usability: good user interface and documentation

  8. Key Challenges • Heterogeneity: sw should be flexible to “blend” with different computing environments, support systems, old applications, etc. • Delivery: shortening delivery time without compromising sw quality • Trust: develop techniques that ensure that sw can be trusted by its users

  9. Professional and Ethical Responsibility • Confidentiality: all business information (customer’s) should be kept confidential • Competence: do not accept work that is outside your competence • Intellectual property rights: intellectual property of employers and clients should be protected • Computer misuse: game playing, internet browsing, virus disemination (see code of ethics in page 15)

More Related