Professional Documents
Culture Documents
Project Synopsis
Group No : I-08
Group Members:
Name of the
External Guide : Mr.Sandeep Bhale
Contact No : 9822976583
1
Table of Contents
• Project Synopsis 3
• Project Plan 14
• Sequence Diagrams 30
• State-Chart Diagrams 37
• Activity Diagrams 40
• System Design 42
2
Vishwakarma Institute of Technology, Pune-37.
3
Department of Computer Engineering
Table of Contents
1. CONTEXT ..............................................................................................................................6
2. PROBLEM .............................................................................................................................7
3. SOLUTION.................................................................................................................................................8
4. BENEFITS...................................................................................................................................................9
5. INTRODUCTION ............................................................................................................13
5.1 PURPOSE......................................................................................................................................................13
5.2 METHODOLOGY.............................................................................................................................................14
5.3 REFERENCES.................................................................................................................................................14
6. GENERAL INFORMATION..................................................................................................................14
6.1 CURRENT SYSTEMS AND PROCESSES ...............................................................................................................14
6.2 SYSTEM OBJECTIVES......................................................................................................................................14
6.3 ISSUES.........................................................................................................................................................16
6.4 ASSUMPTIONS AND CONSTRAINTS....................................................................................................................16
7. ALTERNATIVES......................................................................................................................................16
7.1 COMPARISONS OF ALTERNATIVES ....................................................................................................................16
8. RECOMMENDATIONS AND CONCLUSION....................................................................................17
9. OVERVIEW .....................................................................................................................21
10. GOALS AND SCOPE .......................................................................................................22
10.1 PROJECT GOALS..........................................................................................................................................22
10.2 PROJECT SCOPE.........................................................................................................................................22
10.2.1 Included.......................................................................................................................................23
10.2.2 Excluded......................................................................................................................................23
11. SCHEDULE AND MILESTONES........................................................................................................23
12. INTRODUCTION ..........................................................................................................28
12.1 PURPOSE....................................................................................................................................................28
12.2 SCOPE.......................................................................................................................................................28
12.3 DEFINITIONS, ACRONYMS, AND ABBREVIATIONS................................................................................................28
12.4 REFERENCES...............................................................................................................................................29
12.5 OVERVIEW.................................................................................................................................................29
13. OVERALL DESCRIPTION..................................................................................................................29
PROBLEM STATEMENT.........................................................................................................................................29
13.1 PRODUCT PERSPECTIVE................................................................................................................................30
PRODUCT POSITION STATEMENT............................................................................................................................30
13.1.1 System Interfaces........................................................................................................................30
13.1.2 User Interfaces............................................................................................................................30
4
13.1.3 Hardware Interfaces....................................................................................................................31
13.2 PRODUCT FUNCTIONS...................................................................................................................................31
13.3 ASSUMPTIONS AND DEPENDENCIES.................................................................................................................31
14. SPECIFIC REQUIREMENTS..............................................................................................................31
14.1 FUNCTIONS.................................................................................................................................................31
14.2 LOGICAL DATABASE REQUIREMENTS..............................................................................................................31
14.3 SOFTWARE SYSTEM ATTRIBUTES....................................................................................................................31
14.3.1 Reliability....................................................................................................................................31
14.3.2 Security.......................................................................................................................................32
14.3.3 Portability....................................................................................................................................32
14.3.4 Efficiency....................................................................................................................................32
15. USE CASE TEMPLATE........................................................................................................................37
USE CASE # 1..............................................................................................................................................39
USE CASE # 2..............................................................................................................................................40
16. SEQUENCE DIAGRAM OVERVIEW ...................................................................................44
16.1 SCENARIO DESCRIPTION...............................................................................................................................44
17. MESSAGE DESCRIPTION..................................................................................................................44
18. SEQUENCE DIAGRAM OVERVIEW ...................................................................................46
18.1 SCENARIO DESCRIPTION...............................................................................................................................47
19. MESSAGE DESCRIPTION..................................................................................................................47
20. STATE CHART DIAGRAM OVERVIEW .............................................................................52
20.1 STATES DESCRIPTION..................................................................................................................................52
21. CLASS DIAGRAM DESCRIPTION....................................................................................................59
21.1 CRC TEMPLATE.........................................................................................................................................59
21.2 CRC CARDS OVERVIEW..............................................................................................................................61
Responsibility........................................................................................................................................61
Collaborator..........................................................................................................................................62
Domain Users (3-5 people)...................................................................................................................62
OO Design Analyst (1-2 people)...........................................................................................................62
Facilitator (1 person).............................................................................................................................63
Scribe (1-2 people)................................................................................................................................63
Observers (0-N people).........................................................................................................................63
The CRC Technique..............................................................................................................................64
Selecting a Scenario..............................................................................................................................64
Creating Initial CRC Card(s)................................................................................................................64
Arranging the CRC Cards.....................................................................................................................65
The CRC Interview...............................................................................................................................65
Finding Classes.....................................................................................................................................65
Finding Collaborators...........................................................................................................................66
21.2.1 General Guidelines......................................................................................................................67
21.2.2 Class Style Guidelines................................................................................................................68
21.2.3 Interfaces.....................................................................................................................................70
21.2.4 Relationship Guidelines..............................................................................................................71
21.2.5 Inheritance Guidelines................................................................................................................73
21.2.6 Aggregation and Composition Guidelines..................................................................................73
21.3 CLASS DIAGRAM.........................................................................................................................................75
5
1.CONTEXT
In large, complicated systems, which depend on various applications for their
smooth functioning, application monitoring plays a vital role by helping to detect the
problems and act on them before they become critical. But unfortunately much
attention is not paid to develop the effective application monitoring system till now.
The available systems monitor client–side systems health rather than monitoring
applications which may lead to inaccurate results. Also these systems are heavy on
client side and have poor error reporting capabilities which creates need of the new
effective, efficient, light-weight Application monitoring system.
6
In proposed application monitoring system applications are monitored constantly in
order to address any issue before it becomes a serious issue using Health Monitoring
system. Health monitoring is a simple arrangement in which a snapshot of system &
application parameters is compared with the standard benchmarks for finding health
of the system.
The project helps a great deal in resolving problems on the client side
thus reducing the load on the administrator. Precise error reporting & event logging
in the system will help administrator to great extend while diagnosis of the problem.
The monitoring of system for efficient utilization of resources increases performance
of applications at client side. In this way the project serves as an important
application for business firm and software industry.
2.PROBLEM
The system should find applications which are vital for business process and
decides performance of the business firm. This application must be embedded
directly into the monitoring system for monitoring values of crucial parameters.
The system should set benchmark for every client before monitoring. The system
must check the crucial parameter values of client side application for detecting its
health.
7
Application monitoring system must generate event log data and alert report as
an output for the debugging of the error and automated or manual error correction.
The monitoring system requires few network resources as well as memory for
sending the parameters value to administrator.
3.SOLUTION
In order to enable the administrator to perform well and to enable the correction of
minor errors at the client-side, we will implement the Application Monitoring Wizard
which will takes care of the client side applications and reports to the administrator in
case of any discrepancy.
This project will mainly extends to the monitoring of system specific important
applications to check for the occurrence of errors through use of certain control
parameters and generate reports and alerts. The monitoring process will continue to
execute multiple numbers of times by deciding the polling interval depending upon
the criticality of the applications. Thus we will get a complete overview of the
performance of the various applications in our system after specific time intervals.
Depending upon the criticality of the applications, the monitoring will perform at
frequent intervals as require.
The project extends to the development of the wizard, which monitors the
embedded applications and generates reports and alert messages. Also a database
is maintained, which will has records of all the errors encountered till date.
8
4.BENEFITS
• Proactive Monitoring :
You can prevent failures in your applications even before your users notice them.
This proactive monitoring can be done by setting thresholds for application variables.
When thresholds are crossed, you can opt to get notified through standard
mechanisms.
• An Affordable Solution :
With its low price and ease of deployment, Applications Manager enables a very
affordable alternative to manage complex applications and servers. Applications
Manager requires standard hardware, supports multiple operating systems, and can
be used without extensive training.
9
Vishwakarma Institute of Technology, Pune-37.
10
Table of Contents
1. CONTEXT ..............................................................................................................................6
2. PROBLEM .............................................................................................................................7
3. SOLUTION.................................................................................................................................................8
4. BENEFITS...................................................................................................................................................9
5. INTRODUCTION ............................................................................................................13
5.1 PURPOSE......................................................................................................................................................13
5.2 METHODOLOGY.............................................................................................................................................14
5.3 REFERENCES.................................................................................................................................................14
6. GENERAL INFORMATION..................................................................................................................14
6.1 CURRENT SYSTEMS AND PROCESSES ...............................................................................................................14
6.2 SYSTEM OBJECTIVES......................................................................................................................................14
6.3 ISSUES.........................................................................................................................................................16
6.4 ASSUMPTIONS AND CONSTRAINTS....................................................................................................................16
7. ALTERNATIVES......................................................................................................................................16
7.1 COMPARISONS OF ALTERNATIVES ....................................................................................................................16
8. RECOMMENDATIONS AND CONCLUSION....................................................................................17
9. OVERVIEW .....................................................................................................................21
10. GOALS AND SCOPE .......................................................................................................22
10.1 PROJECT GOALS..........................................................................................................................................22
10.2 PROJECT SCOPE.........................................................................................................................................22
10.2.1 Included.......................................................................................................................................23
10.2.2 Excluded......................................................................................................................................23
11. SCHEDULE AND MILESTONES........................................................................................................23
12. INTRODUCTION ..........................................................................................................28
12.1 PURPOSE....................................................................................................................................................28
12.2 SCOPE.......................................................................................................................................................28
12.3 DEFINITIONS, ACRONYMS, AND ABBREVIATIONS................................................................................................28
12.4 REFERENCES...............................................................................................................................................29
12.5 OVERVIEW.................................................................................................................................................29
13. OVERALL DESCRIPTION..................................................................................................................29
PROBLEM STATEMENT.........................................................................................................................................29
13.1 PRODUCT PERSPECTIVE................................................................................................................................30
PRODUCT POSITION STATEMENT............................................................................................................................30
13.1.1 System Interfaces........................................................................................................................30
13.1.2 User Interfaces............................................................................................................................30
13.1.3 Hardware Interfaces....................................................................................................................31
13.2 PRODUCT FUNCTIONS...................................................................................................................................31
13.3 ASSUMPTIONS AND DEPENDENCIES.................................................................................................................31
14. SPECIFIC REQUIREMENTS..............................................................................................................31
14.1 FUNCTIONS.................................................................................................................................................31
11
14.2 LOGICAL DATABASE REQUIREMENTS ..............................................................................................................31
14.3 SOFTWARE SYSTEM ATTRIBUTES....................................................................................................................31
14.3.1 Reliability....................................................................................................................................31
14.3.2 Security.......................................................................................................................................32
14.3.3 Portability....................................................................................................................................32
14.3.4 Efficiency....................................................................................................................................32
15. USE CASE TEMPLATE........................................................................................................................37
USE CASE # 1..............................................................................................................................................39
USE CASE # 2..............................................................................................................................................40
16. SEQUENCE DIAGRAM OVERVIEW ...................................................................................44
16.1 SCENARIO DESCRIPTION...............................................................................................................................44
17. MESSAGE DESCRIPTION..................................................................................................................44
18. SEQUENCE DIAGRAM OVERVIEW ...................................................................................46
18.1 SCENARIO DESCRIPTION...............................................................................................................................47
19. MESSAGE DESCRIPTION..................................................................................................................47
20. STATE CHART DIAGRAM OVERVIEW .............................................................................52
20.1 STATES DESCRIPTION..................................................................................................................................52
21. CLASS DIAGRAM DESCRIPTION....................................................................................................59
21.1 CRC TEMPLATE.........................................................................................................................................59
21.2 CRC CARDS OVERVIEW..............................................................................................................................61
Responsibility........................................................................................................................................61
Collaborator..........................................................................................................................................62
Domain Users (3-5 people)...................................................................................................................62
OO Design Analyst (1-2 people)...........................................................................................................62
Facilitator (1 person).............................................................................................................................63
Scribe (1-2 people)................................................................................................................................63
Observers (0-N people).........................................................................................................................63
The CRC Technique..............................................................................................................................64
Selecting a Scenario..............................................................................................................................64
Creating Initial CRC Card(s)................................................................................................................64
Arranging the CRC Cards.....................................................................................................................65
The CRC Interview...............................................................................................................................65
Finding Classes.....................................................................................................................................65
Finding Collaborators...........................................................................................................................66
21.2.1 General Guidelines......................................................................................................................67
21.2.2 Class Style Guidelines................................................................................................................68
21.2.3 Interfaces.....................................................................................................................................70
21.2.4 Relationship Guidelines..............................................................................................................71
21.2.5 Inheritance Guidelines................................................................................................................73
21.2.6 Aggregation and Composition Guidelines..................................................................................73
21.3 CLASS DIAGRAM.........................................................................................................................................75
12
5.INTRODUCTION
This document provides the purpose of the feasibility study, the background of the
proposed project, the methodology used for performing the study, and any reference
materials used in conducting the feasibility study.
In complicated systems used these days, there is lot of overhead on the
administrator of the system so as to keep track of the clients. This may lead to low
performance by the administrator and may also lead to low performance by the system.
So in order to enable the administrator to perform well and to enable the correction of
minor errors at the client-side, we implement the Application Monitoring Wizard which
takes care of the client side applications and reports to
the administrator in case of any discrepancy.
5.1PURPOSE
13
exists and solution to be implemented would be able to solve the problem or not. It is
also useful for deciding the constraints on the system and assumptions to be made while
implementing the solution.
5.2METHODOLOGY
5.3REFERENCES
1.www.monitools.com
2.www.ibm.com
3.www.java.sun.com
4.IEEE paper on "Parameter passing for the JVM" by Gough, K. J,Computer Science
Conference, 2000, ACSC 2000, 23rd Australasian
5. "NetRexx Programming for the JVM" by Rick Hightower
6.GENERAL INFORMATION
6.2SYSTEM OBJECTIVES
14
General Description of Proposed System:
b. Functionalities:
Client
o Install Application:
o Create Report
15
Server
o View reports.
6.3ISSUES
INSTALLATION
The Application that our Application will monitor must install first.
7.ALTERNATIVES
Software Alternatives
This category consists of all software alternatives and the effect it will have on the
overall proposed system.
7.1COMPARISONS OF ALTERNATIVES
Software Alternative(DBMS)
NetBeans High High High High High Medium
16
8.RECOMMENDATIONS AND CONCLUSION
In today's world, we see multiple complicated systems which have multiple clients
working together in co-ordination. These clients have many applications installed which
form a part of the system. If any of these applications face any problem, it affects the
smooth working of the entire system. Thus to avoid the error occurring in the applications
at the clients side, we use the application monitoring Wizard which will help solve the
problems before they reach a critical state.
17
Approvals Signature Block
18
Table of Contents
1. CONTEXT ..............................................................................................................................6
2. PROBLEM .............................................................................................................................7
3. SOLUTION.................................................................................................................................................8
4. BENEFITS...................................................................................................................................................9
5. INTRODUCTION ............................................................................................................13
5.1 PURPOSE......................................................................................................................................................13
5.2 METHODOLOGY.............................................................................................................................................14
5.3 REFERENCES.................................................................................................................................................14
6. GENERAL INFORMATION..................................................................................................................14
6.1 CURRENT SYSTEMS AND PROCESSES ...............................................................................................................14
6.2 SYSTEM OBJECTIVES......................................................................................................................................14
6.3 ISSUES.........................................................................................................................................................16
6.4 ASSUMPTIONS AND CONSTRAINTS....................................................................................................................16
7. ALTERNATIVES......................................................................................................................................16
7.1 COMPARISONS OF ALTERNATIVES ....................................................................................................................16
8. RECOMMENDATIONS AND CONCLUSION....................................................................................17
9. OVERVIEW .....................................................................................................................21
10. GOALS AND SCOPE .......................................................................................................22
10.1 PROJECT GOALS..........................................................................................................................................22
10.2 PROJECT SCOPE.........................................................................................................................................22
10.2.1 Included.......................................................................................................................................23
10.2.2 Excluded......................................................................................................................................23
11. SCHEDULE AND MILESTONES........................................................................................................23
12. INTRODUCTION ..........................................................................................................28
12.1 PURPOSE....................................................................................................................................................28
12.2 SCOPE.......................................................................................................................................................28
12.3 DEFINITIONS, ACRONYMS, AND ABBREVIATIONS................................................................................................28
12.4 REFERENCES...............................................................................................................................................29
12.5 OVERVIEW.................................................................................................................................................29
13. OVERALL DESCRIPTION..................................................................................................................29
PROBLEM STATEMENT.........................................................................................................................................29
13.1 PRODUCT PERSPECTIVE................................................................................................................................30
PRODUCT POSITION STATEMENT............................................................................................................................30
13.1.1 System Interfaces........................................................................................................................30
13.1.2 User Interfaces............................................................................................................................30
13.1.3 Hardware Interfaces....................................................................................................................31
13.2 PRODUCT FUNCTIONS...................................................................................................................................31
13.3 ASSUMPTIONS AND DEPENDENCIES.................................................................................................................31
14. SPECIFIC REQUIREMENTS..............................................................................................................31
14.1 FUNCTIONS.................................................................................................................................................31
14.2 LOGICAL DATABASE REQUIREMENTS..............................................................................................................31
14.3 SOFTWARE SYSTEM ATTRIBUTES....................................................................................................................31
19
14.3.1 Reliability....................................................................................................................................31
14.3.2 Security.......................................................................................................................................32
14.3.3 Portability....................................................................................................................................32
14.3.4 Efficiency....................................................................................................................................32
15. USE CASE TEMPLATE........................................................................................................................37
USE CASE # 1..............................................................................................................................................39
USE CASE # 2..............................................................................................................................................40
16. SEQUENCE DIAGRAM OVERVIEW ...................................................................................44
16.1 SCENARIO DESCRIPTION...............................................................................................................................44
17. MESSAGE DESCRIPTION..................................................................................................................44
18. SEQUENCE DIAGRAM OVERVIEW ...................................................................................46
18.1 SCENARIO DESCRIPTION...............................................................................................................................47
19. MESSAGE DESCRIPTION..................................................................................................................47
20. STATE CHART DIAGRAM OVERVIEW .............................................................................52
20.1 STATES DESCRIPTION..................................................................................................................................52
21. CLASS DIAGRAM DESCRIPTION....................................................................................................59
21.1 CRC TEMPLATE.........................................................................................................................................59
21.2 CRC CARDS OVERVIEW..............................................................................................................................61
Responsibility........................................................................................................................................61
Collaborator..........................................................................................................................................62
Domain Users (3-5 people)...................................................................................................................62
OO Design Analyst (1-2 people)...........................................................................................................62
Facilitator (1 person).............................................................................................................................63
Scribe (1-2 people)................................................................................................................................63
Observers (0-N people).........................................................................................................................63
The CRC Technique..............................................................................................................................64
Selecting a Scenario..............................................................................................................................64
Creating Initial CRC Card(s)................................................................................................................64
Arranging the CRC Cards.....................................................................................................................65
The CRC Interview...............................................................................................................................65
Finding Classes.....................................................................................................................................65
Finding Collaborators...........................................................................................................................66
21.2.1 General Guidelines......................................................................................................................67
21.2.2 Class Style Guidelines................................................................................................................68
21.2.3 Interfaces.....................................................................................................................................70
21.2.4 Relationship Guidelines..............................................................................................................71
21.2.5 Inheritance Guidelines................................................................................................................73
21.2.6 Aggregation and Composition Guidelines..................................................................................73
21.3 CLASS DIAGRAM.........................................................................................................................................75
20
9.OVERVIEW
• The motivation for this project is the need to implement an Monitoring Tool
using Thread Concept which will help the users to recognize the errors in
working of crucial application.
• The customer is any user who was dealing with Complex System
• The project will deliver an executable program for monitoring of control
parameter for client side another executable for administrator side to view
reports and alerts.installation guide to help user to install the program and
user guide to solve the problems of the user.
• The first fully functional version will be released around 31st Feb,
2009.Future Versions and bug fixes would be released in the future.
21
• The organizations involved are Vishwakarma Institute of Technology (VIT),
Cognizant Technology Solution India Pvt. Ltd.
10.1PROJECT GOALS
Project Goal Priority Comment/Description/Reference
Functional Goals:
<functional goal #1> 1 To design and implement a component for
embedding the user application into to system with
flexibility to select parameters, .
<functional goal #2> 1 To design and implement component which will
maintain database of the monitored parameters
values
<functional goal #3> 2 To design a component which report to
Administrator and provide statically data and
pictorial representation.
<functional goal #4> 3 To develop interactive and user friendly interfaces.
Quality Goals: 2
<quality goal #1> To provide a system that gives more flexibility to
Administrator empower for monitoring particular
system.
<quality goal #2> To create a system with minimum resource
requirement at client-side
Constraints:
<Flexibility> The system is not supposed to take any preventing
action when problem is detected.
• The proposed system will deliver report to Administrator about
performance of monitoring application.
22
• The proposed system will not deliver correction of error.
10.2.1Included
• The project will deliver an executable program for Monitoring Application
like JVM, Tomcat, Websites and another executable for server to view
reports, installation guide to help user to install the program and user
guide to solve the problems of the user.
• The receivers of this project would be Vishwakarma Institute of
Technology (VIT), Cognizant Technology Solution India Pvt. Ltd.
10.2.2Excluded
This project will exclude…..
• Training to end users.
23
Milestones Description Milestone Criteria Planned
Date
M2 Start Execution 01-12-2008
Complete project plan User interface libraries
defined and reusable defined and project plan
modules identified. reviewed.
24
Approvals Signature Block
25
Table of Contents
1. CONTEXT ..............................................................................................................................6
2. PROBLEM .............................................................................................................................7
3. SOLUTION.................................................................................................................................................8
4. BENEFITS...................................................................................................................................................9
5. INTRODUCTION ............................................................................................................13
5.1 PURPOSE......................................................................................................................................................13
5.2 METHODOLOGY.............................................................................................................................................14
5.3 REFERENCES.................................................................................................................................................14
6. GENERAL INFORMATION..................................................................................................................14
6.1 CURRENT SYSTEMS AND PROCESSES ...............................................................................................................14
6.2 SYSTEM OBJECTIVES......................................................................................................................................14
6.3 ISSUES.........................................................................................................................................................16
6.4 ASSUMPTIONS AND CONSTRAINTS....................................................................................................................16
7. ALTERNATIVES......................................................................................................................................16
7.1 COMPARISONS OF ALTERNATIVES ....................................................................................................................16
8. RECOMMENDATIONS AND CONCLUSION....................................................................................17
9. OVERVIEW .....................................................................................................................21
10. GOALS AND SCOPE .......................................................................................................22
10.1 PROJECT GOALS..........................................................................................................................................22
10.2 PROJECT SCOPE.........................................................................................................................................22
10.2.1 Included.......................................................................................................................................23
10.2.2 Excluded......................................................................................................................................23
11. SCHEDULE AND MILESTONES........................................................................................................23
12. INTRODUCTION ..........................................................................................................28
12.1 PURPOSE....................................................................................................................................................28
12.2 SCOPE.......................................................................................................................................................28
12.3 DEFINITIONS, ACRONYMS, AND ABBREVIATIONS................................................................................................28
12.4 REFERENCES...............................................................................................................................................29
12.5 OVERVIEW.................................................................................................................................................29
13. OVERALL DESCRIPTION..................................................................................................................29
PROBLEM STATEMENT.........................................................................................................................................29
13.1 PRODUCT PERSPECTIVE................................................................................................................................30
PRODUCT POSITION STATEMENT............................................................................................................................30
13.1.1 System Interfaces........................................................................................................................30
13.1.2 User Interfaces............................................................................................................................30
13.1.3 Hardware Interfaces....................................................................................................................31
13.2 PRODUCT FUNCTIONS...................................................................................................................................31
13.3 ASSUMPTIONS AND DEPENDENCIES.................................................................................................................31
14. SPECIFIC REQUIREMENTS..............................................................................................................31
14.1 FUNCTIONS.................................................................................................................................................31
14.2 LOGICAL DATABASE REQUIREMENTS..............................................................................................................31
14.3 SOFTWARE SYSTEM ATTRIBUTES....................................................................................................................31
26
14.3.1 Reliability....................................................................................................................................31
14.3.2 Security.......................................................................................................................................32
14.3.3 Portability....................................................................................................................................32
14.3.4 Efficiency....................................................................................................................................32
15. USE CASE TEMPLATE........................................................................................................................37
USE CASE # 1..............................................................................................................................................39
USE CASE # 2..............................................................................................................................................40
16. SEQUENCE DIAGRAM OVERVIEW ...................................................................................44
16.1 SCENARIO DESCRIPTION...............................................................................................................................44
17. MESSAGE DESCRIPTION..................................................................................................................44
18. SEQUENCE DIAGRAM OVERVIEW ...................................................................................46
18.1 SCENARIO DESCRIPTION...............................................................................................................................47
19. MESSAGE DESCRIPTION..................................................................................................................47
20. STATE CHART DIAGRAM OVERVIEW .............................................................................52
20.1 STATES DESCRIPTION..................................................................................................................................52
21. CLASS DIAGRAM DESCRIPTION....................................................................................................59
21.1 CRC TEMPLATE.........................................................................................................................................59
21.2 CRC CARDS OVERVIEW..............................................................................................................................61
Responsibility........................................................................................................................................61
Collaborator..........................................................................................................................................62
Domain Users (3-5 people)...................................................................................................................62
OO Design Analyst (1-2 people)...........................................................................................................62
Facilitator (1 person).............................................................................................................................63
Scribe (1-2 people)................................................................................................................................63
Observers (0-N people).........................................................................................................................63
The CRC Technique..............................................................................................................................64
Selecting a Scenario..............................................................................................................................64
Creating Initial CRC Card(s)................................................................................................................64
Arranging the CRC Cards.....................................................................................................................65
The CRC Interview...............................................................................................................................65
Finding Classes.....................................................................................................................................65
Finding Collaborators...........................................................................................................................66
21.2.1 General Guidelines......................................................................................................................67
21.2.2 Class Style Guidelines................................................................................................................68
21.2.3 Interfaces.....................................................................................................................................70
21.2.4 Relationship Guidelines..............................................................................................................71
21.2.5 Inheritance Guidelines................................................................................................................73
21.2.6 Aggregation and Composition Guidelines..................................................................................73
21.3 CLASS DIAGRAM.........................................................................................................................................75
27
12.INTRODUCTION
This document is the Software Requirement Specification for ‘Application
Monitoring System’. This document details out the purpose of the system being
developed, its overall description and its specific requirements.
12.1PURPOSE
The purpose of this document is to collect, analyze and define high-level needs
and features of the Application Monitoring. It focuses on the capabilities needed by the
stakeholders, and the target users, and why these needs exist. This document will also
introduce all the functionalities that the system can perform and its effect on the users
and the stakeholders. The intended audiences for this SRS are system developers,
system analysts.
12.2SCOPE
This project mainly extends to the monitoring of system specific important
applications to check for the occurrence of errors through use of certain control
parameters and generate reports and alerts. The monitoring process is continued to
execute multiple number of times by deciding the polling interval depending upon the
criticality of the applications. Thus we get a complete overview of the performance of the
various applications in our system after specific time intervals. Depending upon the
criticality of the applications, the monitoring can be performed at frequent intervals as
required.
The project extends to the development of the wizard, which monitors the
embedded applications and generates reports and alert messages. Also a database is
maintained, which has records of all the errors encountered till date. Applications used
for monitoring include:
· JVM
· Tomcat server
28
12.4REFERENCES
1. www.ibm.com
2. www.java.sun.com
3. IEEE paper on "Parameter passing for the JVM" by Gough, K. J,
Computer Science Conference, 2000, ACSC 2000, 23rd Australasian
4. "NetRexx Programming for the JVM" by Rick Hightower
12.5OVERVIEW
Section 1 introduces you to the system as a whole, its capabilities and how it is
different from other tools. It describes the scope of the system being developed and the
references that were needed to give a shape to this system.
Section 2 describes you to the history for the project under consideration. It
compares the existing system with the proposed system.
Section 3 Describes the Product’s Perspective, the various Interfaces of the system,
its functions, user characteristics, constraints, assumptions and dependencies and also
describes external interfaces to the system, performance requirements, design
constraints, system attributes and system specific requirements.
13.OVERALL DESCRIPTION
PROBLEM STATEMENT
The problem of
Affects (the stakeholders affected by the problem).
The impact of which is (what is the impact of the problem).
A successful solution The constant monitoring of software
29
would applications to check for the occurrence of
errors through use of certain control
parameters and Generate reports and alerts
before before it becomes a serious issue.
13.1PRODUCT PERSPECTIVE
13.1.1System Interfaces
Our system interacts with the system in order to retrieve the values of required
parameters under consideration.
13.1.2User Interfaces
The wizard allows for user login. Once the user gets access to the software, he can start
monitoring of the applications depending upon his choice.
30
13.1.3Hardware Interfaces
User side device will be desktop PC or a Laptop having internet connection.
13.2PRODUCT FUNCTIONS
14.SPECIFIC REQUIREMENTS
14.1FUNCTIONS
The system will perform the following functions:
• Retrieve value of critical parameter of monitoring application
• Compare that value with benchmark
• Write into Log File
• Generate Report by analyzing the Log file.
14.3.1Reliability
Threading Concept is the standard mechanisms for handling multiple task which are
considered to be highly reliable. Our system also compares the above mechanisms
under different scenarios.
31
14.3.2Security
• Only valid users are allowed to access the system, proper authentication
mechanisms are used for the same.
• Communication is one side
14.3.3Portability
• The system is designed in such a way that it will have applicability over various
domains.
• The client is portable to any Windows (NT) operating system.
14.3.4Efficiency
The efficiency of the system depends on the time that is needed to process the query.
The efficiency of the system depends on the rate at which the requests are served by the
server.
ID Characteristic Rank
1 Correctness 1
2 Efficiency 3
3 Reliability 2
4 Security 4
32
Vishwakarma Institute of Technology, Pune-37.
33
Department of Computer Engineering
34
Table of Contents
1. CONTEXT ..............................................................................................................................6
2. PROBLEM .............................................................................................................................7
3. SOLUTION.................................................................................................................................................8
4. BENEFITS...................................................................................................................................................9
5. INTRODUCTION ............................................................................................................13
5.1 PURPOSE......................................................................................................................................................13
5.2 METHODOLOGY.............................................................................................................................................14
5.3 REFERENCES.................................................................................................................................................14
6. GENERAL INFORMATION..................................................................................................................14
6.1 CURRENT SYSTEMS AND PROCESSES ...............................................................................................................14
6.2 SYSTEM OBJECTIVES......................................................................................................................................14
6.3 ISSUES.........................................................................................................................................................16
6.4 ASSUMPTIONS AND CONSTRAINTS....................................................................................................................16
7. ALTERNATIVES......................................................................................................................................16
7.1 COMPARISONS OF ALTERNATIVES ....................................................................................................................16
8. RECOMMENDATIONS AND CONCLUSION....................................................................................17
9. OVERVIEW .....................................................................................................................21
10. GOALS AND SCOPE .......................................................................................................22
10.1 PROJECT GOALS..........................................................................................................................................22
10.2 PROJECT SCOPE.........................................................................................................................................22
10.2.1 Included.......................................................................................................................................23
10.2.2 Excluded......................................................................................................................................23
11. SCHEDULE AND MILESTONES........................................................................................................23
12. INTRODUCTION ..........................................................................................................28
12.1 PURPOSE....................................................................................................................................................28
12.2 SCOPE.......................................................................................................................................................28
12.3 DEFINITIONS, ACRONYMS, AND ABBREVIATIONS................................................................................................28
12.4 REFERENCES...............................................................................................................................................29
12.5 OVERVIEW.................................................................................................................................................29
13. OVERALL DESCRIPTION..................................................................................................................29
PROBLEM STATEMENT.........................................................................................................................................29
13.1 PRODUCT PERSPECTIVE................................................................................................................................30
PRODUCT POSITION STATEMENT............................................................................................................................30
13.1.1 System Interfaces........................................................................................................................30
13.1.2 User Interfaces............................................................................................................................30
13.1.3 Hardware Interfaces....................................................................................................................31
13.2 PRODUCT FUNCTIONS...................................................................................................................................31
13.3 ASSUMPTIONS AND DEPENDENCIES.................................................................................................................31
14. SPECIFIC REQUIREMENTS..............................................................................................................31
14.1 FUNCTIONS.................................................................................................................................................31
14.2 LOGICAL DATABASE REQUIREMENTS..............................................................................................................31
35
14.3 SOFTWARE SYSTEM ATTRIBUTES....................................................................................................................31
14.3.1 Reliability....................................................................................................................................31
14.3.2 Security.......................................................................................................................................32
14.3.3 Portability....................................................................................................................................32
14.3.4 Efficiency....................................................................................................................................32
15. USE CASE TEMPLATE........................................................................................................................37
USE CASE # 1..............................................................................................................................................39
USE CASE # 2..............................................................................................................................................40
16. SEQUENCE DIAGRAM OVERVIEW ...................................................................................44
16.1 SCENARIO DESCRIPTION...............................................................................................................................44
17. MESSAGE DESCRIPTION..................................................................................................................44
18. SEQUENCE DIAGRAM OVERVIEW ...................................................................................46
18.1 SCENARIO DESCRIPTION...............................................................................................................................47
19. MESSAGE DESCRIPTION..................................................................................................................47
20. STATE CHART DIAGRAM OVERVIEW .............................................................................52
20.1 STATES DESCRIPTION..................................................................................................................................52
21. CLASS DIAGRAM DESCRIPTION....................................................................................................59
21.1 CRC TEMPLATE.........................................................................................................................................59
21.2 CRC CARDS OVERVIEW..............................................................................................................................61
Responsibility........................................................................................................................................61
Collaborator..........................................................................................................................................62
Domain Users (3-5 people)...................................................................................................................62
OO Design Analyst (1-2 people)...........................................................................................................62
Facilitator (1 person).............................................................................................................................63
Scribe (1-2 people)................................................................................................................................63
Observers (0-N people).........................................................................................................................63
The CRC Technique..............................................................................................................................64
Selecting a Scenario..............................................................................................................................64
Creating Initial CRC Card(s)................................................................................................................64
Arranging the CRC Cards.....................................................................................................................65
The CRC Interview...............................................................................................................................65
Finding Classes.....................................................................................................................................65
Finding Collaborators...........................................................................................................................66
21.2.1 General Guidelines......................................................................................................................67
21.2.2 Class Style Guidelines................................................................................................................68
21.2.3 Interfaces.....................................................................................................................................70
21.2.4 Relationship Guidelines..............................................................................................................71
21.2.5 Inheritance Guidelines................................................................................................................73
21.2.6 Aggregation and Composition Guidelines..................................................................................73
21.3 CLASS DIAGRAM.........................................................................................................................................75
USE CASE 2..................................................................................................................................................30
36
15.USE CASE TEMPLATE
37
Fig 6.1: System Context Diagram for Application Monitoring
38
Fig 6.2: Use Case Diagram for JVM Monitoring
JVM Monitoring
USE CASE # 1
Goal Monitoring
Purpose To Retrieve parameter values of JVM and compare values with
benchmark n forward result to Administrator
Preconditions JVM running
Success Condition Retrieve values of parameter
Failed Condition Unable in accessing JVM parameter
Postconditions Alert is send to Administrator
Primary Actors 1. Application
2. System Administrator
Trigger When Application wants to Monitor JVM
DESCRIPTION Step Basic Course of Action
1 Retrieve values of JVM parameter
2 Compare retrieved parameter with benchmark
3 Send report to Administrator
DESCRIPTION Step Alternate Course of Action
1 Send error report to Administrator
DESCRIPTION Step Error Scenario
1 System is unable in retrieving critical parameters values
39
Fig 6.3: Use Case Diagram for Tomcat Monitoring
Tomcat Monitoring
USE CASE # 2
Goal Monitoring
Purpose To Retrieve parameter values of tomcat and compare values with
benchmark n forward result to Administrator
Preconditions Tomcat running
Success Condition Retrieve values of parameter
Failed Condition Unable in accessing Tomcat parameter
Postconditions Alert is send to Administrator
Primary Actors 2. Application
2. System Administrator
Trigger When Application wants to Monitor Tomcat
DESCRIPTION Step Basic Course of Action
1 Retrieve values of Tomcat parameter
2 Compare retrieved parameter with benchmark
3 Send report to Administrator
DESCRIPTION Step Alternate Course of Action
1 Send error report to Administrator
DESCRIPTION Step Error Scenario
1 System is unable in retrieving critical parameters values
40
Vishwakarma Institute of Technology, Pune-37.
41
Table of Contents
1. CONTEXT ..............................................................................................................................6
2. PROBLEM .............................................................................................................................7
3. SOLUTION.................................................................................................................................................8
4. BENEFITS...................................................................................................................................................9
5. INTRODUCTION ............................................................................................................13
5.1 PURPOSE......................................................................................................................................................13
5.2 METHODOLOGY.............................................................................................................................................14
5.3 REFERENCES.................................................................................................................................................14
6. GENERAL INFORMATION..................................................................................................................14
6.1 CURRENT SYSTEMS AND PROCESSES ...............................................................................................................14
6.2 SYSTEM OBJECTIVES......................................................................................................................................14
6.3 ISSUES.........................................................................................................................................................16
6.4 ASSUMPTIONS AND CONSTRAINTS....................................................................................................................16
7. ALTERNATIVES......................................................................................................................................16
7.1 COMPARISONS OF ALTERNATIVES ....................................................................................................................16
8. RECOMMENDATIONS AND CONCLUSION....................................................................................17
9. OVERVIEW .....................................................................................................................21
10. GOALS AND SCOPE .......................................................................................................22
10.1 PROJECT GOALS..........................................................................................................................................22
10.2 PROJECT SCOPE.........................................................................................................................................22
10.2.1 Included.......................................................................................................................................23
10.2.2 Excluded......................................................................................................................................23
11. SCHEDULE AND MILESTONES........................................................................................................23
12. INTRODUCTION ..........................................................................................................28
12.1 PURPOSE....................................................................................................................................................28
12.2 SCOPE.......................................................................................................................................................28
12.3 DEFINITIONS, ACRONYMS, AND ABBREVIATIONS................................................................................................28
12.4 REFERENCES...............................................................................................................................................29
12.5 OVERVIEW.................................................................................................................................................29
13. OVERALL DESCRIPTION..................................................................................................................29
PROBLEM STATEMENT.........................................................................................................................................29
13.1 PRODUCT PERSPECTIVE................................................................................................................................30
PRODUCT POSITION STATEMENT............................................................................................................................30
13.1.1 System Interfaces........................................................................................................................30
13.1.2 User Interfaces............................................................................................................................30
13.1.3 Hardware Interfaces....................................................................................................................31
13.2 PRODUCT FUNCTIONS...................................................................................................................................31
13.3 ASSUMPTIONS AND DEPENDENCIES.................................................................................................................31
14. SPECIFIC REQUIREMENTS..............................................................................................................31
14.1 FUNCTIONS.................................................................................................................................................31
42
14.2 LOGICAL DATABASE REQUIREMENTS..............................................................................................................31
14.3 SOFTWARE SYSTEM ATTRIBUTES....................................................................................................................31
14.3.1 Reliability....................................................................................................................................31
14.3.2 Security.......................................................................................................................................32
14.3.3 Portability....................................................................................................................................32
14.3.4 Efficiency....................................................................................................................................32
15. USE CASE TEMPLATE........................................................................................................................37
USE CASE # 1..............................................................................................................................................39
USE CASE # 2..............................................................................................................................................40
16. SEQUENCE DIAGRAM OVERVIEW ...................................................................................44
16.1 SCENARIO DESCRIPTION...............................................................................................................................44
17. MESSAGE DESCRIPTION..................................................................................................................44
18. SEQUENCE DIAGRAM OVERVIEW ...................................................................................46
18.1 SCENARIO DESCRIPTION...............................................................................................................................47
19. MESSAGE DESCRIPTION..................................................................................................................47
20. STATE CHART DIAGRAM OVERVIEW .............................................................................52
20.1 STATES DESCRIPTION..................................................................................................................................52
21. CLASS DIAGRAM DESCRIPTION....................................................................................................59
21.1 CRC TEMPLATE.........................................................................................................................................59
21.2 CRC CARDS OVERVIEW..............................................................................................................................61
Responsibility........................................................................................................................................61
Collaborator..........................................................................................................................................62
Domain Users (3-5 people)...................................................................................................................62
OO Design Analyst (1-2 people)...........................................................................................................62
Facilitator (1 person).............................................................................................................................63
Scribe (1-2 people)................................................................................................................................63
Observers (0-N people).........................................................................................................................63
The CRC Technique..............................................................................................................................64
Selecting a Scenario..............................................................................................................................64
Creating Initial CRC Card(s)................................................................................................................64
Arranging the CRC Cards.....................................................................................................................65
The CRC Interview...............................................................................................................................65
Finding Classes.....................................................................................................................................65
Finding Collaborators...........................................................................................................................66
21.2.1 General Guidelines......................................................................................................................67
21.2.2 Class Style Guidelines................................................................................................................68
21.2.3 Interfaces.....................................................................................................................................70
21.2.4 Relationship Guidelines..............................................................................................................71
21.2.5 Inheritance Guidelines................................................................................................................73
21.2.6 Aggregation and Composition Guidelines..................................................................................73
21.3 CLASS DIAGRAM.........................................................................................................................................75
43
16.SEQUENCE DIAGRAM OVERVIEW
16.1SCENARIO DESCRIPTION
17.MESSAGE DESCRIPTION
44
Message Type From Object To Object
Login Signal Ad MS
Access Granted Response MS Ad
Select JVM Signal Ad MS
JVM Monitoring Signal MS JM
Send parameters value Response JM MS
Send result Response MS Ad
Select Tomcat Signal Ad MS
Tomcat monitoring Signal MS TM
Monitoring Self TM TM
45
18.SEQUENCE DIAGRAM OVERVIEW
46
18.1SCENARIO DESCRIPTION
19.MESSAGE DESCRIPTION
47
48
Vishwakarma Institute of Technology, Pune-37.
49
Department of Computer Engineering
Table of Contents
1. CONTEXT ..............................................................................................................................6
2. PROBLEM .............................................................................................................................7
3. SOLUTION.................................................................................................................................................8
4. BENEFITS...................................................................................................................................................9
5. INTRODUCTION ............................................................................................................13
5.1 PURPOSE......................................................................................................................................................13
5.2 METHODOLOGY.............................................................................................................................................14
5.3 REFERENCES.................................................................................................................................................14
6. GENERAL INFORMATION..................................................................................................................14
6.1 CURRENT SYSTEMS AND PROCESSES ...............................................................................................................14
6.2 SYSTEM OBJECTIVES......................................................................................................................................14
6.3 ISSUES.........................................................................................................................................................16
6.4 ASSUMPTIONS AND CONSTRAINTS....................................................................................................................16
7. ALTERNATIVES......................................................................................................................................16
7.1 COMPARISONS OF ALTERNATIVES ....................................................................................................................16
8. RECOMMENDATIONS AND CONCLUSION....................................................................................17
9. OVERVIEW .....................................................................................................................21
10. GOALS AND SCOPE .......................................................................................................22
10.1 PROJECT GOALS..........................................................................................................................................22
10.2 PROJECT SCOPE.........................................................................................................................................22
10.2.1 Included.......................................................................................................................................23
10.2.2 Excluded......................................................................................................................................23
11. SCHEDULE AND MILESTONES........................................................................................................23
12. INTRODUCTION ..........................................................................................................28
12.1 PURPOSE....................................................................................................................................................28
12.2 SCOPE.......................................................................................................................................................28
12.3 DEFINITIONS, ACRONYMS, AND ABBREVIATIONS................................................................................................28
12.4 REFERENCES...............................................................................................................................................29
12.5 OVERVIEW.................................................................................................................................................29
13. OVERALL DESCRIPTION..................................................................................................................29
PROBLEM STATEMENT.........................................................................................................................................29
13.1 PRODUCT PERSPECTIVE................................................................................................................................30
PRODUCT POSITION STATEMENT............................................................................................................................30
13.1.1 System Interfaces........................................................................................................................30
13.1.2 User Interfaces............................................................................................................................30
13.1.3 Hardware Interfaces....................................................................................................................31
13.2 PRODUCT FUNCTIONS...................................................................................................................................31
13.3 ASSUMPTIONS AND DEPENDENCIES.................................................................................................................31
14. SPECIFIC REQUIREMENTS..............................................................................................................31
14.1 FUNCTIONS.................................................................................................................................................31
14.2 LOGICAL DATABASE REQUIREMENTS..............................................................................................................31
50
14.3 SOFTWARE SYSTEM ATTRIBUTES....................................................................................................................31
14.3.1 Reliability....................................................................................................................................31
14.3.2 Security.......................................................................................................................................32
14.3.3 Portability....................................................................................................................................32
14.3.4 Efficiency....................................................................................................................................32
15. USE CASE TEMPLATE........................................................................................................................37
USE CASE # 1..............................................................................................................................................39
USE CASE # 2..............................................................................................................................................40
16. SEQUENCE DIAGRAM OVERVIEW ...................................................................................44
16.1 SCENARIO DESCRIPTION...............................................................................................................................44
17. MESSAGE DESCRIPTION..................................................................................................................44
18. SEQUENCE DIAGRAM OVERVIEW ...................................................................................46
18.1 SCENARIO DESCRIPTION...............................................................................................................................47
19. MESSAGE DESCRIPTION..................................................................................................................47
20. STATE CHART DIAGRAM OVERVIEW .............................................................................52
20.1 STATES DESCRIPTION..................................................................................................................................52
21. CLASS DIAGRAM DESCRIPTION....................................................................................................59
21.1 CRC TEMPLATE.........................................................................................................................................59
21.2 CRC CARDS OVERVIEW..............................................................................................................................61
Responsibility........................................................................................................................................61
Collaborator..........................................................................................................................................62
Domain Users (3-5 people)...................................................................................................................62
OO Design Analyst (1-2 people)...........................................................................................................62
Facilitator (1 person).............................................................................................................................63
Scribe (1-2 people)................................................................................................................................63
Observers (0-N people).........................................................................................................................63
The CRC Technique..............................................................................................................................64
Selecting a Scenario..............................................................................................................................64
Creating Initial CRC Card(s)................................................................................................................64
Arranging the CRC Cards.....................................................................................................................65
The CRC Interview...............................................................................................................................65
Finding Classes.....................................................................................................................................65
Finding Collaborators...........................................................................................................................66
21.2.1 General Guidelines......................................................................................................................67
21.2.2 Class Style Guidelines................................................................................................................68
21.2.3 Interfaces.....................................................................................................................................70
21.2.4 Relationship Guidelines..............................................................................................................71
21.2.5 Inheritance Guidelines................................................................................................................73
21.2.6 Aggregation and Composition Guidelines..................................................................................73
21.3 CLASS DIAGRAM.........................................................................................................................................75
51
20.STATE CHART DIAGRAM OVERVIEW
20.1STATES DESCRIPTION
52
Set Benchmark Set user defined / Default benchmark
Send Report Send monitor report to Administrator
Log History Add Event details to History
53
Approvals Signature Block
54
55
Vishwakarma Institute of Technology, Pune-37.
56
Table of Contents
1. CONTEXT ..............................................................................................................................6
2. PROBLEM .............................................................................................................................7
3. SOLUTION.................................................................................................................................................8
4. BENEFITS...................................................................................................................................................9
5. INTRODUCTION ............................................................................................................13
5.1 PURPOSE......................................................................................................................................................13
5.2 METHODOLOGY.............................................................................................................................................14
5.3 REFERENCES.................................................................................................................................................14
6. GENERAL INFORMATION..................................................................................................................14
6.1 CURRENT SYSTEMS AND PROCESSES ...............................................................................................................14
6.2 SYSTEM OBJECTIVES......................................................................................................................................14
6.3 ISSUES.........................................................................................................................................................16
6.4 ASSUMPTIONS AND CONSTRAINTS....................................................................................................................16
7. ALTERNATIVES......................................................................................................................................16
7.1 COMPARISONS OF ALTERNATIVES ....................................................................................................................16
8. RECOMMENDATIONS AND CONCLUSION....................................................................................17
9. OVERVIEW .....................................................................................................................21
10. GOALS AND SCOPE .......................................................................................................22
10.1 PROJECT GOALS..........................................................................................................................................22
10.2 PROJECT SCOPE.........................................................................................................................................22
10.2.1 Included.......................................................................................................................................23
10.2.2 Excluded......................................................................................................................................23
11. SCHEDULE AND MILESTONES........................................................................................................23
12. INTRODUCTION ..........................................................................................................28
12.1 PURPOSE....................................................................................................................................................28
12.2 SCOPE.......................................................................................................................................................28
12.3 DEFINITIONS, ACRONYMS, AND ABBREVIATIONS................................................................................................28
12.4 REFERENCES...............................................................................................................................................29
12.5 OVERVIEW.................................................................................................................................................29
13. OVERALL DESCRIPTION..................................................................................................................29
PROBLEM STATEMENT.........................................................................................................................................29
13.1 PRODUCT PERSPECTIVE................................................................................................................................30
PRODUCT POSITION STATEMENT............................................................................................................................30
13.1.1 System Interfaces........................................................................................................................30
13.1.2 User Interfaces............................................................................................................................30
13.1.3 Hardware Interfaces....................................................................................................................31
13.2 PRODUCT FUNCTIONS...................................................................................................................................31
13.3 ASSUMPTIONS AND DEPENDENCIES.................................................................................................................31
14. SPECIFIC REQUIREMENTS..............................................................................................................31
14.1 FUNCTIONS.................................................................................................................................................31
14.2 LOGICAL DATABASE REQUIREMENTS..............................................................................................................31
14.3 SOFTWARE SYSTEM ATTRIBUTES....................................................................................................................31
14.3.1 Reliability....................................................................................................................................31
57
14.3.2 Security.......................................................................................................................................32
14.3.3 Portability....................................................................................................................................32
14.3.4 Efficiency....................................................................................................................................32
15. USE CASE TEMPLATE........................................................................................................................37
USE CASE # 1..............................................................................................................................................39
USE CASE # 2..............................................................................................................................................40
16. SEQUENCE DIAGRAM OVERVIEW ...................................................................................44
16.1 SCENARIO DESCRIPTION...............................................................................................................................44
17. MESSAGE DESCRIPTION..................................................................................................................44
18. SEQUENCE DIAGRAM OVERVIEW ...................................................................................46
18.1 SCENARIO DESCRIPTION...............................................................................................................................47
19. MESSAGE DESCRIPTION..................................................................................................................47
20. STATE CHART DIAGRAM OVERVIEW .............................................................................52
20.1 STATES DESCRIPTION..................................................................................................................................52
21. CLASS DIAGRAM DESCRIPTION....................................................................................................59
21.1 CRC TEMPLATE.........................................................................................................................................59
21.2 CRC CARDS OVERVIEW..............................................................................................................................61
Responsibility........................................................................................................................................61
Collaborator..........................................................................................................................................62
Domain Users (3-5 people)...................................................................................................................62
OO Design Analyst (1-2 people)...........................................................................................................62
Facilitator (1 person).............................................................................................................................63
Scribe (1-2 people)................................................................................................................................63
Observers (0-N people).........................................................................................................................63
The CRC Technique..............................................................................................................................64
Selecting a Scenario..............................................................................................................................64
Creating Initial CRC Card(s)................................................................................................................64
Arranging the CRC Cards.....................................................................................................................65
The CRC Interview...............................................................................................................................65
Finding Classes.....................................................................................................................................65
Finding Collaborators...........................................................................................................................66
21.2.1 General Guidelines......................................................................................................................67
21.2.2 Class Style Guidelines................................................................................................................68
21.2.3 Interfaces.....................................................................................................................................70
21.2.4 Relationship Guidelines..............................................................................................................71
21.2.5 Inheritance Guidelines................................................................................................................73
21.2.6 Aggregation and Composition Guidelines..................................................................................73
21.3 CLASS DIAGRAM.........................................................................................................................................75
58
21.CLASS DIAGRAM DESCRIPTION
21.1CRC TEMPLATE
59
Class Name Benchmark
Class Type Entity
Characteristic To set benchmarks for defining health of
system.
Super Class Application
Sub Class Default, UserDefined
Variables Name,ParameterList[][],
Services AddParameter(), RemoveParameter(),
SetValue(),
Responsibilities Collaboration
To perform the following operations on an SystemState, Exception.
image
view, zoom, rotate, scroll an image
60
To create report for notification Application, Benchmark , Contact
Class
A Class represents a collection of similar objects. Objects are things of interest in
the system being modeled. They can be a person, place, thing, or any other concept
important to the system at hand. The Class name appears across the top of the CRC
card.
Responsibility
A Responsibility is anything that the class knows or does. These responsibilities
are things that the class has knowledge about itself, or things the class can do with the
knowledge it has.
For example, a person class might have knowledge (and responsibility) for its
name, address, and phone number. In another example an automobile class might have
knowledge of its size, its number of doors, or it might be able to do things like stop and
go. The Responsibilities of a class appear along the left side of the CRC card.
61
Collaborator
A Collaborator is another class that is used to get information for, or perform
actions for the class at hand. It often works with a particular class to complete a step (or
steps) in a scenario. The Collaborators of a class appear along the right side of the CRC
card. The CRC team is comprised of different types of people involved in the project. The
overall size of the CRC team is important, and active participants should be limited to 6.
Interaction between active participants grows experientially with the number candidates.
There are generally three types of skill sets for active participants in the CRC
session.
Domain Users
OO Design Analyst
Facilitator
Additional non-active participants can include a scribe and observers.
Domain Users (3-5 people)
These members of the CRC team are the users of the system being designed. They
should have a good amount of business domain knowledge for which the system is being
modeled.
Good domain users also have the following characteristics:
• Know the business being modeled.
• Think logically.
• Good communication skills.
• Are willing to invest the time in systems designs.
62
• Understand the OO modeling process and methodology.
• Experience developing OO systems.
Facilitator (1 person)
This is the member who runs the CRC session. This person is perhaps the most
important member of the team. It is the facilitator’s responsibility to keep the CRC
session progressing forward.
This may include acting as an intermediary when collaboration debates occur, and
generally making sure that the session is on track with regards to the agenda.
Good facilitators have the following characteristics:
• Good meeting skills.
• Understand the CRC modeling process and methodology.
• Understand the OO modeling process and methodology.
63
The CRC Technique
The facilitator should begin by explaining the purpose of the CRC session. Remember
that scenario execution is at the heart of the CRC session. An explanation of the CRC
cards, as well as some sample CRC cards themselves can be created.
The concept of role playing techniques should be covered. Role-playing involves acting
out what a class does in order to facilitate the scenario execution. A person who owns a
particular card should 'become' that class when control of the scenario is passed to them.
This is often done by holding the card in the air while the class has control of the
execution. This way, a card is an object while being held in the air, and a card is a class
while resting on the table.
Selecting a Scenario
One scenario should be selected to begin the CRC session. Often an initial brainstorming
time can be set aside at the beginning of the session to discuss and identify an
appropriate scenario.
The scenario chosen should be well documented and very specific. Any related
scenario's should be modeled separately. Often it is desirable to choose an easy
scenario to begin with.
If there are already use-case’s diagrams or descriptions for the problem domain, a good
scenario is any 'normal coarse' through one of these 'use cases'. Using just the ‘normal
coarse’ ensures that the session focuses on one particular scenario, and not the entire
use case.
64
Arranging the CRC Cards
As CRC cards are created, they are often placed on a centralized table for all
participants to see. Once collaborations are established between classes, the
arrangement of the classes can be moved so that collaborating classes are in close
proximity to each other. The more that two classes collaborate throughout the session,
the closer they should be placed to each other.
In the initial stages of the CRC session, you can expect that the location of the
classes on the table move quite frequently. This is typical of card placement, and will
settle down after collaboration become more established.
It is often helpful to put the busy cards towards the center of the table, and those
less busy cards around the outside perimeter. While the importance of card placement is
subtle, beware of just choosing a card location because there is empty space on the
table.
If the table fills up quickly during a scenario execution, the quite possibly the scenario
chosen is overly complicated, or is not the primary coarse through a 'use case'.
Finding Classes
A Class represents a collection of similar objects. Objects are things of interest in the
system being modeled. They can be a person, place, thing, or any other concept
important to the system at hand. There are many ways to identify classes. One of the
easiest to start with is noun extraction. Noun extraction identifies all of the Nouns in a
problem statement and/or use-case scenario. The nouns extracted make excellent
candidate classes the ways to identify classes are to look for items that interact with the
65
system, or things that are part of the system. Ask if there is a customer of the system,
and identify what the customer interacts with.
Finding Responsibilities
A Responsibility is anything that the class knows or does. These responsibilities are
things that the class has knowledge about itself, or things the class can do with the
knowledge it has.
To compliment the 'Noun Extraction' technique above is verb extraction. Verb extraction
identifies all of the verbs in a problem statement and/or use-case scenario. These are
usually good indicators of actions that must be performed by the classes of the system.
Other techniques included asking what the class knows, and what information must be
stored about the class to make it unique. Ask what the class does, and then flesh out
how the class might do it.
Finding Collaborators
Collaboration occurs when a class needs information that it doesn’t have. Classes know
specific things about themselves. Very often to perform a task a class needs information
that it doesn't have.
Often it's necessary to get this information from another class, in the form of
collaboration.
Collaboration can also occur if a class needs to modify information that it doesn’t have.
One property of information that a class knows about itself is the ability to update the
information. Often a class will want to update information that it doesn't have. When this
happens, the class will often ask another class, in the form of a collaboration, to update
the information for it.
Generally for a collaboration to occur, one class is the initiator. In other words, there has
to be a starting point for collaboration. Often times the initiating class is doing very little
work beyond initialing the collaboration itself.
66
A class that is never instantiated into an object. Abstract Class
An interesting property of a class. Usually in the form of a value. Attribute
A representation of a collection of similar objects. Classes are
Class
often objects, representing a person, place, or thing.
A class that provides information or performs an action for another
Collaborator
class.
An instance of a particular class. While a class may represent
Object
people, an object represents one particular person.
Anything a class knows or does. Responsibility
A class that may become a permanent class in the system after
Candidate Class
further analysis.
21.2.1General Guidelines
Because class diagrams are used for a variety of purposes – from understanding
requirements to describing your detailed design – you will need to apply a different style
in each circumstance. This section describes style guidelines pertaining to different
types of class diagrams.
67
Figure 2. Modeling association classes.
A class is effectively a template from which objects are created (instantiated). Although
in the real world Doug, Wayne, John, and Bill are all student objects we would model the
class Student instead. Classes define attributes, information that is pertinent to their
instances, and operations, functionality that the objects support. Classes will also realize
interfaces (more on this later). Note that you may need to soften some of the naming
guidelines to reflect your implementation language or software purchased from a third-
party vendor.
68
Figure 3. The OrderItem class with and without scaffolding code.
69
21.2.3Interfaces
An interface is a collection of operation signature and/or attribute definitions that ideally
defines a cohesive set of behaviors. Interfaces are implemented, “realized” in UML
parlance, by classes and components – to realize an interface a class or component
must implement the operations and attributes defined by the interface. Any given class
or component may implement zero or more interfaces and one or more classes or
components can implement the same interface.
70
21.2.4Relationship Guidelines
For ease of discussion the term relationships shall include all UML concepts such as
associations, aggregation, composition, dependencies, inheritance, and realizations – in
other words, if it’s a line on a UML class diagram we’ll consider it a relationship.
71
Figure 9. Modeling people at a university.
72
21.2.5Inheritance Guidelines
Inheritance models “is a” and “is like” relationships, enabling you to easily reuse
existing data and code. When “A” inherits from “B” we say that “A” is the subclass of “B”
and that “B” is the superclass of “A.” Furthermore, we say that we have “pure
inheritance” when “A” inherits all of the attributes and methods of “B.” The UML modeling
notation for inheritance is a line with a closed arrowhead pointing from the subclass to
the superclass.
1. Apply the Sentence Rule For Inheritance
2. Place Subclasses Below Superclasses
3. Beware of Data-Based Inheritance
4. A Subclass Should Inherit Everything
73
Figure 10. Examples of aggregation and composition.
74
21.3CLASS DIAGRAM
75