赞
踩
作为产品经理,有必要了解一个技术团队中都有哪些只能且分别是做什么工作的,下图所示为一个常规技术团队的团队组织结构和基本只能分布,当然不同公司有不同的划分方法~
在职能分布上,CTO是管理和领导的角色,是技术团队的负责人,也可以说是团队老大。
产品设计包括了产品本身的功能和流程设计,同时也包括产品的交互和视觉设计。
研发版块是技术团队的主要构成部分,一般是人数最多的职能版块,研发分为前端开发和服务端开发。
测试是保证产品高质量上线发布的保障职能,黑盒测试是指一般的功能性测试,测试人员会从用户视角对产品进行全方位多角度的使用,模拟出各种可能出现的用户场景对产品进行全流程测试。白盒测试会深入到代码层面进行测试,使用测试用例对某一代码模块进行测试。
运维类似于建筑工程中的交付保障部门,对交付后的产品进行持续维护,当出现问题时及时响应并处理。
2.1 使用最广泛的服务器操作系统:Linux
Linux是一款免费的操作系统,操作系统提供人与计算机交互的界面,他可以安装和运行在各种计算机硬件设备中,Linux系统以可靠,安全,稳定,可拓展的特性在互联网技术领域得以广泛应用。
2.2 网上支付的基础保障协议: OpenSSL
OpenSSL是一个开源且强大的安全套接字层密码库。OpenSSL是一个基于密码学的软件开发包,具备完整的加密算法和数据加密功能,是网络通信安全及数据完整性的一套安全协议,通过OpenSSL可以为数据在互联网的传播提供安全保障,使数据以加密安全的方式进行传输,防止核心保密数据被窃取或者监听。
2.3 数据库标杆:MySQL
MySQL是一个开源数据库管理系统,属于关系型数据库,MySQL的实用性非常广泛,为C、C++、Java、PHP等主流开发语言提供了使用接口,使基于任何技术语言开发的系统都可以使用MySQL 作为数据库。我们每天使用的互联网会产生大量的数据,而这些数据最终都存储在数据库里。
2.4 服务器的“温床”: Apache
Apache是一组服务,是我们日常使用的 Web 网站的容器,各种网站都运行在Apache提供的环境中,Apache为我们每天使用的互联网服务提供了基础运行环境。Apache软件基金会是专门为运作 Apache开源项目提供支持的非营利性组织,他们还推出了一系列的开源软件平台,包括大数据处理的支撑技术Hadoop,服务端容器Tomcat等。
2.5 工程师的造物利器: Eclipse
Eclipse是一个开放源代码的基于Java的可扩展开发平台。Eclipse本身是一组开发服务框架的合集,简单说,Eclipse是提供给软件开发人员进行软件开发的工具。很多使用Java语言的系统都使用Eclipse作为开发工具来开发,现在,Eclipse不仅仅是Java开发工具,还可以进行C、Ch+和PHP语言的软件开发。
工程师在和产品经理共同的过程中,使用最多的就是技术语言。每一位工程师都有自己擅长的语言,作为非技术产品经理,一定要能区分不同的编程语言,如果让一位只开发 Android应用的工程师去改 iOS应用的代码,或者让做客户端的同学去帮助服务端的同学开发,那会成为笑话的。
产品经理在产品设计过程中能对那些属于动态数据的部分做特殊标记,那么工程师一定刮目相看,也降低了“产品经理额外说明和解释的沟通成本。如图3-4所示
3.1数据的组织方式:数据结构
在计算机的世界中,我们通过程序语言告诉计算机我们]想表达的事物。那如何告诉计算机我们描述的是一个什么物体或者是一件什么事情呢?答案就是通过数据结构。数据结构分为数组、栈、队列、堆、树、图等,每种数据结构都代表一种数据集合组织的方式,每种方式都有各自的特点。
3.2什么是程序
程序是指按照一定的规则和顺序的任务执行过程,是一套指令集合,在软件开发中,程序由数据结构和算法组成。在计算机中,我们通过编程语言表示一段程序,“程序=数据结构+算法”,我们可以说程序由数据结构和算法组成。
产品经理在产品设计的过程中免不了与数据打交道,对于产品数据存储结构设计的了解可以帮助产品经理建立产品的数据模型。
4.1什么是数据库
数据库运行在服务器中,类似于一个进行数据存储的仓库,数据按照一定的规则存储,可以对数据库中的数据进行增删改查的操作。
4.2关系型数据库
关系型数据库是一种基于关系模型的数据库,关系模型折射现实世界中的实体关系,将现实世界中各种实体及实体之间的关系通过关系模型表达出来。
4.3数据库操作语言(SQL)
SQL (Structured Query Language)即结构化查询语言,是一种用来操作关系型数据库的编程语言,可以理解为对数据库的操作命令。
4.4非关系型数据库
非关系型数据库是一种相对松散且可以不按照严格的结构规范进行存储的数据库。非关系型数据库一般叫作 NoSQL (Not Only SQL),非关系型数据库没有关系型数据库那样严格的数据结构约束,在存储的形式和使用上有别于关系型数据库。现在主流的非关系型数据库有 MongoDB和CouchDB。
产品经理在实际工作中设计的产品更多是以用户所使用的客户端为主,例如产品经理画的原型图,就是从用户视角设计的产品功能。在设计客户端产品时,如果对客户端技术有一定了解,能大大提高产品经理设计客户端产品的效率。
5.1Web网页
Web 网页技术是一门相对比较成熟的技术,在 PC 互联网时代,大部分产品都是通过浏览器访问网页来使用的。Web技术通常是指由HTML、CSS 及一些动态交互技术(例如JavaScript等)组成的Web前端技术。
5.2Web基础技术知识
通过浏览器访问的网页通常被称为Web页,每一个Web页都有一个唯一的地址,不同的地址组合在一起,通过链接相互跳转,最终形成一个网站系统。
5.3网页的骨骼和外衣:HTML/CSS
HTML (HyperText Markup Language)全称超文本标记语言,超文本的意思是它所能表现的内容不仅仅是文本,还可以是图片、链接、音乐等非文字元素,标记语言是对 HTML特性的一种描述,HTML语言的语法结构是通过一个个的标签来标记体现的。
CSS (Cascading Style Sheets)全称层叠样式表,是一种将网页内容与网页样式分离的技术。简单地说,CSS是给只有内容的 HTML页面穿衣服,让HTML页面好看起来。
5.4URL/HTTP
URL (Uniform Resource Locator)的全称是统一资源定位符,互联网上所有的资源都有一个唯一的URL地址,资源的类型可以是一个网页,一张图片,一首歌曲或者一段视频。通过 URL来标记每一个资源,我们就可以通过浏览器很方便地访问到这些资源。
URL通常分为三部分,第一部分是协议部分,也就是上例中的“http://”,HTTP协议(Hypertext Transfer Protocol)全称超文本传输协议,是互联网的基本协议,字面意思是通过该协议我们可以在互联网上传递除了文字以外的其他内容,例如网页,音乐,图片等。
对应客户端,服务端通常也叫服务器端,产品经理在设计产品时,虽然设计的更多是客户端产品,但两个客户端之间的信息互动和数据传输却是通过服务端完成的。服务端起到了中间核心处理者的作用,它负责处理复杂的业务逻辑并对数据进行存储管理。
6.1服务端的基本架构
服务端通常被叫作云端,也就是我们所说的云服务器,云服务器是指物理机房是托管在第三方,而不用自建机房。每个机房都由应用服务器、数据库服务器、交换机、网络端口和外网光缆构成。
下图是一个简化版的服务器架构图:
①首先是从互联网接入,互联网的另一头实际上就是客户端,客户端通过互联网请求访问服务器
②请求进来后首先经过负载均衡服务器,它负责指导和梳理交通,将车流量比较大的路口的车辆分流到车流量相对较小的路口,实现流量的动态平衡。
③一个客户端请求经过负载均衡服务器的动态调度后,会被分配到某一台API(Application Programming Interface)服务器,通常也叫作应用服务器。API服务器主要根据不同的客户端请求进行相应的业务逻辑处理,并将处理完的结果返回给客户端。
④数据库服务器负责运行系统数据库,为了保证系统数据的安全性,会在多台数据库服务器上存储同一份数据同时运行。
6.2数据接口及结构
数据接口是指客户端与服务端进行数据传输和交互的数据协议,数据接口是一种数据交换的标准。数据接口扮演的是信息传递者的角色,根据不同的产品功能,对应的数据接口也会有所不同。
6.3JSON
JSON ( JavaScript Object Notation)是一种轻量级的数据交换格式,也是一种用来表示数据接口结构的形式。JSON结构灵活性高,可以进行丰富的数据结构表达,JSON结构易于理解和阅读,也便于计算机进行解析和表达,一个简单的JSON结构如下。
- {
- "username":"pipi",
- "password":"123"
- }
6.4XML
XML(Extensible Markup Language)的全称是可扩展标记语言,与JSON一样,XML也是一种数据交换格式,它也可以用来进行简单的结构化文本数据的存储。XML的结构体积比JSON大,而且阅读结构不如JSON 清晰。所以,在大多数的生产开发中,使用JSON作为数据接口进行数据传输和交换的要多一些。
XML 的应用领域非常广泛,例如,在 Android开发中,界面布局文件就是通过XML结构实现的,很多服务器配置文件也都是通过XML 结构实现的,在有些系统实现中,也通过XML表示数据接口进行数据传输,但现在的主流是使用JSON结构。
6.5服务端与客户端的交互模型
在客户端与服务端交互的过程中,数据和信息通过网络进行传递,而传递的载体就是数据接口,数据接口的体现形式有JSON和XML。
这个模型叫作请求响应(Request-Response)模型,这是互联网技术产品实现信息交互的一种数据交换模型,通过这个模型主要完成信息的发送、处理和响应。
6.6服务器部署
当我们开发完一个产品后需要将产品发布上线,上线后就可以提供给用户使用。其实就是把我们开发完成的系统部署到公网服务器上,公网就是公开网络,我们平时能使用到的产品服务都部署在公网上。部署过程就好比我们在生产线上生产好了产品,然后将成品上架到货架上进行销售。云服务。我们可以租用云服务提供商的机房,然后将我们的服务端部署在云端,这样我们只需要按使用情况支付给云服务商一定的费用就可以正常使用了。
6.7服务器运维
长期的维护和调优过程就叫做运维,服务器运维工程师就是专门负责这一过程的。服务器运维包括了发布新的服务,对服务器进行更新、维护,同时对于服务器进行整体监控,如果出现紧急情况需要及时处理。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。