software production 0721330 1 (0721330) lecture 3: dr. samer odeh hanna (phd) office: 318

14
Software Production 0721330 1 (0721330) Lecture 3: Dr. Samer Odeh Hanna (PhD) http://philadelphia.edu.jo/acade mics/shanna office: 318

Upload: rachel-mcdowell

Post on 19-Jan-2018

244 views

Category:

Documents


0 download

DESCRIPTION

Software Production What is a process?  A group of homogeneous tasks that are related together in which an outcome can be identified.  People, equipment, input, methods, and environment that work together to produce output.  The set of activities, methods, and practices that are used in the production and evolution of software.  Set of activities, organized in steps, in order to transform users needs into operational software.  Steps, partially ordered, are in interaction and aim to achieve a goal.

TRANSCRIPT

Page 1: Software Production 0721330 1 (0721330) Lecture 3: Dr. Samer Odeh Hanna (PhD)  office: 318

Software Production 0721330 1

(0721330)Lecture 3:

Dr. Samer Odeh Hanna (PhD)http://philadelphia.edu.jo/academics/shanna

office: 318

Page 2: Software Production 0721330 1 (0721330) Lecture 3: Dr. Samer Odeh Hanna (PhD)  office: 318

Software Production 0721330 2

IEEE Std 1074: Standard for Software Lifecycle

IEEE Std 1074

Project Management

Pre-Development

Develop-ment

Post-Development

Cross-Development

(Integral Processes)

> Project Initiation>Project Monitoring &Control> Software Quality Management

> Concept Exploration> System Allocation

> Requirements Analysis> Design> Implemen- tation

> Installation> Operation & Support> Maintenance> Retirement

> V & V> Configuration Management> Documen- tation> Training

Process Group

Processes

Page 3: Software Production 0721330 1 (0721330) Lecture 3: Dr. Samer Odeh Hanna (PhD)  office: 318

Software Production 0721330 3

What is a process?

A group of homogeneous tasks that are related together in which an outcome can be identified.

People, equipment, input, methods, and environment that work together to produce output.

The set of activities, methods, and practices that are used in the production and evolution of software.

Set of activities, organized in steps, in order to transform users needs into operational software.

Steps, partially ordered, are in interaction and aim to achieve a goal.

Page 4: Software Production 0721330 1 (0721330) Lecture 3: Dr. Samer Odeh Hanna (PhD)  office: 318

Software Production 0721330 4

Processes, Activities and Tasks

Activities are carried out by human agents (team) and are supported by tools.

Agent: physical or virtual entity which is able to act in an

environment, can communicate directly with other agents, has own resources, and carries out activities related to a role.

Role: Describes a set of responsibilities and obligations assumed by an agent.

Page 5: Software Production 0721330 1 (0721330) Lecture 3: Dr. Samer Odeh Hanna (PhD)  office: 318

Software Production 0721330 5

Processes, Activities and Tasks Process Group: Consists of Set of Processes Process: Consists of Activities Activity: Consists of sub activities and tasks

ProcessGroup

Process

Activity

Development

Design

Task

DesignDatabase

Make aPurchase

Recommendation

Page 6: Software Production 0721330 1 (0721330) Lecture 3: Dr. Samer Odeh Hanna (PhD)  office: 318

Software Production 0721330 6

Example The Design Process is part of Development The Design Process consists of the following

Activities Perform Architectural Design Design Database (If Applicable) Design Interfaces Select or Develop Algorithms (If Applicable) Perform Detailed Design (= Object Design)

The Design Database Activity has the following Tasks Review Relational Databases Review Object-Oriented Databases Make a Purchase recommendation ....

Page 7: Software Production 0721330 1 (0721330) Lecture 3: Dr. Samer Odeh Hanna (PhD)  office: 318

UML Class Diagram of the IEEE Standard

Process group

Activity

Work Product

Resource

Task

Process

Money

Time

Participant

producesconsumes

Phase

*

*

**

*

Software life cycle

*

Page 8: Software Production 0721330 1 (0721330) Lecture 3: Dr. Samer Odeh Hanna (PhD)  office: 318

Discussing the process groups of the IEEE standard

Project Management During project management, the project manager

initiates, monitors, and controls the project through the software life cycle.

Project management processes

Page 9: Software Production 0721330 1 (0721330) Lecture 3: Dr. Samer Odeh Hanna (PhD)  office: 318

Project Management

The Project Initiation Process creates the infrastructure for the project.

During this phase, the task plan, schedule, budget, organization, and project environment are defined.

The project environment includes: project standards, communication infrastructure, meeting and reporting procedure, development methodology, and development tools.

Most of the information generated during this process is documented in the Software Project Management Plan (SPMP).

The Project Initiation Process is complete as soon as a stable environment for the project is established.

Page 10: Software Production 0721330 1 (0721330) Lecture 3: Dr. Samer Odeh Hanna (PhD)  office: 318

Project Management

The Project Monitoring and Control Process ensures that the project is executed according to the task plan and budget.

If the project manager observes any deviation from the schedule, he will take corrective action such as reallocating some of the resources, changing procedures, or replanning the schedule. The SPMP is updated to reflect any of these changes.

The Project Monitoring and Control Process is active throughout the lifecycle.

Page 11: Software Production 0721330 1 (0721330) Lecture 3: Dr. Samer Odeh Hanna (PhD)  office: 318

Project Management

The Software Quality Management Process ensures that the system under construction meets the required quality standards (which were selected during Project Initiation).

This process is executed by a separate quality management team to avoid conflict in interest (i.e. the goal of the developers is to complete the system on time, and the goal of the quality management team is to ensure that the system is not considered complete until it meets the required quality standard).

The Software Quality Management Process is active throughout most of the lifecycle.

Page 12: Software Production 0721330 1 (0721330) Lecture 3: Dr. Samer Odeh Hanna (PhD)  office: 318

Pre-Development

During Pre-Development, management and a client identify an idea or a need.

This can be addressed with a new development effort (greenfileld engineering), or a change to the interface of an existing system (interface engineering), or software replacement of an existing business process (reengineering).

The system Allocation Process establishes the initial system architecture and identifies hardware, software, and operational requirements.

The subsystem decomposition is the foundation of the communication infrastructure among the project members.

Page 13: Software Production 0721330 1 (0721330) Lecture 3: Dr. Samer Odeh Hanna (PhD)  office: 318

Pre-Development

The requirements, subsystem decomposition, and communication infrastructure are described in the problem statement, which serves as input for the development process.

The pre-Development processes are depicted in the following table.

Pre-Development Processes

Page 14: Software Production 0721330 1 (0721330) Lecture 3: Dr. Samer Odeh Hanna (PhD)  office: 318

Questions