「开源」一个极简的敏捷项目管理系统,一个PMP和ACP的结合的产物(敏捷项目管理 acp)

一飞开源,介绍创意、新奇、有趣、实用的免费开源应用、系统、软件、硬件及技术,一个探索、发现、分享、使用与互动交流的开源技术社区平台。致力于打造活力开源社区,共建开源新生态!

一、开源项目简介

GeeTask – LESS IS MORE

一个极简的敏捷项目管理系统。

一个PMP和ACP的结合的产物,以敏捷为核心却有那么一丁点的传统。

只适合小团队,而且负责人可能身兼数职。

GeeTask不是完整的敏捷思想的实现,主要是根据自己的工作环境做了妥协。 我现在的团队是只有4个人团队包括我自己,如果完全按照敏捷过程的实施就会很繁琐, 特别是在关键角色上不能分离,比如PO和PM都是同一个人。 另外,公司的项目的压力以及人员的水平和思想还很难完全按照敏捷的思想去做。像自愿领取任务等这样的工作就很难。

二、开源协议

作者暂未指定开源协议

三、界面展示

效果图

  • 管理后台

「开源」一个极简的敏捷项目管理系统,一个PMP和ACP的结合的产物(敏捷项目管理 acp)

  • 项目控制台

「开源」一个极简的敏捷项目管理系统,一个PMP和ACP的结合的产物(敏捷项目管理 acp)

  • 一次迭代中的故事或任务

「开源」一个极简的敏捷项目管理系统,一个PMP和ACP的结合的产物(敏捷项目管理 acp)

  • 产品Backlog

「开源」一个极简的敏捷项目管理系统,一个PMP和ACP的结合的产物(敏捷项目管理 acp)

  • 会议记录

「开源」一个极简的敏捷项目管理系统,一个PMP和ACP的结合的产物(敏捷项目管理 acp)

  • 变更记录

「开源」一个极简的敏捷项目管理系统,一个PMP和ACP的结合的产物(敏捷项目管理 acp)

  • 阿里云日志服务查看

「开源」一个极简的敏捷项目管理系统,一个PMP和ACP的结合的产物(敏捷项目管理 acp)

  • IM机器人

「开源」一个极简的敏捷项目管理系统,一个PMP和ACP的结合的产物(敏捷项目管理 acp)

  • 钉钉效果

「开源」一个极简的敏捷项目管理系统,一个PMP和ACP的结合的产物(敏捷项目管理 acp)

四、功能概述

妥协是为了简化

  • 系统使用必须简单,没有繁琐的各种设置。在项目中分别使用过redmine,禅道,在小团队中很难推,因为添加一个任务或者修改一个任务要设置很多不明觉厉的各种参数,晕!
  • 增加了会议记录的功能。会议很重要,我们的需要沟通,我们会花跟多的时间沟通,沟通到每个人都理解对方的需求,甚至写代码的逻辑都会确定清楚。
  • 增加了变更记录的功能。系统发布的时候,需要清楚,生产环境会有哪些变更,比如SQL
  • 增加了IM机器人的功能。这个功能是增值功能,目的是让团队时刻收到任务变更的通知,在通知中会指名道姓(表扬)。从心理学上来说,每个人都希望看到自己的名字在一些场合出现会。这种暗示会提高积极性。

系统特点

  • 基于Yii2框架
  • 使用了Yii的RBAC权限框架,在使用的过程中限制了原生的灵活(放弃了可以给某个人分配具体的权限,以及分配多角色多权限),只个一个用户安排一个角色。个人认为这样的系统没有必要把权限分配弄的过于复杂。本身Yii的RBAC权限对一般的初学者还有点难度,而且也很难图形化表达角色权限规则等等的关系。本人前端技术有限,之前在其他的项目尝试过,尽管表达了,但是还是很难简化。如果有兴趣可以留言。
  • 本系统尽量保证了RBAC的功能,比如规则的扩展,系统自实现了项目更新规则(更新自己创建的项目),其他地方暂时没有(只是觉得这样的需求不强烈)。有兴趣的可以自己研究。
  • 在Yii的事件中增加了自定义的简单事件模型(不是对原生事件的扩展,只是可以通过原生的事件触发),通过后台管理,灵活扩展
  • 消息机器人,默认实现了钉钉机器。只是在添加或修改故事的时候触发消息。基于自定义事件实现,抽象出各种事件处理句柄。通过后台管理,灵活扩展自己需要的机器人。支持自定义消息模板
  • 项目管理独立化,用户时刻只能在一个项目的会话下工作,通过切换控制台的功能在用户参与的多个项目中切换工作环境。
  • 支持故事状态自定义。本系统默认定义的状态的出发点是类似敏捷的完成定义
  • 每个项目可以独立配置阿里云的日志服务只读模块,方便开发者查看线上日志
  • 产品Backlog
  • 会议记录
  • 变更记录
  • 增加了emoji表情,让工作的表达也有充满表情

我是如何使用的

  • 项目应该化80%的时间理解需求确定需求,所有开会讨论是必要的。
  • 核心是计划(迭代),负责人必须积极主动的推动团队的积极参与,一定要保持每个人都能参与到,建议每日站立会议,形成开会讨论的习惯,引导团队逐步导向团队自治
  • 项目的主持者是推动的主要动力,也是主要的使用者。负责主持会议,协调和分配任务,主持所有的会议并将结果更新到系统中,也人员可以轮岗记录会议。
  • 我们项目约定的迭代周期是1周,一般周5安排下周的开发任务,尽量保证一周完成。
  • 如果本周没完成的,大家一起开会讨论,分析原因,是否安排到下周或者放到产品backlog中

机器人如何使用

可以参考钉钉的机器人文档

项目状态

系统已经满足我们的项目的基础需求

更多细节已经锦上添花的功能以后有空再开发…

下面是敏捷项目的精髓

敏捷宣言

个体和互动高于流程和工具 ,可工作软件高于详尽的文档

客户合作高于合同谈判 , 响应变化高于遵循计划

敏捷12原则

交付价值 我们最优先考虑的是尽早和持续不断地交付有价值的软件,从而使客户满意

拥抱变化 即使在开发后期也欢迎需求变更。敏捷过程利用变更可以为客户创造竞争优势

持续交付 采用较短的项目周期(从几周到几个月),不断地交付可工作软件

合作 业务人员和开发人员必须在整个项目期间每天一起工作

人本思想 围绕富有进取心的个体而创建项目。提供他们所需的环境和支持,信任他们所展开的工作

面对面沟通 不论团队内外,传递信息效果最好且效率最高的方式是面对面交谈

价值 可工作软件是度量进度的首要指标

节奏 敏捷过程倡导可持续开发。发起人、开发人员和用户要能够长期维持稳定的开发步伐

精益 坚持不懈地追求技术卓越和良好的设计,从而增强敏捷能力

简洁 以简洁为本,最大限度地减少工作量

自组织 最好的架构、需求和设计出自自组织团队

自省 团队定期反思如何能提高成效,并相应地调整自身的行为

五、技术选型

安装系统

喜欢自己折腾,或者属性Yii php环境的可以安装如下安装

cd web服务器的doc目录,这里是什么就不再多讲。cd gee-taskcomposer install

创建数据库 geetask , 编码一定是 utf8mb4格式

如果是直接生产,请导入数据脚本db.sql

如果需要查看演示,请导入 geetask.sql

默认管理员及密码:admin,admin

相对详细的安装说明

安装手册

安装

只说明linux Centos的安装

window环境直接安装一个集成环境,比如xampp即可

文档中的域名请替换成自己的域名,域名解析配置不多说明

系统的开发环境

  • window10
  • xampp-3.2.2

demo运行环境

  • centos7.4
  • php-5.6
  • 5.5.60-MariaDB
  • nginx-1.12.2

centos

mysql 安装

yum install mariadb mariadb-Server

php5.6 环境准备

#清除已安装的php,可选操作yum remove php*rpm -Uvh https://mirror.webtatic.com/yum/el7/epel-release.rpmrpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpmwget http://packages.sw.be/rpmforge-release/rpmforge-release-0.5.1-1.el5.rf.x86_64.rpmyum install rpmforge

nginx 环境

yum install nginx

或apache 环境

yum install httpd

php安装

#安装php5.6yum install php56w php56-fpm php56w-mbstring php56w-opcache php56w-pdo php56w-pdo-mysql php56w-intl php56w-icu php56w-expose php56w-gd php56w-dom php56w-memcache#如果是nginx作为web服务器yum install php56w-fpm

部署代码

#上传路径 /var/www/gee-task#添加可写目录mkdir runtimechmod -D 777 runtimemkdir web/assestschmod -D 777 web/assets

创建数据库

这里太简单了就不多说明了,如果是生产使用db.sql,如果是演示使用geetask.sql

修改geetask的数据库配置

cd /var/www/gee-task/configvim db.php#修改配置return [ 'class' => 'yiidbConnection', 'dsn' => 'mysql:host=localhost;dbname=geetask', 'username' => 'root', 'password' => 'root', 'charset' => 'utf8mb4', // Schema cache options (for production environment) 'enableSchemaCache' => true, 'schemaCacheDuration' => 60, 'schemaCache' => 'cache',];

为方便部署,vendor文件我打包了,就不用composer install,直接解压即可

#到项目的仓库,只能从gitee.com的仓库下载附件#linux环境下载 vendor.tar.gz#window环境下载 vendor.rar#只说明linux的使用方法,window用rar软件解压即可#上传到/var/www/gee-task/cd /var/www/gee-task/tar -xzvf vendor.tar.gz

配置

nginx

cd /etc/nginxvim nginx#添加如下配置 http { ... #从这里开始 server { listen 80; server_name geetask.weifutek.com; root /var/www/gee-task/web/; index index.php; # Load configuration files for the default server block. include /etc/nginx/default.d/*.conf; location / { try_files $uri $uri/ /index.php$is_args$args; } #error_page 404 /404.html; # location = /40x.html { #} #error_page 500 502 503 504 /50x.html; # location = /50x.html { #} location ~ .php$ { include fastcgi_params; fastcgi_param script_FILENAME $document_root$fastcgi_script_name; #fastcgi_pass unix:/var/run/php/php-fpm.sock; fastcgi_pass 127.0.0.1:9000; try_files $uri =404; } location ~ /.(ht|svn|git) { deny all; } } #结束 .... }

apache

cd /etc/httpd/conf.d/touch geetask.confvim geetask.conf##添加如下配置<VirtualHost *:80> ServerAdmin webmaster@geetask.weifutek.com DocumentRoot "/var/www/gee-task/web" ServerName geetask.weifutek.com ErrorLog "logs/geetask.weifutek.com-error.log" CustomLog "logs/geetask.weifutek.com-access.log" common</VirtualHost>

启动服务器

nginx

systemctl start php-fpmsystemctl start nginx

apache

systemctl start httpd

六、源码地址

访问一飞开源:https://code.exmay.com/

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

(0)
上一篇 2023年8月31日 上午8:33
下一篇 2023年8月31日 上午8:43

相关推荐