Software Factory
Overview, Processes & Tools
Agenda
☑Methodology
☑Factory Environments
☑Java
☑PHP
☑Mobile
Methodology
The Basics
☑Implement the basic from market best-practices
☑PMBOK/Agile PMBOK – Project Management
☑RUP/SCRUM – Development Management
☑Kanban – Operation Management
☑ITIL – IT Service Management
☑COBIT – IT Governance
☑Simple processes that enable Teltools to continually
provide IT Services with quality.
Methodology Overview
Requirements
Management
Test Cases
Specification
Development
Configuration Management
System Tests
Continuous
Integration
Static Code
Quality
Analysis
System Test
Validation
Architecture Management
Integration
Tests
Quality Control
Release
Management
Delivery
Customer
Technical
Team
Incident
Report
New Features
Management
Incident Fix
Bug
Management
Incident
Analysis
BusinessApprovalPrioritydefinedbyCriticalityToStakeholder
Feedback
Feedback
Feedback
Feedback
Feedback
Feedback
Code Quality Management
Factory Environments
Environments
☑Java/Java EE
☑PHP
☑Mobile
☑Android
☑iOS
☑PhoneGap
Java/Java EE
PHP/PHP Cake
Mobile/Android
Mobile/iOS
Mobile/PhoneGap
Development Tools
Eclipse
☑ Standard IDE (Interface Development Enviroment) for developers;
☑ Support Maven to Application Lifecycle Management (ALM);
☑ Support Git to Source Code Management (SCM);
☑ Support default source-code formatting tool;
Maven
☑ Application Lifecycle (ALM) Framework;
☑ Provide a standard way to manage project dependencies;
☑ Customizable to fit specific project necessities (OLM has many);
☑ Execute Unit Tests automatically;
☑ Execute Standard Code Format automatically;
☑ Execute Code Format Checker automatically;
☑ Provide a standard way to keep version control;
☑ Major Version;
☑ Minor Version;
☑ Build Number.
☑ Generate package delivery to repositories (Artifactory)
automatically.
Artifactory
☑ Maven Artifacts Repository;
☑ Stores private Maven artifacts;
☑ Stores private Maven artifacts dependencies;
☑ Provide a Proxy service to other Maven repositories;
☑ Customizable Access Control (ACL) to users and repositories.
Git
☑ Powerful Source Code Management (SCM) Tools;
☑ Provide automatic merge/rebase between different branches;
☑ Provide easy parallel branch work management;
☑ Enable developers to work even offline from central repository;
☑ Compatible with all modern IDEs.
Github
☑ Powerful Source Code Management (SCM) Hosting for Git;
☑ Provide a Social interface for development team members;
☑ Provide a strong diff tool and merge tool based on
requests/workflow/roles;
☑ Used by Google, Apple, VM Ware and others big customers.
Gitorious
☑ Powerful Source Code Management (SCM) Hosting for Git;
☑ Provide a Social interface for development team members;
☑ Opensource and available on local network.
Jenkins
☑ Continuous Integration (CI) Server;
☑ Keep source code updated by Git/Github;
☑ Build periodically and report for every instability on code;
☑ Run unit/system/integrated tests automatically by test suites;
☑ Run functional tests with Selenium Webdrive;
☑ Run Static Source Code
Analysis for each build;
☑ Keep build history;
☑ Update Testlink Testcases;
☑ Update Jira Issues;
Sonar
☑ Perform Static Source Code Quality Analysis;
☑ Extract Size, Complex, Test Cover, Comments, Repeated
Code, Accomplishments and too many others KPIs to measure
source code quality;
☑ Analyze source code based on rules to find best
practices violations;
☑ Keep analysis history and show delta variations .
Selenium Webdrive
☑ Perform functional tests on web applications;
☑ Based on test cases to describe success and error behaviors;
☑ Can simulate Mozilla, Chrome, Safari, Opera and Internet Explorer;
☑ Can test Java Script based applications.
Testlink
☑ Powerful tool to keep Requirements, Documentation, Test
Cases, Test Suites and Test Scenarios;
☑ Provides an interface to guide Test Case execution;
☑ Provides integration with Jira and automatically opens bug reports
on Project Bug Tracker without tester interaction.
Jira
☑ Top 5 Issue/Bug Tracking tool;
☑ Provide integrations with Git/GitHub to keep each issue tracked
with impacted Artifacts;
☑ Provides Scrum/Kanban methodology tools to project;
☑ Provides a powerful workflow engine;
☑ Provides a powerful form template engine;
PHP Cake
☑Framework MVC ;
☑Based on conventions (like Ruby on Rails);
☑Easy database support model;
☑Low learn curve;
☑Fast deliveries.
PHP Unit
☑Unit Test Framework;
☑Similar to Java’s jUnit;
☑Bring a TDD approach to PHP Development.
Apache Ant
☑First build tool to Java developers;
☑Powerful script tool guided by XML;
☑Compile all PHP Code, runs all PHP Unit Tests and
collect all quality assurance metrics.
XCode
☑Default development environment for Mac OSX
and iOS applications
PhoneGap
☑Framework to develop
Smartphones applications
based on HTML5, CSS3 and
Javascript;
☑It generates native wrapper
applications for several
smartphone platforms
(Android, iOS, Blackberry, We
bOS, Bada, etc).
Modelo Web Radio
Organization
Coaching/Mentoring
Archirecture
Development Support ReqM & QA
Project
Management
Risks
Management
Team Knowledge Practices
☑ Monthly presents knowledge key-notes;
☑ Directed study for each team member;
☑ Drives project activities accordingly to team members skills;
☑ Coaching/Mentoring accordingly to team members skills;
☑ Visit our SlideShare Channel to check all Workshops.
Av. Cesário Alvim, 3521
Bairro Brasil – CEP38400-696
Uberlândia – MG
(34) 3222-9571
http://www.teltools.com.br
falecom@teltools.com.br
Contact us
Teltools Tecnologia
Av. Cesário Alvim, 3521
Bairro Brasil – CEP38400-696
Uberlândia – MG
(34) 3232-3366
http://www.teltools.com.br
falecom@teltools.com.br
Luis Machado Reis
Development Manager
luismr@teltools.com.br

Software Factory - Overview

  • 1.
  • 2.
  • 3.
  • 4.
    The Basics ☑Implement thebasic from market best-practices ☑PMBOK/Agile PMBOK – Project Management ☑RUP/SCRUM – Development Management ☑Kanban – Operation Management ☑ITIL – IT Service Management ☑COBIT – IT Governance ☑Simple processes that enable Teltools to continually provide IT Services with quality.
  • 5.
    Methodology Overview Requirements Management Test Cases Specification Development ConfigurationManagement System Tests Continuous Integration Static Code Quality Analysis System Test Validation Architecture Management Integration Tests Quality Control Release Management Delivery Customer Technical Team Incident Report New Features Management Incident Fix Bug Management Incident Analysis BusinessApprovalPrioritydefinedbyCriticalityToStakeholder Feedback Feedback Feedback Feedback Feedback Feedback Code Quality Management
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.
    Eclipse ☑ Standard IDE(Interface Development Enviroment) for developers; ☑ Support Maven to Application Lifecycle Management (ALM); ☑ Support Git to Source Code Management (SCM); ☑ Support default source-code formatting tool;
  • 15.
    Maven ☑ Application Lifecycle(ALM) Framework; ☑ Provide a standard way to manage project dependencies; ☑ Customizable to fit specific project necessities (OLM has many); ☑ Execute Unit Tests automatically; ☑ Execute Standard Code Format automatically; ☑ Execute Code Format Checker automatically; ☑ Provide a standard way to keep version control; ☑ Major Version; ☑ Minor Version; ☑ Build Number. ☑ Generate package delivery to repositories (Artifactory) automatically.
  • 16.
    Artifactory ☑ Maven ArtifactsRepository; ☑ Stores private Maven artifacts; ☑ Stores private Maven artifacts dependencies; ☑ Provide a Proxy service to other Maven repositories; ☑ Customizable Access Control (ACL) to users and repositories.
  • 17.
    Git ☑ Powerful SourceCode Management (SCM) Tools; ☑ Provide automatic merge/rebase between different branches; ☑ Provide easy parallel branch work management; ☑ Enable developers to work even offline from central repository; ☑ Compatible with all modern IDEs.
  • 18.
    Github ☑ Powerful SourceCode Management (SCM) Hosting for Git; ☑ Provide a Social interface for development team members; ☑ Provide a strong diff tool and merge tool based on requests/workflow/roles; ☑ Used by Google, Apple, VM Ware and others big customers.
  • 19.
    Gitorious ☑ Powerful SourceCode Management (SCM) Hosting for Git; ☑ Provide a Social interface for development team members; ☑ Opensource and available on local network.
  • 20.
    Jenkins ☑ Continuous Integration(CI) Server; ☑ Keep source code updated by Git/Github; ☑ Build periodically and report for every instability on code; ☑ Run unit/system/integrated tests automatically by test suites; ☑ Run functional tests with Selenium Webdrive; ☑ Run Static Source Code Analysis for each build; ☑ Keep build history; ☑ Update Testlink Testcases; ☑ Update Jira Issues;
  • 21.
    Sonar ☑ Perform StaticSource Code Quality Analysis; ☑ Extract Size, Complex, Test Cover, Comments, Repeated Code, Accomplishments and too many others KPIs to measure source code quality; ☑ Analyze source code based on rules to find best practices violations; ☑ Keep analysis history and show delta variations .
  • 22.
    Selenium Webdrive ☑ Performfunctional tests on web applications; ☑ Based on test cases to describe success and error behaviors; ☑ Can simulate Mozilla, Chrome, Safari, Opera and Internet Explorer; ☑ Can test Java Script based applications.
  • 23.
    Testlink ☑ Powerful toolto keep Requirements, Documentation, Test Cases, Test Suites and Test Scenarios; ☑ Provides an interface to guide Test Case execution; ☑ Provides integration with Jira and automatically opens bug reports on Project Bug Tracker without tester interaction.
  • 24.
    Jira ☑ Top 5Issue/Bug Tracking tool; ☑ Provide integrations with Git/GitHub to keep each issue tracked with impacted Artifacts; ☑ Provides Scrum/Kanban methodology tools to project; ☑ Provides a powerful workflow engine; ☑ Provides a powerful form template engine;
  • 25.
    PHP Cake ☑Framework MVC; ☑Based on conventions (like Ruby on Rails); ☑Easy database support model; ☑Low learn curve; ☑Fast deliveries.
  • 26.
    PHP Unit ☑Unit TestFramework; ☑Similar to Java’s jUnit; ☑Bring a TDD approach to PHP Development.
  • 27.
    Apache Ant ☑First buildtool to Java developers; ☑Powerful script tool guided by XML; ☑Compile all PHP Code, runs all PHP Unit Tests and collect all quality assurance metrics.
  • 28.
    XCode ☑Default development environmentfor Mac OSX and iOS applications
  • 29.
    PhoneGap ☑Framework to develop Smartphonesapplications based on HTML5, CSS3 and Javascript; ☑It generates native wrapper applications for several smartphone platforms (Android, iOS, Blackberry, We bOS, Bada, etc). Modelo Web Radio
  • 30.
  • 31.
    Team Knowledge Practices ☑Monthly presents knowledge key-notes; ☑ Directed study for each team member; ☑ Drives project activities accordingly to team members skills; ☑ Coaching/Mentoring accordingly to team members skills; ☑ Visit our SlideShare Channel to check all Workshops.
  • 32.
    Av. Cesário Alvim,3521 Bairro Brasil – CEP38400-696 Uberlândia – MG (34) 3222-9571 http://www.teltools.com.br falecom@teltools.com.br
  • 33.
    Contact us Teltools Tecnologia Av.Cesário Alvim, 3521 Bairro Brasil – CEP38400-696 Uberlândia – MG (34) 3232-3366 http://www.teltools.com.br falecom@teltools.com.br Luis Machado Reis Development Manager luismr@teltools.com.br