ENEL 589 – Group 5ENEL 589 – Group 5Haysam AlsayedHaysam Alsayed
Lucian AronLucian AronTatyana RabinovitchTatyana Rabinovitch
Brooks RileyBrooks Riley
MAS-UML-MODELERMAS-UML-MODELER
Motivation Behind the ProjectMotivation Behind the Project Report #1Report #1
• Detailed DesignDetailed Design• Acceptance Test PlanAcceptance Test Plan
Report #2Report #2• Test ReportTest Report• Project Project DocumentationDocumentation
SysSystemtem Demonstration Demonstration Conclusions and QuestionsConclusions and Questions
OUTLINEOUTLINE
Product DescriptionProduct Description
A software application that accepts as A software application that accepts as its input specifications from a its input specifications from a Multiagent system, producing a Multiagent system, producing a suitable behavioral model diagram, suitable behavioral model diagram, compliant with UML 2.0 as its output. compliant with UML 2.0 as its output.
MASE MASE UML 2.0UML 2.0
PRODUCT MOTIVATION: BACKGROUNDPRODUCT MOTIVATION: BACKGROUND
Motivation for designing a software that Motivation for designing a software that depicts the way a Multiagent system depicts the way a Multiagent system behaves?behaves?
MAS analysis is complicated, therefore, development is MAS analysis is complicated, therefore, development is hard.hard.
MAS are generally strictly a research topic but with this MAS are generally strictly a research topic but with this project potential is gained for acceptance in industry.project potential is gained for acceptance in industry.
Applicability of MAS:Applicability of MAS: MAS enhance the adaptability of IT systems in 2 MAS enhance the adaptability of IT systems in 2
ways:ways:
• Facilitates “external” maintenance Facilitates “external” maintenance
• Increases their own capabilities to perform necessary Increases their own capabilities to perform necessary adaptations by themselves adaptations by themselves
PRODUCT MOTIVATION: BACKGROUNDPRODUCT MOTIVATION: BACKGROUND
REPORT 1: DREPORT 1: DETAILEDETAILED DESIGN DESIGN
Figure 1 – System Overview
REPORT 1: DREPORT 1: DETAILEDETAILED DESIGN DESIGN
Figure 2 – Import Agent Sequence Diagram
Figure 3 – Create New Project Sequence Diagram
REPORT 1: DREPORT 1: DETAILEDETAILED DESIGN DESIGN
Figure 4 – Input Protocol Sequence Diagram
REPORT 1: DREPORT 1: DETAILEDETAILED DESIGN DESIGN
Figure 5 – Generate Sequence Diagram Sequence Diagram
REPORT 1: ACCEPTANCE TEST PLANREPORT 1: ACCEPTANCE TEST PLAN
Functional Requirement Tests (1)Functional Requirement Tests (1) REQ-F01REQ-F01: : Generates UML 2.0 compliant sequence diagram in Generates UML 2.0 compliant sequence diagram in
XML formatXML format TEST-F01TEST-F01:: Verification by inspection of system output Verification by inspection of system output
diagramsdiagrams
REQ-F02REQ-F02: : Output written to a user specified fileOutput written to a user specified file TEST-F02TEST-F02:: Verification by operation of the system and Verification by operation of the system and
inspection of the user specified fileinspection of the user specified file
REQ-F03REQ-F03: : Create a new projectCreate a new project TEST-F03TEST-F03:: Verification by operation of the system Verification by operation of the system
REPORT 1: ACCEPTANCE TEST PLANREPORT 1: ACCEPTANCE TEST PLAN
Functional RequirementFunctional Requirement Tests (2) Tests (2)
REQ-F04REQ-F04: : Save/Open projectSave/Open project TEST-F04TEST-F04:: Verification by operation of the system Verification by operation of the system
REQ-F05REQ-F05: : Close the project Close the project TEST-F05TEST-F05:: Verification by operation of the system Verification by operation of the system
REQ-F06REQ-F06: : Loads input files Loads input files TEST-F06TEST-F06:: Verification by operation of the system and Verification by operation of the system and
inspection of the system input displaysinspection of the system input displays
REPORT 1: ACCEPTANCE TEST PLANREPORT 1: ACCEPTANCE TEST PLANFunctional RequirementFunctional Requirement Tests (3) Tests (3) REQ-F07REQ-F07: : Detects malformed/incorrect input Detects malformed/incorrect input TEST-F07TEST-F07:: Verification by inspection of the system with various Verification by inspection of the system with various
incompatible inputs. Error messages from:incompatible inputs. Error messages from:• A random text inputA random text input• Diagrams not belonging to the MASE methodologyDiagrams not belonging to the MASE methodology
REQ-F08REQ-F08: : Allow user to search and read task help functionsAllow user to search and read task help functions TEST-F08TEST-F08:: Verification by operation of the system and inspection Verification by operation of the system and inspection
for working system search functionsfor working system search functions
REQ-F09REQ-F09: : The system must primarily be designed to run on the The system must primarily be designed to run on the Windows platform Windows platform
TEST-F09TEST-F09:: Verification by operation of the system on Windows 2000 Verification by operation of the system on Windows 2000 and Windows XPand Windows XP
REPORT 1: ACCEPTANCE TEST PLANREPORT 1: ACCEPTANCE TEST PLAN
Non-Functional Requirement Tests (1)Non-Functional Requirement Tests (1)
REQ-NF01REQ-NF01:: Response TimeResponse Time • The The system output must be updated within 15 minutessystem output must be updated within 15 minutes
TEST-NF01.0TEST-NF01.0:: Record several timings of the program, from input Record several timings of the program, from input to system output. to system output.
TEST-NF01.1TEST-NF01.1:: Run ASUS PC Probe. Monitor the processor speeds, Run ASUS PC Probe. Monitor the processor speeds, if output is not produced within 15 minutes conduct JUnit testing if output is not produced within 15 minutes conduct JUnit testing on each main system component. Re-check processor speeds.on each main system component. Re-check processor speeds.
REQ-NF02REQ-NF02:: ReliabilityReliability• Mean Time Between Failure (MTBF) of 1000 hours oMean Time Between Failure (MTBF) of 1000 hours or lessr less
TEST-NF02.0TEST-NF02.0:: A certification of reliability will be performed. A certification of reliability will be performed.
REPORT 1: ACCEPTANCE TEST PLANREPORT 1: ACCEPTANCE TEST PLAN
Non-Functional Requirement Tests (2)Non-Functional Requirement Tests (2)
REQ-NF03REQ-NF03:: Resource Constraints Resource Constraints – Program Size– Program Size• The client application executable must not exceed 50 MBThe client application executable must not exceed 50 MB
TEST-NF03.0TEST-NF03.0:: Find the size indicator in the properties Find the size indicator in the properties information screen by right click on the program executable.information screen by right click on the program executable.
REQ-NF04REQ-NF04:: Resource ConstraintsResource Constraints
• Minimum requirements including processor (Pentium III), memory (256MB Minimum requirements including processor (Pentium III), memory (256MB of RAM)of RAM), , disk space (50MB) and Java Virtual disk space (50MB) and Java Virtual Machine 1.5.0 or higherMachine 1.5.0 or higher
TEST-NF04.0TEST-NF04.0:: Check for presence of minimum system Check for presence of minimum system requirements and run the application to test if the system requirements and run the application to test if the system operates a sample run to completion.operates a sample run to completion.
REPORT 1: ACCEPTANCE TEST PLANREPORT 1: ACCEPTANCE TEST PLAN
Non-Functional Requirement Tests (3) Non-Functional Requirement Tests (3)
REQ-NF05REQ-NF05:: Resource Constraints – Memory ConsumptionResource Constraints – Memory Consumption• The client The client application executable must not exceed 256 MBapplication executable must not exceed 256 MB
TEST-NF05.0TEST-NF05.0:: Run the application by using a sample input set. Run the application by using a sample input set. Click on the Windows platform desktop and run the Ctrl-Alt-Click on the Windows platform desktop and run the Ctrl-Alt-Delete command. A Windows Task Manager should appear on Delete command. A Windows Task Manager should appear on the screen. Record the presented Mem Usage Value (this the screen. Record the presented Mem Usage Value (this indicates the application memory consumption). indicates the application memory consumption).
REPORT 1: ACCEPTANCE TEST PLANREPORT 1: ACCEPTANCE TEST PLAN
Test EquipmentTest Equipment The test tools and test software which is required for the The test tools and test software which is required for the
performance of the tests is described below:performance of the tests is described below:
Tool ID Test Environment Software
T01 Windows Operating System
T02 Eclipse SDK Version: 3.3.1.1
T03 JAVA Runtime Environment (JVM) 1.5
T04 Windows Task Manager
T05 ASUS PC Probe II (monitors fan rotations, temp, voltages, hard disk space, memory
usage, CPU type and processor speed)
T06 JUnit Testing Framework
Figure 6 – Test Tools
REPORT 2: TEST RREPORT 2: TEST REPORTEPORT The documented summary of all the testing results:The documented summary of all the testing results:
Figure 7 – Test Results
Requirement IDRequirement ID Requirement Requirement DescriptionDescription
Test IDTest ID ObservationObservation ResultResult
REQ-F01 Generates UML 2.0 compliant sequence
diagram in XML format
TEST-F01 Valid UML diagrams are produced upon
inspection
PASS
REQ-F02 Output written to a user specified file
TEST-F02 As specified by users a user defined file will store system output
PASS
REQ-F03 Create a new project TEST-F03 Blank projects creation works
PASS
REQ-F04 Save/Open project TEST-F04 Save/Open specific project files functions
accordingly
PASS
REQ-F05 Close the project TEST-F05 Project termination functions as expected (no corrupted data
produced)
PASS
REQ-F06REQ-F06 Loads input files TEST-F06 Input files are loaded appropriately
PASS
REQ-F07REQ-F07 Detects malformed/incorrect
input
TEST-F07 Incorrect system input is detected with error
message
PASS
REQ-F08REQ-F08 Allow user to search and read task help
functions
TEST-F08 Help document is present and complete
PASS
REPORT 2: TEST RREPORT 2: TEST REPORTEPORT
Figure 7 – Test Results
Requirement IDRequirement ID Requirement Requirement DescriptionDescription
Test IDTest ID ObservationObservation ResultResult
REQ-F09 The system must be designed to run on
the Windows platform
TEST-F09 The system runs on both Windows 2000
and Windows XP environments
PASS
REQ-NF01 Response Time TEST-NF01.0 4.29 < 15 minutes and acceptable
PASS
REQ-NF01 Response Time TEST-NF01.1 < 15 minutes and acceptable CPU
usage of 54%
PASS
REQ-NF02 Reliability TEST-NF02.0 MTBF = 270.27 hours/failure < 1000
hours
PASS
REQ-NF03 Resource Constraints- Program Size
TEST-NF03.0 Program size = 1.75 MB < 50 MB
PASS
REQ-NF04 Resource Constraints
TEST-NF04.0 All resource constraints are accepted by the program which
functions as expected
PASS
REQ-NF05 Resource Constraints-
Memory Consumption
TEST-NF05.0 Memory Consumption = 26
MB < 256 MB
PASS
REPORT 2: UREPORT 2: USER MANUAL DOCUMENTATIONSER MANUAL DOCUMENTATION
Using thUsing the MAS-UML-Modeler Applicatione MAS-UML-Modeler Application
Opening the Application:Opening the Application:MAS-UML-Modeler is packaged in a JAR archive, to launch the MAS-UML-Modeler is packaged in a JAR archive, to launch the
application simply double-click on MAS-UML-Modeler.Jar and application simply double-click on MAS-UML-Modeler.Jar and open the application with the installed Java Platform.open the application with the installed Java Platform.
Starting a new Conversion Project:Starting a new Conversion Project:
i.i. Select New ProjectSelect New Projectii.ii. Choose a Working Directory (Where Created UML Diagrams Choose a Working Directory (Where Created UML Diagrams
will be stored)will be stored)
REPORT 2: UREPORT 2: USER MANUAL DOCUMENTATIONSER MANUAL DOCUMENTATIONUser InUser Interface Layoutterface Layout::
Area 1Area 1 – The MAS-UML-Modeler Console – The MAS-UML-Modeler Console Area 4Area 4 – The UML Artifact Tree – The UML Artifact TreeArea 2Area 2 – The MaSE Artifact Tree – The MaSE Artifact Tree Area 5Area 5 – The UML Artifact Viewer – The UML Artifact ViewerArea 3Area 3 – The MaSE Artifact Viewer – The MaSE Artifact Viewer
REPORT 2: UREPORT 2: USER MANUAL DOCUMENTATIONSER MANUAL DOCUMENTATION
Adding MaSAdding MaSE DiagramsE Diagrams::i.i. Select a MaSE artifact type in the MaSE artifact treeSelect a MaSE artifact type in the MaSE artifact treeii.ii. Click the Add MaSE Diagram ButtonClick the Add MaSE Diagram Buttoniii.iii. Browse to the correct file and hit “Open”Browse to the correct file and hit “Open”
ConvertingConverting Diagrams Diagrams::i.i. For Sequence Diagram:For Sequence Diagram:
1.1. Ensure that you have an Agent Class Diagram importedEnsure that you have an Agent Class Diagram imported2.2. Ensure that you have one or more Sequence Diagrams importedEnsure that you have one or more Sequence Diagrams imported3.3. Select the Sequence Diagram you wish to covert in the MaSE artifact Select the Sequence Diagram you wish to covert in the MaSE artifact
treetree4.4. Click Generate -> Sequence DiagramClick Generate -> Sequence Diagram5.5. A message will be displayed in the MAS-UML-Modeler Console A message will be displayed in the MAS-UML-Modeler Console
regarding the status of the conversionregarding the status of the conversionii.ii. Other Diagrams:Other Diagrams:
1.1. Functionality stubs for future releasesFunctionality stubs for future releases
REPORT 2: UREPORT 2: USER MANUAL DOCUMENTATIONSER MANUAL DOCUMENTATION
Saving Project:Saving Project:i.i. Click File -> SaveClick File -> Saveii.ii. Browse to the location you wish to save the projectBrowse to the location you wish to save the projectiii.iii. Enter a name for the projectEnter a name for the projectiv.iv. Hit Save to FileHit Save to File
Opening Project:Opening Project:i.i. Click File -> OpenClick File -> Openii.ii. Browse to the location where a project is savedBrowse to the location where a project is savediii.iii. Select a file with the extension *.MaSE or *.UML Select a file with the extension *.MaSE or *.UML iv.iv. Hit Open Hit Open
Closing the ApplicationClosing the Application::i.i. Click File -> Close ProjectClick File -> Close Project OrOrii.ii. Click the X in the Top Right CornerClick the X in the Top Right Corner
SYSTEM DEMOSYSTEM DEMONSTRATIONNSTRATION
REFERENCESREFERENCES[1] Bergenti, Gleizes, & Zambonelli. [1] Bergenti, Gleizes, & Zambonelli. (2004). (2004). METHODOLOGIES AND SOFTWARE METHODOLOGIES AND SOFTWARE
ENGINEERING FOR AGENT SYSTEMS: The Agent-Oriented Software Engineering ENGINEERING FOR AGENT SYSTEMS: The Agent-Oriented Software Engineering HandbookHandbook. BOSTON, MA: KLUWER ACADEMIC PUBLISHERS.. BOSTON, MA: KLUWER ACADEMIC PUBLISHERS.
[2] Henderson-Sellers & Giorgini (Ed.). (2005). [2] Henderson-Sellers & Giorgini (Ed.). (2005). Agent-Orientated MethodologiesAgent-Orientated Methodologies. . Hershey, PA: IDEA Group Publishing.Hershey, PA: IDEA Group Publishing.
[3] Heaton. (2007). Unified Modeling Language: Superstructure. Retrieved from [3] Heaton. (2007). Unified Modeling Language: Superstructure. Retrieved from http://www.omg.org/docs/formal/07-02-03.pdf
[4] Bredemeyer & Malan. (2001). [4] Bredemeyer & Malan. (2001). Defining Non-Functional RequirementsDefining Non-Functional Requirements. Retrieved . Retrieved October 17, 2007, from October 17, 2007, from http://www.bredemeyer.com/pdf_files/NonFunctReq.PDF
[5] Hammer. (1998). [5] Hammer. (1998). Software Metrics and ReliabilitySoftware Metrics and Reliability. Retrieved October 18, 2007, from . Retrieved October 18, 2007, from http://satc.gsfc.nasa.gov/support/ISSRE_NOV98/software_metrics_and_reliability.html
[6] R. Grady. Practical Software Metrics for Project Management and Process [6] R. Grady. Practical Software Metrics for Project Management and Process Improvement. Prentice Hall, 1992 Improvement. Prentice Hall, 1992
QUESTIONS?QUESTIONS?