Project Synopsis
Project Synopsis
1. SYNOPSIS
1.1 ABSTRACT:
PROJECT DESCRIPTION:
Deal Tracker System automates the creation, tracking and management of investment
opportunities by leveraging configurable workflows for each asset type. Deal Tracker is an effective
tool to track the deals and monitor key deal influencers. It allows request managers to log deal
information real time. Request managers can create new deals and change the status of the current
deals. Customer and the managers are notified about the deal with alerts and pop ups. The end to end
deal summary with Debits, Credits and Loss can be known just at a click of mouse. The
communication between various Deal Entities is available in terms of back dated proofs for
discrepancies.
This document aims at defining the overall software requirements for Deal Tracker. Efforts have
been made to define the requirements exhaustively and accurately with the following features:
Customizable User Interface
A robust Automated system
Privacy and Security features
Lightweight, fast and effective
Manage multiple deals
Monitor sales opportunities
Increase sales productivity
Benchmark against competitors
Customer satisfaction
Maximum profit to the organization
1.2 SPECIFICATIONS
HARDWARE REQUIREMENTS:
To develop this application, we need a minimum hardware requirement that would help the
performance of the application is better. This project has been developed with following hardware
requirement:
SOFTWARE REQUIREMENTS:
Database : MySQL
Operating System : Linux
Language : Groovy, Java Script, XML, CSS, HTML
Tool : Bonitasoft Open Source Workflow and BPM Software
Deal tracker allows the request manager to log in new deal information real time. Request
managers can create new deals and change the status of the current deals. Customer and the managers
are notified about the deal with alerts, pop ups and mail service. It helps to manage a number of
incoming business deals from different regions effectively without consuming much of the request
manager's time. It gives quick response and better interoperability. Deal Tracker consists of a
Workflow. Workflow is a sequence of concatenated steps. It is seen as any abstraction of real work
where emphasis is on the flow paradigm. Each step follows the precedent without delay or gap and
ends just before the subsequent step may begin. It also serves as the virtual representation of the real
work. It is used to capture and develop human-to-machine interaction. Workflow concepts are closely
related to other concepts used to define organizational structure, such as function, project, policies and
hierarchies. The open source workflow tool used for Deal Tracker is Bonitasoft Open Source Workflow
and BPM software.
1.3.1 OBJECTIVE
The main purpose of this tool is to provide an automated way of managing large number of
complicated business deals with very less turnaround time. Deal Tracker aims to be robust and
convenient tool for making business deals within seconds. It also aims at making the system reusable
for similar types of deals.
1.3.2 SCOPE
Deal Tracker gives us a better management of the deals with vital information storage and
processing. It provides an effective solution to the overwhelming amount of deals that business users
experience every day. This system can save an Executive’s time and company’s money by making
everything more intuitive, easier to log deal information, and allowing for an extensive, real-time
access of critical information instead of recording and processing deal data in an excel sheet.
Before the Deal tracker invention, it was difficult to manage the business deals of an
organization coming from different regions. The executive/manager had to dump and process all the
data related to the deal in an excel sheet. Excel is a spreadsheet application used for calculation,
graphing tools, pivot table, etc. It consumed a lot of manual effort to save the deal information for
future purpose by creating new excel sheets for each deal. It was a tedious job to keep track of the
deals. Several deals poured in making a complex environment for the deal manager. Since the response
time for a deal was slow, other deals were lost due to a large turnaround time. This inconvenience
resulted in the development of a new system/tool- Deal Tracker.
2. PREAMBLE
Ericsson has 33,000 Patents to its name and is also the inventor of Bluetooth. Headquartered
in Stockholm, the company has offices and operations in more than 180 Countries, with more than
17,700 staff in Sweden, and also operates in Brazil, Canada, China, Finland, Hong Kong, India,
Ireland, Italy, Hungary, the UK and the US.
Ericsson’s Vision: Be the Prime Driver in an all-communicating World.
Products and services
Ericsson offers products and services from three main business units.
Business Unit Networks (BNET) focuses on networks for mobile and fixed line public
telephone networks.
Business Unit Global Services (BUGS) provides telecoms-related professional services,
including for example taking responsibility for running an operators network and related
business support systems.
Business Unit Support Solutions focuses on Operations support systems/Business support
systems (OSS/BSS), TV and media and Mobile commerce (M-Commerce).
In addition, there is a research and development element, and central functions. Operations locally
are coordinated through a structure of regions and Market Units, with some Global and Multi-Country
Accounts for large customers.
Mobile access
Ericsson provides mobile telecommunications systems that incorporate any of the major second-
generation (2G) (global system for mobile communications (GSM), time division multiple access
(TDMA), code division multiple access (CDMA), 2.5G (General Packet Radio Service (GPRS), 2.75G
(Enhanced Data Rates for GSM Evolution (EDGE), and 3G wideband code division multiple access
(W-CDMA), High-Speed Downlink Packet Access (HSDPA), Evolved HSPA (HSPA+, I-HSPA),
Evcode division multiple access (third generation cellular/radio technology) (CDMA2000), time
division synchronous code division multiple access (TD-SCDMA)) mobile technology standards. It
offer services to network operators for several network standards. Ericsson is also involved in the
development of standards for the Long-Term Evolution (LTE) of 3G.
of the core network switching systems, controllers for base stations and radio networks are built upon
common platforms. Like its radio base station products, LM Ericsson's mobile switching products have
scalability and capacity. Mobile network equipment and associated network rollout services account for
approximately 74% of its sales.
3. REVIEW OF LITERATURE
the user to get started with processes designed with other standards and technologies.
Benefits:
Tests different process models to optimize processes, gets results within minutes, and measure
improvements.
Enhanced business quality: Relies less on paper, emails and phone calls; tasks go directly to the
right person; each person involved can see info relevant to their tasks, including discussions and
attachments.
Gives clear instructions to end users; better organization leads to better efficiency in their daily
work.
Increased Visibility: Makes business processes visual, quickly identifies bottlenecks and targets
for improvement.
Saves time, effort and money: Tasks go directly to the right person at the right level; can be
automatically forwarded in case of absence or vacation; and each person involved in a process
case can see info relevant to their tasks, including discussions and attachments. Get rapid
results: With Bonita Open Solution, one can realize immediate benefits of process automation.
Applications:
Bonita can be applied for various projects requiring complex workflows like Supply Chain
Management, e-Government, Human Resources, Contract Management etc.
Bonita Studio
Bonita Studio is the graphic process design interface of Bonita Open Solution. This is what
is seen when we launch Bonita Open Solution.
Form Builder in Bonita Studio is used to create and customize Forms which are deployed via
stand-alone Web-based applications(Bonita Open Solution default applications are included). This is
the part of Bonita Open Solution that we use to create forms that can be presented externally and can be
widely distributed, accessible by our end users via a web portal or standalone web page, designed by
you and integrated into your company or organization’s web site or intranet.
Bonita User Experience provides a portal designed for management of deployed process. It can
be used:
by the Process Developer to develop and test the management of tasks (steps) in cases
3.2 MYSQL
MySQL officially, but also called "My Sequel" is the world's most widely used open source
Relational database management system(RDBMS) that runs as a server providing multi-user access to
a number of databases. The SQL phrase stands for Structured Query Language.
MySQL is a popular choice of database for use in web applications, and is a central component
of the widely used LAMP open source web application software stack. LAMP is an acronym for
"Linux, Apache, MySQL, Perl/PHP/Python".
MySQL works on many system platforms, including AIX, BSDi, FreeBSD, HP-UX,
eComStation, i5/OS, IRIX, Linux, Mac OS X, Microsoft Windows, NetBSD, Novell NetWare,
OpenBSD, OpenSolaris, OS/2 Warp, QNX, Solaris, Symbian, SunOS, SCO OpenServer, SCO
UnixWare, Sanos and Tru64. A port of MySQL to OpenVMS also exists.
MySQL can be built and installed manually from source code, but this can be tedious so it is
more commonly installed from a binary package unless special customizations are required. On most
Linux distributions the package management system can download and install MySQL with minimal
effort, though further configuration is often required to adjust security and optimization settings.
Cross-platform support
Triggers
Cursors
Updatable Views
Information schema
Strict mode (ensures MySQL does not truncate or otherwise modify data to conform to an
underlying data type, when an incompatible value is inserted into that type)
X/Open XA distributed transaction processing (DTP) support; two phase commit as part of this,
using Oracle's InnoDB engine
Independent storage engines (MyISAM for read speed, InnoDB for transactions and referential
integrity, MySQL Archive for storing historical data in little space)
Transactions with the InnoDB and NDB Cluster storage engines; savepoints with InnoDB
SSL support
Query caching
Replication support (i.e. Master-Master Replication & Master-Slave Replication) with one
master per slave, many slaves per master. Multi-master replication is provided in MySQL
Cluster, and multi-master support can be added to unclustered configurations using Galera
Cluster.
Limitations:
Like other SQL databases, MySQL does not currently comply with the full SQL standard for
some of the implemented functionality, including foreign key references when using some storage
engines other than the 'standard' InnoDB.
Triggers are currently limited to one per action/timing, i.e., maximum one after insert and one before
insert on the same table. There are no triggers on views.
MySQL, like most other transactional relational databases, is strongly limited by hard disk
performance. This is especially true in terms of write latency. Given the recent appearance of very
affordable consumer grade SATA interface Solid-state drives that offer zero mechanical latency, a
fivefold speedup over even an eight drive RAID array can be had for a smaller investment.
3.3 NUXEO
Nuxeo is an open source content management system platform used by architects and
developers to build, deploy, and run content-centric business applications. Nuxeo's Enterprise Content
Management (ECM) technology allows for document management, case management, digital asset
management and other applications. The Nuxeo Platform offers modularity, a plug-in model and
packaging capabilities. Using an open source development model, Nuxeo provides a subscription
program with software maintenance, technical support and customization tools. Nuxeo Platform usages
can be deployed on premise or in the cloud via services like Nuxeo Studio to deliver cloud content
management services.
Nuxeo Platform consists of four independent layers. Layers do not require the other layers, so
an application builder can choose the one or more layers required for a particular solution:
Nuxeo Runtime: the underlying component and service model, manages the connection with
the application server.
Nuxeo Core: a content repository offering storage services, content model definition, lifecycle,
query, versioning, etc.
ECM Services: an extensible set of generic, configurable services such as workflow,
annotation, and import/export.
UI Frameworks: allows for the building of user interfaces adapted to the application context
and the users. They include JSF/Seam, Nuxeo WebEngine, Google Web Toolkit and Eclipse
RCP, among others.
Nuxeo is an Open Source Platform for Enterprise Content Management enabling architects
and developers to build, deploy and run content-driven applications. The Nuxeo Platform is modular,
flexible, and extensible, so applications can be configured and customized to adapt to the project
context.
Nuxeo applications can be configured with no programming experience, and extended using
standard Java EE technologies.
Groovy 1.0 was released on January 2, 2007, and Groovy 2.0 in July, 2012. Groovy 3.0 is
planned for release in 2013, with support for Java 8 features and a new Meta Object Protocol. Since
version 2 Groovy can also be compiled statically, offering type inference and performance close to, or
even greater than, Java's. Groovy is backed by VMware, after its acquisition of SpringSource, which
acquired G2One, the Groovy and Grails company.
Most valid Java files are also valid Groovy files. Although the two languages are similar,
Groovy code can be more compact, because it does not require all the elements that Java requires. This
makes it possible for Java programmers to gradually learn Groovy by starting with familiar Java syntax
before acquiring more Groovy idioms.
Groovy features not available in Java include both static and dynamic typing, closures, operator
overloading, native syntax for lists and associative arrays (maps), native support for regular
expressions, polymorphic iteration, expressions embedded inside strings, additional helper methods,
and the safe navigation operator "?." to automatically check for nulls (for example,
"variable?.method()", or "variable?.field").
Since version 2 Groovy also supports modularity, being able to ship only the needed jars
according to the project needs, thus reducing the size of groovy's lib, type checking, static compilation,
Project Coin syntax enhancements, multicatch blocks and ongoing performance enhancements using
JDK7's invoke dynamic instruction.
Groovy's syntax can be made far more compact than Java. For example, a declaration in
Standard Java 5+ such as:
Groovy provides native support for various markup languages such as XML and HTML,
accomplished via an inline DOM syntax. This feature enables the definition and manipulation of many
types of heterogeneous data assets with a uniform and concise syntax and programming methodology.
Unlike Java, a Groovy source code file can be executed as an (uncompiled) script if it contains
code outside any class definition, is a class with a main method, or is a Runnable or GroovyTestCase. A
Groovy script is fully parsed, compiled, and generated before execution (similar to Perl and Ruby).
GroovyBeans are Groovy's version of JavaBeans. Groovy implicitly generates accessor and
mutator methods.
Groovy is supported by Bonitasoft and thus not much effort was put to code in this
programming language. All the coding involves a study in groovy programming language.
3.5 JAVASCRIPT
JavaScript (JS) is an interpreted computer programming language. It was originally
implemented as part of web browsers so that client-side scripts could interact with the user, control the
browser, communicate asynchronously, and alter the document content that was displayed. More
recently, however, it has become common in both game development and the creation of desktop
applications.
JavaScript is a prototype-based scripting language that is dynamic, weakly typed, and has first-
class functions. Its syntax was influenced by the language C. JavaScript copies many names and
naming conventions from Java, but the two languages are otherwise unrelated and have very different
semantics. The key design principles within JavaScript are taken from the Self and Scheme
programming languages. It is a multi-paradigm language, supporting object-oriented, imperative, and
functional programming styles.
JavaScript's use in applications outside of web pages—for example, in PDF documents, site-
specific browsers, and desktop widgets—is also significant. Newer and faster JavaScript VMs and
frameworks built upon them (notably Node.js) have also increased the popularity of JavaScript for
server-side web applications.
JavaScript was formalized in the ECMAScript language standard and is primarily used as part
of a web browser (client-side JavaScript). This enables programmatic access to computational objects
Features:
Imperative and structured
Dynamic
Functional
Prototype-based
Miscellaneous
Run-time environment
Varied functions
Array and object literals
Regular expressions
Vendor-specific extensions
JavaScript is officially managed by Mozilla Foundation, and new language features are added
periodically. However, only some JavaScript engines support these new features:
Property getter and setter functions (also supported by WebKit, Opera, ActionScript, and
Rhino)
Conditional catch clauses
Iterator protocol adopted from Python
Shallow generators-coroutines also adopted from Python
Array comprehensions and generator expressions also adopted from Python
Proper block scope via the let keyword
Array and object destructuring (limited form of pattern matching)
Concise function expressions (function(args) expr)
ECMAScript for XML (E4X), an extension that adds native XML support to
ECMAScript.
3.6 HTML
HyperText Markup Language (HTML) is the main markup language for creating web pages and
other information that can be displayed in a web browser.
HTML is written in the form of HTML elements consisting of tags enclosed in angle brackets (like
<html>), within the web page content. HTML tags most commonly come in pairs like <h1> and </h1>,
although some tags, known as empty elements, are unpaired, for example <img>. The first tag in a pair
is the start tag, and the second tag is the end tag (they are also called opening tags and closing tags). In
between these tags web designers can add text, tags, comments and other types of text-based content.
The purpose of a web browser is to read HTML documents and compose them into visible or
audible web pages. The browser does not display the HTML tags, but uses the tags to interpret the
content of the page.
HTML elements form the building blocks of all websites. HTML allows images and objects to
be embedded and can be used to create interactive forms. It provides a means to create structured
documents by denoting structural semantics for text such as headings, paragraphs, lists, links, quotes
and other items. It can embed scripts written in languages such as JavaScript which affect the behavior
of HTML web pages.
Web browsers can also refer to Cascading Style Sheets (CSS) to define the appearance and
layout of text and other material. The W3C, maintainer of both the HTML and the CSS standards,
encourages the use of CSS over explicit presentational HTML markup.
3.7 CSS
Cascading Style Sheets (CSS) is a style sheet language used for describing the presentation
semantics (the look and formatting) of a document written in a markup language. Its most common
application is to style web pages written in HTML and XHTML, but the language can also be applied
to any kind of XML document, including plain XML, SVG and XUL.
CSS is designed primarily to enable the separation of document content (written in HTML or a
similar markup language) from document presentation, including elements such as the layout, colors,
and fonts.[1] This separation can improve content accessibility, provide more flexibility and control in
the specification of presentation characteristics, enable multiple pages to share formatting, and reduce
complexity and repetition in the structural content (such as by allowing for tableless web design). CSS
can also allow the same markup page to be presented in different styles for different rendering methods,
such as on-screen, in print, by voice (when read out by a speech-based browser or screen reader) and on
Braille-based, tactile devices. It can also be used to allow the web page to display differently depending
on the screen size or device on which it is being viewed. While the author of a document typically links
that document to a CSS file, readers can use a different style sheet, perhaps one on their own computer,
to override the one the author has specified.
CSS specifies a priority scheme to determine which style rules apply if more than one rule
matches against a particular element. In this so-called cascade, priorities or weights are calculated and
assigned to rules, so that the results are predictable.
3.8 METHODOLOGY
The methodology followed in the project is Agile Methodology.
Here is some information about the methodology. Agile software development refers to a group
of software methodologies based on iterative development, where requirements and solutions evolve
through collaboration between self-organizing teams. The term was coined in the year 2001 when the
Agile Manifesto was formulated. Agile methods generally promote a disciplined project management
that encourages frequent inspection and adaptation, a leadership philosophy that encourages teamwork,
self-organization and accountability, a set of engineering best practices intended to allow for rapid
delivery of high- quality software, and a business approach tat aligns development with customer needs
and company goals.
Agile methods break tasks into small increments with minimal planning and do not directly
involve long-term planning. Iterations are short time frames (timeboxes) that typically last from one to
four weeks. Each iteration involves a cross functional team working in all functions: planning,
requirements analysis, design, coding, unit testing, and acceptance testing. At the end of the iteration a
working product is demonstrated to stakeholders. This minimizes overall risk and allows the project to
adapt to changes quickly. An iteration might not add enough functionality to warrant a market release,
but the goal is to have an available release (with minimal bugs) at the end of each iteration. Multiple
iterations might be required to release a product or new features.
Agile development emphasizes working software as the primary measure of progress. This,
combined with the preference for face-to-face communication, produces less written documentation
than other methods. The agile method encourages stakeholders to prioritize "wants" with other iteration
outcomes, based exclusively on business value perceived at the beginning of the iteration (also known
as value-driven).
Specific tools and techniques, such as continuous integration, automated or xUnit test, pair
programming, test-driven development, design patterns, domain-driven design, code refactoring and
other techniques are often used to improve quality and enhance project agility.
Several models exist to streamline the development process. Each one has its pros and cons, and it is up
to the development team to adopt the most appropriate one for the project. Sometimes a combination of
the models may be more suitable.
Waterfall model
REQUIREMENTS
DESIGN
IMPLEMENTATION
VERIFICATION
MAINTENANCE
The activities of the software development process are represented in the waterfall model. There
are several other models to represent this process.
The waterfall model shows a process, where developers are to follow these phases in order:
1. Requirements specification (Requirements analysis)
2. Software design
6. Maintenance
In a strict Waterfall model, after each phase is finished, it proceeds to the next one. Reviews may
occur before moving to the next phase which allows for the possibility of changes (which may involve
a formal change control process). Reviews may also be employed to ensure that the phase is indeed
complete; the phase completion criteria are often referred to as a "gate" that the project must pass
through to move to the next phase. Waterfall discourages revisiting and revising any prior phase once
it's complete. This "inflexibility" in a pure Waterfall model has been a source of criticism by supporters
of other more "flexible" models.
Spiral Model
The key characteristic of a Spiral model is risk management at regular stages in the
development cycle. In 1988, Barry Boehm published a formal software system development "spiral
model," which combines some key aspect of the waterfall model and rapid prototyping methodologies,
but provided emphasis in a key area many felt had been neglected by other methodologies: deliberate
iterative risk analysis, particularly suited to large-scale complex systems.
The Spiral is visualized as a process passing through some number of iterations, with the four quadrant
diagram representative of the following activities:
1. Formulate plans to: identify software targets, implement the program, clarify the project
development restrictions
2. Risk analysis: an analytical assessment of selected programs, to consider how to identify and
eliminate risk
Timing diagram
Timing diagrams are used to explore the behaviors of objects throughout a given period of time. A
timing diagram is a special form of a sequence diagram. The differences between timing diagram and
sequence diagram are the axes are reversed so that the time is increased from left to right and the
lifelines are shown in separate compartments arranged vertically
Debugging: Certainly we can test our connectors inside the studio before using it, but there is
not an include set of testing and debugging choices to work with the processes inside the studio.
Simulation: BOS Simulation capacities are less than poor. There is not easy options to simulate
our process behavior under many environments or situations.
When modeling skills are weak or lacking, Agile modeling is difficult to apply.
Also, agile testing requires more effort. Through this methodology, development time suffers as
the project halts while the developer tests the previous unit of code before moving on to the
next section.
4. ANALYSIS
4.1 INTRODUCTION
System analysis is a step in an appropriate solution to a given problem and its domain. The main
objective of the analysis is to capture a complete, unambiguous and consistent picture of the
requirements and needs of the user. Analysis is the process of transforming a problem definition from
fuzzy set of facts and myths into coherent statements of system requirement.
ways. If project risk is great, the feasibility listed below is equally important. The following feasibility
Technical Feasibility
Economic Feasibility
Operational Feasibility
Legal Feasibility
proper which means that the ideas taken for the proposed system will be legally implemented or not.
So, this is also an important step in the process of feasibility study.
5.1 INTRODUCTION
In the existing system, executives working on the deals had to maintain an excel sheet for each
and every detail of the deal. All the information regarding the deal was processed in an excel sheet.
This became bulky and tedious to manage. Since the turn around time for each deal was very slow, the
organization started losing other valuable deals. Also, the communication between the parties was done
through mails. This led in high costs to the organization, waste of the executive's time and energy.
This is the first page that loads up in Deal Tracker which helps to choose the options to Submit
a New Deal or to Work on the submitted Deals.
If a customer has a new deal to submit, he selects “Submit a New Deal” which opens up a login
page for the customer. On the other hand, if it is an exec who has to work on the submitted deals, he
selects “Work on Deal” option which opens up a deal.
This authenticates the user to log in his name and password to submit a new deal. If the
authentication is successful Deal Registration page is displayed else if the authentication fails it results
in Incorrect login page to be displayed.
This page allows the user to log in the deal information and expected date of submit. If the deal
already exists, customer should append 01, 02,.etc.
Deal data displays the entered information and allows the user/customer to attach the necessary
files for Base Line details, RFP details, etc.
This helps the customer to enter the necessary comments related to the deal which is necessary
for the exec to know about. It gives the complete summary of the deal.
This allows an Executive to login his details and then it connects to the database to check for
the correct credentials and open the next page; else it displays an error message if user is unauthorized.
This allows the user to search a deal and work on it if the status is open. User can also see the
deal status once he fills these details.
This displays all the deals submitted with details like- Deal Name, Customer Name, Status and
Expected Date of Submit.
This page allows to submit the related files in the deals. If the deal is viable, it is accepted
otherwise the deal gets rejected.
The executive who rejects a deal should state the reasons for rejection.
Hardware Requirements:
To develop this application, we need a minimum hardware requirement that would help the
performance of the application is better. This project has been developed with following hardware
requirement:
Software Requirements:
Database : MySQL
Operating System : Linux
Language : Groovy, Java Script, XML, CSS, HTML
6. SYSTEM DESIGN
It is an approach to the creation of new system. It provides the understanding and procedural
details necessary for implementation of the system recommended in the feasibility study. It is the
translation from the performance requirements into the design specification.
Design goes through logical and physical stages of development. Logical design reviews the
present physical system, prepares input and output specifications, makes edit, security and control
specifications details, and the implementation plan prepares a logical design walk through.
The design phase is transition from user-oriented document to a document to the programmers
or database personnel. For a candidate system, it describes the input, database and procedures all in a
format compatible to user requirements.
The logical design also specifies input, output, files and screen layouts. Physical design
produces the working system by defining the design specification that tells the programmers exactly
what the candidate system should do in turn.
layer gives the underlying raw data more structure and meaning, preparing it for human consumption.
The now human readable data are then presented to the support technician by another software
application or web page. The end-user of the issue tracking system can create entirely new issues, read
existing issues, add details to existing issues, or resolve an issue. When a user of the system makes a
change, the issue tracking system will record the action and who made it, so as to maintain a history of
the actions taken. Each user of the system may have issues assigned to them, that is, that user is
responsible for the proper resolution of that issue. This is generally presented to the user in a list
format. The user may have the option of re-assigning an issue to another user, if needed. For security,
an issue tracking system will authenticate its users before allowing access to the systems.
Deal can arrive from a Region or Bid Office. The customer from a region can submit his deal by
logging in his details in the Login Page. These details are stored for future use. His credentials are
checked and Request for Deal Page appears. Here he fills all the Deal Details and registers the Deal in
the Deal Registration Page. Other details like related files and other attachments are uploaded and the
deal is submitted by entering the Deal Summary. Now the Deal can be taken to higher level if it is
feasible. If a deal has a viable Solution then it is accepted and processed further. But if is rejected, it is
documented to the region along with reason for reject. Once the Deal is accepted, it is then processed
and a solution is designed and costing and pricing is done for the deal. If the deal is profitable, then the
deal is further processed by higher level managers and processed further.
In this phase the Deal is reviewed by different managers and processed further. A Risk Rating is
assigned with evry deal which tells about the profit and loss to the organization. If the Risk rating is
low, the deal gets processed directly, else the Deal is sent for further approval- VP’s Approval. The
Deal Tracker is then updated and the Deal is Proposed.
Activity Diagram
Process Diagram:
The process diagram involved for the whole system is shown in the figure below.
It consists of a number of modules/steps. Every step performs a task.
A process-data diagram is a diagram that describes processes and data that act as output of
these processes.
Process Diagram of Deal Tracker is shown above having all the modules at different stages. In
the Initial Page, user has an option to select a New Deal or to Work on Deals. If the User is a Customer,
he selects Submit New Deal option and the Next page – Region Login Page is displayed. If the User is
a executive, he is here to Work on Deals and Exec login Page is displayed. Customer’s credentials are
checked and Request for Deal Page appears. Here he fills all the Deal Details and registers the Deal in
the Deal Registration Page. Other details like related files and other attachments are uploaded and the
deal is submitted by entering the Deal Summary. Now the Deal can be taken to higher level if it is
feasible. If a deal has a viable Solution then it is accepted and processed further. But if is rejected, it is
documented to the region along with reason for reject. Once the Deal is accepted, it is then processed
and a solution is designed and costing and pricing is done for the deal. If the deal is profitable, then the
deal is further processed by higher level managers and processed further.
Deal is reviewed by different managers and processed further. A Risk Rating is assigned with
evry deal which tells about the profit and loss to the organization. If the Risk rating is low, the deal gets
processed directly, else the Deal is sent for further higher Approval. The Deal Tracker is then updated
and the Deal is proposed.
The term database design can be used to describe many different parts of the design of an
overall database system. Principally, and most correctly, it can be thought of as the logical design of the
base data structures used to store the data. In the relational model these are the tables and views. In
an object database the entities and relationships map directly to object classes and named relationships.
However, the term database design could also be used to apply to the overall process of designing, not
just the base data structures, but also the forms and queries used as part of the overall database
application within the database management system.
TABLES IN BONITA
Tables in bonita
deal
itics
servicelines
summary
temp
user
7. IMPLEMENTATION
Implementation includes all those activities that take place to convert from the old system to the
modified or updated one. The new system may be totally replacing an existing manual or automated
system or it may be a major a reliable system to meet the organization requirements. Successful
implementation may not guarantee improvement in the organization using the new system, but
improper installation will prevent it.
The process of putting the developed system in actual use is called system implementation. This
includes all those activities that take place to convert from the old system to the new system. The
system can be implemented only after thorough testing is done and if it is found to be working
according to the specifications. The system personnel check the feasibility of the system.
The most crucial stage is achieving a new successful system and giving confidence on the new
system for the user that it will work efficiently and effectively. It involves careful planning,
investigation of the current system and its constraints on implementation, design implemented, the
more involved will be the system analysis and the design effort just for implementation.The system
implementation has three main aspects. They are education and training, system testing and
changeover.
Careful planning.
The method of implementation and the time scale to be adopted are found out initially. Next the system
is tested properly and the same time users are trained in the new procedures.
The existing system also has been implemented with many advanced functionalities and features. This
is done by implementing a formal project change procedure that strictly controls project scope to avoid
confusion, wrong expectations and the possibility of project failure. The existing system also requires
frequent reviews of all changes that are done, to ensure all requests are dealt with in an expeditious
manner and to protect the integrity of the project plan.
The active user must be aware of the benefits of using the system.
Proper guidance is imparted to the user so that he is comfortable in using the application.
Apart from this application they were given a clear picture of basic knowledge of step by step
working in the project.
After providing the necessary basic training on the computer awareness the users will have to be
trained on the new application software. This will give the underlying philosophy of the use of the new
system such as the screen flow, screen design, type of help on the screen, type of errors while entering
the data the corresponding validation check at each entry and the ways to correct the data entered. It
should then cover information needed by the specific user/groups to use the system or part of the
system while imparting the training of the program on the application. This training may be different
across different user groups and across different levels of hierarchy.
Once the implementation plan is decided, it is essential that the user of the system is made
familiar and comfortable with the environment. Education involves right atmosphere and motivating
the user. A documentation providing the whole operations of the system is being developed. The system
is developed in such a way that the user friendly so that the user can work with the system from the tips
given in the application itself .Users have to be made aware that what can be achieved with the new
system and how it increases the performance of the system. The user of the new system and how it
increases the performance of the system. The user of the system should be given a general idea of the
system before he uses the system.
Step1: Begin
Step2: Display Deal Menu page
Step 3: If Proceed
Looks for solution(display solution architect page)
If Else Back
Display Deal Search Page
Step5: End
Step 1:Begin
Step 2: Fill the details
Step 3: Search is selected
Step 4: If details are entered
Show that particular deal
Else
Display all deals
Step 5: End
8. TESTING
It is the process used to assess the quality of computer software. Software testing is an empirical
technical investigation conducted to provide stakeholders with information about the quality of the
product or service under test, with respect to the context in which it is intended to operate.
Testing Phases:
Software testing phases include the following:
Test activities are determined and test data selected.
The test is conducted and test results are compared with the expected results.
It is an investigation conducted to provide stakeholders with information about the quality of the
product or service under test. Software testing can also provide an objective, independent view of the
software to allow the business to appreciate and understand the risks of software implementation. Test
techniques include, but are not limited to, the process of executing a program or application with the
intent of finding software bugs(errors or other defects).
Software testing can be stated as the process of validating and verifying that a software
program/application/product:
Meets the requirements that guided its design and development;
Works as expected; and
It can be implemented with the same characteristics.
Software testing, depending on the testing method employed, can be implemented at any time in the
development process. However, most of the test effort occurs after the requirements have been defined
and the coding process has been completed. As such, the methodology of the test is governed by the
software development methodology adopted.
Below table show the test cases implemented to test the Login Page
Login page provides the initial functionality that the user uses before the use of actual
functionalities provided to them.
Below table show the test cases implemented to test the Login Page
2 Connect either with User should get User should get User get error Pass
incorrect UserName error message as error message, message,
orpassword Invalid “invalid “invalid
UserName & UserName and UserName and
Password password” password”
Deal Registration page allows the Customer to enter the Deal details.
Below table show the test cases implemented to test the Deal Registration Page:
Below table show the test cases implemented to test the Deal Registration Page:
Sl. No Name of test Feature Expected Actual Result
Case being tested Result Result Pass/Fail
1 Deal Summary Necessary User should User gets Pass
Page is opened comments get the next the Menu
should be page for the Page
entered further
related to the process
deal.
9. SCREEN SHOTS
In the Initial Page, user has an option to Select a New Deal or to Work on Deals. If the User is a
Customer, he selects Submit New Deal option and the Next page – Region Login Page is displayed. If
the User is a executive, he is here to Work on Deals and Exec login Page is displayed.
Customer logs in his credentials and it is matched with the server for correction.
Deal Registration page allows the Customer to enter the Deal details. Here all fields are
mandatory and the Expected Date of Submit cannot be a previous date from the date of submission .
Deal Data Page allows the customer to attach the related files of the deal. If there is more than one
file the customer should zip those files and upload. These files get stored in the Nuxeo Platform under a
folder with the Deal’s Name and the files can now be downloaded. Only authorized users have access
to Nuxeo.
Deal Summary Page allows the customer to enter the summary of the deal. Comments can also be
uploaded for executive’s use. These comments are also stored into the database. And finally the Deal is
submitted from a region.
This page is for the executives of the company who use this system to manage deals. They can
simply login with their Username and Password and start working on deals. The system checks for
credentials and opens the next page for further processing of a deal.
The Deal Search Page allows the user to search the deal which he wants to work on. It also
shows the status of the different deals. Based on the status, user selects the deal and works on it.
Deal Menu Page allows the user to go through the status of each deal and select a deal to work
on. This also gives many other details related to the deals.
Here a solution a found for the deal. If the deal makes profit to the organization then it is
accepted else it is rejected. Service lines also can be selected based on different service lines.
This Page is the Menu page which allows the user to select either of two options- Go to Home
Page or Exit from Deal Tracker.
10. CONCLUSION
We developed this system in order to minimize the burden on the manager/ executive who
manages the deals in a company coming from different regions. This tool was very effective since it
saved a lot of manager’s time and energy. This also benefited the company’s productivity as it saved a
lot of money spent on sending and receiving mails. This project also made the deals to be processed
much faster resulting in accepting more deals in less time. Earlier the company lost many deals since it
took a lot of time for each deal to be processed. Hence this project profited the company in many ways.
Our architecture is based on the Open Source components like Bonitasoft, Nuxeo, MySQL, etc. This is
an added benefit to the company.
To improve the usability we included a number of features that allowed the users to make a deal
easily as well as work on deals easily. These features made the project a success and were implemented
successfully. We made forms that were user friendly and had an extremely unique GUI. Also, we added
many features to the project that helped users to upload files easily and download them.
The system has fully tested and found to be error free and it is highly portable. It can be very
easy to implement other similar organizations.
Only authorized users can access the system. And all assets of the organization will be kept in
track. Customers will be notified through Mails about the status of the asset assignment or transfer
process activities.
Future Enhancement
With rapid and advances in this competitive environment it is difficult to predict how business will
improve and expand in the coming years. Though we have some advance plans for the future
enhancements in the current project.
There are lots of additional facilities that can be added to this project. The following enhancements
can be implemented in this product.
Further enhancement can be done in terms of including different other factors in an organization
such as including client statistics.
Till now we have included all the required features needed by the client. In future we can add more
option/ features as needed. All the modules are designed in such a way that we can add more features
when needed in an easy manner. In the bottom line we may conclude that the application is extensible
and robust.
11. BIBLIOGRAPHY
Web links:
http://en.wikipedia.org/wiki/Bonita_Open_Solution
http://www.bonitasoft.com/
http://www.bonitasoft.org/forum/
http://doc.nuxeo.com/
http://community.nuxeo.com/