Problem:

Based on information contained in this chapter and your own experience, develop “10 commandments” for empowering software engineers. That is, make a list of 10 guidelines that will lead to software people who work to their full potential.

Answer:

Ten Commandments for software people who lead to do their work with full potential.

We should focus on to “get smarter (provide education)”.

We should “focus on quality”.

We are aware of “listen to the customer’s requirements”.

We should be capable to “Understand the problem”

We should have a sound commitment of “work within a repeatable process”.

“Don’t agree with ridiculous schedules”.

We must have the knowledge on “complete details of the product, it’s processing and our knowledge on the product”.

“Document the work in the most effective way”.

We should remember that,“ others will also work on the software”.

We should focus on “continuous updation of process”.

Problem:

The Software Engineering Institute’s People Capability Maturity Model (People-CMM) takes an organized look at “key practice areas” (KPAs) that cultivate good software people. Your instructor will assign you one KPA for analysis and summary.

Answer:

The basis of the people management capability maturity model implements human resources best practices and orgazational development methodologies as its basic pattern KPA.

The People management capability maturity model framework:-

Level

Maturity

KPA

1

Initial

An Organization should focus on to improve its software process.

2

Repeatable

Work environment staffing, training, compensation

3

Defined

Organization process focus,

Integrated software Management,

Skill analysis,

work force planning,

career development

4

Managed

Quantitative Process Management

Software Quality Management

5

optimizing

Personal competency development,

Coaching,

Continuous word force innovation.

In the above KPA requirements that are unique to the PCMM framework.

Problem:

Describe three real-life situations in which the customer and the end user are the same. Describe three situations in which they are different.

Answer:

If we considered as customer and the end-user are same person, then we consider below factors.

(1) A person who must develop a program for personal use, he/she may think about their requirement.

(2) A business person creating a spreadsheet model for his/her personal use;

(3) An entrepreneur who has a new concept for a Web App.

If we considered as customer and the end-user are Different persons then developer must consider below factors:

(1) An Information System department servicing the some business function;

(2) A software development group servicing marketing needs;

(3) A contractor building to customer specs.

Problem:

The decisions made by senior management can have a significant impact on the effectiveness of a software engineering team. Provide five examples to illustrate that this is true.

Answer:

The decisions made by senior management can have a significant impact on the effectiveness of a software engineering team.

Goals and objectives:

It should make clear to the senior management which business goals and critical success factors will be supported by the new information system. It will also define the specific goals of the project and the objectives.

Approach and time table:

When are the project’s objectives going to be achieved and by whom are the briary questions addressed in this part of the document. It comprises a proposal regarding the “make or buy” decision, or an evolution of these two alternatives. The bow question is further refused by a rough project plan composed of the major section of the project. Each section is terminated by a milestone.

Cost benefit analysis:

The costs caused by the project are specified, and expected benefits are elaborated, benefits can either be short p term or long – term. Some benefits can be measured in financial figures, while others are qualitative benefits requiring casual analysis and argumentation.

Project budget:

A budget summary sates the duration of the project and the total project cost, as well as any already available income. There are different ways to structure a budget depending on the type of the project and on the organizations requirements. However, almost every budget includes items like: project personal, S/W casts. Additional hardware requirements meeting, trending the future users and overhead casts such as project administration.

Project risks:

A project risks can originate from the task to be soled (E.g. too complex, too many departments involved), from project management (E.g. inappropriate development toads), from the project team (E.g. knowledge level, experience etc of team member team size) from the IT infrastrure, from the implementation process in the organization, and also from senior management.

Problem:

Review a copy of Weinberg’s book [Wei86], and write a two- or three-page summary of the issues that should be considered in applying the MOI model.

Answer:

MOI model

MOI means motivation, organization and ideas or innovation.

Motivation: The ability to encourage (by “Push or Pull”) technical people to produce to them best ability.

Involve them. Many people employees want to be involved in the ongoing. Development and progress of their company and they have insightful ideas that can make a significant difference in the company.

Employees want regular updates on the progress of the business and their personal performance. Use emails and group meetings to keep you team apprised of changes, up dates new products etc.

Organization:

Team members have zeal to achieve new things from the existing and will enable the initial concept to be translated into final product. And generic team organizations can able to success the project leaders by applying a problem solving management style.

No permanent leader rather “task coordinator” decision made by group consensus.

To encourage the people to create and feel creative even when they must software product or application.

That is a software project manager solved, managing the flow of ideas, and at the same time letting everyone on the team know (by words and far more important, by actions) that quality counts and that it will not be compromised.

Problem:

You have been appointed a project manager within an information systems organization. Your job is to build an application that is quite similar to others your team has built, although this one is larger and more complex. Requirements have been thoroughly documented by the customer. What team structure would you choose and why? What software process model(s) would you choose and why?

Answer:

I choose controlled centralized (CC):

Top – level problem solving and internal team Co-Ordination are managed by a team leader.

Control is hierarchical and communication is vertical.

Centralized:

Fast, works for simple well defined problems scales well since performance of team is inversely proportional to amount communication.

Process management:-

The project manger must decide which process model (linear, prototyping, RAD, spiral, component based) is most appropriate for.

1) The customers and practitioners.

2) The characteristics of the product.

3) The project environment in which the soft ware team works.

Choosing team structure:-

(i) The difficulty of the problem to be solved.

(ii) The size of the resultant program in lines of code.

(iii) The time that the team will stay together.

(iv) The degree to which the problem can be modularized

(v) The required quality and reliability of the system to be built

(vi) The rigidity of the definers date

(vii) The degree of sociability required for project.

Model process: The linear sequential model because the team with already of the experiment with this type of product.

Problem:

You have been appointed a project manager for a small software products company. Your job is to build a breakthrough product that combines virtual reality hardware with state-of-the-art software. Because competition for the home entertainment market is intense, there is significant pressure to get the job done. What team structure would you choose and why? What software process model(s) would you choose and why?

Answer:

Task: Build a break through product that combines virtual reality hard ware with state of the art software. Because competition for the home entertainment market is intense, there is significant pressure to get the job done.

I choose contracted de – centralized(CD) structure.

Controlled decentralized (CD): A defined leader who co – ordinates specific tasks. Problem solving is a group activity but implementation of solution is partitioned among subgroups.

Control is vertical and communication is horizontal.

Model process: The spiral model.

Problem:

You have been appointed a project manager for a major software products company. Your job is to manage the development of the next-generation version of its widely used word-processing software. Because competition is intense, tight deadlines have been established and announced. What team structure would you choose and why? What software process model(s) would you choose and why?

Answer:

If I appointed as a project manager for a major software Products Company, my main Job is to manage the development of the next generation version of word processing software. For this, based on hazy requirements and the experimental nature of the work

i used an open paradigm team structure

Open paradigm—structures a team that achieves some of the controls but also much of the innovation. Here time pressure and familiarity with the work is good. An incremental process model is indicated by the deadline driven nature of this work

Problem:

You have been appointed a software project manager for a company that services the genetic engineering world. Your job is to manage the development of a new software product that will accelerate the pace of gene typing. The work is R&D oriented, but the goal is to produce a product within the next year. What team structure would you choose and why? What software process model(s) would you choose and why?

Answer:

If I appointed as a project manager for a company, I preferred random team structure because here work is experimental and business deadline is also there. For this,

I started by trying to create a simple structured text file with the necessary data: event date and other event details, plus the team contact info. This data was all on separate lines.

Another possibility is to use an open paradigm team structure. An incremental process model or an evolutionary process model could be used, given the deadline driven nature of this work.

Problem:

You have been asked to develop a small application that analyzes each course offered by a university and reports the average grade obtained in the course (for a given term). Write a statement of scope that bounds this problem.

Answer:

Statement of scope about – a small application that analyzes each course offered by a university and reports the average grade is

The Grade Analyzer application will obtain grades for all undergraduate and graduate for-credit courses contained in the Registrar's data base of courses for a given semester.

Ex:

Determining student – course information which is available from the register. It format and method of access should be made available by the requesters.

A couple of possibilities are the machine readable grade sheets submitted by the instructor or the sheets have been processed into an electronic database.

Assuming it is a database format, develop an query which will access course’s grade sheet, extracting from it each student’s grade. Note that query does not required either student’s name or ID so the query software can be developed and used with limited database access permissions.

The semester catalog will be scanned and each course section, recorded by appropriate ID as needed to interrogate Regis arts database. The query result will then be scanned, passed to function with will use the grade in a switch based upon grade type. This will allow maximum flexibility to enhance the software to handle additional grade types. The ‘W’ grade will be ignored, the grades “A” – “F” along with “+” and “-“will be weighted according to the universities GPA weighting summed, counted as a grade count and at the and averaged. The pass/ fail grades, “P” and “FF” will be attendance counted. Other grade types will be handled as a required by the requesters. The result of each query with appropriate course ID will be stored in a database with restricted availability to the organization requesting the information.

Here grade analyzer will read all grades for each course and compute the average grade using a numerical scale in which an A = 4.0 and other grades are assigned values as indicated in grade value document UC29-1. Grade Analyzer will print and/or display a report that lists each course, the instructor, the average grade. The report may be sorted by department, by highest to lowest average grade, by instructor or by any permutation of these characteristics. Grade Analyzer will be implemented to run under Microsoft Windows XP environment.

Problem:

Do a first-level functional decomposition of the page layout function discussed briefly in Section 31.3.2.

Answer:

Problem decomposition, some times called partitioning or problem elaboration, is an activity that is the core of software requirements analysis.

Decomposition is applied in the major areas.

(i) The functionality that must be delivered

(ii) The process that will be used to deliver it.

Page layout is considerations

Define page parameters

Allocate text regions

Allocate graphical regions

Define emphasis (lines, shading, etc.)

Input/import text

Input/import graphics

Edit text

Edit graphics

Out page/export page

End page layout

Ex:-

The first level of partitioning naturally occurs,

(i) Spell checking

(ii) Sentence grammar checking

(iii) Reference checking for large documents.

(iv) Section and chapter reference validation for large documents.


Solution :Chapter 31 PROJECT MANAGEMENT CONCEPTS

31.1 Ten commandments:

1. Thou shalt get smarter (provide education).

2. Thou shalt focus on quality.

3. Thou shalt listen to the customer.

4. Thou shalt understand the problem.

5. Thou shalt work within a repeatable process.

6. Thou shalt not agree to ridiculous schedules.

7. Thou shalt measure the product, the process and yourself.

8. Thou shalt document the work in the most effective way.

9. Thou shalt remember that others will also work on the software.

10. Thou shalt continually improve

31.2 The latest SEI information can be obtained at:

http://www.sei.cmu.edu/

31.3 Same person: (1) an engineer who must develop a program for personal use; (2) a business person creating a spreadsheet model for personal use; (3) an entrepreneur who has a new concept for a killer App.

Different person: (1) an IS department servicing some business function; (2) a software development group servicing marketing needs; (3) a contractor building to customer specs.

31.4 In today’s environment downsizing and outsourcing have the most immediate and significant impact. In addition, "expense reduction measures" that lead to lower product quality; unrealistic project deadlines; failure to "listen" to the customer, or conversely, to warnings noted by the software engineers doing the work.

31.5 Answers will vary

31.6 A closed paradigm team structure is one option. Since requirements are well defined, it will be possible to partition requirements and allocation to subteams. The large size of the project also mitigates in favor of a CD team. Since there is no discussion of schedule, we assume that delivery date is reasonable. Therefore, it might be possible to use a linear sequential process model (work has been done before). However, an iterative model (e.g., spiral) is also a good possibility.

31.7 The random paradigm team structure is probably the only viable option, given hazy requirements and the experimental nature of the work. A prototyping approach or an evolutionary process model should be used.\

31.8 An open paradigm team structure is probably best, given time pressure and familiarity with the work (however, a closed paradigm team might also work well). An incremental process model is indicated by the deadline driven nature of this work.

31.9 A random team structure is probably best, given that the work is experimental, but that there is a business deadline. Another possibility is to use an open paradigm team structure. An incremental process model or an evolutionary process model could be used, given the deadline driven nature of this work.

31.10 The GradeAnalyzer application will obtain grades for all undergraduate and graduate for-credit courses contained in the Registrar’s data base of courses for a given semester. GradeAnalyzer will read all grades for each course and compute the average grade using a numerical scale in which an A = 4.0 and other grades are assigned values as indicated in grade value document UC29-1. GradeAnalyzer will print and/or display a report that lists each course, the instructor, the average grade. The report may be sorted by department, by highest to lowest average grade, by instructor or by any permutation of these characteristics. GradeAnalyzer will be implemented to run under Microsoft Windows Visat environment.

31.11 A simple decomposition:

page layout

define page parameters

allocate text regions

allocate graphical regions

define emphasis (lines, shading, etc.)

input/import text

input/import graphics

edit text

edit graphics

outpage/export page

end page layout

软件工程 实践者的研究方法 第31章答案相关推荐

  1. 软件工程 实践者的研究方法 第17章答案

    Problem: Why is the "artistic ideal" an insufficient design philosophy when modern WebApps ...

  2. 软件工程 实践者的研究方法 第五章答案

    Problem: Reread the "Manifesto for Agile Software Development" at the beginning of this ch ...

  3. 软件工程 实践者的研究方法 第19章答案

    Problem: Describe how you would assess the quality of a university before applying to it. What facto ...

  4. 《软件工程—实践者的研究方法》读书笔记

    <软件工程-实践者的研究方法>读书笔记 <软件工程-实践者的研究方法>这本书内容丰富,从软件工程的定义.软件过程.建模.质量管理到管理软件项目和软件工程发展趋势的探讨,作者逐个 ...

  5. 《软件工程——实践者的研究方法》重难点复习笔记(第八章——理解需求)

    8项需求工程任务 inception 开始 8.1.1 identify stakeholders 定义:从软件开发中收益 例如:市场人员.销售经理.顾客.顾问.维护团队等(P139) 8.1.2 这 ...

  6. 软件工程--实践者的研究方法[设计的概念]

    设计的概念 11.1 软件工程中的设计 11.2 设计过程 11.2.1 软件质量 11.2.2 软件设计的历史发展 11.3 设计概念 11.4 设计模型 11.4.1 数据设计元素 11.4.2 ...

  7. 软件工程--实践者的研究方法[体系结构设计]

    体系结构设计 12.1 软件体系结构概念 12.1.1 什么是软件的体系结构? 12.1.2 体系结构是不是重要? 12.1.3 体系结构如何描述呢? 12.1.4 体系结构决策 12.2 体系结构的 ...

  8. 体系结构类型——《软件工程:实践者的研究方法》第八版

    尽管体系结构设计的基本原则适用于所有类型的体系结构,但对于需要构建的结构,体系结构类型(genre)经常会规定特定的体系结构方法.在体系结构设计环境中,类型隐含了在整个软件领域中的一个特定类别.在每种 ...

  9. 体系结构风格——《软件工程:实践者的研究方法》第八版

    基于计算机系统构造的软件也展示了众多体系结构风格中的一种.每种风格描述一种系统类别,包括:(1)完成系统需要的某种功能的一组构件(例如,数据库.计算模块);(2)能使构件间实现"通信.合作和 ...

最新文章

  1. 11月下旬国内域名解析商Top10:中国数据5.03%居第四
  2. Goodbye, 2010. Hello 2011...
  3. 不断电系统的容量如何计算?
  4. [头脑风暴] 解读Docker Bridge网络模型
  5. 前端学习(1308):URl
  6. python定义字体颜色_windows print 自定义字体颜色【python】
  7. pytorch ——模型创建与nn.Module
  8. Android 系统 (130)---ODM 开发用户常见需求文档(四)
  9. CAD环境中求算接合表面积
  10. [Python] np.ones_like(ndarray)和np.zeros_like(ndarray)
  11. Ubuntu 安装 GMSSL
  12. 携程合体去哪儿,与途牛度假旅游市场争高下
  13. HTML+CSS+JavaScript实现植物大战僵尸(附演示地址)
  14. 【012】Excel宏编程相关封装模块(删除行/列、隐藏列、合并单元格)_005_#VBA
  15. 【流媒体协议】图解 FLV 协议 快速入门
  16. Unsupervised Time-Series Representation Learning with Iterative Bilinear Temporal-Spectral Fusion
  17. 玩转【斗鱼直播APP】系列之界面分析
  18. Ubuntu安装ROS详细教程
  19. 35岁程序员,早到的中年危机
  20. WPF中的渐变色动画

热门文章

  1. xorbootuefi添加linux,XORBOOTUefi-官方版-XORBOOTUefi(多系统启动工具)0.0.2官方版-独木成林...
  2. D3D12遇到的报错记录
  3. 一起走过的日子 - 高校俱乐部2014上半年校园活动精彩回顾
  4. 全志A10编译服务器ubuntu10.04.4 64bit安装及配置
  5. 360手机助手 无法android 4.2手机软件移动sd卡,360手机助手为什么不能移至sd卡
  6. html超链接跳出脚本错误,Windows7打开网页弹出当前页面的脚本发生错误如何解决?...
  7. 【数学基础】这些微积分公式,你记得吗?
  8. 电子警察联网解决方案,让违法无处遁逃
  9. 如何下载b站一些没有下载选项的视频
  10. Jupyter Lab的简洁安装与使用