/
Software  Process Lecture-2- Software  Process Lecture-2-

Software Process Lecture-2- - PowerPoint Presentation

2coolprecise
2coolprecise . @2coolprecise
Follow
342 views
Uploaded On 2020-06-22

Software Process Lecture-2- - PPT Presentation

Prepared by Ahmed Sabeeh Yousif Phd Student Computer Engineering ampMicroelectronics System Northern Technical University College of Technical Administrative Mousl Department of Electronic Management Techniques ID: 782654

process software activities engineering software process engineering activities framework work quality project tasks required set umbrella product activity figure

Share:

Link:

Embed:

Download Presentation from below link

Download The PPT/PDF document "Software Process Lecture-2-" is the property of its rightful owner. Permission is granted to download and print the materials on this web site for personal, non-commercial use only, and to display it on your personal computer provided you do not modify the materials and that you retain all copyright notices contained in the materials. By downloading content from our website, you accept the terms of this agreement.


Presentation Transcript

Slide1

Software ProcessLecture-2-

Prepared by:Ahmed Sabeeh YousifPhd StudentComputer Engineering &Microelectronics SystemNorthern Technical University College of Technical Administrative/MouslDepartment of Electronic Management TechniquesFourth year

Slide2

Topic coveredSoftware Engineering Layers.

Software Process.Process Framework.Umbrella Activities.Summary.

Slide3

Software Engineering Layers

Software engineering is a layered technology, it can be included four layer : tools, methods, process and quality foucs.

Figure 1.1: Software Engineering Layers

1- The

foundation for software engineering is the

process layer”. The software engineering process is the glue that holds the technology layers together and enables rational and timely development of computer software.

Slide4

Cont.

2- Software engineering “methods” provide the technical how-to’s for building software. Methods encompass a broad array of tasks that include communication, requirements analysis, design modeling, program construction, testing,and support

.

3-

Software engineering

tools” provide automated or semi-automated support for the process and the methods. When tools are integrated so that information created by one tool can be used by another system for the support of

software development

, called

computer-aided software

engineering (CASE).

4-

Bedrock

that supports software

engineering is

a quality

focus. For an

engineering

Perspective, any engineering

fields should must rest

on

on

the quality metric.

Slide5

Software Process

Some fundamental assumption should taken into account:1-Good processes lead to good software. 2-Good processes reduce risk.Risk management: 1-What can go wrong in a software project? 2-How

can the risk be reduced?

Process (general

defintion

)

: A structured set of activities ,action and tasks required to perform any product is to be created. Software process: A

structured set of

activities, action and tasks

required to

perform a

software system.

Slide6

Software ProcessAn

activity strives to achieve high target (e.g., communication with stakeholders) and is applied regardless of the application domain, size of the project, complexity of the effort, or degree of rigor with which software engineering is to be applied.An action (e.g.,

architectural design

) encompasses a set of tasks that produce a major work product (e.g.,

an architectural

model

).A task focuses on a small, but well-defi ned objective (e.g

., conducting

a unit test) that produces a tangible

outcome.

Slide7

Software ProcessIn the context of software engineering, a process

is an adaptable approach that enables the people doing the work (the software team) to pick and choose the appropriate set of work actions and tasks.When building a product it’s important to go through a series of predictable steps. Road map, that help you create a timely, and high-quality resultThe ROAD MAP that you follow is the SW process.

Slide8

Process Framework

A process framework establishes the foundation for a complete software engineering process by identifying a small number of framework activities that are applicable to all software projects, regardless of their size or complexity.The process framework encompasses a set of “umbrella activities” that are applicable across the entire software

process, see figure(2).

umbrella

activities are applied

throughout a

software project and help a software team manage and control progress, quality, change, and risk.

Slide9

Software process

Figure 1.2. Software Process

Slide10

Process Framework

2- Planning: Any complicated journey can be simplified if a map exists. A software project is a complicated journey, and the planning activity creates a "map" that helps guide the team as it makes the journey. The map (called a software project plan) defines the software engineering work by describing the technical tasks to be conducted, the risks that are likely, the resources that will be required, the work products to be produced, and a work schedule.

Slide11

Process Framework

3- Modeling: Whether you're a bridge builder, an aeronautical engineer, a carpenter, or an architect, you work with models every day. You create a sketch of the thing so that you'll understand the big picture-what it will look like architecturally.If required, you refine the sketch into greater and greater detail to better understand the problem.A software engineer does the same thing by creating models to better understand software requirements and the design that will achieve those requirements.

Slide12

Process Framework

4- Construction:This activity combines code generation (either manual or automated) and the testing that is required to uncover errors in the code.5- Deployment:The software (as a complete entity or as a partially completed increment) is

delivered

to the customer who evaluates the delivered product and provides

feedback

based on the evaluation.

Slide13

Umbrella Activities

In the definition of software process ,activities, actions, and tasks resides within a framework or model that defines their relationship with the process and with one another.Software engineering process framework activities are complemented by a number of umbrella activities.The software process is represented schematically in Figure 1.2 ,

Referring

to the figure,

each framework activity is populated by a set of software

engineering actions. Each software engineering action is defined by a task set that identifies the work tasks that are to be completed, the work products that will be produced, the

quality assurance points that will be required, and the milestones

that will

be used to indicate progress

Slide14

Typical umbrella activities include:

Typical umbrella activities include:Software project tracking and control- allows the software team to assess progress against the project plan, take necessary action to maintain the schedule.Risk management- assesses risks

that may affect the outcome of the project or the quality of the product.

Software quality assurance

- defines the activities required to ensure software quality.

Slide15

Typical umbrella activities include:

Technical reviews- uncover and remove errors before they are propagated to the next activity.Measurement- defines and collects process, project, and product measures.Software configuration management

- manages the effects of

change

throughout the software process.

Reusability management- defines criteria for work product reuse and establishes mechanisms to achieve reusable components.Work product production- the activities required to create

work products

such as models, documents, logs, forms, and lists.

Slide16

Summary

Software engineering encompasses process, methods, and tools that enable complex computer-based systems to be built in a timely manner with quality. The software process incorporates five framework activities—communication, planning, modeling, construction, and deployment_that are applicable to all software projects. Software engineering practice is a problem-solving activity

that follows

a set of core principles.