• No results found

Internship Report on web development

N/A
N/A
Protected

Academic year: 2021

Share "Internship Report on web development"

Copied!
59
0
0

Loading.... (view fulltext now)

Full text

(1)

1 Chapter: Introduction

1.1 Introduction

Internship opportunity provides the students a great chance to relate their theoretical knowledge with the competitive and tough real job market environment. Moreover, if the internship period is within the bachelor program and the students have to return to the academia after completing it, the skills that they have developed during the internship help them to gain a more sound academic result. After returning from internship the students get six months for preparing himself/herself for the company and their future career. Southeast university provides that glorious opportunity to their students of having an internship within their bachelor program. I being one of the lucky ones to study in SEU that was send me to Comfosys Ltd.to complete my internship. With having a jab count of zero, I joined Comfosys Ltd. as an intern on 15th June 2014. The expectations were high and now almost nearing the end of my internship I must admit that it was really a wonderful experience.

I was lucky to get the opportunity to complete our industrial attachment at Comfosys Ltd. Limited. Since Comfosys Ltd. is a leading Website design and software company and developing software from a long ago in Bangladesh i consider myself timely to get chance to take a deep look to their development methodology, working models, deals and industrial behavior. I intended to look into the software industry and how it looks like, what are their rules, responsibility and environment. Obviously they work with almost every platform and technologies. I worked with the part of Web Development team and generated ideas based on their development technology.

The journey wasn’t that simple. There were many obstacles, new technologies that I have to handle with, yet after overcoming each challenge I had discovered a new potential within myself. The skills that I have gathered are priceless to me and I cannot wait to apply those in the upcoming semesters. In addition to that, some of the non-technical skills that I have procured, combined with those technical skills will certainly prove handy in my future jobs.

(2)

2

1.2 Objectives of the Report

This report has been prepared as a requirement of the internship program of the degree Bachelor of Science in Software Engineering (BSSE). The report will definitely enrich the knowledge of the students from upcoming batches regarding the workplace environment. Using that knowledge they may prepare themselves appropriately for their future internships.

In addition to that, the report is intended to reflect my achievements, project works and professional growth during the intern period. Besides, anybody looking for a short detail about Comfosys Ltd. may find this report useful.

The report is designed to meet specific goals. Its goal is to -

 The introduction of the organization, including the standard following here  Leading products of the organization

 Description about the team where I work  A detailed description of responsibilities

 As an intern achievement, focusing on non-academic achievements.  To know about the problems faced in the software industry  To know how these problems are solved

 To know the coding style and conventions of the industry  To go through the development cycle and models

 Working with documentation and customization  Understanding software maintenance

1.3 Scope of the Report

This report is made only for academic purpose and to fulfill the requirement for industrial attachment. This report has covered the direct and indirect aspects of software industry and their challenges. This report gives an insight of the experience that I achieved from my workplace. A brief description of Comfosys Ltd. is included so that other students can get to know about the company and may decide whether it is suitable for them or not. If internships are about gathering skills then projects are the main way of gathering them. Till writing this report I have completed one project and helped in developing the web applications for Comfosys Ltd.. The tasks, timeline and results of those specific projects are included for a better visualization of industry standard projects.

(3)

3

1.4 Limitations of the Report

While gathering information, analyzing and representing them i have faced some limitations. However, despite the limitations i have tried hard to prepare a comprehensive and rather interesting report. The overall limitations of the report are mentioned below-

 There were some restrictions in disclosing some information as it was assumed to be

confidential. Therefore I could not include those in my report.

 Some of the information that I got from secondary sources were not arranged

consistently.

 AS I was not permanent employee at Comfosys Ltd. I could not see the

disadvantages of the old system.

 Because of organizational confidentiality, I could not put or disclose some

information in the report.

1.5 Source of Data Collection

In order to make the report as perfect as possible I here used data collection procedures which articulate the way that I have followed in my report. For this report, information has been gathered from both primary and secondary sources.

(4)

4

Primary Sources

For primary data, several face-to-face interviews have been conducted with officials from different departments of Comfosys Ltd.Information provided by them has been very important for this report.

I conducted with the following professionals:

 Collect information from different employee asking them  Different documents available from the portal of Comfosys Ltd.  Content provided from Comfosys Ltd’s website

 Different employees of Comfosys Ltd.  From the company’s Handbook

Secondary Sources

To understand different software methodology, software quality assurance, Agile Model, Scrum Process and many other data have been gathered from the internet and different articles and the sources have been given in the references part.

The secondary sources of data collection for the report includes-  Different websites which defines globally accepted standards

 Different websites which keeps track of achievements of international companies  Reference Books

(5)

5

2. Chapter: Company Overview

2.1 Introduction

Bangladesh is making quick progress in IT industry. There are many mentionable IT organizations in Bangladesh who has contributed significantly to the rise of IT sector in Bangladesh and Comfosys Ltd. is one of them. In principal, Comfosys Ltd. is one of the largest software firms. Comfosys Ltd. are one of the largest outsourcing companies in Bangladesh. Their business is in the International market all over the world.

Comfosys Ltd. is an offshore production facility providing digital, print and Software development services to advertising agencies and brands.

In this chapter I described about the company overview, culture, business as well as all other information.

2.2 History of Comfosys Ltd.

In the beginning of 2012, started Comfosys Limited which is an emerging software company which is established with a view to serving the organizations which are trying to take their business to the next level through automation.

2.3 Vision, Mission & Values

Vision

Our vision is to be one of the worlds most advanced offshore facility in studio services and software development in the advertising & marketing arena. Our goal is to achieve supreme quality in our techniques of work because we believe it is the key to earn our clients’ enthusiasm through continuous improvement driven by the honor, goodwill, teamwork and innovation of our people.

(6)

6

Mission

Simplify

Simple ideas, simple executions, simple reporting, - We believe “Less is more”  Inspire

Take initiatives! Bring in new ideas! Do things differently! Take action!  Respect

Your culture, colleagues, customers, families and your selves

Values

 Customer Satisfaction is permanent to business success so they strive to exceed customer expectations.

 Comfosys Ltd. is result oriented so they seek continuous improvement through aggressive, attainable goals.

 They are committed to innovation because innovations can transform the way our customers do business.

 Great teams build great companies so they seek to attract, develop and retain leading talent.

 Comfosys Ltd. aspire to lead by setting the standards that others emulate.

 They are honest and fair in their dealings with customer, partners, shareholders and each other.

(7)

7

2.4 Comfosys

Ltd.

at a Glance

The Comfosys Limited is formed with a vision to set a new standard in the software service. In the world of software industry where clients are always annoyed with amateur and irresponsible dealings, we are providing the guarantee of professional and global standard service and support. We have a team of highly skilled and motivated IT professionals who are always ready to deliver the tailor made product that will fit for business. We maintain the Software Development Life Cycle (SDLC) and proper documentation to ensure the quality of the product and transparency.

2.5 Organizational Structure

Comfosys Ltd. closely follows the matrix organizational structure. In this type of structure, people with similar skills are assigned to appropriate tasks. Each employee under this structure may be under one or more supervisors in different projects which will best serve the organization. For example, in a matrix organization, all engineers maybe assigned to different projects and work under different managers, but depending on circumstances, they may work in the same project and report to same project manager.

Additionally, Comfosys Ltd. is a flat organization. In this type, few, or no level exists between employee and their manager. As a result, skilled employees can more easily pose their opinions and can be involved in the decision making process. Each team is led by project manager.

The whole company is led by the managing Director. There are several departments and each department is led by the specific director of the department.

Roles of each department is dedicated by the following designation-

Head of the company: Managing Director HR Department:

 HR Manager

 Coordinator – Talent Management  Senior Executive Talent

(8)

8 IT Department  IT Director  Network Administrator  IT support Engineer Finance Department

 Director Finance & Admin  Finance Manager

 Finance Executive

Online Department

 Director Digital Production  Senior Project Manager  Project Manager  Team Lead  QA Team Lead  Web Developer  QA Engineer Offline Department

 Director Print Production  Senior Project Manager  Project Manager  Team Lead  Desktop Publisher Development Department  Development Director  Development Manager  Project Manager  Team Lead  QA Team Lead

 System Developer (Senior, Junior)  QA Engineer

The following diagram will help readers understanding the organizational responsibility delegation structure-

(9)

9

2.6 Technical Capabilities of Comfosys Ltd

Comfosys Ltd. use different tools and technologies for doing different tasks. Some of these are mention below in the table.

Operating System Mac OS, Windows

Project Management BrandShare, Basecamp, JIRA, MS Project 2010, MS Visio 2010, Office 2010

Analytics Google Analytics, Adobe Site Catalyst Ad Serving platform Double Click, Mediamind, MOJO, CBSi

CMS &Framework Open Text, Vignette, Expression Engine, Codeignter, Drupal, Magento, Wordpress

Scripts HTML, XHTML, HTML5, CSS 2 &3, Action Script 2 & 3, PHP, My SQL, Jquery, Java Script

Animation Flash

Desktop Publishing Photoshop, Illustrator, InDEsign, Fireworks Web Design Dreamweaver, MS Frontage, Visual Studio

Table 1: Technical capabilities

2.7 Technology Used by Development Team

Comfosys Ltd.development product lineups are based on Microsoft Based Operating System platforms and Microsoft Technologies. Current flagship products of Comfosys Ltd. are web based but they are gradually moving its products lineup to desktop based and mobile apps while keeping its web based customers satisfied too. Their current development project is trustpilot which is maintained by the root company trustpilot located at Denmark. Here, I have described some technologies those are used by the development team.

Operating System Windows

Software Development Platform .NET Framework

Web Development Framework ASP.NET, ASP.NET MVC4, ASP.NET API, REST, API, ADO.NET, BootStrap, Foundation

Programming Languages C#.NET, Python

Scripting Languages HTML5, CSS3, Java script, Angular JS, Node JS, Jquery Database Server SQL Server 2008, 2012

IDE Visual Studio 2013, NetBeans, Dreamweaver , Selenium

Webdriver (Selenium 2.39.0), AutoIt V3, Chrome Driver Server for Selenium, Google Developer Tools

Build and Run Tool NUnit Test Adapter V1.0 Version Controlling Git Repository

Project Management Trello Board

Software methodology Agile model – Scrum Process Internal Communication BDIT, Microsoft Outlook

(10)

10

2.8 Product & Services

Web Design:

We design professional, easy to read, easy to navigate and custom websites that fit you and your business's personality.

Integrated CRM:

Provide better customer service, cross-sell and up sell more effectively and provide products or services that your customers really want with our integrated CRM solution.

Smart Accounting:

We endeavor to remove the stress and hassle of dealing with the day to day accounting affairs of your business.

Business Automation:

We are here to blend your business with the right amount of technology through the business process automation.

Advanced ERP:

whatever your industry, our ERP solution can help you to cut costs, improve operational efficiency, and make smarter decisions—faster.

Call Center Solution:

Deliver a superior customer experience that builds value and develops long-term customer relationships with our Call Center Solution. Rules and Regulations

2.9 Work Hour Factors

Working hours: It is determined according to the production plan. Since we are a

project oriented company, it is expected, according to your contract you may occasionally have to take on extra work if necessary to meet the deadlines. Unless agreed otherwise with the department head, we expect you to utilize the working hours effectively.

Working overtime: As an employee of this Company, you are obligated to take on

overtime (if required); to participate in meetings / courses as well as other business related issues outside office hours. Overtime pay is applicable to employees as per the employment contract.

(11)

11

2.10 Green Environment

 This office is YOURS! It is where YOU spend the most time of your daily life. Why not love it enough to keep the office clean? If you see any garbage, paper, etc. lying around please take a moment to dispose it to make it a better place for you and your colleagues to have a pleasant work day.

 Washroom and toilets are shared properties, meaning everyone needs to use it. So why not make it our responsibility to use it in a clean and hygienic way so that others can use it as well? Let’s remember to put ourselves in our colleague’s shoes in order to be the best judge, e.g. if you don’t like the washroom dirty then don’t expect others to like it either, you should take the first step to keep it clean so others can follow this good practice and keep it clean for yourself and others.

 Workstation is a place of productivity and creativity; it is a window for others to get a glimpse on you, so why not keep your workstation neat and tidy?

 Pantry/canteen is where you refill your energy to work effectively, so after you’re done why not keep it clean and pleasant for others to do the same?!

 Copy/Scan/Fax facilities are provided for your operational smoothness, why not be a responsible and conscious employee by keeping the facilities functional and usable for others as well?

 Be a part of the Company green movement where we avoid wastage of any kind, whether it is food, paper, ink or electricity!

o Paper movement:

 Double checks before you print, so you can avoid unnecessary printing!

 This will help reduce shredding!  Remember to always recycle! o Energy movement:

 Turn off the appliances you don’t require such as, your phone charger, desk light, washroom lights, etc.

 Don’t keep the water tap running when you’re not using it

(12)

12

2.11 Communication Policy

2.11.1 Policy

We have a three-thumb-rule communication style and we call it 121 which are:

Plain- We communicates in a simple manner to understand better what is required of us.

Direct- We just talk it out openly with the necessary person to make the best of use our limited time, avoid confusions and eliminate unnecessary detours.

Informal- We keep it casual yet respectful!

As part of the 121 Policy we heavily emphasize on and practice “Open Door Policy “where the Management is always available to hear about your side of the story. If you have any kind of suggestions, comments or issues, which you cannot discuss with your colleagues or immediate supervisor due to the nature of the matter, feel free to talk to your Directors and/or your HR Team.

For example, if your Team leader is biased towards your team member and you have some ideas you think your team leader will not appreciate, then approach your Directors or HR Team about your ideas and regarding anything you feel is unfair.

2.11.2 Internal Communicator

Intranet

Our local information system-BDIT and it is our information bank. We use it for internal communication and to exchange of all kinds of important information. The idea is to provide you with all kind of information you need in one particular area, so to give you an idea here are some of the things you can find in BDIT:

 All WPP and Company Policies

 Full list of all the members of the Company community in Dhaka  A complete in-house telephone directory

(13)

13

2.11.3 External Communicator

In considering “Communication” we are referring to all means and mechanisms of communicating information both within the Company, Group and externally to existing and potential customers, regulators, share owners, government and non-governmental organizations, the media and to the public at large.

There are various kinds of communication media such as, Press, E-mail, and Social Media. Below are some strict guidelines which need to be followed for all forms of media:

 Employees are advised to be professional and respectable when carrying out

communication on behalf of the company and or Group.

 Stakeholders’ confidentialities are of utmost priority which needs to be maintained

at all time.

 It is prohibited to access, show, save, copy, print or pass on offensive material, i.e.

especially material with insulting, slandering, obscene, punishable or discriminating contents.

 Any company related comments and statements to the Press are to be approved by

the management beforehand. In case of an announcement of any decision made which may have an impact on WPP and its market, it must be checked with the WPP Communications Director prior to release.

For thorough understanding of all implications of Communication, please refer to the Communication Policy provided in the appendix, section-2 (provided at the end of the handbook).

2.12 Fun Activities & In house Committees

Employee Volunteering

Volunteering is about coming forward for a special cause, to create a good impact in the environment you live in. We urge everyone one of the Company to be active and aware about the things happening in our surrounding so that together we can create a good society starting from our workplace. We highly encourage voluntary participation in social causes.

Sports

Fitness and fun are intertwined and we promote this combination here. Periodically there are sports events organized such as, inter-team tournaments and you are encouraged to participate! Staying fit and healthy will not only make drive your energies higher.

(14)

14

Celebrations

We like to celebrate the special moments of each of our colleagues, because we care! The purpose is to make sure the special occasions of all our team members are celebrated. The following events are all handled by the Celebrations Committee:

 Birthdays  Farewells

 Weddings and Newborn

We also have other fun annual programs as part of the Company’s annual programs; hence stay tuned for what’s coming up next! Buckle up and wait for your turn!

2.13 Employment Terms

END OF CONTRACT Resignation Formalities

To apply for resignation, member of the staff needs to give a notice of period mentioned in the employment contract to the Company. Accordingly, a resignation letter needs to be submitted via e-mail to the Department Director and Managing Director if the employee is in Comfosys Ltd. or to the Development Director if the employee is in datacom.net . In both cases HR Team needs to be in “CC”. The Company will then take necessary measures to release the employee of his/her duties. However, resignation in any other situation will be handled under management discretion.

In case of a breach of contract by a member of the staff, Management may penalize the employee for the number of days in short of the specified notice period in employee’s contract.

Dismissal Formalities

The Company has the right to dismiss its member of the staff due to deteriorating performance or as a disciplinary measure. Dismissal is processed according to employment contract and is approved by Managing Director. If the Management sees fit, the employee may be given a chance to improve their situation (in performance, behavior, etc.). If there are no improvements, then the employee will be released of his/her duties and the Company may either provide notice period as per the employment contract or compensate for it with salary equivalent to it.

(15)

15

Severance Formalities

The company reserves the right to dismiss an employee under the following situations:

 Loss of business/ client

 Loss of market share/revenue/profit  Change in economic scenario

In such case the company may provide notice of the period mentioned in employee’s contract; or may compensate for the notice period mentioned in employee’s contract with salary equivalent to it.

2.14 LEAVE

Leave Entitlements

You are also entitled to:

 26 days of Annual leave during one entire fiscal year (Jan-Dec). Leave is calculated on

pro-rated basis according to the time of the year you have joined.

 All Leave is subject to approval of management

 As we have teams dedicated to cater to various countries, we follow country-specific

holiday schedule; hence we do not follow the Bangladeshi holiday list. Additionally, you are entitled to:

 ½ day every ½ year to go to the doctor or dentist  1 day off if relocating

Leave Encashment

In addition to the above leave facilities, you are eligible for the encashment of your unused leave of up to 14 days and you can avail this facility at the end of each business year.

Annual Leave Application Procedure

All leaves are subject to Management approval. Application for Annual Leave must be through the Leave Management System on HR and Finance System after approval from your respective Manager. For leave, above five (5) days, prior to application, at least four (4) weeks’ notices should be provided, and in case of leave under five (5) days,

(16)

16

Sick Leave

Your team needs you! But if you are unable to report to work due to illness you must inform your respective Managers within the first two hours of your shift. This must be practiced to enable your team to function smoothly. Management may review the health documents upon necessity to validate the leaves.

 If the sickness continues for more than three (3) consecutive days, proper doctor’s

note and necessary health documents must be provided for verification.

 In case of more than fourteen (14) days of absence, Company has the right to cross

check with the medical institution and or doctor for validation purposes.

 Moreover, if the illness exceeds a total of one (1) month, the salary may be on hold

till the Employee resumes work in the Company. However, it can be extended up to 120 days during a period of twelve (12) consecutive months upon Management discretion, but the Company can dismiss the employment with one month’s notice at the end of ninety (90) days given that the Employee is unable to resume work after 120 days.

Maternity / Paternity Leave

Employees are entitled to take Maternity Leave up to six (6) months and Paternity Leave up to ten (10) days.

Along with maternity leave, the company provides salary compensation according to the following guidelines:

 All leaves are subject to Management approval

 Maternity leave cannot be extended by adding annual, medical or sick leave.

 Maternity leave will be granted to employees only twice during the entire period of

their service with Company given that it does not occur in two consecutive years. For example, leave-1 in 2010 and leave-2 in 2011 will not be allowed. If such an event occurs then it will be allowed as a non-paid leave in order to protect and meet the Company’s productivity target efficiently.

(17)

17

2.15 Company Benefits

We have plenty of exciting benefits lined up only for you! And all you have to do is JUST:

 Embrace the Company as your family because we care about YOU like none other!  And enjoy all your benefits such as: Provident Fund, Medical Benefit, Group

Insurance for Life & Hospitalization, Leave Encashment, Transportation & Conveyance, Vaccination for Hepatitis A & B, Food & Beverage facilities and Training!

Employee Provident Fund

10% of your basic salary every month will be deposited in your dedicated provident fund account. In addition to that, this amount will be matched by the Company and deposited in the employee’s provident fund account every month. This fund is solely maintained by a Board of Trustees who is members from both the parties: employees and employer. The key guidelines of provident fund are as follows:

 10% of your basic salary is deducted every month.  The company will match the amount.

 This money is then put into an account and collectively invested.

 If you have five (5) years of confirmed service with THE COMPANY, then you are entitled to 100% of your own contribution and 100% of company’s contribution along with other benefits.

 In case of confirmed service for less than five (5) years, then you are entitled to self and company’s contribution including interest at the following rates:

o Service less than two (2) years, 100% of own contribution and 0% of company’s contribution & benefits.

o Service over two (2) years but less than three (3) years, 100% of own contribution and 25% of company’s contribution & benefits.

o Service over three (3) years but less than four (4) years, 100% of own contribution and 50% of company’s contribution & benefits.

o Service over four (4) years but less than five (5) years, 100% of own contribution and 75% of company’s contribution & benefits.

(18)

18

Medical Fund

We have a medical fund facility set aside by the Company, where amount equivalent to 4% of your gross salary is deposited. Therefore, you can use the fund for yourself and your direct dependents. Moreover, in order to claim for the medical expenses, you must provide valid medical documents to the Finance & Admin Department for verification. The time taken for the claim approval may vary from one-three weeks depending on the situation.

Group Insurance for Life & Hospitalization

You are applicable for Group Insurance for Life & Hospitalization effective from the day you join! You can access the Insurance Form from BDIT. Apart from the employee him/herself, their spouse and up to second child are also eligible to the hospitalization insurance. Once you settle down, submit the following documents to HR within one (1) days of your joining:

 Insurance form

 Passport size photographs of your dependents

The HR Team is responsible to carry out the necessary processes, so get in touch with them with for further information! The details of your insurance coverage are given below:

 Maximum hospitalization per insured per disability: BDT 2,00,000

 Except suicide, aids and aids related diseases.

 Daily Room limit BDT 3,350 (total maximum BDT 80,000)  ICU limit 14 Days

 Hospital service/surgical/anesthesia maximum BDT 120,000.

 For Maternity [Normal BDT 15,000, Cesarean 22,500, miscarriage/legal

abortion BDT10,000]

 Preapproval is must for Non-Emergency Hospitalization.  Approval is must for Emergency Hospitalization.

 Call or SMS to the HOTLINE 01713 043043 for preapproval/approval.  A list of enlisted hospitals is archived in BDIT.

 In case of listed hospital please show your gold card.

 In other case you can claim through your finance department. You can collect

(19)

19

Transportation & Conveyance

Every one of you at the Company is entitled to receive conveyance allowance in addition to Gross Salary. The designated amount is added to your salary each month. Also, if you have shifts after 8 P.M and before 7 A.M, then we will provide you with transportation for the necessary route. In absence of office provided transportation during the odd shifts you are entitled to reimburse the conveyance bills at actual subject to the approval of your manager.

Food & Beverage Facility

No members of the Company will ever go hungry! Because we provide fully subsidized food, which is served at the canteen considering the various shifts each member is working in. Additionally, the canteen offers a selection of bread and cookies at all times and microwave ovens are available at the pantry in each floor. Everyone is responsible to help themselves to make coffee, tea, etc. and therefore, you must execute self-service for anything you need. Moreover, leftovers from lunch are stored in refrigerators, so if you’re working late, you may often find food available to meet your hunger.

Training

You are our most valuable assets of the Company and in order to create a sustainable future for you, we emphasize on your career development. Therefore, as an employee of this Company we expect you to take advantage of such career enhancing facilities. So get in touch with your department heads once you settle down, and communicate about what you want to learn and what development programs you would prefer. Accordingly we can arrange for adequate trainings. After completion of training, you should have a feedback session with HR, your team and respective Managers to discuss about your learning and challenges.

(20)

20

3 Chapter: Software Development

Process at Comfosys Ltd.

3.1 Introduction

Comfosys Ltd. maintain win-win relationship with its customer. Hence, customers are winner when products and services provided to customers are completely bug free, offers great user experience and satisfy all the requirements customer expected. Meanwhile, Comfosys Ltd.is winner when its products and services are developed and delivered to customers within estimated financial budget and deadline. However, those products and services must be developed in such a way so that it is well maintainable and extensible. Throughout my industrial attachment, I have experienced and practiced how the development team of Comfosys Ltd. develops and maintains its products and services so that their win-win relationship model with customers prevails. This chapter reflects on how Comfosys Ltd. practices Software Engineering processes and what i followed during my internship period, described from my experience.

3.2 Software Development Process

A software development process, also known as a software development life cycle (SDLC), is a structure imposed on the development of a software product. Similar terms include software life cycle and software process. It is often considered a subset of systems development life cycle. There are several models for such processes, each describing approaches to a variety of tasks or activities that take place during the process. There are different software development models,

1. Waterfall Model 2. Spiral Model

3. Iterative and Incremental Model 4. Agile Model

Amongst these models, Comfosys Ltd. follows agile model in their product development phases.

There are several methods in agile methodology. From these, Comfosys Ltd.follows Scrum Process. Besides these they are looking forward the Kanban model under the agile model. These all the described in the below.

(21)

21

3.3 Scrum Model

Scrum is an agile way to manage project, usually software development. Agile software development with scrum is often perceived as a methodology, but rather than viewing scrum as methodology, think to it as a framework for managing a process.

I was assigned in the TrustPilot team which follows the Scrum model, so i am describing the Scrum model as well as i followed in my work.

Figure 1: Scrum model

Scrum roles

In a scrum process, it has several roles and the relationship among these roles is easily defined and very clear cut and simple. The main roles at trustpilot team is-

 Scrum Master  Product Owner  Development Team  QA Team

(22)

22 Scrum Master

Responsible for coaching and guiding the team, creating a trustful and inclusive environment, facilitating team meetings and negotiations with the product owner and removing team and organizational impediments. In our team the at the very beginning scrum master meeting with the product owner about their requirements, then he defines task for each team member.

Product Owner

Product owner is the final authority on the requirements for the product. Responsible for the product vision and improving return on investment. They manage the end user and stakeholder expectations, prioritizing the product backlog, release planning and providing clear and testable requirements to the team. They collaborate with the team, end users and stakeholders ensuring that the goals are met and they accept the software at the end of each sprint. In this project trustpilot is the product owner. Before each sprint a representative from Trustpilot Company discuss with our scrum master to assigned a module and define the deadline.

Development Team

Each member of a development team is very important resources. They do the assigned work that is defined by the scrum master. Every day the get feedback in the time of scrum meeting and give update to their progress. If any of the team members fail to understand any portion other member helps him to overcome this.

QA Team

The QA a team tests a module before delivering it and ensure the quality of the product. In our team QA team work in the last moment of a sprint.

Project Manager

Who manages the whole team and help the scrum master how to assigned a sprint and how easily a module can complete.

Scrum Process

Scrum projects make progress in a series of “sprints”. The target duration is dynamic, it depends on the size of a product backlog. Product is coded, and tested during the sprint. The scrum process follows the following

steps- Sprint Planning Meeting

 Sprint

 Scrum Meeting

(23)

23 Sprint Planning Meeting

A collaborative meeting in the beginning of each Sprint between the Product Owner, the Scrum

Master and the Team. During the sprint planning meeting, the product owner describes the highest

priority features to the team. The team asks enough questions that they can turn a high-level user story of the product backlog into the more detailed tasks of the sprint backlog.

The meeting is organized into two parts-

First part- The participants of the meeting are scrum master, scrum team and product

owner. In the meeting the creation of the product backlog and determine the sprint goal.

Second Part - The participants of the meeting are scrum master and scrum team. In the

meeting they discuss about the distribution of the work and create sprint.

Sprint

A long iteration, during which is incremented a product functionality.NO outside influence can interference with the Scrum team during the Sprint. Each Sprint begins with the Daily Scrum Meeting. Before starting a sprint the scrum master assigns work each of the team member. Scrum master makes the sprint backlog visible by putting it on a Scrum task board. Team members update the task board continuously throughout the sprint; if someone thinks of a new task, she writes a new card and puts it on the wall. Either during or before the daily scrum, estimates are changed (up or down), and cards are moved around the board. We use Trello Board for maintaining our work. Here is a screenshot of the trello board.

(24)

24

Scrum Meeting

In scrum, on each day of a sprint, the team holds a daily scrum meeting called the "daily scrum.” Meetings are typically held in the same location and at the same time each day. Ideally, a daily scrum meeting is held in the morning before starting work, as it helps set the context for the coming day's work. These scrum meetings are strictly time-boxed to 15 minutes. This keeps the discussion brisk but relevant. Team members give update their work and discuss about the problem if anyone face. It’s a good way for a Scrum Master to track the progress of the Team.

Sprint Review Meeting

In scrum, each sprint is required to deliver a potentially shippable product increment. This means that at the end of each sprint, the team has produced a coded, tested and usable piece of software. So at the end of each sprint, a sprint review meeting is held. During this meeting, the Scrum team shows what they accomplished during the sprint. Typically this takes the form of a demo of the new features.

The sprint review meeting is intentionally kept very informal, typically with rules forbidding the use of PowerPoint slides and allowing no more than two hours of preparation time for the meeting. A sprint review meeting should not become a distraction or significant detour for the team; rather, it should be a natural result of the sprint.

Participants in the sprint review typically include the product owner, the Scrum team, the Scrum Master, management, customers and developers from other projects.

During the sprint review, the project is assessed against the sprint goal determined during the sprint planning meeting. Ideally, the team has completed each product backlog item brought into the sprint, but it's more important that they achieve the overall goal of the sprint.

(25)

25

3.4 Development process in Scrum Model

Comfosys ltd. follows some procedures for enhancement, development and bug fixing. Any complaint regarding software’s bug problem or client requires any kind of enhancement; the respective project manager gets the task order. From that stage up to the release of the enhancement or bug fixing installer, the following steps are maintained,

Task Repository

In this stage, tasks are defined by stakeholders and some user stories are created by the team. All the tasks are available in the repository.

Sprint Phase

In this phase sprints are created from the user story and defined in the task board. Before starting the task, the analyst reviewed the challenges and will find out the impact. Then he filled a template named impact analysis document. For each impact analysis, there will be a task id. The impact analysis is needed on the time of releasing the software.

Task Allocation

Using the Trello Board, the scrum master generates an order id against the task. Then he submits the task to the developer (s). The concern developer then starts that task by entering his actual start date. The whole procedure is done using trello board which is connected to each other by LAN connection.

Developing

After approving the estimated bill by the client, the developer starts coding. To solve any problem the developer may use existing function and modules. Each and every process maintains certain methods and the coding standard are strictly followed.

Code Review

After completion of the task, the newly developed code is reviewed by another experienced developer. Sometimes Peer Review is also done. Finally the Project Manager checks the code again.

Team Test

The next phase is testing. Tester has to prepare Test Specification first. Based on that specification, tester does extensive testing. The output is then documented in Test Result. At first the tester team tests the each module in the development environment to build the project. Then it is preceded in the staging environment to get ready for staging and in this stage they approach for integration test.

(26)

26

Ready for release

After completing the all test the module are ready for release towards the master environment. In this master environment all the modules are merged by manually.

Released

When the enhancement or bug fixing is completed, passed in testing phase and the code is reviewed, then the concern developer creates a release document. Then the entire developed module is forwarded to the team city server. Finally, the product is released from the team city server which is in the master or product environment.

Figure 3: data flow of scrum model

Task Repository Sprint Phase Task Allocation

Development Code Review

Team Test(QA)

Ready for

(27)

27

3.5 Kanban Model

Kanban is a method for managing knowledge work with an emphasis on just-in-time delivery while not overloading the team members. In this approach, the process, from definition of a task to its delivery to the customer, is displayed for participants to see and team members pull work from a queue.

Kanban in the context of software development can mean a visual process management system that tells what to produce, when to produce it, and how much to produce inspired by the Toyota Production System and Lean manufacturing.

Kanban is also an agile process and it’s a automated system. So, Comfosys Ltd. is looking forward on the KanBan Process.

The Kanban method is rooted in four basic principles:  Start with what you do now

 Agree to pursue incremental, evolutionary change

 Respect the current process, roles, responsibilities and titles  Leadership at all levels

Kanban Method's six core practices

There are five core properties that had been observed in each successful implementation of the Kanban method. They were later relabeled as practices and extended with the addition of a sixth.

1. Visualize

The workflow of knowledge work is inherently invisible. Visualizing the flow of work and making it visible is core to understanding how working proceeds. Without understanding the workflow, making the right changes is harder.

A common way to visualize the workflow is to use a card wall with cards and columns. The columns on the card wall representing the different states or steps in the workflow.

2. Limit WIP

Limiting work-in-process implies that a pull system is implemented on parts or all of the workflow. The pull system will act as one of the main stimuli for continuous, incremental and evolutionary changes to your system.

(28)

28 The pull system can be implemented as a kanban system, a CONWIP system, a DBR system, or some other variant. The critical elements are that work-in-process at each state in the workflow is limited and that new work is “pulled” into the new information discovery activity when there is available capacity within the local WIP limit.

3. Manage flow

The flow of work through each state in the workflow should be monitored, measured and reported. By actively managing the flow the continuous, incremental and evolutionary changes to the system can be evaluated to have positive or negative effects on the system.

4. Make policies explicit

Until the mechanism of a process is made explicit, it is often hard or impossible to hold a discussion about improving it. Without an explicit understanding of how things work and how work is actually done, any discussion of problems tends to be emotional, anecdotal and subjective. With an explicit understanding it is possible to move to a more rational, empirical, objective discussion of issues. This is more likely to facilitate consensus around improvement suggestions.

5. Implement feedback loops

Collaboration to review flow of work and demand versus capability measures, metrics and indicators coupled with anecdotal narrative explaining notable events is vital to enabling evolutionary change. Organizations that have not implemented the second level of feedback - the operations review - have generally not seen process improvements beyond a localized team level. As a result, they have not realized the full benefits of Kanban observed elsewhere.

6. Improve collaboratively, evolve experimentally

The Kanban method encourages small continuous, incremental and evolutionary changes that stick. When teams have a shared understanding of theories about work, workflow, process, and risk, they are more likely to be able to build a shared comprehension of a problem and suggest improvement actions which can be agreed by consensus.

The Kanban method suggests that a scientific approach is used to implement continuous, incremental and evolutionary changes.

(29)

29

Kanban Work Process

Kanban process is almost similar to scrum process but it is fully automated system and faster the scrum process. For distributing the task and continue the flow the process use their own developed task board which one is KanbanFlow. Here is a screenshot of the board-

Figure 4: Kanban task board

Kanban follows several steps at the time of developing. These steps are-

 Gather requirements from product owner and create user stories and store in the product backlog phase

 Define sprint based on user stories and store in the second step  Sprint on progress that is on developing

 Ready for pre QA in the development environment

 Final QA in the staging environment and ready for final QA test  Ready for released in the master which is master city server

 In the master city server all the products are merged and ready for final released  If any system failed then it moves into the next sprint and allocate extra resources

The whole system is fully automated. No one need to roles as scrum master which is on scrum process. In the second step, the tasks are defined in a small feature in chocolate box. Developer can

(30)

30 choose feature based on their expertise and one he choose his expertise part, in the next time, if the system finds any slot blank, it allocate task automatically. Every step of the system is automated without the primary step. Here is a work flow diagram-

Figure 5: Kanban Workflow

Product Backlog

To-Do (Sprint)

Task In Progress

(Developing)

Released On

Master

QA(Staging

Environment)

Pre-QA

(Developing

Environment)

(31)

31

4. Chapter: Training

4.1 Introduction

In simple terms, training and development refers to the imparting of specific skills, abilities and knowledge to an employee. A formal definition of training is “It is any attempt to improve current or future employee performance by increasing an employee’s ability to perform through learning, usually the changing the employee’s attitude or increasing his or her skills, abilities and knowledge. The need for training is determined by the employee’s performance deficiency.”

Comfosys Ltd. want their employee as productive and more efficient in every section of their development as well as for make sure the green environment in the workplace. They provide more opportunities for their employee. If they find anyone is unable or weak in any subject they arrange training for him or her.

As, i was a fresher and before that i never works in any organization, so they provide me more opportunities to make myself as a proper industrial person. They arrange several training program for me to teach some development methodology and technology that is followed by the company. The trainer was my supervisor. He is a very experienced person and he is working for 13 years in the development field. So, all the trainings were very helpful me and i have learnt a lot of new things and technique. In the next section i described these training briefly.

4.2 Training Description

I have got several training during my internship period. I got both Technical and non-technical training. These are described in the below.

4.2.1 Non-technical Training

These trainings are mandatory for every employee of Comfosys Ltd.. To ensure the green environment in the workplace, rules and regulations of using the resources. These are very important for any large company like Comfosys Ltd.. I got training on-

 Ethics Policy  IT Policy  WPP Policy

(32)

32

Ethics Training

The training was organized and trained by the HR department at the very beginning of our internship period. In the training, i have learnt the following code of conducts.

 Anti-Bribery & Corruption Policy  Advisor Payment Policy

 WPP Codes of Conduct  Social Media Policy

In the second chapter, i have described about the code of conducts that is mandatory for every employee is taught by Ethics training.

IT’S Policy

The training was organized by IT Department and trained by the director of IT Department. In the training i have learnt the rules and regulations of using the resources. Here is a lot of limitation of using the resources but they provide all the opportunities that should be managed by a formal way. The Policy i learnt in this training is mentioned earlier in the chapter two in the section of IT Policy.

4.2.2 Technical Training

I got many technical training during my internship period. Because, this is the main focus of internship program. All the training was trained by my supervisor. These all are described in the below.

(33)

33

Software Development Methodology

Every software development company follows a software development life cycle. Comfosys Ltd.follow Scrum Process from Agile Model. In the chapter of Software Development Methodology I have described the full description of Scrum process how Comfosys Ltd.follow it. That i achieved from this training-

 About Agile Methodology : How it works

 Scrum Process : When an software company follow this model  Role of Scrum Master

 Role of Product owner  Role of team member  how to make a scrum team

 How to manage the task : Using task board (like Trello Board, KanbanFlow)  What is product backlog and sprint backlog

 what need to do when a sprint fail to complete the task within the defined period  How to work in a collaborative team

 Attending the daily scrum

Frontend Development

At the very beginning i got training on frontend development.  HTML5 & CSS3

 Responsive Web Design & UX  Semantic - UI

 Bootstrap

(34)

34 How training benefits the organization

 Leads to improved profitability and more positive attitudes towards profit

orientation. Improves the job knowledge and skills at all levels of the organization.

 Improve the moral of the workforce

 Helps people identify with organization goals  Helps create a better corporate image  Fosters authenticity, openness and trust

 Improves relationship between boss and subordinate  Aids in organizational development

 Learns for the trainee

 Helps prepare guidelines for work

 Aids in understanding and carrying out organizational policies  Provides information for future need in all areas of the organization

 Organization gets more effective decision making and problem solving skills  Aids in development for promotion from within

 Aids in developing leadership skills, motivation, loyalty, better attitudes, and other

aspects that successful workers and managers usually display

 Aids in increasing productivity and quality of work

 Develop a sense of responsibility to the organization for being competent and knowledgeable.

4.4 Conclusion

Training is very needed for every employee of any organization. Only training can make an employee productive and turn into positive attitudes. So, I am happy to get those trainings.

(35)

35

5. Chapter: Project Involvement

5.1 Introduction

Comfosys Ltd. is a product based software organization. To ensure total quality of software development process, Comfosys Ltd.has dedicated department for each mainstream products. Consequently, these departments are named after the product too such as - Nokia team, Dell publisher Team, TrustPilot Team. I was assigned to the TrustPilot team but i was not directly involved with their live projects because the limitation of some It Policy of the company. The project i was involved HR & Finance Management, this was their internal project. Although, they have the project but it is not well organized and many limitations in functionally.

5.2 Meet My Team

I was assigned to the comfosys team. There are 21 members in this team. The team is divided into two parts- The Avengers - Backend Developer and Samurai- Frontend developer. They all are involved in the trustpilot project that is maintained from Danish Company comfoysy. They are the main client of the project and all the time here is a representative from the main company. Our development manager manage and coordinate here.

5.3 The project i involved

As i mentioned early that i was not directly involved with their live project. I am involved in an internal project titled “Website for student association ”.. The project is supervised by Iftekhar Alam, CTO of comfosys Ltd.

5.4 Overview of the project

Human resource management (HRM, or simply HR) is a function in organizations designed to maximize employee performance in service of their employer’s strategic objectives. HR is primarily concerned with how people are managed within organizations, focusing on policies and systems. HR departments and units in organizations are typically responsible for a number of activities, including employee recruitment, training and development, performance appraisal, mange leave; manage attendance and rewarding (e.g., managing pay and benefit systems). HR is also concerned with industrial relations, that is, the balancing of organizational practices with regulations arising from collective bargaining and governmental laws.

(36)

36 Most of the company maintains the HRM department manually by paper work. If the number of employees is so many like more than two hundreds, it’s really very difficult to maintain a huge people by manually. That’s why it’s necessary to automate the whole HR & Finance Department. So, the HR & Finance Management is like a project that automates the HR & Finance department to maintain their work. The module and developing procedure are describing in the below.

5.5 Module of the project

1. Organization Management

 Calendar and Holiday  Project Management  Team Management  Event  Blood Bank 2. Leave Management 3. Attendance Management 4. Employee Management 5. Profile Management 6. Ticketing System 7. Application Management 8. Performance Evaluation 9. Report Generate 10. Training 11. Recruitment 12. Medical Bill 13. Conveyance Bill 14. Finance  Account  Pay Salary  Advance Salary  Loan  Provident fund

(37)

37

5.6.1 Organization Management

HR & Finance Management is an automation system that manages different system. Organizational management is such a module of the project by which HR can manage the following system.

 Calendar and Holiday  Project Management  Team Management  Event

 Blood Bank

Functionality of the features are-

 Every user can see the company calendar with holidays  Admin (HR) can add holiday in the calendar

 Manage working days by changing it to weekends or public holidays.  In project management admin can create a new project

 Assign team members

 Set the time line and keep track and progress of the project  Edit and modify the settings of the project by discussion  Create new team

 Manage team, modify team, add team member if needed  In event feature Admin can add a new event

 Blood Bank feature provides an opportunity to keep track of the update of blood

donation

 If anyone needed blood he can easily manage available blood via the blood bank

feature

5.6.2 Leave Management

The leave application and approval process can be maintained through this module. Anyone can apply for leave using the apply form and the application will automatically forwarded to his respective supervisor. If supervisor approve the leave then it will forwarded to the HR manager for final approval. The features are mentioned below-

(38)

38

 Show status of previous leave  Show the calendar with holiday  Show the leave status by progress bar  Apply for leave

 Approve Leave

 Leave applications are processed by supervised

5.6.3 Attendance Management

Managers may manage their Staff by project, Department or Area. Attendance information is updated automatically according to attendance time and authorized leave applications. One may rules to administer issues such as overtime, benefit entitlement and holidays based on corporate policies and regulatory requirements. The system manage the attendance through a third party device. Features-

 Seamlessly integrate 3rd party attendance devices to feed data into our system.  Keep track of time through punch machine

 Calculate the total work hour

 If anyone does not complete the work hour consecutive three days, the system will

give a warning message to the respective employee

5.6.4 Employee Management

This module will help to keep track of the employee. Add new employee when an employee will join in this company. The feature are mentioned below-

 List of all the employees

 View any specific employee to see his information (by admin)  Filtering System by name or by department

 Add new employee

 keep track of the new joiner

(39)

39

5.6.5 Profile Management

Employee can modify his or her profile as they wish. In this section employee give his all information those are required by the company. The common features are-

 Show the employee information

 Add and edit Personal information

 Add and edit academic and professional qualification  Add and edit emergency contact

 Add and edit company related information

 Change password

 Change profile settings  Change profile picture

 Update the entire information

5.6.6 Ticketing System

This is a system to contact with the hr department by creating a ticket like message sending. In this system user will create a message by fill upping some specific field of a form. Then user can submit form and admin will reply the message to follow the next instruction. The main features of the system are-

 Create new ticket

 Reply ticket and assign task to specific person

 Open and close ticket (admin)  Show previous ticket status

5.6.7 Application Management

In this system employee can apply for different purposes. The features are-

 Apply for medical bill

 Apply for conveyance bill

 Approve application

 Keep track of previous status

5.6.8 Performance Evaluation

Evaluate performance each of the employee and generate report. This evaluation will proceed by supervisor.

(40)

40

5.6.9 Report Generate

Sometimes need some documented form like employee information, tax information, this feature helps to generate these form as documented form with the required information.

 Request for any information

 Generate personal information  leave information full or by date

5.6.10 Training

Training Modules helps user to plan yearly training need and manage staff training information.

Features are,

 Set different Training and training category, training organizer, different types of training with unit cost and effective date of training.

 Plan required training of a staff.

 Manage staff training according to plan, training result & different type of training report.

5.6.11 Recruitment Management

The recruitment module streamlines organization’s recruitment process with extensive functionality for employees and managers, with intuitive self-service functionality, the system allows managers to easily create and edit job requisition in the system. The system also also allows managers to view, collect and analyze interview and examination results by employees or by examinations.

Features are,

 Create new jobs and store corresponding advertising information.

 Create recruitment references based on the advertisement and specify prerequisites

with respect to the job adversities for.

 Setup examination with marking schemes for recruitment process.

 Set-up venue for examinations and store information related to viva examiners and

create interview cards specific to any recruitment reference,

 Create short listed applicant’s database with applicant’s personal information.  Manage pre-service training records related to applicants.

(41)

41

5.6.12 Medical Bill & Conveyance Bill

Apply for those bills. Based on attached documents admin will approve those application.

5.6.13 Finance-Accounting module

Accounting Module is delivered to give organizations the facility to perform accounting operation on the financial information (e.g. Salary, PF, Loan, Income Tax, medical bill, conveyance bill etc.) generated. Also this module gives privilege to the user to fit accounting data to other systems (e.g. banking system).

Features are,

 Create account of an employee  Create chart of account.  Account number mapping.  Generate voucher automatically.  Voucher posting.

 Different reports on posted/un-posted voucher, trail balance, balance sheet, report

to transfer financial data for other banking system like “flex cube”.

5.6.14 Finance - Pay Salary Module

HR managers can gain a holistic view of their employee’s compensation packages. Managers can quickly access total compensation information for any of their employee groups including the categories of base salary, housing allowance, medical allowance, regular bonus, increments etc. Managers can also initiate salary changes either for individual employees or by group. Salary changes can be made at any time in the year – targeted review periods or simply ad hoc – based on the rules of your organization.

Features are,

 Structure & manage salary according to staff levels, group staff.

 Use salary group facilities to define separate salary structures for staff at the same

level.

 Define salary breakup as required and use this information to define salary

structures.

 Define staff salary structure at any date and generate salary accordingly.  Manage salary increment process.

 Generate monthly pay slip s according to staff attendance and leave status for all

staffs that’s salary have been defined.

 Slips for bonuses may be generated automatically with respect to staff salary

(42)

42

5.6.15 Finance - Loan & Advanced Module

This module has been made to manage company loans that an organization may offer its employees.

Features are,

 Set-up loan types with customized interest calculation policies (simple or

compound).

 Loan realization is done automatically according to installment amounts and

automatic adjustments to salaries are made with a reflection of the transaction in the pay slip.

5.6.16 Finance - Provident Fund Module

PF module handles all PF related activities and reduces overheads in the form of man-hours that are considered in managing provident fund related issues. The PF module has been built around company practices in Bangladesh and may be tailored to suit your business needs effectively.

Features are,

 Setup members and nominees and specific shares of those nominees.

 Setup yearly interest rates for different quarters of the year to calculate interest of

PF contributions.

 Store information on PF investments.

 Collect monthly PF contributions for all active PF members automatically or do the

same for specific staff. .

5.6.17 Finance - Income Tax Management Module

This module allows managers to reduce the significant expenses associated with completing tax calculations for their employees. It has been created with Bangladesh in mind and developments in local tax policy. The basic functionalities of the Bangladesh Income Tax structure have been incorporate while at same time retaining the functionality and flexibility that is necessary for provisioning and adjustments.

Features are,

 Set-up year wise government income tax rules and calculation factors.  Setup medical and investment contributions for yearend adjustments.

 Calculate monthly tax directly from monthly salary and reflect the adjustments in

References

Related documents

Criteria: Applicant must be a graduate of Covington High School and live in the Covington district for the prior year and be in the top 50% of their class, be accepted as

Randomized clinical trial of laparoscopic Roux-en-Y gastric bypass versus laparo- scopic vertical banded gastroplasty for obesity. Laparoscopic gastric bypass: development of

In this respect the Lippi’s (2003) result, whereby conservatism of monetary policy and centralized wage setting affect equilibrium employment only through the output and

Sphere 10 of the Tree of Life represents the part of Spirit that is flesh and blood, the physical body, along with the electro-magnetic "body" or energy-field

Seismic'Pushover'Analysis:'Using' AASHTO'Guide&Specifica,ons&for&

• In Scrum, the Product Owner is accountable for the value of the Team’s work, the ScrumMaster is accountable to make the Team better, and the Development Team

„ Product Owner identifies Product Backlog items „ (Development Team estimates Product Backlog) „ (Product Owner prioritizes Product Backlog).. Scrum

Section 3 explains the proposed conceptual view design of the unified architecture for HEMIS based on the adopted principles of Siemens’ Four-View Model,