Requirements Analysis

Menchita F. Dumlao
18 Sept 202233:38

Summary

TLDR本视频讲座深入探讨了系统设计与实施中的需求工程过程,包括问题领域分析、需求获取、需求捕获、需求验证与需求沟通管理等关键步骤。强调了与客户有效沟通的重要性,并介绍了多种方法如访谈、焦点小组、原型制作等,以确保软件开发团队能够准确理解和实现客户的真实需求。同时,还讨论了需求工程的最佳实践,如优先级排序、原型开发和需求验证,以提高项目成功率和客户满意度。

Takeaways

  • 🔍 需求工程过程是系统设计和实现的关键部分,包括问题分析、需求引出、需求捕获、需求验证和需求沟通管理。
  • 🤝 与客户进行有效沟通对于理解他们的需求至关重要,可以通过访谈、数据分析、小组讨论等方法进行需求引出。
  • 📊 问题分析是识别客户实际问题的过程,有助于找到合适的软件解决方案。
  • 📝 需求捕获涉及使用用例等工具来详细描述系统应执行的功能和过程。
  • 🔎 需求验证确保需求的完整性、一致性和可追溯性,以及系统是否能够解决预定的问题。
  • 📋 需求沟通和管理要求有良好的文档记录,包括创建正式的系统需求规格说明书,并采用版本控制策略。
  • 🌟 成功的需求工程过程包括域分析、模型开发、原型制作和反馈循环,以确保系统满足客户的实际需求。
  • 💡 通过故事讲述、情境模拟和原型展示等非正式方法,可以更好地理解客户的真实情况和需求。
  • 🔄 在需求分析中,要考虑不同的情景,包括正常、异常和失败条件,以确保系统的健壮性。
  • 👥 涉及多方利益相关者时,应组织焦点小组讨论或会议,以收集和理解多样化的需求。
  • 📈 进行需求分析时,应优先考虑需求,分配项目资源,并使用最佳实践来提高规格说明书的质量。

Q & A

  • 需求工程过程包括哪些主要活动?

    -需求工程过程主要包括问题领域分析、需求引出、需求捕获、需求验证和需求沟通与管理。

  • 问题领域分析的目的是什么?

    -问题领域分析的目的是理解客户的真实问题,以便找到相关和适当的解决方案,为软件开发过程提供帮助。

  • 需求引出是如何帮助软件开发团队的?

    -需求引出通过访谈、数据分析等方法帮助团队识别和描述客户想要的功能,从而更好地理解客户的需求。

  • 在需求捕获阶段,使用案例的作用是什么?

    -使用案例通过简短的叙述描述系统应执行的过程、活动或功能,帮助确定系统应采用的流程。

  • 需求验证的目的是什么?

    -需求验证的目的是检查和确保需求的正确性、完整性、一致性,并确保系统能够解决预定的问题。

  • 需求沟通与管理中,文档的作用是什么?

    -文档在需求沟通与管理中的作用是记录需求,确保所有相关方都能访问和理解需求,同时便于需求的追踪和管理。

  • 在需求工程中,如何识别和处理异常情况?

    -通过分析不同用例的条件,识别正常、异常和失败场景,并为每种情况制定相应的处理策略。

  • 为什么需求工程过程中的原型开发是一个好的实践?

    -原型开发允许客户和团队直观地体验系统,提供反馈,从而在早期阶段发现并改进需求。

  • 需求工程中的最佳实践包括哪些方面?

    -最佳实践包括涉及客户和用户、识别所有可能的需求来源、分配技能娴熟的项目管理人员和团队成员、提供规格说明书模板和例子以及优先级需求。

  • 如何确保需求的可追踪性?

    -通过建立追踪性矩阵,确保需求与工作产品之间的链接清晰,并在项目过程中维护这些链接。

  • 需求工程过程中,版本控制策略的重要性体现在哪里?

    -版本控制策略确保需求文档的更新和变更得到有效管理,便于团队成员和客户了解当前使用的是哪个版本。

Outlines

00:00

🔍 需求工程过程概述

本段介绍了需求工程过程的重要性,它是系统设计和实现课程的一部分。需求工程过程包括问题领域分析、需求引出、需求捕获、需求验证和需求沟通与管理。这些活动、程序和系统分析师或软件开发团队的主要关注点是为了收集有助于系统设计的信息。特别强调了理解客户的真实问题对于软件开发过程的重要性,并且问题领域分析与需求分析紧密相关。

05:02

🤝 需求引出与沟通

这一部分讨论了需求引出的过程,即帮助人们识别和描述他们想要的东西。这包括与客户的沟通,如面试、数据分析、团队建设、焦点小组讨论、头脑风暴和网络搜索。还提到了将客户的需求和故事转化为技术文档的过程,以及如何将这些非技术性的语言转换为系统设计所需的对象、动词、形容词和流程。

10:03

📝 需求捕获方法

本段详细介绍了需求捕获的方法,特别是用例的使用。用例是描述系统应执行的过程或功能的短叙述。用例应该从动词开始,表示功能或关系,而不是对象。用例在不同抽象级别上出现,包括宏观层面和微观层面。此外,还讨论了用例的不同场景,包括正常场景、异常场景和失败场景,以及如何在需求分析中发现这些场景。

15:05

🚀 需求工程最佳实践

这一部分强调了需求工程中的最佳实践,包括涉及客户和用户的参与、识别所有可能的需求来源、分配熟练的项目管理人员和团队成员、提供规格模板和例子以及优先考虑需求。这些实践有助于提高规格质量,维持与利益相关者的良好关系,并更好地满足客户需求。

20:08

🔗 需求验证与沟通管理

本段讨论了需求验证的重要性,包括检查内部和外部需求的一致性、完整性、可追溯性和正确性。需求沟通和管理部分强调了记录需求、创建正式的系统需求规格说明、建立需求追溯标准和使用版本控制政策的重要性。这些步骤有助于确保需求的清晰传达和有效管理。

Mindmap

Keywords

💡需求工程

需求工程是系统分析和软件开发过程中的一个关键部分,涉及问题领域分析、需求获取、需求捕获、需求验证和需求沟通与管理等活动。它是系统分析师或软件开发团队为了设计系统而必须集中精力收集信息的过程。

💡问题领域分析

问题领域分析是指理解客户真实问题的过程,这对于软件开发过程至关重要,因为它能帮助找到相关和适当的解决方案。

💡需求获取

需求获取是与客户沟通以识别和描述他们所需系统的过程。这包括访谈、数据分析、小组促进和联合应用开发等方法。

💡用例

用例是描述系统应执行的某些过程、活动或功能的短篇叙述。它们以动词开头,关注功能需求,并在不同抽象层次上展现。

💡功能需求

功能需求是指系统应该完成的具体功能或任务,例如可靠性、用户友好性等。它们是系统设计中必须实现的核心功能。

💡非功能需求

非功能需求是指系统的性能特征或质量标准,如系统应具备的可靠性、性能、安全性等,它们不直接关联具体的功能实现。

💡场景

场景是指用例中可能发生的不同情况,包括正常场景、异常场景和失败场景。它们帮助开发者理解在不同条件下系统应如何响应。

💡需求验证

需求验证是检查和确保收集到的需求是否正确、完整、一致,并能满足用户真实需求的过程。

💡需求管理

需求管理涉及需求的记录、追踪、存储和版本控制,确保需求在整个项目生命周期中的清晰沟通和有效管理。

💡最佳实践

最佳实践是指在需求工程过程中应遵循的高效、有效的方法和技巧,以提高规格说明书的质量并满足客户需求。

Highlights

需求工程过程是系统设计和实施的关键部分,包括问题分析、需求获取、需求捕获、需求验证和需求沟通与管理。

问题领域分析有助于软件开发过程,通过理解客户的真实问题来找到相关和适当的解决方案。

需求获取是帮助人们识别和描述他们想要的东西的过程,这通常涉及访谈和数据分析。

需求捕获可以通过用例来完成,用例是描述系统应执行的功能或过程的简短叙述。

用例应该从宏观层面到微观层面不同抽象级别进行分析,关注企业的功能需求。

需求验证是检查需求是否正确无误的重要任务,包括识别缺陷、问题或其他缺陷。

需求沟通和管理涉及记录需求、创建正式的系统需求规格说明书,并建立需求追踪的标准。

需求工程过程中,原型开发是连接软件开发者和客户的好方法,可以提供实际使用体验。

需求工程的成功实践包括涉及客户和用户、分配适当的项目资源、提供规格模板和例子以及优先考虑需求。

需求分析和工程中的一个挑战是将客户的故事和技术文档转换,需要识别相关的对象、动词、形容词等。

在需求获取过程中,需要识别和描述客户想要的新系统,这可能涉及小组促进、联合应用开发和焦点小组讨论。

需求工程过程中,需求假设是对未来可能发生的情况的预测,需要通过系统开发进行验证。

在处理遗留系统时,需求获取应关注操作问题、变更和识别政治及其他难以解决的问题。

需求工程的一个关键活动是识别和记录客户的个人故事,这些故事有助于理解客户的实际生活情况。

在需求分析中,应该识别和记录不同的用例和场景,包括正常情况、异常情况和失败情况。

需求工程过程中,最佳实践包括优先考虑需求、开发补充模型和原型、维护可追溯性矩阵以及进行同行审查。

需求工程的成功实践还包括需求质量保证,确保需求的一致性、完整性和可追溯性。

Transcripts

play00:01

foreign

play00:09

and in this video

play00:11

I will be discussing requirements

play00:14

Engineering Process

play00:16

and this is a part of our lecture in

play00:18

systems design and implementation

play00:23

or basic

play00:24

base and advanced systems design and

play00:27

implementation

play00:29

so this is primarily like second or

play00:31

third part of our lecture and this is

play00:35

all about requirements Engineering

play00:37

Process which is one of the crucial part

play00:41

of systems

play00:46

foreign

play00:55

situation of your customers

play00:59

so

play01:01

the requirements Engineering Process is

play01:03

composed of problem domain analysis

play01:06

requirements elicitation

play01:08

requirements capture

play01:11

requirements validation and requirements

play01:15

communication and management so all of

play01:19

this faces comprises all of the

play01:22

activities

play01:24

procedures and

play01:28

that a systems analyst or group of

play01:32

software development team has to

play01:35

concentrate primarily to be able to

play01:38

gather information that will help in the

play01:41

design of

play01:43

systems being developed

play01:50

analysis requirements solicitation

play01:52

requirements capture requirements

play01:55

validation

play01:57

and then requirements communication and

play01:59

management and we will try to discuss

play02:03

all of them one by one

play02:07

so let's first look into problem domain

play02:10

analysis understanding the real problem

play02:12

with your customer

play02:14

is a big help to the software

play02:17

development process it's because in that

play02:21

way we will be able to First find a

play02:25

relevant and appropriate solution of

play02:27

assertive

play02:29

department or

play02:31

so the problem domain analysis is also

play02:35

related to your requirements analysis

play02:37

it's because

play02:38

the problem itself will tell you what

play02:42

are the requirements which has to be

play02:44

collected to be understood and to be

play02:47

implemented to be able to have a good

play02:50

software design

play02:52

which is a foundation for requirements

play02:54

and visitation capture analysis and

play02:57

Designs we all know we have to fully

play03:00

understand the real problem and in fact

play03:03

during the requirements analysis phase

play03:05

that is also

play03:12

will discover

play03:14

accidentally or intentionally some

play03:17

problems which are related to your

play03:19

software development and also some

play03:22

problems which might not be related to

play03:24

your software development

play03:26

so what is requirement elicitation so in

play03:29

our

play03:31

set of materials there is a paper

play03:34

wherein

play03:36

um

play03:37

we are required to do some paper

play03:39

analysis and that is requirements

play03:41

exhibition it's a paper published and a

play03:44

referee and published paper on

play03:48

requirements solicitation

play03:50

and it deals with

play03:54

what is really the relationship okay

play03:57

between customers and the software

play03:59

developer so we fully need to understand

play04:02

how to properly communicate between our

play04:07

customers so as a software developer

play04:09

what are really the the relationship

play04:12

so that comprises

play04:15

of some of the important discussions on

play04:18

requirement in sedation

play04:20

so it is a process in which people will

play04:24

help you are going to help people

play04:28

identify and describe what they want

play04:33

so that's why we need to have some

play04:35

source of interview and also some data

play04:39

analysis sometimes you need to go to the

play04:43

um

play04:43

to the company to be able to help them

play04:48

understand

play04:50

what are really the problem that exists

play04:52

in the company because sometimes they

play04:55

really don't know what are their

play04:56

problems okay they just need

play04:59

um to make their life easier and they

play05:01

want maybe something new in their

play05:03

day-to-day work but to specifically

play05:06

identify

play05:09

uh micro problems I think that is not I

play05:15

mean your your

play05:16

people in the company is not capable of

play05:20

doing that

play05:22

so that's why you should have uh you

play05:26

should link okay your systems

play05:29

Development Goal to the system or

play05:31

Enterprise go

play05:34

you can do all of this by doing all

play05:37

these things okay so these are some of

play05:40

the processes that uh

play05:43

you can perform to be able to identify

play05:46

and describe what your customers want

play05:51

the new system so that's group

play05:53

facilitation so it can be judged or

play05:56

joint application development so this is

play05:58

a process where in

play06:00

developing the system to get

play06:04

to give K so it means you're going to

play06:06

the company sometimes you're doing some

play06:08

interview or doing some consultation

play06:11

from time to time

play06:12

and then another is assembly or jigsaw

play06:15

group of its Enterprise participants

play06:17

that represents diverse Enterprise

play06:20

stakeholders or Community interests so

play06:23

sometimes you need to do some focus

play06:26

group discussions or meetings with the

play06:30

whole group or small groups to be able

play06:32

to fully understand their individually

play06:37

okay that's why you need to do some

play06:39

individual interview or group interview

play06:41

and then brainstorming brainstorming and

play06:45

idea generation so your customers can

play06:48

also help you the design

play06:51

um not because they are good in systems

play06:53

design but of course they will help you

play06:56

to fully identify

play06:59

um the things that they want to put into

play07:01

the system or the things that they don't

play07:03

want to put or they don't want to see on

play07:06

the system and then search the web and

play07:09

demonstrate similar system so I think

play07:11

this is one of the easiest way to

play07:15

communicate your customer which is like

play07:17

showing a system which has been used by

play07:20

other companies

play07:21

or like

play07:23

um let's say you're going to develop a

play07:26

particular database or an Erp for a

play07:30

certain company so it's better for them

play07:33

for you to show them what is an ARB or

play07:37

show an a real life system or a live PRP

play07:41

being used by another

play07:44

can describe and explain to them how

play07:46

this is being used and ask them if that

play07:50

is really the one that they want to

play07:52

develop for your system or the one that

play07:54

they want to use

play07:57

so we can say that requirements

play08:00

again as a stories

play08:06

personal stories

play08:09

um personal experiences of your

play08:11

customers or clients on their milestones

play08:15

and their jobs

play08:18

it's really even harder if you're going

play08:21

to develop a system that you start from

play08:23

the scratch like from

play08:29

semi computerized to a fully automated

play08:32

Erp so that's going to be quite

play08:36

challenging and that's why you need to

play08:38

listen to their stories okay so you have

play08:42

to carefully Chuck down a record

play08:45

identify

play08:47

related objects verbs as relations

play08:51

adjectives as attributes recipes or how

play08:55

to's as processes storyline as workflow

play08:58

so that is how we convert okay those

play09:03

layman's terms that your

play09:06

here your clients have told you as their

play09:09

personal story you have to convert them

play09:13

into

play09:14

technical

play09:16

document as I can say like stories

play09:21

so you can convert the different nouns

play09:24

as objects and the verbs as the

play09:27

relationship

play09:28

the adjectives as the attributes for

play09:31

your database and recipes like

play09:34

the processes that's being done or how

play09:37

to's and convert them to your workflow

play09:40

so basically it's

play09:42

understanding the real life situation of

play09:46

client

play09:48

converting them

play09:51

in the biograms okay or those diagrams

play09:54

that we use in systems design okay and

play09:57

stories can also be organized

play10:00

through storyboard

play10:02

okay

play10:03

and then there is also some informal

play10:07

method just like post it on the wall

play10:11

and also prototypes or mock-ups as

play10:14

interlinked connection of web and pages

play10:17

and we can also say that requirements

play10:19

are also hypothesis

play10:22

like for example you you didn't meet yet

play10:26

people in the company but you know

play10:33

they have a hypothesis like okay this is

play10:36

what is supposed to happen this is

play10:39

supposed to be the the process of

play10:40

enrollment just like in another

play10:42

University

play10:43

okay but you do you have to do some

play10:45

verification because not all for example

play10:48

in the case of universities not all

play10:51

universities have the same process

play10:54

they like State University might have

play10:56

might have some similarity but even if

play11:00

they are all state universities uh they

play11:03

are really not the same and the same

play11:05

with private universities

play11:07

so you have to do some verification

play11:09

through system development and validate

play11:12

okay by implementation

play11:15

and then illiciting requirements when

play11:17

enhancing Legacy systems

play11:19

are these advocating requirements

play11:22

for one focus on operational problem

play11:25

terrible change

play11:27

seek to identify political and other

play11:29

unsolvable problems

play11:32

under eliciting requirements

play11:38

like you have to determine the cop if

play11:40

customers or users recognize the problem

play11:44

and solution opportunity okay and then

play11:48

you need to conduct survey and

play11:49

assessment of current vendor or

play11:52

competitor

play11:53

which are doing the same product

play11:56

and also Advocate moderation and

play11:59

feasibility analysis you have to assess

play12:02

if

play12:03

my the plan that you're going to do for

play12:06

a certain company could be visible in

play12:09

many ways like for example budget and

play12:13

okay so let's discuss requirements

play12:15

capture how are you going to capture the

play12:19

exact requirements so this is

play12:21

particularly the requirements for

play12:23

systems development or the requirements

play12:26

which are supposed to be implemented in

play12:29

your system okay or people specific

play12:34

Ally so let's discuss use case

play12:37

what is the use case so these are short

play12:39

narratives describing some processes

play12:42

activity or function that identifies

play12:45

system

play12:46

an Enterprise System should perform

play12:49

okay so you need to identify what are

play12:51

the processes that should take place

play12:54

and what are the processes that the

play12:56

system should adopt

play12:58

okay so use cases lead with a verb or

play13:01

action word that denotes functions or

play13:05

relations but not object

play13:08

okay

play13:09

so use cases we can say determining

play13:14

of different

play13:16

processes

play13:20

that should be done

play13:22

okay so you have to look for the verb

play13:25

that's involved in

play13:28

a certain

play13:30

process in a particular organization

play13:34

okay and then cases will Arise at

play13:37

different levels of abstraction like for

play13:40

example in top level so it's like a

play13:42

macro picture

play13:44

while the mid-level and groupings are

play13:46

low level so we can say that's the micro

play13:49

micro means the very specific processes

play13:52

so you have to look from top to bottom

play13:56

okay from the macro level to the micro

play13:58

level

play13:59

cases should focus on functional

play14:02

requirements of the Enterprise okay so

play14:05

what are the functional requirements

play14:09

so what are the functions that needs to

play14:11

be done to be able to complete complete

play14:13

the whole workflow

play14:15

how about then functional requirements

play14:18

so these are for example these are

play14:21

reliability

play14:22

Focus news user friendly okay those are

play14:26

non-functional okay it means you still

play14:28

need that I mean we still need to to

play14:32

find it in your system but those are

play14:35

things that cannot really be identified

play14:39

should happen in a particular

play14:43

color okay and that's why we say they

play14:45

are not part of the use case

play14:49

and then when you identify the different

play14:53

processes or use cases then another

play14:57

thing that we need to do is

play15:01

see the different scenarios for issues

play15:04

okay there are normal scenario or

play15:08

typical scenario

play15:11

but there are also exceptional scenario

play15:15

and there are also failure scenarios

play15:20

so there are different scenario in

play15:22

particular use case

play15:25

in a particular use case

play15:27

um

play15:30

student requests for example I'm talking

play15:32

about your

play15:34

environment system

play15:35

so one of the use cases uh students

play15:38

request

play15:43

request that students are doing in a

play15:46

particular student portal for example

play15:48

adding subjects

play15:51

changing adding changing subjects

play15:53

requests for tutorial what else for

play15:57

example request for Activation in your

play16:00

system

play16:02

what else

play16:03

enlistment okay so there are a lot of

play16:06

scenario and in each scenario there are

play16:10

different conditions

play16:11

okay I'm in use case I mean in different

play16:13

use cases there are different conditions

play16:16

okay and that is like normal so normal

play16:18

typical scenario or scenario which

play16:21

follows

play16:23

the rule or the steps okay okay for

play16:26

example one student is going to enlist

play16:29

so

play16:31

um let's say the the default process is

play16:35

like if you click enlistment he will see

play16:40

um all the subjects

play16:42

that he needs

play16:44

needs in accordance to his year level

play16:48

and to his

play16:51

um

play16:52

program let's say ID so if I'm second

play16:55

year ID and it is second trimester or

play16:58

third trimester so if I click enlist I

play17:01

will see all the subjects enrolled for

play17:04

let's say I'm second year for second

play17:06

year

play17:07

third trimester in vsip so there are six

play17:11

subjects but what are the exceptional

play17:14

conditions okay for example you have to

play17:17

discover something like this okay which

play17:20

you need to do in the requirements

play17:21

analysis what if the student is not a

play17:25

regular student

play17:26

belong in a blog section

play17:28

so it means

play17:30

irregular students

play17:32

and then when he saw all the six

play17:34

subjects he said I think I already

play17:37

enrolled this one I think it115 I

play17:40

already took that I finished that so why

play17:43

is it still displayed here

play17:45

so if that happens the system needs

play17:49

another

play17:52

another maybe another module okay or

play17:55

another

play17:56

tab in your system which will ask the

play18:00

students are you a regular or a regular

play18:03

student

play18:04

or maybe

play18:05

uh

play18:12

another way or another button to request

play18:15

for advisement

play18:18

okay

play18:19

so it means that particular student

play18:22

needs his program chair to advise him

play18:26

for subjects to be involved because the

play18:29

subjects displayed in the portal is not

play18:33

appropriate for that student because

play18:36

only

play18:38

the regular students can enroll those

play18:41

which are in the quarter so that's

play18:43

exceptional condition

play18:45

so you have

play18:47

to try to discover what are the

play18:49

exception exceptional scenarios in a

play18:52

particular use case

play18:54

what about failure conditions so how to

play18:57

handle events or data that should be

play18:59

detected and prevented and how the

play19:01

system Enterprise should respond to user

play19:04

to usage problems that end user

play19:09

so this is very common among the use of

play19:13

Erp

play19:14

okay for example

play19:17

um

play19:18

in my experience when we developed that

play19:21

system we put some validation for

play19:24

example you cannot enroll if you have

play19:27

not submitted

play19:29

your if you have that finished your

play19:34

psychological interview or it means the

play19:37

guidance interview okay I have not

play19:40

submitted that I have not done my

play19:42

guidance interview

play19:43

I was first here and now I'm second here

play19:46

okay

play19:47

so when I enrolled in second trimester I

play19:50

cannot I cannot see

play19:52

and there is an error message there

play19:55

you are tagged okay by the guidance

play19:59

counselor and you cannot enlist

play20:02

because you are tagged to First

play20:08

schedule a certain guidance counselor

play20:12

interview

play20:13

okay

play20:16

so that's one kind of failure conditions

play20:18

and

play20:20

what is our in our experience students

play20:24

can handle that because

play20:26

of the system doesn't have anything

play20:30

to to do with it because the system

play20:34

doesn't tell the student how to solve

play20:36

that problem

play20:37

okay there's no interface there's no

play20:40

button

play20:41

telling the student if you have that or

play20:43

if you want

play20:45

okay if you want to clear this tagging

play20:47

you have to click this button

play20:50

okay there's no nothing like that

play20:53

so that's one thing that should be

play20:55

solved in the system and that's one

play20:56

thing you have to see

play20:59

and in the real life is students just

play21:02

uh send email to any to just anyone they

play21:05

don't know where to send email sometimes

play21:08

they send email to their teacher

play21:09

sometimes they send email to me

play21:13

because my

play21:14

my email address is posted in

play21:17

PW

play21:19

website

play21:21

so that's why my email is flooded with

play21:23

many

play21:25

um

play21:26

customer complaints but I'm not the one

play21:30

to get that okay that was before

play21:33

so that particular failure condition

play21:34

should be

play21:36

um

play21:37

I mean you should be able to imagine

play21:39

that okay you should be able to foresee

play21:41

that okay

play21:48

okay so I'm going to show you

play21:51

um the best practices

play22:02

so these are the best practices

play22:05

okay

play22:08

in your requirements analysis

play22:11

okay

play22:12

so you have to identify the different

play22:15

Focus area like knowledge resources

play22:18

processes

play22:20

what are the Press what are the best

play22:22

practices

play22:24

so for example involve customers and

play22:26

users

play22:27

through requirements analysis and

play22:30

identify cons and console all likely

play22:33

sources of requirements

play22:37

assign skilled projects managers and

play22:40

team members

play22:42

allocate 13 to 15 percent to 30 15 to 30

play22:45

percent of total project effort

play22:48

to re and provide specification

play22:51

templates and examples and prioritize

play22:55

requirements so it's a process name okay

play22:58

and you can see here the cost of

play23:00

introduction and cost of application and

play23:03

the key benefits

play23:05

so if you invoke customer and users to

play23:08

re

play23:09

you're going to have better

play23:11

understanding of the real means so they

play23:13

should be there identify and consult all

play23:16

likely sources of requirements it

play23:19

um

play23:20

even if there is

play23:24

a science skilled project managers and

play23:26

team members for re so it means in your

play23:29

team

play23:31

there is one I mean one group of uh Team

play23:36

or in a particular team there's one

play23:38

group who is specialized in re

play23:42

so you could expect more predictable

play23:44

performance and allocate 50 to 30

play23:47

percent of total project effort so it

play23:49

maintained high quality specification

play23:51

through the project

play23:52

and then provide specification and

play23:54

templates example so key benefit is

play23:58

improve quality of specification and

play24:01

also maintain good relationship with

play24:03

stakeholders so it's better satisfy

play24:07

customer needs if you can maintain good

play24:10

relationship then your customer will be

play24:12

able to be more open more open Intel in

play24:16

their needs how about in the processes

play24:19

prioritize requirements so the key

play24:21

benefit is focus attention to the most

play24:24

important customer

play24:26

need process develop complementary

play24:28

models together with prototypes

play24:30

so it eliminates specification

play24:32

ambiguities and consistencies and then

play24:35

also maintain a traceability matrix

play24:38

explain link between the requirements

play24:40

and word products and another use peers

play24:43

peer reviews scenarios and walkthroughs

play24:47

to validate and verify requirements and

play24:51

then more accurate specification and

play24:53

higher customer

play24:55

satisfaction so I have here another

play24:57

diagram here this is a successful

play25:01

requirements Engineering Process okay

play25:04

it's because you know when we do

play25:07

requirements analysis

play25:09

most of software development have to

play25:12

introduce new ways of doing things so

play25:15

you are going to do business process for

play25:17

engineering or you need to re-engineer

play25:19

the way people in the company do their

play25:21

job to shorten for example to shorten

play25:24

the process or they make the process

play25:26

more efficient so this is the diagram

play25:28

showing the

play25:30

successful requirements Engineering

play25:32

Process

play25:33

so you have here the application domain

play25:37

and in here the compilation of

play25:40

specification

play25:42

so the domain analysis here is your

play25:45

domain knowledge

play25:46

such as develop basic and advanced

play25:49

models and then develop prototypes so as

play25:52

you can see in here prototype is really

play25:54

a good one of the good practices in

play25:56

requirements engineering

play25:58

so your application domain here has your

play26:01

system artifacts and Source materials

play26:06

developing your model so you need to be

play26:09

a review with your customers and your

play26:11

your team and then get the feedback of

play26:15

your customers and then compile all

play26:19

their

play26:20

comments and suggestions and then

play26:23

scenario walkthrough in which it's

play26:26

really important to have a prototype so

play26:29

that you can see how they use it how

play26:32

they feel to use it and the personal

play26:33

experiences and real life experiences in

play26:36

using the Prototype really pays value

play26:38

development and then develop prototype

play26:41

and mock-ups okay

play26:45

so here is the paper

play26:49

so here's the paper that I uploaded

play26:52

so this is from elsevier information and

play26:55

software technology Journal

play26:57

and this is our requirements engineering

play27:00

making connection between software and

play27:03

develop software developer

play27:06

and so this paper

play27:08

is quite old but I think this is like a

play27:11

leadership paper image it gives you many

play27:15

real life experiences on how you can

play27:17

connect us us as a team to your clients

play27:23

okay

play27:26

here

play27:28

it investigates key players

play27:31

and the rules in the company and along

play27:34

with existing methods and obstacles and

play27:37

requirements solicitation so

play27:40

you are going to read here the different

play27:42

Key activities and methods for gathering

play27:46

information

play27:47

so you're going to see some examples on

play27:49

how to gather information as well as

play27:52

different approaches and ideas for

play27:55

improving transfer and record of

play27:57

information

play27:59

okay and this paper can also be your

play28:03

guideline okay for engineering for

play28:06

re-engineering a particular systems

play28:12

so please read on this as part of our uh

play28:16

lecture because I'm going to ask you to

play28:18

submit a PowerPoint presentation for

play28:21

this paper so

play28:25

it's a lecture for this

play28:29

let's continue

play28:31

so we have to do again another part of

play28:35

our requirements analysis and

play28:37

Engineering is requirements validation

play28:40

okay how we're going to test the

play28:42

requirements so this is a part of uh

play28:45

important tasks in requirements analysis

play28:48

so you have to check

play28:55

and do that and discussion of system

play28:57

requirements inspectors take on

play29:00

different roles and reviewing inspectors

play29:03

in one role post questions that either

play29:06

sound to be answered by available system

play29:08

requirements or from other inspectors

play29:10

acting in other roles and then gaps have

play29:14

to identify the gaps and answered

play29:16

questions or other defects and

play29:18

requirement specification deliverables

play29:21

so that's one of the most important in

play29:23

deliverables so you have to identify

play29:26

who participated what time

play29:31

we ask what defects are unexpected

play29:35

findings were found

play29:36

and what are the opinions and what

play29:39

actions are needed to improve the

play29:41

quality

play29:42

how about requirements analysis

play29:44

requirements quality assurance or in

play29:48

other words requirements verification

play29:49

yeah

play29:53

traceability and correctness okay

play29:57

consistency things are named a

play30:00

referenced in a unique predictable and

play30:02

ambiguous model

play30:04

so complete use cases are interrelated

play30:07

of course each has multiple scenarios

play30:10

and identify the different scenarios

play30:12

everything name or reference is

play30:14

accounted for it

play30:15

least one case use case or scenario and

play30:18

then traceability everything in which

play30:20

picture is accounted for which use case

play30:22

and correct is at is everything in order

play30:26

so you have to check the internal and

play30:28

external

play30:29

so internal requirements are cons it

play30:32

should be consistent complete traceable

play30:34

and the system appears to solve the

play30:37

problem it is supposed to

play30:39

and it should be obtainable about

play30:41

external the system this does what it is

play30:44

supposed to and this is nothing more or

play30:47

less okay

play30:49

now how about requirements communication

play30:51

and management how are you going to

play30:52

communicate that among your groups and

play30:55

among the clients

play30:57

so you have to document the requirements

play31:00

okay you have to have

play31:03

a thing on file okay so create a formal

play31:07

system requirement specification and

play31:10

that's one you have to submit

play31:12

establish criteria for requirement

play31:14

traceability be able to

play31:18

collect hyperlink you can do that and

play31:20

browse analysis design implementation

play31:23

and other life cycle documents to the

play31:25

originating system requirements so this

play31:27

is part of your documentation manage and

play31:30

start manage the storage and evolution

play31:32

of system require

play31:34

both system require

play31:37

D in ways that they can be remotely

play31:38

browsed and update via Version Control

play31:41

policy okay so I tell you I'm one of the

play31:45

challenging part is that you need to

play31:48

have this Version Control policy because

play31:51

of so many versions that you updated you

play31:53

have to make it create a very clear to

play31:55

understand of what version is currently

play31:58

okay because this is something that you

play32:01

are going to use to communicate with

play32:04

your clients so you have to do

play32:06

you have to have a good technical report

play32:12

okay

play32:13

so I'm not going to make it an

play32:15

assignment because

play32:17

um you are going to implement those

play32:19

things that we have discussed those are

play32:22

the different

play32:24

um insights that you can use to be able

play32:27

to do your systems design and Analysis

play32:30

and that is why

play32:33

um in the next activities in

play32:36

case and you already have your grouping

play32:38

I hope that by next week you can present

play32:43

um your paper or I mean you can present

play32:45

your title

play32:47

and then also

play32:50

um do some planning for your

play32:52

requirements analysis and then submit

play32:55

your

play33:01

meteor so these are all uploaded in our

play33:03

portal in our Google Classroom so thank

play33:06

you very much for listening to our video

play33:08

and I hope that you were able to

play33:13

um

play33:13

get some good ideas

play33:20

with project to be able to create a

play33:22

group

play33:24

that's all for this video

play33:27

thank you very much

Rate This

5.0 / 5 (0 votes)

Related Tags
需求工程系统设计实施流程问题域分析需求搜集验证管理沟通协作软件开发最佳实践教育讲座
Do you need a summary in English?