coelhudo / datacentersimulator Goto Github PK
View Code? Open in Web Editor NEWData Center Simulator to evaluate and validade Autonomic Managers (forked from https://github.com/fnorouz/simulator)
Data Center Simulator to evaluate and validade Autonomic Managers (forked from https://github.com/fnorouz/simulator)
Bug found during findbugs plugin execution.
There is no test yet to characterize the behavior.
Resource: simulator/src/simulator/physical/Cooler.java
Location: line 5
Resource: simulator/src/simulator/Simulator.java
Location: line 102
Possible problem in EnterpriseApp.
Need a characterization test before substitutition.
Resource: simulator/src/simulator/schedulers/LeastRemainFirstScheduler.java
Location: line 18
Possible problem in InteractiveUser.java.
Need a characterization test before substitutition.
Create a XML in memory to validate POD creation
Bug found during findbugs plugin execution.
There is no test yet to characterize the behavior.
Possible problem in IInteractiveSystem.java
Need a characterization test before substitutition.
Characterize this class.
Currently, the Data Center abstraction is not strong. The hierarchy is not enforced. It is controlled just by ID (ex.: BladeServer has a reference to Rack ID and Chassis ID). The ideal approach is, in my opinion, have an explicit hierarchy by composition.
DataCenter has Racks. Rack has Chassis. Chassis has servers.
Also, this is going to be useful for presentation in the frontend.
Characterize this class.
Resource: simulator/src/simulator/physical/BladeServer.java
Location: method changeInternals
The method was done to improve encapsulation. It is part of a series of improvements to make the code testable
Create test based on coverage result.
Currently each *System class and EnterpriseApp has access to a BufferedReader instance. Every time a job is requested the file (that is in memory already) is read again, which can cause exceptions, among other bad things, like file mal formation.
A class designed to handle this can read (and fail as soon as possible) the jobs before the simulation starts.
To make the system easier for modification.
Characterize this class.
To make Intergration tests possible.
There are a lot of, readonly mostly, operations over a collection of BladeServer.
A class with static functions to provide filters or accumulators would be welcomed.
This is necessary before any further modification related to #35
Resource: simulator/src/simulator/am/GeneralAM.java
Location: line 9
Characterize this class.
Characterization based on coverage
Create just a small prototype to show in the browser what is happening in the simulation. It can be the same result as when it is executed in console.
Resource: simulator/src/simulator/tests/BladeServerTest.java
Location: line 23
Characterization based on coverage.
For characterization and refactoring.
Create integration tests packages to separate some tests from the current unit tests.
The purpose of this is make easy to understand bladeserver current status. Nowadays it is necessary to memorize each code (-1 -> Idle, 0 -> Running ... ).
Implement tests to characterize BatchJob class. Then it will be possible to finish BladeServerTest.
If a field is not set, then the POD will be considered invalid and the app will explode ASAP.
Resource: simulator/src/simulator/am/GeneralAM.java
Location: line 7
Sometimes it is being logged accumulated violation instead of violation type.
I don't know how correct is this, seems coincidence. Need more test.
Bug found during findbugs plugin execution.
There is no test yet to characterize the behavior.
Today builders are responsible for creating instances of simulator data center elements. Builders are heavily dependent on XML.
To decrease this dependence, builders will only build PODs. Then this PODs will be used to create instances of simulator data center elements.
This will allow integration tests creation without depend on XML files (or streams).
Executing one batch job in two servers consumes less power than executing nothing.
See ComputeSystemIT.java for more information. See InsuficientServerToProcess test and whatever other test in the same integration test file.
Characterize this class using unit tests
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.