BIT1073-BISE1083 Software Processes (202409) PDF
Document Details
Uploaded by WorthJasper555
City University Malaysia
2024
Amillia Binti Amid
Tags
Summary
This document appears to be lecture notes on software processes from City University Malaysia, covering topics like the software process model, software crisis, and the software development life cycle (SDLC).
Full Transcript
FACULTY OF INFORMATION TECHNOLOGY BIT1073-BISE1083 Software Engineering Software Process AMILLIA BINTI AMID 202409 Software Process Outline: What is So...
FACULTY OF INFORMATION TECHNOLOGY BIT1073-BISE1083 Software Engineering Software Process AMILLIA BINTI AMID 202409 Software Process Outline: What is Software Process? The Software Process Model. Software Crisis. Software Development Life Cycle (SDLC). SDLC Model. What is Software The Process? term software specifies to the set of computer programs, procedures and associated documents (Flowcharts, manuals, etc.) that describe the program and how they are to be used. A software process is the set of activities and associated outcome that produce a software product. Software engineers mostly carry out these activities. 3 What is Software TheseProcess? are FOUR key process activities, which are common to all software processes such: 1. Software specifications: The functionality of the software and constraints on its operation must be defined. 2. Software development: The software to meet the requirement must be produced. 3. Software validation: The software must be validated to ensure that it does what the customer wants. 4. Software evolution: The software must evolve to meet changing 4 client needs. The Software AProcess software process modelModel is a specified definition of a software process, which is presented from a particular perspective. Models, by their nature, are a simplification, so a software process model is an abstraction of the actual process, which is being described. Process models may contain activities, which are part of the software process, software product, and the roles of people involved in software engineering. Some examples of the types of software process models that 1. A be may workflow model: produced are:This shows the series of activities in the process along with their inputs, outputs and dependencies. The activities in this model perform human actions. 5 The Software Process Model 2. A dataflow or activity model: This represents the process as a set of activities, each of which carries out some data transformations. It shows how the input to the process, such as a specification is converted to an output such as a design. The activities here may be at a lower level than activities in a workflow model. 3. A role/ action model: This means the roles of the people involved in the software process and the activities for which they are responsible. There are several various general models or paradigms of software development: 1. The waterfall approach: This takes the above activities and produces them as separate process phases such as 6 The Software Process Model 2. Evolutionary development: This method interleaves the activities of specification, development, and validation. An initial system is rapidly developed from a very abstract specification. 3. Formal transformation: This method is based on producing a formal mathematical system specification and transforming this specification, using mathematical methods to a program. These transformations are 'correctness preserving.' This means that you can be sure that the developed programs meet its specification. 4. System assembly from reusable components: This method assumes the parts of the system already exist. The system development process target on integrating these parts rather than developing them from scratch. 7 Software 1. Size: Software isCrisis becoming more expensive and more complex with the growing complexity and expectation out of software. For example: the code in the consumer product is doubling every couple of years. Software projects either fail or exceed will have its forecasted budget and duration. 2. Quality: Many software products have poor quality, i.e., the software products defects after putting into use due to ineffective testing 8 technique. For example: Software Software Crisis3. Cost: Software development is costly i.e. in terms of time taken to develop and the money involved. For example: Development of the FAA's Advanced Automation System cost over $700 per lines of code. 4. Delayed never Delivery: Serious schedule 9 Program vs. Software Software is more than programs. Any program is a subset of software, and it becomes software only if documentation & operating procedures manuals are prepared. Softw Documenta are Operating tion Procedures Progr am 1 0 Program vs. Software There are THREE components of the software as follow: 1. Program: Program is a combination of source code & object code. 2. Documentation: Documentation consists of different types of manuals. Examples of documentation manuals are such Data Flow Diagram, Flow Charts, ER diagrams, etc. 1 1 Program vs. Software 3. Operating Procedures: Operating Procedures consist of instructions to set up and use the software system and instructions on how react to the system failure. Example of operating system procedures manuals is installation guide, Beginner's guide, reference guide, system administration guide, etc. 1 2 Software Development Life Cycle (SDLC) A software life cycle model (also termed process model) is a pictorial and diagrammatic representation of the software life cycle. A life cycle model represents all the methods required to make a software product transit through its life cycle stages. It also captures the structure in which these methods are to be undertaken. In other words, a life cycle model maps the various activities performed on a software product from its inception to retirement. 1 3 Software Development Life Cycle Thus, no element which (SDLC) life cycle model is followed, the essential activities are contained in all life cycle models though the action may be carried out in distinct orders in different life cycle models. During any life cycle stage, more than one activity may also be carried out. The development team must determine a suitable life cycle model for a particular plan and then observe to it. A software life cycle model describes entry and exit criteria for each Without software life cycle models, it becomes tough for software phase. A phase can begin only if its stage-entry criteria have been project managers fulfilled. toa monitor So without softwarethe lifeprogress of thethe cycle model, project. entry and exit 1 4 SDLC Phases SDLC phases represents the process of developing software. SDLC framework includes the following steps: 1 5 Stage 1: Planning and Requirement Analysis Requirement Analysis is the most important and necessary stage in SDLC. The senior members of the team perform it with inputs from all the stakeholders and domain experts or SMEs in the industry. Planning for the quality assurance requirements and identifications of the risks associated with the projects is also done at this stage. Business analyst and Project organizer set up a meeting with the client to gather all the data like what the customer wants to build, 1 who will be the end user, what is the objective of the product. 6 Stage 1: Planning and Requirement Analysis Before creating a product, a core understanding or knowledge of the product is very necessary. For example: A client wants to have an application which concerns money transactions. In this method, the requirement has to be precise like what kind of operations will be done, how it will be done, in which currency it will be done, etc. Once the required function is done, an analysis is complete with auditing the feasibility of the growth of a product. In case of any ambiguity, a signal is set up for further discussion. 1 Once the requirement is understood, the SRS (Software Requirement 7 Stage 2: Defining Requirements Once the requirement analysis is done, the next stage is to certainly represent and document the software requirements and get them accepted from the project stakeholders. This is accomplished through "SRS“, Software Requirement Specification document which contains all the product requirements to be constructed and developed during the project life cycle. 1 8 Stage 3: Designing the TheSoftware next phase is about to bring down all the knowledge of requirements, analysis, and design of the software project. This phase is the product of the last two, like inputs from the customer and requirement gathering. 1 9 Stage 4: Developing the In this phase Project of SDLC, the actual development begins, and the programming is built. The implementation of design begins concerning writing code. Developers have to follow the coding guidelines described by their management and programming tools like compilers, interpreters, debuggers, etc. are used to develop and implement the code. 2 0 Stage 5: Testing After the code is generated, it is tested against the requirements to make sure that the products are solving the needs addressed and gathered during the requirements stage. During this stage, unit testing, integration testing, system testing, acceptance testing are done. 2 1 Stage 6: Deployment Once the software is certified, and no bugs or errors are stated, then it is deployed. Then based on the assessment, the software may be released as it is or with suggested enhancement in the object segment. After the software is deployed, then its maintenance begins. 2 2 Stage 7: Maintenance Once when the client starts using the developed systems, then the real issues come up and requirements to be solved from time to time. This procedure where the care is taken for the developed product is known as maintenance. 2 3 SDLC Model Software Development Life Cycle (SDLC) is a spiritual model used in project management that defines the stages include in an information system development project, from an initial feasibility study to the maintenance of the completed application. There are different software development life cycle models specify and design, which are followed during the software development phase. These models are also called "Software Development Process Models." Each process model follows a series of phase unique to its type 2 4 SDLC Here, are some modelModel for SDLC: 2 5 Software Process Q& A Software Process Slide References: https://www.javatpoint.com/ https://www.estimancy.com/