CS341_Software_Engineeering_MUST_College of Informafion Technology.pptx
AymanAbdelaziz21
7 views
12 slides
Oct 04, 2024
Slide 1 of 12
1
2
3
4
5
6
7
8
9
10
11
12
About This Presentation
Software eng1
Size: 887.46 KB
Language: en
Added: Oct 04, 2024
Slides: 12 pages
Slide Content
CS341 Software Engineering I Lab 1
Agenda What is a Software & its Types? What is Software Engineering ? Who is the Software Engineer ? When must we use Software Engineering ? SDLC Software Quality attributes
What is a Software ? Software is a set of instructions or programs instructing a computer to do specific tasks. Software is a generic term used to describe computer programs. Scripts, applications, programs and a set of instructions are all terms often used to describe software. Software Types :- 1) System Software : Includes the programs that are responsible to manage the computer itself, such as the operating system, file management utilities, and disk operating system (or DOS). 2) Application Software: Software that enable the user to complete tasks, such as creating documents, spreadsheets, databases and publications, doing online research. Categorized into two categories: General and Customized Application Software
Software Engineering- Usage What is Software Engineering ? - Software engineering is a branch of computer science which includes the analyzing user requirements and then development and building of computer systems software and applications software - Used in Large projects.
Software Engineer Software Engineer is a person focuses on applying the principles of engineering to software development. Their role includes analyzing and modifying existing software as well as designing, constructing and testing end-user applications that meet user needs — all through software programming languages. Note: You can know more about software engineer jobs.
Software Engineering - SDLC “Software Development Life Cycle “ SDLC is a framework defining tasks performed at each step in the software development process.
SDLC Models There are various software development life cycle models defined and designed which are followed during the software development process. Steps unique to its type to ensure success in the process of software development.
SDLC Models Types Sequential Models : Finish one phase, then move on to the next. Example: Waterfall Model , V-Model . Iterative Model : is a particular implementation of a software development life cycle (SDLC) that focuses on an initial, simplified implementation, which then progressively gains more complexity. Example: Spiral Model , Agile Model.
Software Quality Attributes
Software Quality Attributes Usability It is the ability of a system to continue to keep operating over time. It is described as how the user is utilizing a system effectively and the ease of which users can learn to operate or control the system. The well-known principle of usability is KISS (Keep It Simple Stupid). Software applications should be user-friendly. Reliability Availability It is the ratio of the available system time to the total working time it is required or expected to function. Portability It is the ability of a software application to run on numerous platforms such as data portability, hosting, viewing, etc., Testability It shows how well the system or component facilitates to perform tests to determine whether the predefined test criteria have been met. Scalability It is the ability of a system to handle the demand for stress caused by increased usage without decreasing performance. Flexibility It is the ability of a system to adapt to future changes .
Software Quality Attributes Reusability The ease with which the product or portions of the product can be reused in the development of other systems Maintainability It is the ability of a software application to maintain easily and support changes cost-effectively. Interoperability It is the ability of two or more systems to communicate or exchange data easily and to use the data that has been exchanged. Performance It is the ability of a system in the form of responsiveness to various actions within a certain period. Security It is the ability of a system to resist or block malicious or unauthorized attempts that destroy the system and at the same time provide access to legitimate users.