当前位置:文档之家› web系统开发过程概述

web系统开发过程概述

用户权限管理子模块

1、需求分析:

用户角色管理功能主要包括的功能如下。

(1) 用户管理:添加用户、删除用户、注销或激活用户、编辑用户、通过条件查询用户。

点击“添加用户”进入填写用户相关信息提交,即可创建新用户。删除用户时直接点在此用户后的“删除”,即可删除。当用户有效时,若想注销,则点用户后面的“注销”,当用户无效时,若想激活,则点用户后面的“激活”。可以指定分派用户具有的角色信息;除此之外,还可以通过用户名,角色、用户的审核状态来查询用户。

(2)角色管理:添加角色分组、删除角色分组、更改角色组的成员角色、添加角色、删除角色、更改角色的成员用户。

输入角色名,点击“添加”按钮,可直接添加新角色。若想删除某角色,点击此角色进入相关页面,即可删除,也可以改名。而且还可以增加或减少如何成员用户。同样,对于角色组的各功能与角色类似,这里不再赘述。

(3)个人信息维护功能

修改用户个人的密码、名字、所在系等信息

二、概要设计:

三、详细设计

1、数据库设计

表名:UserTable

表名:RoleGroupTable

表名:RoleTable

表名:UserRoleTable

2、模块设计

项目解决方案:表现层+业务罗基层+数据访问层+实体层

实体层:

using System;

namespace UserPrivilege.Model

{

///

///实体类UserTableModel 。(属性说明自动提取数据库字段的描述信息) ///

[Serializable]

public class UserTableModel

{

public UserTableModel()

{ }

#region Model

private int _userid;

private string _username;

private string _userkey;

private bool _checked;

///

///

///

public int UserId

{

set { _userid = value; }

get { return _userid; }

}

///

///

///

public string UserName

{

set { _username = value; }

get { return _username; } }

///

///

///

public string UserKey

{

set { _userkey = value; }

get { return _userkey; } }

///

///

///

public bool Checked

{

set { _checked = value; }

get { return _checked; } }

#endregion Model

}

}

数据访问层:

using System;

using System.Data;

using System.Text;

using System.Data.SqlClient;

using DBUtility;//请先添加引用

namespace UserPrivilege.DAL

{

///

///数据访问类UserTableDAL。

///

public class UserTableDAL

{

public UserTableDAL()

{ }

#region成员方法

///

///得到一个对象实体

///

public https://www.doczj.com/doc/9f13865918.html,erTableModel GetModelByName(string UserName)

{

StringBuilder strSql = new StringBuilder();

strSql.Append("select top 1 UserId,UserName,UserKey,Checked from UserTable "); strSql.Append(" where UserName=@UserName ");

SqlParameter[] parameters = {

new SqlParameter("@UserName", SqlDbType.NVarChar,50)};

parameters[0].Value = UserName;

https://www.doczj.com/doc/9f13865918.html,erTableModel model = new https://www.doczj.com/doc/9f13865918.html,erTableModel();

DataSet ds = DbHelperSQL.Query(strSql.ToString(), parameters);

if (ds.Tables[0].Rows.Count > 0)

{

if (ds.Tables[0].Rows[0]["UserId"].ToString() != "")

{

https://www.doczj.com/doc/9f13865918.html,erId = int.Parse(ds.Tables[0].Rows[0]["UserId"].ToString());

}

https://www.doczj.com/doc/9f13865918.html,erName = ds.Tables[0].Rows[0]["UserName"].ToString();

https://www.doczj.com/doc/9f13865918.html,erKey = ds.Tables[0].Rows[0]["UserKey"].ToString();

if (ds.Tables[0].Rows[0]["Checked"].ToString() != "")

{

if ((ds.Tables[0].Rows[0]["Checked"].ToString() == "1") ||

(ds.Tables[0].Rows[0]["Checked"].ToString().ToLower() == "true"))

{

model.Checked = true;

}

else

{

model.Checked = false;

}

}

return model;

}

else

{

return null;

}

}

///

///获得数据列表

///

public DataSet GetList(string strWhere)

{

StringBuilder strSql = new StringBuilder();

strSql.Append("select UserId,UserName,UserKey,Checked ");

strSql.Append(" FROM UserTable ");

if (strWhere.Trim() != "")

{

strSql.Append(" where " + strWhere);

}

strSql.Append(" ORDER BY UserName ");

return DbHelperSQL.Query(strSql.ToString());

}

///

///增加一条数据

///

public int Add(https://www.doczj.com/doc/9f13865918.html,erTableModel model)

{

StringBuilder strSql = new StringBuilder();

strSql.Append("insert into UserTable(");

strSql.Append("UserName,UserKey,Checked)");

strSql.Append(" values (");

strSql.Append("@UserName,@UserKey,@Checked)");

strSql.Append(";select @@IDENTITY");

SqlParameter[] parameters = {

new SqlParameter("@UserName", SqlDbType.NVarChar,50),

new SqlParameter("@UserKey", SqlDbType.NVarChar,50),

new SqlParameter("@Checked", SqlDbType.Bit,1)};

parameters[0].Value = https://www.doczj.com/doc/9f13865918.html,erName;

parameters[1].Value = https://www.doczj.com/doc/9f13865918.html,erKey;

parameters[2].Value = model.Checked;

object obj = DbHelperSQL.GetSingle(strSql.ToString(), parameters);

if (obj == null)

{

return 1;

}

else

{

return Convert.ToInt32(obj);

}

}

///

///删除一条数据

///

public void Delete(int UserId)

{

StringBuilder strSql = new StringBuilder();

strSql.Append("delete from UserTable ");

strSql.Append(" where UserId=@UserId ");

SqlParameter[] parameters = {

new SqlParameter("@UserId", SqlDbType.Int,4)};

parameters[0].Value = UserId;

DbHelperSQL.ExecuteSql(strSql.ToString(), parameters);

}

///

///更新一条数据

///

public void Update(https://www.doczj.com/doc/9f13865918.html,erTableModel model)

{

StringBuilder strSql = new StringBuilder();

strSql.Append("update UserTable set ");

strSql.Append("UserName=@UserName,");

strSql.Append("UserKey=@UserKey,");

strSql.Append("Checked=@Checked");

strSql.Append(" where UserId=@UserId ");

SqlParameter[] parameters = {

new SqlParameter("@UserId", SqlDbType.Int,4),

new SqlParameter("@UserName", SqlDbType.NVarChar,50),

new SqlParameter("@UserKey", SqlDbType.NVarChar,50),

new SqlParameter("@Checked", SqlDbType.Bit,1)};

parameters[0].Value = https://www.doczj.com/doc/9f13865918.html,erId;

parameters[1].Value = https://www.doczj.com/doc/9f13865918.html,erName;

parameters[2].Value = https://www.doczj.com/doc/9f13865918.html,erKey;

parameters[3].Value = model.Checked;

DbHelperSQL.ExecuteSql(strSql.ToString(), parameters);

}

#endregion成员方法

}

}

using System;

using System.Data;

using System.Collections.Generic;

using UserPrivilege.Model;

namespace UserPrivilege.BLL

{

///

///业务逻辑类UserTableBLL 的摘要说明。

///

public class UserTableBLL

{

private readonly https://www.doczj.com/doc/9f13865918.html,erTableDAL dal = new https://www.doczj.com/doc/9f13865918.html,erTableDAL();

public UserTableBLL()

{ }

#region成员方法

///

///得到一个对象实体

///

public https://www.doczj.com/doc/9f13865918.html,erTableModel GetModelByUserName(string UserName)

{

return dal.GetModelByName(UserName);

}

///

///获得数据列表

///

public DataSet GetList(string strWhere)

{

return dal.GetList(strWhere);

}

///

///获得数据列表

///

public List GetModelList(string strWhere)

{

DataSet ds = dal.GetList(strWhere);

return DataTableToList(ds.Tables[0]);

}

///

///获得数据列表

///

public List DataTableToList(DataTable dt)

{

List modelList = new List();

int rowsCount = dt.Rows.Count;

if (rowsCount > 0)

{

https://www.doczj.com/doc/9f13865918.html,erTableModel model;

for (int n = 0; n < rowsCount; n++)

{

model = new https://www.doczj.com/doc/9f13865918.html,erTableModel();

if (dt.Rows[n]["UserId"].ToString() != "")

{

https://www.doczj.com/doc/9f13865918.html,erId = int.Parse(dt.Rows[n]["UserId"].ToString());

}

https://www.doczj.com/doc/9f13865918.html,erName = dt.Rows[n]["UserName"].ToString();

https://www.doczj.com/doc/9f13865918.html,erKey = dt.Rows[n]["UserKey"].ToString();

if (dt.Rows[n]["Checked"].ToString() != "")

{

if ((dt.Rows[n]["Checked"].ToString() == "1") ||

(dt.Rows[n]["Checked"].ToString().ToLower() == "true"))

{

model.Checked = true;

}

else

{

model.Checked = false;

}

}

modelList.Add(model);

}

}

return modelList;

}

///

///获得数据列表

///

public DataSet GetAllList()

{

return GetList("");

}

///

///获得全部用户对象

///

public List GetAllModelList() {

return GetModelList("");

}

///

///增加一条数据

///

public int Add(https://www.doczj.com/doc/9f13865918.html,erTableModel model)

{

return dal.Add(model);

}

///

///删除一条数据

///

public void Delete(int UserId)

{

dal.Delete(UserId);

}

///

///更新一条数据

///

public void Update(https://www.doczj.com/doc/9f13865918.html,erTableModel model)

{

dal.Update(model);

}

#endregion成员方法

}

}

Web层――(1)aspx页面

Web层―――(2)页面后台代码

using System;

using System.Collections.Generic;

using System.Web;

using System.Web.UI;

using System.Web.UI.WebControls;

using System.Data;

using UserPrivilege.Model;

public partial class UserPrivilegeWeb_UserCreate2 : System.Web.UI.Page

{

protected void Page_Load(object sender, EventArgs e)

{

if (!Page.IsPostBack)

{

UserPrivilege.BLL.RoleTableBLL roleTableBLL = new UserPrivilege.BLL.RoleTableBLL();

DataSet roleTableDS = roleTableBLL.GetAllList();

RoleCheckBoxList.DataSource = roleTableDS;

RoleCheckBoxList.DataTextField = "RoleName";

RoleCheckBoxList.DataValueField = "RoleId";

RoleCheckBoxList.DataBind();

userNameTextBox.Focus();

}

}

protected void SubmiitButton_Click(object sender, EventArgs e)

{

string userName = userNameTextBox.Text.Trim();

userName = userName.Replace(" ", "");

userName = userName.Replace(" ", "");//中文空格

userName = userName.Replace("*", "");

userName = userName.Replace(",", "");

userName = userName.Replace("'", "");

userName = userName.Replace("=", "");

userName = userName.Replace("<", "");

userName = userName.Replace(">", "");

userName = userName.Replace("\\", "");

userName = userName.Replace("/", "");

userName = userName.Replace("%", "");

userName = userName.Replace("[", "");

userName = userName.Replace("]", "");

userName = userName.Replace("?", "");

userName = userName.Replace("#", "");

string userKey = userKeyTextBox.Text;

userKey = userKey.Replace(" ", "");

userKey = userKey.Replace(" ", "");//中文空格

userKey = userKey.Replace("*", "");

userKey = userKey.Replace(",", "");

userKey = userKey.Replace("'", "");

userKey = userKey.Replace("=", "");

userKey = userKey.Replace("<", "");

userKey = userKey.Replace(">", "");

userKey = userKey.Replace("\\", "");

userKey = userKey.Replace("/", "");

userKey = userKey.Replace("%", "");

userKey = userKey.Replace("[", "");

userKey = userKey.Replace("]", "");

userKey = userKey.Replace("?", "");

userKey = userKey.Replace("#", "");

if (String.IsNullOrEmpty(userName))

{

Response.Write(""); userNameTextBox.Focus();

return;

}

https://www.doczj.com/doc/9f13865918.html,erTableBLL userTableBLL = new https://www.doczj.com/doc/9f13865918.html,erTableBLL();

if (userTableBLL.GetModelByUserName(userName) != null)

{

Response.Write("");

userNameTextBox.Focus();

return;

}

else

{

UserTableModel user = new UserTableModel();

https://www.doczj.com/doc/9f13865918.html,erName = userName;

https://www.doczj.com/doc/9f13865918.html,erKey = userKey;

user.Checked = true;

https://www.doczj.com/doc/9f13865918.html,erId = userTableBLL.Add(user);

UserRoleTableModel userRole = new UserRoleTableModel();

https://www.doczj.com/doc/9f13865918.html,erId = https://www.doczj.com/doc/9f13865918.html,erId;

https://www.doczj.com/doc/9f13865918.html,erRoleTableBLL userRoleBLL = new https://www.doczj.com/doc/9f13865918.html,erRoleTableBLL();

foreach (ListItem item in RoleCheckBoxList.Items)

{

if (item.Selected == true)

{

userRole.RoleId = Convert.ToInt32(item.Value);

userRoleBLL.Add(userRole);

}

}

//控制添加用户时是否需要提示!

string message = "用户" + userName + "添加成功!";

Response.Write("");

userNameTextBox.Text = "";

userKeyTextBox.Text = "";

userNameTextBox.Focus();

}

}

protected void CancelButton_Click(object sender, EventArgs e)

{

userNameTextBox.Text = "";

userKeyTextBox.Text = "";

userNameTextBox.Focus();

}

protected void CloseButton_Click(object sender, EventArgs e)

{

Response.Write("");

}

}

四、说明

一、.NET方向

(1)数据库SqlServer 注意数据库设计原则、视图、存储过程及sql注入式攻击

(2)C# + .net + IIS +动软.net代码生成器注意分层的概念

(3)Deamweaver+extjs 建议学习extjs

二、Java方向

(1)数据库SqlServer

(2)Java + Myeclipse + Tomcat 至少要学习 servlet + hibernate ,spring和structs也很好

(3)Deamweaver+extjs

4《Java_Web应用开发实用教程》练习答案.

1.7 习题 1. 单选题 (1)在HTML中超链接标记为() A. B. C. 和 D. 和 答案:A (2)表单中的数据要提交到的处理文件由表单的()属性指定。 A.method B. name C. action D. 以上都不对 答案:C (3)当标记的type属性值为()时,代表一个多选框。 A.text B. radio C. checkbox D. button 答案:C (4)以下URL中语法不正确的是() A.https://www.doczj.com/doc/9f13865918.html,:80/software/home.html B.telnet://https://www.doczj.com/doc/9f13865918.html,:70 C.ftp://https://www.doczj.com/doc/9f13865918.html, https://www.doczj.com/doc/9f13865918.html, 答案:D 2. 上机练习 用记事本或Dreamweaver制作如下几个页面(建议用Dreamweaver制作): link.html:此页面只有一个超级链接,用户单击此链接后将链接到login.html登录页面。 login.html:此页面为用户登录页面,用户可以在此页面输入用户名和密码,然后提交表单。 login_success.jsp:接收用户输入并显示“登录成功!”。三个页面运行后的效果如图1.8所示。 图1.8 练习题页面运行效果 答案: link.html代码如下: HTML练习 点击这里登录 login.html代码如下:

软件开发过程详解

软件开发过程详解 软件开发过程即软件设计思路和方法的一般过程,包括设计软件的功能和实现的算法和方法、软件的总体结构设计和模块设计、编程和调试、程序联调和测试以及编写、提交程序。 生产一个最终能满足需求且达到工程目标的软件产品所需要的步骤。软件开发过程覆盖了需求、设计、实现、确认以及维护等活动。需求活动包括问题分析和需求分析。问题分析获取需求定义,又称软件需求规约。需求分析生成功能规约。设计活动一般包括概要设计和详细设计。概要设计建立整个软件系统结构,包括子系统、模块以及相关层次的说明、每一模块的接口定义。详细设计产生程序员可用的模块说明,包括每一模块中数据结构说明及加工描述。实现活动把设计结果转换为可执行的程序代码。确认活动贯穿于整个开发过程,实现完成后的确认,保证最终产品满足用户的要求。维护活动包括使用过程中的扩充、修改与完善。 1.需求分析 1.1 需求分析的特点和任务 需求分析是软件开发的第一步。获取需求的一个必不可少的结果是对项目中描述的客户需求的普遍理解。一旦理解了需求,分析者、开发者和客户就能探索出描述这些需求的多种解决方案。参与需求获取者只有在他们理解了问题之后才能开始设计系统,否则,对需求定义的任何改进,设计上都必须大量的返工。把需求获取集中在用户任务上—而不是集中在用户接口上—有助于防止开发组由于草率处理设计问题而造成的失误。有几种原因使需求分析变得困难:(1)客户说不清楚需求;(2)需求自身经常变动;(3)分析人员或客户理解有误。 需求获取、分析、编写需求规格说明和验证并不遵循线性的顺序,这些活动是相互隔开、增量和反复的。当你和客户合作时,你就将会问一些问题,并且取得他们所提供的信息(需求获取)。同时,你将处理这些信息以理解它们,并把它们分成不同的类别,还要把客户需求同可能的软件需求相联系(分析)。然后,你可以使客户信息结构化,并编写成文档和示意图(说明)。下一步,就可以让客户代表评审文档并纠正存在的错误(验证)。这四个过程贯穿着需求分析的整个阶段。需求获取可能是软件开发中最困难、最关键、最易出错及最需要交流的方面。需求获取只有通过有效的客户—开发者的合作才能成功。分析者必须建立一个对问题进行彻底探讨的环境,而这些问题与产品有关。为了方便清晰地进行交流,就要列出重要的小组,而不是假想所有的参与者都持有相同的看法。对需求问题的全面考察需要一种技术,利用这种技术不但考虑了问题的功能需求方面,还可讨论项目的非功能需求。确定用户已经理解:对于某些功能的讨论并不意味着即将在产品中实现它。对于想到的需求必须集中处理并设定优先级,以避免一个不能带来任何益处的无限大的项目。 1.2.需求分析的一般方法

一个Web系统的界面设计和开发

一个Web系统的界面设计和开发1.工作流程(下图,是整个开发过程中与界面设计相关的主要流程工作) 从最初需求分析开始,我就加入项目,自始自终参加整个开发过程。 在需求分析阶段,参与了对客户的访问和调研; 在概要设计阶段,参与了部分系统设计分析工作; 在详细设计阶段,完成了整个系统界面设计和Demo制作,并提交用户反馈; 在代码开发阶段,参与了系统表现层的设计开发。

2.需求分析 在需求分析阶段,主要针对界面交互相关问题,对用户进行若干调研。 主要包括以下内容 ·受众用户群调查 ·系统使用环境调查 ·受众用户使用习惯调查 ·用户对旧版本软件使用情况调查 这一阶段,由于成本原因,我并没有直接访问客户进行调查。工作主要是提出某些具体问题,由需求调研人员,以问卷或口头问答方式,对客户进行调研。另外,公司经验丰富的客服人员和市场人员,也是非常重要的需求来源之一。 本系统的客户群主要为国家省市下属质检单位,最终受众年龄从年轻到较高龄都有。对于普通国家机关人员,一般对计算机系统和网络不够熟悉,计算机环境一般,甚至比较差,少有配置优良的环境。在这种环境下,用户对计算机使用一般没有使用倾向,大多更适应手工操作。对本系统的前代使用,最主要意见是使用困难,不方便。 还有其他具体调查反馈,如用户基本不使用鼠标右键,年龄较大的用户难以看清密集的较小文字等等。 3.界面设计原则 在概要设计阶段,根据需求阶段的调研结果,我整理了系统界面设计的基本原则。因为在代码开发阶段,很多时候界面的具体制作是由开发人员直接写代码,因此必须确定一定的原则和规范,以保证系统界面的统一。 一般适用原则 ·简单明了原则:用户的操作要尽可能以最直接最形象最易于理解的方式呈现在用户面前。对操作接口,直接点击高于右键操作,文字表示高于图标示意,尽可能的符合用户对类似系统的识别习惯。 ·方便使用原则:符合用户习惯为方便使用的第一原则。其它还包括,实现目标功能的最少操作数原则,鼠标最短距离移动原则等。 ·用户导向原则:为了方便用户尽快熟悉系统,简化操作,应该尽可能的提供向导性质的操作流程。 ·实时帮助原则:用户需要能随时响应问题的用户帮助。 ·提供高级自定义功能:为熟悉计算机及软件系统的高级用户设置自定义功能,可以对已经确定的常规操作以及系统的方方面面进行符合自身习惯的自定义设置。包括常规操作、界面排版、界面样式等种种自定义。 ·界面色彩要求:计算机屏幕的发光成像和普通视觉成像有很大的不同,应该注意这种差别作出恰当的色彩搭配。对于需用户长时间使用的系统,应当使用户在较长时间使用后不至于过于感到视觉疲劳为宜。例

JavaWeb应用开发项目设计方案

《Java Web应用开发》项目设计参考方案(学时:84)项目一网上商城项目开发环境的搭建(学时:8) 一、教学目标 最终目标:学会Java Web 开发环境搭建,了解如何在集成开发环境中开发JSP、Servlet程序,能在Web服务器上进行运行测试。 促成目标: 1. 了解JSP、Servlet技术; 2. 了解Java Web 开发模式; 3. 了解Java Web服务器运行条件,掌握如何安装、配置Jdk、Tommcat和集成开。 二、工作任务 1.任务1 Java Web 环境搭建 2. 任务2 简单JSP、Servlet测试 三、活动设计 1.活动思路 首先介绍动态网页技术及相关开发模式,并将相关技术进行比较,从而引出本门课的重点。接着指出建立Web服务器的条件,引出如何搭建Java Web运行环境;最后学习集成开发环境的安装与设置,并学习如何写JSP程序、Servlet 程序,并掌握如何在客户端进行运行测试。 2.活动组织 3.活动评价 评价内容:根据学生具体任务完成情况、课后作业等情况进行评价。 评价标准: 实践部分评价:能基本完成相关软件的安装、环境配置为及格;独立完成相关软件的安装、环境配置,基本能进行代码编写及测试为良好;独立完成相关软件的安装、环境配置,并能进行正确的代码编写及测试为优秀。

模块一 Java Web 环境搭建(学时:4) 一、教学目标 最终目标:掌握浏览静态网页和动态网页的技能,掌握分析网页所采用的技术的技能,能独立完成JSP运行环境的安装及配置 促成目标: 1.了解静态网页中的静态的概念; 2.了解动态网页中的动态的概念; 3. 了解JSP、Servlet技术; 4. 了解Java Web 开发模式; 5.学会JDK、Tomcat的下载、安装及配置。 二、工作任务 1. JDK、Tomcat的安装及配置; 2.浏览各种类型的网页,分析出网页采用的技术; 三、活动设计 1.活动内容 通过浏览多种类型的网页、导出静态网站与动态网站的概念,继而引出对各种网页开发技术的分析,引入JSP动态网页开发技术、开发模式及运行环境;浏览电子商务网站,导出网上商城的项目;分析JSP的基本概念,导出Web服务器的概念,引出JSP常用的Web服务品Tomcat。构建JSP运行环境,为下一步开发工作做好准备。 子任务一:JDK安装与配置 子任务二:Tomcat的安装与配置,服务器运行测试。 2.活动组织

软件开发文档说明书(完整流程)

. 在软件行业有一句话:一个软件能否顺利的完成并且功能是否完善,重要是看这个软件有多少文档,软件开发文档是一个软件的支柱,如果你的开发文档漏洞百出,那么你所开发出来的软件也不可能会好;开发文档的好坏可以直接影响到所开发出来软件的成功与否。 一、软件开发设计文档:软件开发文档包括软件需求说明书、数据要求说有书、概要设计说明书、详细设计说明书。 1、软件需求说明书:也称为软件规格说明。该说明书对所开发软件的功能、性能、用户界面及运行环境等做出详细的说明。它是用户与开发人员双方对软件需求取得共同理解基础上达成的协议,也是实施开发工作的基础。软件需求说明书的编制目的的就是为了使用户和软件开发者双方对该软件的初始规定有一个共同的理解、并使之面成为整个开发工作的基础。 其格式要求如下: 1 引言 1.1 编写目的。 1.2 背景 1.3 定义 2 任务概述 2.1 目标 2.2 用户的特点

. 2.3 假定和约束 3 需求规定 3.1 对功能的规定 3.2 对性能的规定 3.2.1 精度 3.2.2 时间特性的需求 3.2.3 灵活性 3.3 输入输出要求 3.4 数据管理能力要求 3.5 故障处理要求 3.6 其他专门要求 4 运行环境规定 4.1 设备 4.2 支持软件 4.3 接口 4.4 控制

. 2、概要设计说明书:又称系统设计说明书,这里所说的系统是指程序系统。编制的目的是说明对程序系统的设计考虑,包括程序系统的基本处理。流程、程序系统的组织结构、模块划分、功能分配、接口设计。运河行设计、数据结构设计和出错处理设计等,为程序的详细设计提供基础。 其格式要求如下: 1 引言 1.1 编写目的 1.2 背景 1.3 定义 1.4 参考资料 2 总体设计 2.1 需求规定 2.2 运行环境 2.3 基本设计概念和处理流程 2.4 结构 2.5 功能需求与程序的关系

Java Web应用开发中的一些概念

Java Web应用开发中的一些概念 [导读]概念一直是学习计算机软件开发中经常遇到的问题,也是软件行业最喜欢创造的东西。很多时候,学习计算机软件开发遇到困难都是因为对某些概念的不理解,而不是因为技术本身有多么复杂。 概念一直是学习计算机软件开发中经常遇到的问题,也是软件行业最喜欢创造的东西。很多时候,学习计算机软件开发遇到困难都是因为对某些概念的不理解,而不是因为技术本身有多么复杂。JavaWeb作为JavaEE技术体系的一部分,应该是目前所有Web开发技术中最复杂的一种,很多初学者,或者是从ASP、PHP 转移过来的开发者都会遇到概念方面的困难。 其实很多概念都是非产简单的,只是因为厂家为了宣传需要,将概念复杂化、学术化,导致学习者觉得这些概念非常深奥,难以理解。在这里,我们首先去澄清JavaWeb开发中几个常用的基本概念。当然理解这些概念的前提是需要你具备一定的计算机系统、面向对象等方面基础知识。 1、Web容器 所有的程序运行都需要有一个必要的运行环境。这个环境可以是软件,也可以是硬件,或者是软件和硬件的结合。比如说Windows操作系统需要运行在硬件基础上;Office软件需要运行在操作系统上。并且程序与运行环境之间会有一定的数据交换,比如操作系统会将运行指令传递给硬件,硬件也会将指令运行结果传递给操作系统。JavaWeb程序也需要一个运行环境才能够执行。这种运行JavaWeb程序的环境被称为Web容器,JavaWeb程序与Web容器之间存在数据交互。目前主要存在两种类型的JavaWeb容器:一种是独立的JavaWeb容器,在这种容器里面只能运行Web程序,这种容器一般也叫做Web服务器,如Tomcat等;另一种是与其他JavaEE容器混合在一起的Web容器,Web容器负责运行Web程序,其他容器负责运行EJB等程序,如WebLogic等。 当用户通过浏览器等Web客户端软件向服务器发出一个请求之后,首先接收到这个请求的是Web容器,Web容器会将请求信息封装到一个HttpServletRequest类型的Java对象中,并将对象传递给JavaWeb程序。对于每个请求,Web容器还会创建一个HttpServletResponse类型对象,该对象的作用是用来保存需要返回到浏览器等客户端的内容。JavaWeb程序可以从HttpServletRequest提取用户发出的请求信息,进行适当的处理之后,将处理结果放置到HttpServletResponse中,然或由Web容器解析HttpServletResponse对象内容,并将解析结果以浏览器能够识别的HTML等格式返回给浏览器等客户端。在这个过程中,HttpServletRequest和HttpServletResponse就如同两条渡船,负责在Web容器和JavaWeb程序之间传递信息。需要注意的是,这两个对象仅存在于Web容器和JavaWeb程序当中,与浏览器没有关系。 2、Web应用

软件开发过程规范

【最新资料,Word版,可自由编辑!】

目录 1.前言............................................................................................................................................... 1.1目的.......................................................................................................................................... 1.2对象.......................................................................................................................................... 1.3要求.......................................................................................................................................... 1.4适用范围.................................................................................................................................. 1.5软件开发过程模型................................................................................................................. 1.6开发过程划分 ......................................................................................................................... 2.技术过程规范部分...................................................................................................................... 2.1概述.......................................................................................................................................... 2.2业务建模阶段 ......................................................................................................................... 2.3需求阶段.................................................................................................................................. 2.4分析设计阶段 ......................................................................................................................... 2.5实现阶段.................................................................................................................................. 3.管理过程规范部分...................................................................................................................... 3.1概述.......................................................................................................................................... 3.2接受项目.................................................................................................................................. 3.3重新评估项目范围和风险(对于较大项目) ................................................................... 3.4制定开发计划 ......................................................................................................................... 3.5迭代开发管理 ......................................................................................................................... 3.6监控项目的实施 ..................................................................................................................... 3.7结束项目..................................................................................................................................

WEB应用系统开发教学大纲(新)

《WEB应用系统开发》课程教学大纲 英文名称:Development of WEB Application System 课程编号:7022106 学时数:48+S16 课程性质:必修 先修课程:C#程序设计、数据结构、数据库原理 适用专业:计算机科学与技术、软件工程、物联网工程 一、课程的性质、目的和任务 1. 课程的性质 Web应用系统开发是计算机科学与技术专业高年级本科生的专业课程。是锻炼学生编程思维和能力的一门实用课程。该课程主要学习Web应用环境构建技术、Web客户端程序设计方法、Web服务端程序设计方法、Web数据库应用开发技术。通过实验使学生掌握Web应用系统开发方法解决实际问题。 2. 课程的目的和任务 本课程的目的为通过本课程的学习,使学生掌握开发https://www.doczj.com/doc/9f13865918.html,程序的基础知识和基本方法,对网络程序设计有一个全面的认识和了解,并能够独立自主开发小型网络应用程序。。 本课程的主要任务是介绍WEB系统开发的基础模式、方法,采用ASP. NET技术结合C#.NET语言进行介绍,涉及https://www.doczj.com/doc/9f13865918.html,程序所用的开发工具和运行环境、C#.NET程序设计基础和https://www.doczj.com/doc/9f13865918.html,的程序设计基础、https://www.doczj.com/doc/9f13865918.html,数据库访问、三层架构开发等有关内容。 二、课程的教学内容与基本要求 1. https://www.doczj.com/doc/9f13865918.html,开发环境 (1) 教学内容 https://www.doczj.com/doc/9f13865918.html,开发技术简介、https://www.doczj.com/doc/9f13865918.html,开发环境、一个https://www.doczj.com/doc/9f13865918.html,应用程序、https://www.doczj.com/doc/9f13865918.html,工程项目管理、实战演练——配置、测试并发布Web应用范例系统。 (2) 教学基本要求 ①了解https://www.doczj.com/doc/9f13865918.html,开发技术简介、一个https://www.doczj.com/doc/9f13865918.html,应用程序。 ②理解https://www.doczj.com/doc/9f13865918.html,开发环境、。 ③掌握https://www.doczj.com/doc/9f13865918.html,工程项目管理、实战演练——配置、测试并发布Web应用范例系统。 2. 系统框架及页面设计 (1) 教学内容 网站规划、控件及事件、HTML控件、母版、导航系统、样式表及主题、实战演练

《Java Web应用开发》课程标准

课程标准 所属系部:信息工程系 课程名称:JavaWeb应用开发 课程性质:专业必修课 课程学时:96 适用专业:云计算技术与应用()

《JavaWeb应用开发》课程标准 1、课程概述 1.1课程定位 JavaWeb应用开发是云计算技术与应用专业的核心课程之一,是该专业的专业必修课。通过本课程的学习,使学生具备JavaWeb应用开发相关知识、良好的编程习惯和手机应用软件开发的能力,能胜任基于JavaWeb开发等工作任务。Java的J2EE体系中,JSP/Servlct/J avaBcan占据了非常重要的位置,不仅成为web项目开发的利器,而且也是人们接触和使用J 2EE的一个基础。通过详实的内容和丰富的案例,引领学生学习JSP/Scrvlet/JavaBcan的开发体系,以及这套技术在项目开发中的实际应用。同时,通过教学过程中的实际开发过程的规范要求,培养学生分析和解决实际问题的能力,强化学生的职业道德意识、职业素质养意识和创新意识,为学生以后从事更专业化的软件开发工作奠定基础。《JavaWeb程序开发入门》是面向计算机相关专业的一门专业JavaWeb入门课程,涉及XML基础、Tomcat服务器、HTTP协议、Servlet技术以及JSP技术等内容,通过本课程的学习,学生能够了解XML的语法及其约束的定义,能够掌握JSP和Servlet技术并开发简单的JavaWeb项目、使用Tomcat 服务器发布和运行JavaWeb项目。前导课程有《Java程序设计》、《数据库技术基础》,后续课程有《J2EE项目开发》、《JavaWeb应用开发实训》、《毕业实习》等。 1.2课程设计思路 本课程标准以“开发”、“应用”为原则,彻底打破原来学科课程链路模式,根据基于工作过程专业建设模式,以能力为本位,构建以实际工作情境为单位的课程体系。课程内容的选取按照软件开发市场、软件企业、行业对Web开发程序员的需求情况,确定了“初级We b程序员”的职业岗位培养目标。在教学实施过程中基于实际工作的教学模式、通过各种各样的教学方法和教学手段,培养Web程序员应具备的能力。 每个项目的学习都是围绕职业能力的形成组织课程内容,以真实项目为核心整合Web程序员的所需的知识、技能和态度。实践中创设职业情境,围绕着软件企业、软件行业中的实际项目而展开的,学生通过各个环节的技能训练,感受职业环境,实现编程技能的逐步提升。本课程课时为96学时。 本课程在教学过程中,倡导自主学习,启发学生对设定问题积极思考、分析,鼓励多种思维方式并将其表达出来,尊重个体差异。采用项目教学法进行教学,每个项目的成绩采取自评、互评、教师综合评价相结合的方式能激励学生的学习兴趣和自主学习能力的发展。教

(完整版)《JavaWeb程序开发入门》课后练习(含答案)

第一章 【测一测】 1、请编写一个格式良好的XML文档,要求包含足球队一支,队名为Madrid,球员5人:Ronaldo、Casillas、Ramos、Modric、Benzema;篮球队一支,队名为Lakers,队员2人:Oneal,Bryant。要含有注释。 2、在XML Schema文档中,定义一个雇员的年龄为18~58周岁之间。请写出相应的元素声明。 ------第1题答案------ <球队列表> <球队类型="足球队"> <队名>Madrid <队员> <姓名>Ronaldo <姓名>Casillas <姓名>Ramos <姓名>Modric <姓名>Benzema <球队类型="篮球队"> <队名>Lakers <队员> <姓名>Oneal <姓名>Bryant ------第2题答案------

第二章 【测一测】 1、如何将web应用发布到tomcat上localhost主机,请写出至少3种实现方式? 2、请问在chapter02应用的web.xml文件中进行哪些配置,可以将welcome.html页面配置成该应用的默认页面? ------第1题答案------ 1、直接将web应用部署到tomcat/webapps下 2、将web应用通过tomcat/conf/server.xml进行配置 3、创建一个xml文件,并配置web应用信息,将xml文件放置tomcat\conf\Catalina\localhost ------第2题答案------ 在web-app标签中进行如下配置即可: welcome.html 第三章 【测一测】 1、简述HTTP1.1协议的通信过程? 2、简述POST请求和GET请求有什么不同? ------第1题答案------ 1、客户端与服务器端建立TCP连接。

Web系统开发课程设计报告

Web系统开发课程设计报告题目:学生成绩管理系统 专业:网络工程 班级: 学号: 姓名: 2011年12 月2 日

目录 1概述 (1) 2系统分析 (1) 2.1 业务分析 (1) 2.2 数据流程 (2) 3系统设计 (4) 3.1 总体设计 (4) 3.2 代码设计 (5) 3.3 界面设计 (7) 3.4 输入输出设计 (8) 3.5模块设计 (9) 3.6 系统实现 (10) 4心得体会 (11) 5参考文献 (12)

1 概述 本课程设计的目的就是要通过一次集中的强化训练,使学生能及时巩固已学的知识,补充未学的但又必要的内容。进行课程设计目的在于加深对ASP基础中基础理论和基本知识的理解,促进理论与实践的结合,进一步提高程序设计的能力。具体目的如下: 1.使学生更深入地理解和掌握该课程中的有关基本概念,程序设计思想和方法。 2.培养学生综合运用所学知识独立完成课题的能力。 3.培养学生勇于探索、严谨推理、实事求是、有错必改,用实践来检验理论,全方位考虑问题等科学技术人员应具有的素质。 4.提高学生对工作认真负责、一丝不苟,对同学团结友爱,协作攻关的基本素质。 5.培养学生从资料文献、科学实验中获得知识的能力,提高学生从别人经验中找到解决问题的新途径的悟性,初步培养工程意识和创新能力。 6.对学生掌握知识的深度、运用理论去处理问题的能力、实验能力、课程设计能力、书面及口头表达能力进行考核。 学生成绩管理系统,采用计算机对学生成绩进行管理,进一步提高了办学效益和现代化水平。为广大教师和学生提高工作效率,实现学生成绩信息管理工作流程的系统化,规范化和自动化。一个高效的学生成绩管理系统可以存储历届的学生成绩档案,不需要大量的人力,只需要几名专门录入员即可操作系统,节省大量人力,可以迅速查到所需信息、高效、安全、学生在能方便的查看自己的成绩。可以提高高校教学的工作效率与准确率,并能让学生尽快的查询到自己的考试成绩,以便让他们尽快的投入到新的课程的学习或复习这次没有考过的课程中。包括后台数据库的建立和维护以及前端应用程序的开发两个方面。 2 系统分析 2.1 业务分析 “学生成绩管理系统”包括三个模块:学生登陆、教师登陆、管理员登陆。 这三个模块既相互联系又相互独立。在模块设计中,包含有管理员管理,教师管理,学生管理功能,数据库连接设置这几个模块。

软件开发过程概述

第1章软件开发过程概述 1.1 软件开发过程概述 1.1.1 软件的概念 软件(Software)简单的说就是那些在计算机中能看的着,但摸不着的东西,概念性的说软件也称为“软设备”,广义地说软件是指系统中的程序以及开发、使用程序所需要的所有文档的集合软件分为系统软件和应用软件。 软件并不只是包括可以在计算机上运行的程序,与这些程序相关的文件一般也被认为是软件的一部分。 软件被应用于世界的各个领域,对人们的生活和工作都产生了深远的影响。 1. 系统软件 系统软件是负责管理计算机系统中各种独立的硬件,使得它们可以协调工作。系统软件使得计算机使用者和其他软件将计算机当作一个整体而不需要顾及到底层每个硬件是如何工作的。 一般来讲,系统软件包括操作系统和一系列基本的工具(比如编译器,数据库管理,存储器格式化,文件系统管理,用户身份验证,驱动管理,网络连接等方面的工具)。 2. 应用软件 应用软件是为了某种特定的用途而被开发的软件。它可以是一个特定的程序,比如一个图像浏览器。也可以是一组功能联系紧密,可以互相协作的程序的集合,比如微软的Office软件。也可以是一个由众多独立程序组成的庞大的软件系统,比如数据库管理系统。较常见的有:文字处理软件如WPS、Word等;信息管理软件;辅助设计软件如AutoCAD ;实时控制软件;教育与娱乐软件。 1.1.2 编程与软件开发 软件开发的内容是:需求、设计、编程和测试。 (1)需求:不仅仅是用户需求,应该是开发中遇到的所有的需求。比如,你首先要知道做这个项目是为了解决什么问题;测试案例中应该输入什么数据......为了清楚地知道这些需求,你经常要和客户、项目经理等交流。 (2)设计:编码前,肯定有个计划告诉你要做什么,结构是怎样等等。你一定要按照这个来做,否则可能会一团糟。 (3)编程:如果在项目截止日,你的程序不能跑起来或达不到客户的要求,你就拿不到钱。

Web项目开发流程精编

W e b项目开发流程精编 Document number:WTT-LKK-GBB-08921-EIGG-22986

Web项目开发的一般流程——总纲 1.需求确定 2.分析与设计 架构分析与设计 业务逻辑分析 业务逻辑设计 界面设计 3.开发环境的搭建 4.开发-测试-开发-测试 5.文档撰写 6.图解

7. 一. 需求确定 通过各种手段确定系统的功能与性能 功能:用户维护、物料维护... 性能:可以支持n 个并发的访问,并且响应时间不高于m 毫秒… 手段:头脑风暴、会议、询问 原型-界面原型、业务原型… 本阶段是项目开发的重要阶段 在web 项目中,通常界面设计会在本阶段进行 二. 架构分析与设计 需求确分析与设 架构分析与设计 业务逻辑分析 业务逻辑设计 界面色设计 开发环境搭建 开发 测试 文档撰写

三. 1.逻辑架构:3层架构,n层架构…,MVC…Model 1 or Model 2… 2.物理架构:Web服务器的分布、数据库服务器的分布… 3.技术的解决方案的确定:Java/.NET、Open Source/商业… 4.业务逻辑分析 根据需求分析业务逻辑 1)有哪些人会用本系统 2)他们会使用本系统做什么 3)通常他们使用本系统的步骤是什么样的 4)会有哪些明显的类来支持本系统的运行 5)会有哪些不同的提示会反馈给用户 6)… 本阶段与需求确定密切相关,通常在确定需求的时候就会进行相关的分析。 5.业务逻辑设计 根据需求的分析来确定具体的类 确定类的属性 确定类的接口 确定类之间的关系 确定用户操作流程在设计上的反映 进行数据库的设计

软件开发流程说明文档

软件开发流程说明文档 作者:知名企业中心第一步:需求调研分析 1、相关系统分析员向用户初步了解需求,然后用word列出要开发的系统的大功能模块,每个大功能模块有哪些小功能模块,对于有些需求比较明确相关的界面时,在这一步里面可以初步定义好少量的界面。 2、系统分析员深入了解和分析需求,根据自己的经验和需求用WORD或相关的工具再做出一份文档系统的功能需求文档。这次的文档会清楚列出系统大致的大功能模块,大功能模块有哪些小功能模块,并且还列出相关的界面和界面功能。 3、系统分析员向用户再次确认需求。 第二步:概要设计 首先,开发者需要对软件系统进行概要设计,即系统设计。概要设计需要对软件系统的设计进行考虑,包括系统的基本处理流程、系统的组织结构、模块划分、功能分配、接口设计、运行设计、数据结构设计和出错处理设计等,为软件的详细设计提供基础。 第三步:详细设计 在概要设计的基础上,开发者需要进行软件系统的详细设计。在详细设计中,描述实现具体模块所涉及到的主要算法、数据结构、类的层次结构及调用关系,需要说明软件系统各个层次中的每一个程序(每个模块或子程序)的设计考虑,以便进行编码和测试。应当保证软件的需求完全分配给整个软件。详细设计应当足够详细,能够根据

详细设计报告进行编码。 第四步:编码 在软件编码阶段,开发者根据《软件系统详细设计报告》中对数据结构、算法分析和模块实现等方面的设计要求,开始具体的编写程序工作,分别实现各模块的功能,从而实现对目标系统的功能、性能、接口、界面等方面的要求。 第五步:测试 测试编写好的系统。交给用户使用,用户使用后一个一个的确认每个功能。 第六步:软件交付准备 在软件测试证明软件达到要求后,软件开发者应向用户提交开发的目标安装程序、数据库的数据字典、《用户安装手册》、《用户使用指南》、需求报告、设计报告、测试报告等双方合同约定的产物。《用户安装手册》应详细介绍安装软件对运行环境的要求、安装软件的定义和内容、在客户端、服务器端及中间件的具体安装步骤、安装后的系统配置。 《用户使用指南》应包括软件各项功能的使用流程、操作步骤、相应业务介绍、特殊提示和注意事项等方面的内容,在需要时还应举例说明。 第七步:验收 用户验收。

一个Web系统的界面设计和开发复习过程

一个W e b系统的界面设计和开发

一个Web系统的界面设计和开发1.工作流程(下图,是整个开发过程中与界面设计相关的主要流程工作) 从最初需求分析开始,我就加入项目,自始自终参加整个开发过程。

在需求分析阶段,参与了对客户的访问和调研; 在概要设计阶段,参与了部分系统设计分析工作; 在详细设计阶段,完成了整个系统界面设计和Demo制作,并提交用户反馈; 在代码开发阶段,参与了系统表现层的设计开发。 2.需求分析 在需求分析阶段,主要针对界面交互相关问题,对用户进行若干调研。 主要包括以下内容 ·受众用户群调查 ·系统使用环境调查 ·受众用户使用习惯调查 ·用户对旧版本软件使用情况调查 这一阶段,由于成本原因,我并没有直接访问客户进行调查。工作主要是提出某些具体问题,由需求调研人员,以问卷或口头问答方式,对客户进行调研。另外,公司经验丰富的客服人员和市场人员,也是非常重要的需求来源之一。 本系统的客户群主要为国家省市下属质检单位,最终受众年龄从年轻到较高龄都有。对于普通国家机关人员,一般对计算机系统和网络不够熟悉,计算机环境一般,甚至比较差,少有配置优良的环境。在这种环境下,用户对计算机使用一般没有使用倾向,大多更适应手工操作。对本系统的前代使用,最主要意见是使用困难,不方便。 还有其他具体调查反馈,如用户基本不使用鼠标右键,年龄较大的用户难以看清密集的较小文字等等。

3.界面设计原则 在概要设计阶段,根据需求阶段的调研结果,我整理了系统界面设计的基本原则。因为在代码开发阶段,很多时候界面的具体制作是由开发人员直接写代码,因此必须确定一定的原则和规范,以保证系统界面的统一。 一般适用原则 ·简单明了原则:用户的操作要尽可能以最直接最形象最易于理解的方式呈现在用户面前。对操作接口,直接点击高于右键操作,文字表示高于图标示意,尽可能的符合用户对类似系统的识别习惯。 ·方便使用原则:符合用户习惯为方便使用的第一原则。其它还包括,实现目标功能的最少操作数原则,鼠标最短距离移动原则等。 ·用户导向原则:为了方便用户尽快熟悉系统,简化操作,应该尽可能的提供向导性质的操作流程。·实时帮助原则:用户需要能随时响应问题的用户帮助。 ·提供高级自定义功能:为熟悉计算机及软件系统的高级用户设置自定义功能,可以对已经确定的常规操作以及系统的方方面面进行符合自身习惯的自定义设置。包括常规操作、界面排版、界面样式等种种自定义。 ·界面色彩要求:计算机屏幕的发光成像和普通视觉成像有很大的不同,应该注意这种差别作出恰当的色彩搭配。对于需用户长时间使用的系统,应当使用户在较长时间使用后不至于过于感到视觉疲劳为宜。例如轻松的淡彩为主配色,灰色系为主配色等等。切忌色彩过多,花哨艳丽,严重妨碍用户视觉交互。 ·界面平面版式要求:系统样式排版整齐划一,尽可能划分不同的功能区域于固定位置,方便用户导航使用;排版不宜过于密集,避免产生疲劳感。 B/S构架适用原则 ·页面最小:由于Web的网络特性,尽可能减小单页面加载量,降低图片文件大小和数量,加快加载速度,方便用户体验。

网页技术:Web系统概述

Web系统概述——以第一章内容为基础 (1)本章内容概述 本章介绍了Web系统的基本构成以及相关概念和术语,如网页、主页、网站、超级链接、URL、Web客户机、Web服务器等,还涉及Web系统的基本原理,重点介绍了HTML技术、CSS技术、客户端脚本技术,还简单介绍Web页面的开发工具、开发模式、开发流程和运营环境等。通过本章的学习,让我们能够对Web系统的基本结构和工作原理有充分的理解和掌握,并学会网页和网站的设计以及相关开发工具的使用等。 (2)本章内容阐述 WWW(world wide web 万维网)由遍布在互联网中的web服务器和安装了web浏览器的计算机组成,它是一种基于超文本方式工作的信息系统。作为一个能够处理文字,图像,声音,视频等多媒体信息的综合系统,它提供了丰富的信息资源,这些信息资源以web页面的形式分别存放在各个web服务器上,用户可以通过浏览器选择并浏览所需的信息。 本章内容从对10个Web技术主题的讲解开始,使我们对整个Web系统都有了进一步完整的了解。下面,我们基于对本章内容的理解进行深层次的阐述。 首先,我们来回顾下十个Web技术主题:○1什么是Web○2Web 服务的内容○3Web网站○4Web服务内容的定位○5超级链接○6Web 客户机○7Web服务器○8Web代理和缓存技术○9Web系统基本原理○10Web的主要特点。 ○1什么是Web Web本意是蜘蛛网和网的意思。现广泛译作网络、互联网等技术领域。表现为三种形式,即超文本(hypertext)、超媒体(hypermedia)、超文本传输协议(HTTP)等。Web由许多Web 站点构成,每个Web站点是一组资源的集合,这些资源位于 Internet/Intranet的一台或多台服务器上。

系统开发过程介绍

三、系统开发过程 □五个阶段 各种系统开发方法学在围、复杂性、完善程度以及方法上有很大的不同。尽管有的方法学分三个阶段,有的分15个阶段,但是每个方法学所描述的要完成的活动基本上是相同的。本章要阐述的最重要的一点是:最好的方法学是那些始终把用户考虑进去的方法学。过去的情况是,用户管理人员与信息服务开发组合作来完成系统的一般功能说明书,然后,由信息服务人员来进行系统开发。现在,系统开发是各占50%的比例;因此,用户管理人员应该非常熟悉系统开发的大体过程,特别应该熟悉他们单位自己使用的方法学。 系统开发过程可分为五个阶段来描述。这五个阶段是: 1.第Ⅰ阶段—系统开始和可行性研究 2.第Ⅱ阶段—系统分析和设计 3.第Ⅲ阶段—程序设计 4.第Ⅳ阶段—转换和实现 5.第Ⅴ阶段—实现后的评价 第Ⅰ阶段—系统开始和可行性研究是在为开发一个建议的系统提供人力和资源之前完成的。第Ⅰ阶段多数的工作和编写的资料是第Ⅱ阶段的输入。在第Ⅱ阶段—系统分析和设计期间,系统分析员与用户一起工作以编写详细的功能和系统的说明书。将这些说明书交给程序员,然后开始第Ⅲ阶段——程序设计。在第Ⅵ阶段—转换和实现期间,一旦软件开发出来,则建立数据文件,转换现有系统,并且实现新系统。第Ⅴ阶段—实现后的评价。在开始了系统寿命期中的生产阶段之后,提出(经常被忽略的)实现后的评价要求。 □具体开发过程 下面将逐步地描述系统开发过程。至于具体的细节、相互的影响、方法、形式等,用户管理人员应该与信息服务经理联系,与他们讨论公司当前使用的方法学,同时再看看公司部描述方法学的手册。 1.第Ⅰ阶段—系统开始和可行性研究 在第Ⅰ阶段的活动中很少有与其他四个阶段的活动相一致的。此处所提供的方法包括对于受拒绝后的再次服务请求的方法以及将技术转移可能性的研究合并到诸过程中这些容。第Ⅰ阶段最终的产品有两个部分。第一部分是实际的可行性研究报告,它包含对建议的或改进的系统的描述以及利润/成本分析。第二部分是系统的初步设计。它对于估价成本和利润是必要的。该初步设计是第Ⅱ阶段—系统分析和设计的直接输入。 将系统的初步设计并入可行性研究的依据是,多数可行性研究是以概念而不是以设计为基础的。如果在描述系统目标上花的时间太少,那么成本估计,甚至利润估计将是错误的。用概念来指导可行性研究注定会导致成本过高,而且用户不满意。在系统初步设计上所花费的时间是值得的,即使拒绝可行性研究也是如此。因为所编写的资料将必然会被证实其他项目中是有价值的。 下述编号的活动与表20.9.2的系统开发责任矩阵相对应。 (1)提交服务请求 图20.5.1说明了包括对受拒绝的请求再次请求处理的一种方法。所请求的服务毕竟是用户做的,因此,应该由用户着手进行。我们鼓励用户管理人员请求信息服务人员的帮助,但是应该再一次强调,业务领域的管理人员应该对各种大小的服务请求都提供合适的资料。 (2)估价服务请求 正如在责任矩阵中所注释的那样,信息服务管理人员只能承诺小的项目(由公司的方针所确定的小项目)。 (3)指定可行性研究组 信息服务经理和用户经理共同来指定适当的混合的人选以组成可行性分析研究组。该组至少由一名系统分析员和一名用户代表组成。可行性研究组的大小取决于可行性研究的围和时间限制。 用户代表应该熟悉当前专业领域的所有工作,用户经理、总经理助理,或专业领域分析员是合理的候选者,用户的系统分析员,具有计算机信息处理基础知识的情况已经越来

相关主题
文本预览
相关文档 最新文档