中国科学院软件研究所机构知识库
Advanced  
ISCAS OpenIR  > 中科院软件所  > 中科院软件所
题名:
基于组件结构的图形用户界面生成器-GUIEditor 的设计与实现
作者: 傅远彬
答辩日期: 1997
专业: 计算机软件
授予单位: 中国科学院软件研究所
授予地点: 中国科学院软件研究所
学位: 博士
关键词: 软件工程 ; 软件复用 ; 对象技术 ; 对象组件 ; 软件体系结构 ; 软件应用生成器 ; 图形用户界面
摘要: 以面向领域的软件体系结构为目标统模型的软件应用生成器,易于使用相应领域中的人员所熟悉的概念实现结构可视化,可使开发者从熟悉的概念模型出发构造系统,便于用户参与目标系统的开发和评价。基于软件体系结构的应用生成器能够自动生成目标系统的缺省代码,支持增量式系统开发,可使目标系统始终处于可运行状态。同时它很方便地支持多粒度复用和多级抽象,易于从不同的抽象层次和不同的侧面观察目标系统。GUIEditor 是一个以图形用户界面软件体系结构和对象组件技术为基础的可视化生成器, 是上述思想的一个应用实例。图形用户界面的软件体系结构是基于层次结构和事件机制。组成一图形用户界面的对象组件有主窗口、对话框、子窗口、控制项、菜单和工具条等。这些组件中只有主窗口窗口和对话框是可以独立存在的,而其余组件则须作为子组件存在。因此这些组件之间以层次结构组成一个个具有独立功能界面。用户对界面的操作形成一系列事件,组件之间通过事件传递和响应来完成指定的功能。GUIEditor 使用一简单的基于表的语言来描述图形用户界面软件体系结构。以表的属性表示组件的各种特性。每一组件有一 parent 属性指示父组件,从而形成层次关系, connection 属性指出与组件相连的连接器。组件连接器使用组件连接表描述。这种表示方式具有简单、可读性强、易于理解等特点。 GUIEditor 将一个系统的结构定义分成两个文件:工程定义文件和组件定义文件。工程定义文件定义整个系统的特性,而组件定义文件用于定义一功能相对独立的子系统组件。一个系统具有一个工程定义文件和多个组件定义文件。针对图形用户界面的软件体系结构的特点, GUIEditor 中引入组件层次图和组件连接图来可视化系统的结构。组件层次图展示组成系统的组件之间的层次关系。GUIEditor 组件层次图是可编辑,用户可以通过组件层次图实现控制项的成组控制及所有的编辑功能。组件连接图用于可视化系统的组件组成及组件之间的交互。组件连接图支持用户定义子系统,因此用户通过组件连接图方便实现系统的多级抽象。GUIEditor 提供多粒度的复用支持。工程定义文件和组件定义文件存放在对象管理系统 OMS 中,用户可以方便地复用这些定义文件。同时 GUIEditor 支持用户自定义组件并将其加入系统组件库中,以便其它开发中复用这些组件。 GUIEditor 提供完整的编辑功能,用户可以通过复制、粘贴等功能实现同一工程之内任意组件的复用。 GUIEditor 支持可视化的所见所得的界面的开发,具有方便的组件间连接功能,支持界面连接、函数连接及嵌人连接等三种连接方式。同时, GUIEditor 能够自动生成 C++代码,并使正在开发的系统处于可运行状态,支持用户和开发者一道通过模拟运行系统而在开发过程中评价系统。
英文摘要: Domain-specific software architecture-based software generator could be used to facilitate implementing domain-specific software. It generates some routing code for application system, supports incremental development, and makes the system run at any time. It can use concrete concept from the domain in visualizing the architecture, so developers can construct application systems with their familiar and vivid concepts. It also easily supports multi-granularity reuse、multi-level abstraction and multi-view of the application system. GUIEditor is a visual GUI generator that is based upon the GUI architecture style and the object component technology. The GUI architecture style is hierarchical and event driving. The GUI components include main windows, dialogs, subwindows, control items, menus, toolbar, etc.. Except for main windows and dialogs, any other components should have a parent component. So, a system becomes a hierarchical structure. Users interact with GUI components and the components issue series of events. Through events notification and response, the components of a system cooperate to fulfill the task. GUIEditor uses a simple list_based language to describe GUI architecture. The attributes of list define the features of GUI components. In every list, the parent attribute indicates the parent component and the connection attribute contains all connectors attached to this component. Connectors is also defined by lists. In GUIEditor, a system is defined by two kinds of files: project file and component file. Project files define the features of whole system and component files define sub-system components. A system has one project file and multiple component files. To visualize GUI architecture style, GUIEditor designs a hierarchy graph and connection graph. The hierarchy graph shows the hierarchy of a system. GUIEditor permit user to perform some operations on the hierarchy graph such as defining a group, cutting components, copying components etc. . The connection graph visualize components and the interactions between them. GUIEditor supports multi-level abstraction, and users can define sub-systems and group-controller. Users can reuse many kinds of productions such as a project, a component file, a group of control items, a button, a frame, etc. Users can visually build their GUI as WYSWYG and GUIEditor can generate C++ codes automatically for GUI. It supports unlimited redo, multi_undo and other normal edit functions. During the development, users can observe the system from many aspects: component hierarchy graph provides the system's hierarchical structure; from component connection graph, we can observe how components interact with each other; aided by preview, developers and users can evaluate the system at any time.
语种: 中文
内容类型: 学位论文
URI标识: http://ir.iscas.ac.cn/handle/311060/6694
Appears in Collections:中科院软件所

Files in This Item:
File Name/ File Size Content Type Version Access License
N98811.pdf(2852KB)----限制开放-- 联系获取全文

Recommended Citation:
傅远彬. 基于组件结构的图形用户界面生成器-GUIEditor 的设计与实现[D]. 中国科学院软件研究所. 中国科学院软件研究所. 1997-01-01.
Service
Recommend this item
Sava as my favorate item
Show this item's statistics
Export Endnote File
Google Scholar
Similar articles in Google Scholar
[傅远彬]'s Articles
CSDL cross search
Similar articles in CSDL Cross Search
[傅远彬]‘s Articles
Related Copyright Policies
Null
Social Bookmarking
Add to CiteULike Add to Connotea Add to Del.icio.us Add to Digg Add to Reddit
所有评论 (0)
暂无评论
 
评注功能仅针对注册用户开放,请您登录
您对该条目有什么异议,请填写以下表单,管理员会尽快联系您。
内 容:
Email:  *
单位:
验证码:   刷新
您在IR的使用过程中有什么好的想法或者建议可以反馈给我们。
标 题:
 *
内 容:
Email:  *
验证码:   刷新

Items in IR are protected by copyright, with all rights reserved, unless otherwise indicated.

 

 

Valid XHTML 1.0!
Copyright © 2007-2017  中国科学院软件研究所 - Feedback
Powered by CSpace