Flexible Work Arrangements Request (FWAR) Tool

abashedwhimsicalSoftware and s/w Development

Nov 2, 2013 (4 years and 6 days ago)

85 views

Version: 1.1

Date: May, 2012











In
formation
Technology Services

Technical
Specification and Installation Guide


Flexible Work Arrangements
Request
(FWAR)

Tool

















Disclaimer

The Department of Justice and the Attorney
-
General has develope
d the FWAR tool to assist in the
negotiation and implementation of Flexible Work Arrangements in work places. This tool is offered
as a support resource only and is not legally required by industrial relations legislation and can be
used or modified at the

discretion of the employer and employee concerned. While a technical
guide is provided to assist with the installation of the FWAR tool, responsibility lies with the user to
perform the installation as no further technical support will be provided. The De
partment of Justice
and the Attorney
-
General does not accept responsibility for any technical limitations associated
with the FWAR tool
.
Version: 1.1

Date: May, 2012

Table of Contents


1

Definitions and
A
cronyms

................................
................................
................................
.............

3

2

Introduction

................................
................................
................................
................................
...

4

3

Te
chnology
U
sed

................................
................................
................................
..........................

5

4

FWAR Configuratoin and deployment
................................
................................
..........................

6

4.1

System O
verview

................................
................................
................................
.................

6

4.2

Co
nfigure
IIS

................................
................................
................................
........................

6

4.3

A
pplication

I
n
stalla
tion

................................
................................
................................
.........

8

4.4

C
onfiguration

................................
................................
................................
......................

11


4.4.1 Set up the System Administrator

…………………………………………………………… 11



4.4.2 Set up a New User…………..…………………………………………………………
…….. 12



4.4.3 Running Reports ………………………………………………………………………………13



4.4.4 Logging out of the System ……………………………………………………………………14


5

S
ecurity

................................
................................
................................
................................
.......

14

5.
1

Roles

................................
................................
................................
................................
..

15

5.2

Authentication

................................
................................
................................
....................

15

6

A
rchitecture

................................
................................
................................
................................
.

16

6.1

A
pplicati
on Design

................................
................................
................................
.............

16

6.2

Visual Studio Solution

................................
................................
................................
........

16

6.2.1

Overview

................................
................................
................................
......................

16

6.2
.2

Client Folder

................................
................................
................................
.................

16

6.2.3

Server Folder

................................
................................
................................
...............

17

6.2.4

Update Entities Workflow
................................
................................
.............................

17

6.2.5

Create Service Function

................................
................................
..............................

18

6.2.6

Create New Screen
................................
................................
................................
......

18



Flexible Work Arrangements Request
(FWAR) Tool


Page
3

of
18

Department of Justice and Attorney
-
General (DJAG 12/5140)


1

DEFINITIONS AND ACRO
NYMS

Term/Acronym

Definition

Department

This refers to the Depar
tment of Justice and Attorney
-
General,
Queensland and statutory authorities within the portfolio of the Attorney
-
General.

JAG

This refers specifically to the Department of Justice and Attorney
-
General,
Queensland.

WCF

Windows Communication Foundation

TFS

Team Foundation Server

MS

Microsoft

VS

Visual Studio


Flexible Work Arrangements Request
(FWAR) Tool


Page
4

of
18

Department of Justice and Attorney
-
General (DJAG 12/5140)



2

INTRODUCTION


The
Flexible Work Arrangements
Request
(
FWAR)

Tool

was developed by the Department of

Justice and Attorney
-
General

Queensland for the Public

Service Commission
to
help evaluate the

success of work
-
life balance policy for
organisations
.


The
FWAR Tool
is

available for installation by
an organisation’s
IT/help desk staff, in enterprise
and small business environments (active directory and non
-
active directory environment) on a web
ser
ver. After installation, the
FWAR Tool

needs to be populated with departments and managers
of the
organisation

by a nominated administrator. Consequently employees
are

able to submit
forms for approval by their managers. The reports
,

which are a part of
the
FWAR Tool

help the
business monitor their
flexible work arrangements
.


This document gives an overview of the tools, environment, brief configuration and

deployme
nt
instructions
.






Flexible Work Arrangements Request
(FWAR) Tool


Page
5

of
18

Department of Justice and Attorney
-
General (DJAG 12/5140)


3

TECHNOLOGY USED


The development environment consists of the follow
ing components:




Microsoft Visual Studio 20
10

.NET Enterprise Developer



SQL Server
Compact Edition 4.0



Microsoft Internet Information Server (IIS) 6.0 or above



Source control repository such as Team Foundation Server (TFS), Visual Source Safe (VSS)



Micros
oft .NET Framework
4.0

SP1



PRISM Framework



MS Silverlight 4.0



C# language



Expression Blend (Other tools can be used)



Flexible Work Arrangements Request
(FWAR) Tool


Page
6

of
18

Department of Justice and Attorney
-
General (DJAG 12/5140)




4

FWAR CONFIGURAT
I
ON AND DEPLOYMENT

4.1

SYSTEM OVERVIEW


The
FWAR application is a Silverlight 4.0 application that needs to be hosted
i
n th
e
Internet
Information Services
(IIS) version 6 or higher.
The minimum requirements for the server are listed
below:




Microsoft Windows Server 2003 or higher



NET Framework 4.0 (included in distribution package)



SQL Server Compact Edition 4.0 Provider (incl
uded in distribution package)


4.2

CONFIGURE IIS


In order to install
the
FWAR

application
the
IIS

server needs to be configured first (NOTE:
instructions given below are for IIS 6.0. For higher versions of IIS screenshots may not be
applicable, however, confi
guration steps are still valid).


1.

In
IIS
, create a new website called “
FWAR






Flexible Work Arrangements Request
(FWAR) Tool


Page
7

of
18

Department of Justice and Attorney
-
General (DJAG 12/5140)


2.

Go to
FWAR

properties and select
HTTP Headers

tab




3.

Click on
MIME Types

and add
Silverlight file extensions as per screenshot below




Flexible Work Arrangements Request
(FWAR) Tool


Page
8

of
18

Department of Justice and Attorney
-
General (DJAG 12/5140)


4.

Go to
ASP.NET

tab in Properties Win
dow and make sure
ASP.NET Version

property

is set to 4.0.xxxxx



Click
Apply

and close the window.

Environment is now ready for
FWAR

installation.

4.3

APPLICATION INSTALLA
TION

Double click
FWAR.msi

file to launch install.


NOTE: If any of the pre
-
requisite
s are not installed installation wizard will attempt to install it
automatically. In the case of failure, please install pre
-
requisites manually from the corresponding
folder in the distribution package.


Click next on the
Welcome

screen


Flexible Work Arrangements Request
(FWAR) Tool


Page
9

of
18

Department of Justice and Attorney
-
General (DJAG 12/5140)




Accept licence
agreement and click next. On the
Installation Address

screen use values as per
screenshot below:




Click next to complete installation. Once application is installed, access to database file MUST be
granted to the
App_Data

folder. Browse to the installat
ion folder and grant appropriate permission
(read/write) to specific users to
App_Data

folder and its contents.


Flexible Work Arrangements Request
(FWAR) Tool


Page
10

of
18

Department of Justice and Attorney
-
General (DJAG 12/5140)





Open
web.config

file in text editor and find the following section:

<system.net>

<mailSettings>


<smtp from="
changeme
@
change.me
">



<network host="
your
smtpmail
" />


</smtp>


</mailSettings>


</system.net>

Configure this section to reflect your smtp server configuration
s
. Save
web.config.


Application is now ready for use.



Flexible Work Arrangements Request
(FWAR) Tool


Page
11

of
18

Department of Justice and Attorney
-
General (DJAG 12/5140)


4.4


CONFIGURATION

4.4.1

Set

up the System Administrator

Browse
to
FWAR website. On the login screen please use the following credentials to login:

Username
:
admin1@test.com

Password
: test



Once logged in, go to
Administration

-
>
Application

S
ettings
.


Adjust settings t
o suit your environment.

HR email
: email address to be used by HR to receive application progress reports


Flexible Work Arrangements Request
(FWAR) Tool


Page
12

of
18

Department of Justice and Attorney
-
General (DJAG 12/5140)


No
-
reply email
: email address to be used to send all email notifications in the system

Home page note
: message to be shown on the home page when users

login (does not
apply to administrator
)


4.4.2

S
et up a new user

System Administrator is to login using the specified Administrator username and the
Administrator password
(as outlined in 4.4.1)

and click “sign in”.







Insert your username (your email
address) and your password.

Click the box stating that you have
read the disclaimer
.

Click “sign in” (or press enter)

Click on “Administration” and select
“Manage Users” from the drop down menu


Flexible Work Arrangements Request
(FWAR) Tool


Page
13

of
18

Department of Justice and Attorney
-
General (DJAG 12/5140)





4.4.3

Running re
ports



Click on “Add New” to add a new user to
the FWAR Tool.

Complete the employee’s
details in this box.

Select the employee’s role
and manager from the drop
down menu.

Click “save” when all
information

has been
entered.

To view / print / save standard reports from
the FWAR Tool, click on “Reports” then
“Forms Statistics”.


Flexible Work Arrangements Request
(FWAR) Tool


Page
14

of
18

Department of Justice and Attorney
-
General (DJAG 12/5140)




More detailed instructions on setting up users and running reports
, including interpreting
results,

is provided in the

FWAR HR Guide
.



4.4.4

Logging out of the
FWAR Tool

Once all selections have been made, click
on Preview for Reports to be loaded.

To log out of the FWAR Tool, click on
“System Administrator” from any page and
choose “log out” from the drop down menu.

To select parameters for a report, select
Division, Branch, Dates and Emplo
yment Type.


Flexible Work Arrangements Request
(FWAR) Tool


Page
15

of
18

Department of Justice and Attorney
-
General (DJAG 12/5140)


5

SECURITY


Application security is based on the roles w
hich are described in 5.1.1 below.


5.1

ROLES



System Administrator
.

This role has access to everything within the application
(running reports, manage forms, manage users, manage from lookups).



Manager
. Manager has an ability to submit his/her own forms a
s well as fill out Part B
and Part C of the forms submitted by
employees
.

Manager can only
view

his/her own
forms and forms submitted to him/her.



Employee
. Employee can only submit and view Part A of the form.


5.2


AUTHENTICATION

Users are authenticated b
y supplying their username/password combination on the login
page. In order to login, users must accept application disclaimer.



Flexible Work Arrangements Request
(FWAR) Tool


Page
16

of
18

Department of Justice and Attorney
-
General (DJAG 12/5140)


6.

ARCHITECTURE

6.1


APPLICATION DESIGN

Application is layered logically into several components following best Microsoft pr
actices.
There are three main tiers: Client (UI), Server (Data Access and Services) and Web
(hosting environment). All communications to backend are done via WCF services that can
be configured as REST or SOAP.


User interface was build using Silverlight a
nd Prism framework. It was decided to split
application into several semi
-
independent modules that are glued together by the shell
module. Communication between modules is achieved using Prism Framework in publish
-
subscribe fashion. Any module can broadcas
t specific event and only subscribed modules
are able to handle it.


Unity framework is used throughout the application to ensure scalability and extensibility of
the code. Entity framework is used to perform CRUD operations on data and to abstract
databa
se table into Data Transformation Objects.


6.2


VISUAL STUDIO SOLUTI
ON

6.2.1

OVERVIEW


Solution is broken down into several logical folders:




Client



all client code and UI projects

o

Core


Shell application, supporting libraries and infrastructure

o

Modul
e


UI modules



CodeGen



screen code generator



Server



data access, services and reports

o

Common


contains data contracts for service
-
to
-
UI communication, entity data
access layer and some helper libraries

o

Reports


contains server side reports

o

Service


WCF services



Web



hosting environments

o

Setup project

o

Website to host UI and services


6.2.2

CLIENT FOLDER


This folder contains all the code for User Interface. In folder
Core

there are 4 projects:
PSIER.Silverlight, PSIER.Silverlight.DataContacts, PSIE
R.Silverlight.Infrastructure

and
PSIER.Silverlight.Library
.


PSIER.Silverlight

is a main UI shell that glues together all modules. It contains master
screen called
Shell
.
xaml
. Shell screens loads all screens into frame and handles all

Flexible Work Arrangements Request
(FWAR) Tool


Page
17

of
18

Department of Justice and Attorney
-
General (DJAG 12/5140)


application navigatio
n. All navigation mappings are under
Assets
\
UriMappers
\
UriMapper.xaml.

All styles are under
Themes
folder.


PSIER.Silverlight.DataContacts
folder contains all service data contacts. Due to the fact
that Silverlight is a cut
-
down .NET framework it cannot r
eference
DataContracts

(
PSIER.Server.DataContract
) library directly. Therefore,
PSIER.Silverlight.DataContacts
was created with all contract are added from
PSIER.Server.DataContract
as a link.


PSIER.Silverlight.Infrastructure
contains all application infr
astructure such as custom
events, enums, constants, global variables, typed strings etc.
PSIER.Silverlight.Library
contains application helper libraries and utilities.

6.2.3

SERVER FOLDER

This folder contains all application backend logic.
Services
folder
contains all WCF
services. Each service project has
Service

and
Business

folder.
Service

folder holds
service contract and its implementation which is generally just a wrapper of the business
repository.
Business

folder contains business repository interfa
ce and its implementations.
Unity.config

file maps service and business implementations to the corresponding
interfaces. This way, if new business repository is created then it can just be mapped in
config file.


Common
folder contains all service Data con
tacts, Entities and supporting infrastructure.
Reports

folder contains
T
elerik reports to be shown in client application.

6.2.4

UPDATE ENTITIES WORK
FLOW

When database schema changes you can easily propagate changes to application. Follow
these steps:

1.

Open
PSIER.edmx

file in PSIER.Server.Entities project.

2.

Right click anywhere in design pane and select
Update Model from Database


3.

Select you
r

connection, select tables you want to include or update and click
Finish
.

4.

Click
Save

in Visual Studio.


Flexible Work Arrangements Request
(FWAR) Tool


Page
18

of
18

Department of Justice and Attorney
-
General (DJAG 12/5140)


5.

Now you
r

entiti
es are up
-
to
-
date. We still have to update data contracts. Right click
PSIER.DataContracts.tt
file in
PSIER.Server.DataContracts
project and click
Run Custom Tool.
This will generate data contracts based on entities.

6.

If there are any new data contracts/tab
les
,

you must include them into
PSIER.Silverlight.DataContracts
project. Right click
PSIER.Silverlight.DataContracts

project,
select
Add Existing Item


7.

Browse to
PSIER.Server.DataContracts
and select new data contract. Click
Add as link


6.2.5

CREATE SER
VICE FUNCTION

If there is a need to add new method/function to existing service follow these steps:

1.

Add new function into business repository in
Business

Folder.

2.

Add new function contract into interface in
Business

Folder

3.

Add new function into service as a

wrapper on business repository in
Service

Folder.

4.

Add new function contract into interface in
Service

Folder

5.

Update service references in client projects

6.2.6

CREATE NEW SCREEN

Add new screen to UI project. The easiest way is to copy code from one of the

existing files
(screen has all files in corresponding screen folder). Each screen must contain
View

and

View Model
files including interfaces. All business logic is in
ViewModel
and functionality
is achieved through binding. Please read more on MVVM from

Microsoft White Papers.