APP下载

基于实地优先的GTD管理系统设计与实现

2017-09-29巢晟盛詹永照杨洋

软件导刊 2017年9期
关键词:实地IP地址网关

巢晟盛 詹永照 杨洋

摘 要:為了合理有效地安排时间,提高任务完成效率和自我管理能力,以GTD理论作为指导思想,在实现个人任务管理的基础上,结合软件模块高内聚、低耦合的设计特点,提出一种可行的实地任务提醒机制,实现了一款符合4W1H分析法的应用于时间管理的GTD软件。用户使用客户端即可查询本人任务,以列表的形式显示任务与任务完成状态,并且可直接操作选中任务。该系统极大地提高了任务完成效率,对任务构建了有效的过滤箱,方便用户及时、快速地了解任务,为提前完成任务提供了便利。

关键词:GTD;WPF;4W1H;时间管理;实地优先

DOI:10.11907/rjdk.171633

中图分类号:TP319 文献标识码:A 文章编号:1672-7800(2017)009-0100-04

Abstract:In order to arrange time reasonably and effectively and improve the efficiency of task and self-management ability, with GTD theory as the guiding ideology, based on the achieving personal task management, associated with the features of high cohesion and low coupling, this paper proposes a feasible field task reminder mechanism and implements a GTD software conforming with 4W1H analysis for the time management. By using the client, the users can query own tasks displayed by the format of a list for the information of tasks and status and operates the selected tasks directly. The system has greatly improved the efficiency of the task, designed an effective filter box for tasks, quickly understood tasks on time and provided the convenience to fulfill the tasks ahead of time.

Key Words:GTD; WPF; 4W1H; time management; field priority

0 引言

GTD[1]理论发展至今,已经逐渐从传统的理论研究阶段向实际应用阶段过渡。现如今,进入了提高效率与能动性、将目标与角色融入到时间管理中的第四代。国内外许多学者和公司对GTD理论的模式切换、如何进行有效过滤以及应用系统中场景、角色与目标的绑定进行了深入研究,并以GTD为基础进行了理论扩展,增强了实际应用能力。但是大多数场景的切换只是实现了通过上班模式、户外模式、住宅模式等改变带来角色、目标的改变,而没有涉及到所在地点变化及其绑定的任务目标变化。因此,这是一个亟待解决的问题。

科技进步和时代发展,使生活和工作节奏加快。然而,人们在享受互联网带来便利的同时,各种时间管理问题也随之而来。在职场与学校,人们由于缺乏对时间管理的认知和对时间的控制能力,一方面可能造成工作进度拖延,另一方面面对众多任务,可能手足无措,无法保质保量地完成工作。为了顺应时代的发展,更好地满足用户需求,本系统在主流GTD软件的基础上,开发了基于实地优先的GTD管理软件。该系统根据用户地点的转换提醒用户完成符合当时场景的任务,从而提高任务完成效率。

1 相关概念

1.1 实地优先

实地优先是一种以实际所在地为基准,对所有任务设置优先级的思想。当任务不在实际所在地时,该任务的优先级较低,且不被提醒;当任务在实际所在地时,该任务优先级较高,则会提示用户完成任务。随着用户地点的不断改变,任务优先级也随之改变,这种任务优先级的设置保证了实地任务提醒机制的实现。基于实地优先的任务提醒机制是基于位置服务[2]的一种变异方法,区别于移动端,它在PC端为用户提供实地任务优先的提醒服务。

1.2 GTD概念

GTD(Get Things Done)是一种时间管理方式,由David Allan提出,是一种将繁重超负荷的工作生活方式变成无压力高效的时间管理系统。GTD 的基本理论是将一个人要完成的任务和事件全部从大脑中移出,记录到纸上,使大脑能够不被多余的事情打搅而集中于现在需完成的事情上。GTD的核心理念在于只有将心中所想的所有事情都写下来并安排好下一步计划,才能够心无挂念、全力以赴地做好眼前工作,提高效率。GTD的核心原则分为收集、整理、组织、回顾与执行5个步骤,如图1所示。

David Allen的GTD方法主要基于两个目的:①抓住所有一切需要处理的事情(现在的、以前的、将来某时的;大的、小的、或者不大不小的),把它们统统置入一个脱离大脑的逻辑系统中;②训练自己在接受一切“输入信息”的前期作出决定[1]。GTD是一种简单、高效的方式,可根据所处的位置和时间,执行最高效的行动方案。

1.3 4W1H分析法

4W1H分析法[3]也称为5何分析法,4W1H即Who、 What、 When 、Where 、How,其实就是人事时地物,分析任何问题都可以从这5方面下手,找出问题根据。该方法是对选定的项目、工序或操作、对象、地点、时间、人员、方法等方面提出问题进行思考,使思考的内容深化、科学化。4W1H分析法的应用领域非常广泛,比如整合管理、范围管理、时间管理、成本管理、质量管理、人力资源管理、沟通管理、风险管理、采购管理、干系人管理等众多知识领域。在时间管理的知识领域4W1H中,又分为7个步骤,分别是规划进度管理、定义活动、排列活动顺序、估算活动资源、估算活动持续时间、制定进度计划、控制进度,各步骤循序渐进。endprint

1.4 网关概念

在Internet中的网关一般指用于连接两个或者两个以上网段的网络设备,通常使用路由器(Router)作为网关。在TCP/IP网络体系中,网关的基本作用是根据目的IP地址的网络号与子网号,选择最佳出口对IP分组进行转发,以实现跨网段的数据通信[4]。如图2所示,PC0和PC1分别是在路由Fa0/0和Fa0/1的局域网里,PC0和PC1的IP地址都是局域网IP地址,它们之间的交互需要通过Fa0/0和Fa0/1的传达。Fa0/0和Fa0/1即是从一个网络连接到另一个网络的关口,是局域网通向其它网络的IP地址。

2 GTD管理系统整体设计

在GTD理论的指导下,基于实地优先的GTD管理系统结合自身特点,进行相应的模块划分。本系统包括登录模块、任务处理模块、新建任务模块、数据库模块。登录模块主要实现用户的登录、注册,以及检索添加数据库账号功能;任务处理模块主要负责为用户提供任务信息的查询、操作、提醒功能,包括用户资料,任务的时间、地点、执行人、方式等信息的查询和实地任务的提醒功能等,以及对新建模块的跳转,保存数据到数据库;新建模块主要负责为用户新建任务,并将任务传递给任务处理模块,以及与数据库进行交互。系统运行流程如图3所示。

2.1 登录模块设计

登录模块主要实现WPF动画效果与账号密码登录功能。WPF动画效果主要是在实现太阳照射、云朵飘动、树叶摇摆的简单动画基础上,将在同一时间线下的简单动画组合成复杂并发的动画;登录功能通过拦截器[5]匹配数据库账号密码。在保证安全登录的基础上,将动画效果与文本框、密码框有机结合,既要保证前端界面的美观绚丽,又实现登录的业务逻辑。

2.2 任务处理模块设计

任务处理模块主要实现任务显示、任务处理状态更改、按照关键字对任务排序、关键字任务分类、任务删改、实地任务提醒、新建模块跳转等功能,具体需完成的功能包括:将数据库中的任务以及新建模块传递过来的新任务载入显示;为用户提供待完成、已完成、垃圾箱分类的任务处理;根据不同关键字的排序,例如对同一天的任务进行升序排列;用户直接对任务操作,包括删除任务、修改错误信息等;自动检索出实际地址的任务并作出提醒,要求用户进行下一步操作;跳转到新建模块,实现任务的创建功能。

2.3 新建模块设计

新建模块主要实现实地归属地定位、上次登录地显示、任务新建等功能。实时归属地主要在获取IP地址的基础上,通过对IP的分析,获得实地归属地;上次登录地的显示是通过获取数据库中上次登陆地的数据,显示在新建模块窗口;新建任务是在4W1H的时间管理原则下,分别创建任务的时间、地点、执行人、事件、方式,并且将新建任务传递给任务处理模块。

2.4 数据库模块设计

数据库和其余3个模块交互,在符合其它模块数据的要求下,严格设计字段。数据库主要包含3张表,分别是用户信息表、任务信息表、任务提醒表。用户信息表根据用户的关键字符设计而成;任务信息表包含任务的时间、地点、执行人、事件、方式等关键字符;任务提醒表和用户信息表、任务信息表绑定,包含用户ID、任务ID等关键字符。

3 GTD管理系统实现

3.1 登录模块实现

登录模块主要完成前端动画设计和后台拦截功能。具体功能实现如下:

(1)在本模块中,采用WPF[6]设计界面前端,以数据驱动为理念,增加了动画效果图,大大提升了软件界面的美化程度,在同一时间可实现太阳照射、云朵飘动、树叶摇摆的动画效果组合。

(2)本模块借鉴了Java语言拦截器的设计思路,在.Net平台上,实现了C#版本的拦截器。在拦截器的作用下,在不破坏登录业务逻辑的前提下,对业务进行额外的拦截操作,例如不允许同一个账号同时登录等。拦截器拦截过程如图4所示。

3.2 任务处理模块实现

任务处理模块主要分为7大部分功能,具体功能实现如下:①任务显示功能的数据源主要来自载入数据库已保存的任务或者新增任务,通过WPF控件实现列表化显示任务;②任务处理状态主要是通过修改任务等级,垃圾箱、待处理、已完成状态分别对应不同的等级0、1、2;③任务排序功能主要是根据任务关键字对所有任务进行检索,通过WPF的控件特性加载数据关键字,实现任务关键字的排序;④关键字任务分类是通过关联关键字与包含此关键字的任务,实现一对多的分类;⑤任务的删除操作采用的是依赖于WPF控件的属性,实现对选中任务的删除;任务的修改操作采用的是焦点事件的获取与丢失,获取焦点即能对所在任务进行修改,丢失焦点则不能修改;⑥用户地点的转换提供及时的任务提醒,主要依赖于计时器对任务的快速检索,当任务地点与本地任务匹配时,跳出任务提醒窗口,提醒作出任务操作。提醒任务流程如图5所示;⑦新建模块跳转是通过实现按钮中的新建窗口实例方法,然后新建模块传递任务给任务处理模块。

3.3 新建模塊实现

新建模块主要实现了实地归属地定位、上次登录地显示、新建任务的功能。具体功能实现如下所示:

(1)实地归属地的定位功能主要通过IP地址查询归属地的方式获得。在无线状态下,IP地址只是本地路由器分配给本机的一个局域网IP,并不是本机真实的IP地址,故需要采用相应的网关获取方法将本地IP地址转变为在万维网中包含本机的整个局域网的IP地址。网关IP地址的获取可以采用网页抓取[7]和程序代码两种方式。在实践过程中,程序代码获得的网关IP地址是默认的网关地址192.168.1.1,具有很强的局限性,准确性不高。因此,采用网页抓取的技术是正确率较高的方法。将得到的网关IP地址进行封装,通过基于 WebClient对象的网页抓取技术,访问http://ip.3322.org网址,返回IP字符串,例如180.118.107.94。IP归属地检索流程如图6所示。endprint

(2)上次登录地的显示主要是通过数据库从用户信息表中载入用户上次的登录地址。若为初次登录,新建窗口则显示第一次登录,否则将显示上次登录地的信息。

(3)新建功能在4W1H的要求下,新建5个关键词的任务,并且通过WPF的列表属性将新建任务实时传递给任务处理模块。

3.4 数据库模块实现

任何软件的设计和实现都离不开数据库。数据库模块主要完成的功能是根据需求设计表字段(见图7),为登录模块、任务处理模块、新建模块提供数据支撑,为业务逻辑实现增删改查提供便利。在本系统中,任务提醒表的userID、taskID分别依赖用户信息表、任务信息表,将用户信息表与任务信息表相互绑定,保证了软件和数据库的有機结合,最终实现了基于实地优先的GTD管理软件[8]。

4 功能验证

在功能模块设计以及数据库设计的基础上,实现了基于实地优先的GTD管理系统。本系统采用C#编程语言进行编程,并使用Microsoft 公司提供的可编程逻辑器件开发环境Visual Studio2010进行编译和实现,在Windows 10系统上进行了软件功能测试。根据前端数据的变化,对GTD软件不同的模块功能进行了验证。

4.1 登录模块验证

实现加载动画效果的前端显示功能和具有拦截器效果的安全登录功能。前端界面由3个简单动画有机结合,当登录的账号、密码为空时,按钮无法选中;实现了类似Java的C#版的拦截器,保证了安全登录。在账号密码验证之后,跳转到处理模块,将数据库的记录加载后进入模块。

4.2 任务处理模块验证

本模块获取新建模块传递的IP归属地,根据归属地遍历任务,弹出提醒框,对提醒的任务进行操作,如图8所示;通过按钮的触发事件实现对任务的增删查改操作;在关键字分类中,例如联系人为同一人的任务分类如图9所示。

4.3 新建模块验证

新建任务窗口如图10所示。按照4W1H的要求,根据5个关键字段新建任务;将新建任务的数据传递给任务处理模块,新建任务为待完成状态。

5 结语

本系统采用网页抓取技术获取无线网状态下网关的IP地址,实现了实地任务优先的功能,迎合了当前GTD软件的发展趋势。本系统对GTD理论进行了功能方面的优化,采用WPF控件数据驱动的设计思想,以及适当使用WPF控件数据驱动IP查找归属地的设计方法,提高了任务的收集、整理、组织、回顾及执行速度,满足了GTD对任务实时性的要求,符合4W1H的管理原则,这种功能的扩展在GTD时间管理中具有广阔的应用前景。然而,本文设计的软件只能应用在PC端,而不能移植到移动端,因此还需要进行进一步设计与完善。

参考文献:

[1] 戴维·艾伦.尽管去做:无压工作的艺术[M].北京:中信出版社,2003.

[2] 周傲英,杨彬,金澈清,等.基于位置的服务:架构与进展[J].计算机学报,2011,34(7):1155-1171.

[3] 韩庆龄.市场营销管理体系设计全案[M].北京:人民邮电出版社,2012.

[4] 徐再林.简述路由器在网络中的应用和其配置[J].科技创新与应用,2015(23):113-113.

[5] 孙云,陈勇,陈启祥.AOP实现技术中拦截器框架的研究[J].华南金融电脑,2005,13(12):67-68.

[6] 刘铁猛.深入浅出WPF[M].北京:中国水利水电出版社,2010.

[7] 陈哲.垂直搜索中网页抓取技术的研究[J].科技信息,2009(22):563.

[8] 罗斌.多数据库系统中数据一致性维护技术的研究与实现[D].长沙:国防科学技术大学,2009.

(责任编辑:黄 健)endprint

猜你喜欢

实地IP地址网关
杨 诚作品
铁路远动系统几种组网方式IP地址的申请和设置
三次实地采访,挖掘出暖新闻背后的超暖细节
IP地址切换器(IPCFG)
实地海棠雅著
基于SNMP的IP地址管理系统开发与应用
公安网络中IP地址智能管理的研究与思考
应对气候变化需要打通“网关”
一种实时高效的伺服控制网关设计
基于Zigbee与TCP的物联网网关设计