1 / 11

Software Engineering (CSE-3513) Lecture-1

Software Engineering (CSE-3513) Lecture-1. Instructor: Sazid Zaman Khan Lecturer, Department of Computer Science and Engineering, IIUC. Software and it’s constituents .

kemp
Download Presentation

Software Engineering (CSE-3513) Lecture-1

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 (CSE-3513)Lecture-1 Instructor: SazidZaman Khan Lecturer, Department of Computer Science and Engineering, IIUC

  2. Software and it’s constituents • Software is not only a computer program, but it consists of all associated documentation and configuration data that is needed to make these programs operate correctly [Sommerville, p. 29 ]. Software system Programs Configuration files System documentation User documentation

  3. Software and it’s constituents • Programs: Codes which actually form the core of the software. These codes determine the actions of the software based on varying inputs. • Configuration files are used to set up these programs. • System documentation explains how the software is built. This is aimed at developers and advanced users. • User documentation explains how to use the software- aimed at general users.

  4. Fundamental types of software • Generic products: Software which are released to the market considering the general requirements of users. Example: MS Word, Adobe Photoshop. • Customized Products: Software that are ordered and the details of which are specified by the customer. Example: Software used in Chittagong Stock Exchange, Software used in IIUC. • Enterprise Resource Planning is a mix of the above two approaches.

  5. Engineering and Software Engineering • It is an engineering discipline concerned with all aspects of software production. • From now on, think of software as something concrete which can be touched, shaped, designed, - in one word “engineered”. • Engineering Discipline- Engineers make things work by using theories of that discipline selectively. Engineers have to work with organizational and financial constraints. NASA’s theoretical physicists do not think about budgets !!! • Finally software engineering is a systematic way of designing software.

  6. Software engineering, Computer Science, System Engineering • Computer Science is concerned with theory and fundamentals, Software engineering is concerned with practicalities. • System engineers are involved in specifying the system, defining it’s overall architecture and integrating all parts of a system.

  7. Nature of software engineering • Software engineering is characterized by its primary product, which is software - programs that direct a computer to perform some task [umn.edu]. • In software engineering, there is a well developed science, computer science, that covers, among other things, concepts of programming languages, algorithms, data structures, and important aspects of hardware systems and systems software[[umn.edu]].

  8. Some Problems of Software Engineering • First, there is no single domain of knowledge that covers the behavior of all software products [umn.edu]. • Second, the values of software engineering are driven by customers who have an unlimited range of needs [umn.edu]. • The extensive variety of software functionality and values are often dealt by specialization, For example: some firms specialize in medical software.

  9. State of the art of software engineering • ‘State of the art’ technology means the ‘latest’ technology. • State of the art of software engineering means the latest methods/techniques of software engineering. • Do a search on ACM or IEEE xplore with the keywords “state of the art software engineering 2013”.  (Part of your assignment).

  10. Attributes of a good software • Maintainability: It should be able to evolve to meet changing needs of customers. • Dependability : Reliability, Security and Safety. Should not cause physical or financial damage in case of system failure. • Efficiency: Should not make wasteful use of CPU, RAM, Bandwidth, etc. • Usability: End users should be able to use the software easily. It should have proper user interface and documentation.

  11. Let’s recap and mark out what we read today!

More Related