软件开发:建立可靠的系统

软件开发:建立可靠的系统
作 者: 马克·汉密尔顿 徐卫东
出版社: 社会科学文献出版社
丛编项: 创世纪工商管理译库
版权说明: 本书为公共版权或经版权方授权,请支持正版图书
标 签: 暂缺
ISBN 出版时间 包装 开本 页数 字数
未知 暂无 暂无 未知 0 暂无

作者简介

  马克·汉密尔顿,从1975年开始开发软件,后进入UCLA 学习计算机科学,毕业后在世界上最大的软件开发机构之一——美国TRW航空部门从事软件开发工作。1993年末,加入Sun Microsystems公司的系统工程组,任Sun公司洛杉矶系统项目经理。近5年,他和约100家不同公司的软件开发部门以及IT部门合作,成为Sun公司的Java ACES组创始人之一。

内容简介

这是一本向每个人介绍软件开发宏观概况的书:是专业软件工程师、软件结构设计师、软件工程管理人员和MIS管理人员必备读本。《软件开发》这本书是通过对人员、程序和技术问题的完美结合.告诉你需要知道的东西。通过这本书,你会了解到成功的企业之成功或失败的原因。怎样建立和保留可以胜利的队伍以及目前最新和最有前途的技术的全面信息。你会在这本书中发现你可以具体运用并保证你开发成功的信息。马克·汉密尔顿,从1975年开始开发软件,后进入UCLA 学习计算机科学,毕业后在世界上最大的软件开发机构之一——美国TRW航空部门从事软件开发工作。1993年末,加入Sun Microsystems公司的系统工程组,任Sun公司洛杉矶系统项目经理。近5年,他和约100家不同公司的软件开发部门以及IT部门合作,成为Sun公司的Java ACES组创始人之一。全书内容共分4部分,第一部分概括介绍软件开发概念的背景;第二部分重点介绍软件开发相关的人员要求问题;第三部分着重介绍软件开发程序;第四部分详细介绍软件开发技术。书中还特别阐释了软件开发成功的十戒律,以助软件开发行业人士走上不败之路。通过这本书,你会了解到成功的企业之成功或失败的原因。怎样建立和保留可以胜利的队伍以及目前最新和最有前途的技术的全面信息。你会在这本书中发现你可以具体运用并保证你开发成功的信息。读者对象:专业软件工程师、软件结构设计师、软件工程管理人员和MIS管理人员。

图书目录

谁应当读这本书

怎样阅读这本书

关于作者

第一部分背 景

第一章 软件开发成功的十戒律

第二章 软件开发总是很困难

软件开发的艰难历史

2000年问题和其他类似问题

很难为成功而建立开发机构

很难正确地制定进度和预算

很难选择合适的语言和开发工具

很难选择合适的OS和硬件平台

很难实现一种产品的首次投入使用

第三章 软件开发定义

软件生存周期概述

程序设计范例

过程化软件

模块化软件

面向对象的软件

分布式和并发式软件

开发环境

系统建模工具

软件结构

第四章 软件开发趋势

通用DBMS

套装ERP软件和它的定制

网络桌面信息处理技术和平台独立

境外开发

理顺信息技术基础结构

第二部分人 员

第五章 建立一支无往而不胜的软件开发队伍

开发人员短缺

软件开发工作描述

软件开发主管

软件结构总设计师

软件开发经理

高级软件工程师

软件工程师Ⅲ

软件工程师Ⅱ

软件工程师I

工具专家

网站管理员

数据库管理员

系统管理员

能力跟踪

C++编程自评样本

Java编程自评样本

行为价值评估面试

价值#1:主动性

价值#2:贡献

价值#3:灵活性

价值#4:尊重

你的软件开发合伙人

第六章 为成功而组织

一家公司的维数

组织结构的重要性

减少官僚作风

组织结构样本

以项目为中心的结构

以部门为中心的结构

矩阵式结构

生产线结构

反复出现的组织话题

建立一个软件方法组

平衡集中的和分散的结构

管理虚拟组

13种组织结构错误

第七章 招募最好的人才

怎样为发展提供人员

内部推荐

校园招聘

代理

报纸和其他媒体

工作招聘会

互联网

寻找什么和怎样去寻找

技术能力

价值观

第八章 留住最好的人才

报酬方法

总报酬战略

基本工资

传统福利

独创性福利

短期激励

长期激励

工作轮换

指导

人力资源问题

第九章 成功转变开发人员

为什么转变开发人员

从大型机到客户/服务器的转变

从大型机到基于Web的转变

从客户/服务器到基于Web的转变

从面向过程到面向对象的转变

语言细节上的转变问题

转变起作用了吗?

第三部分方 法

第十章 软件生存周期

软件的能力成熟模型

级别一:初始级别

级别二:可重复级别

级别三:已定义级别

级别四:被管理级别

级别五:最优化的级别

需求分析和定义

系统结构和设计

测试计划设计

实施

验证和测试

单元测试

子系统测试和系统测试

黑箱测试和白箱测试

A测试和B测试

压力测试

产品验收

第十一章 快速应用开发

为什么需要另外一种方法

战略规划

产品定义

产品设计

产品开发

产品交付

第十二章 软件开发效率.度量标准和质量

代码度量标准

McCabe度量标准

工作环境对效率的影响

开发还是购买

行业知识的价值

标准的重要性

企业级结构标准

代码编写标准

帮助标准

第十三章 基于Web的产品验收

Web的产品验收大事记

Web的产品验收调查表

人格化的交流

内部支持协议(ISA)

角色和职责

互联网工程

安全工程

网络工程

WebTone工程

技术支持

硬件支持

应用系统支持

Web的产品验收方法

信息技术应当提供什么,不应当提供什么

第四部分技 术

第十四章 编程语言特点

C

C++

FORTRAN

Ada

BASIC

Java

COBOL

LISP

脚本语言(Perl.awk.TcI.ksh)

第十五章 软件开发工具

交互式开发工具

BeanMachine

BuilderXcessoryPro

CodeWarriorProfessional

JavaWorkshop

JBuilder

SuperCedeforJava

UIM/X

VisualCafeforJava

VisualAge

VisualJ++

GUI开发工具和库

Chart.J

Jviews

JWave

数据库工具

Blend.J

CocoBase

Developer/2000

GemStone/J

JaguarCTS

NetDynamics

测试工具

JavaScope

Pegasus

WebLoad

Web编辑工具

代码编辑器

编译器

调试

代码分析

性能分析工具

组件工具

CASE工具

版本和基准控制

第十六章 选择你的硬件环境

开发人员的计算机桌面

开发服务器

文件服务器基准测试

编译服务器基准测试

数据库服务器基准测试

Web服务器基准测试

网络基础设施

磁盘存储结构

与通用服务器相对的单一功能

影响软件设计的结构问题

SMP结构

MPP

NUMA

集群处理

高可靠和高容错系统

硬件同OS和编译器设计的关系

第十七章 基于组件的软件开发

组件历史

与面向对象技术相对的组件

组件软件中的可视化编程技术的作用

使用JavaBeans的组件开发

第十八章 性能优化技术

你需要多高的性能

如何识别瓶颈

磁盘瓶颈

CPU瓶颈

内存瓶颈

网络瓶颈

第十九章 多线程编程技术

多线程技术的定义

同步方法

第二十章 为Web而开发

Web浏览器和服务器

代理Web服务器

CGI编程技术

JavaApplets

EnterpriseJavaBeans

其他的Java企业级API

JavaServletAPI

JavaServerPages(JSP)

JavaMessagingService(JMS)API

JavaNamingandDirectory(JNDI)API

第二十一章 具有CORBA.RMI和DCOM的分布式应用系统

使用CORBA的分布式对象

CORBA服务

CORBA工具

CORBA应用对象

一个CORBA客户/服务器的例子

DCOM对象

具有RMI的分布式Java应用系统

第二十二章 Jini技术不为人知的高度

Jini基础结构

DiscoverandJoin

Lookup

分布式编程

租用

分布式事件

分布式事务处理

与Jini相对的Millennium

附录A软件开发中经常问到的问题

综合问题

与人员相关的问题

与方法相关的问题

与技术相关的问题

软件历史和一些小问题

附录BJava编码的标准模板

简介

源文

源文件命名

源文件结构

命名习惯

程序包命名

类/接口命名

域命名

方法命名

语句标号命名

空白的使用方法

空行

空格

缩进

续行

注解

文档注解

块注解

单行注解

类的主体结构

接口

接口主体结构

语句

简单语句

复合语句

标号语句

附录C内部支持协议实例

Root授权

服务器可用时间

备份

支持责任

每个服务器的功能

特殊需求

附录D外国人名中英文对照

附录E专业用语中英文对照