1461115141-3e7f1149-9f55-428a-9565-5cb61c6f4be9

1. In a computing system that includes a processor, data storage, and inputoutput devices including a network interface device, a method for automatically developing detection rules, the method comprising:
(a) obtaining, by the computing system, incoming data directed to a destination;
(b) detecting, by the computing system, any indicia of phishing present in the incoming data, the detecting being performed by application of a plurality of phishing detection rules;
(c) computationally determining, by the computing system, a quantitative score for each of a plurality of predefined parameters, each of the parameters relating to at least one of the phishing indicia, and each quantitative score representing a likelihood of a presence of phishing content in the incoming data for the at least one of the phishing indicia;
(d) assessing, by the computing system, a requirement for evolving a phishing detection rule, including applying a predefined set of rule evolution criteria to a combination of the determined quantitative scores of a plurality of parameters;
(e) in response to an assessment of the requirement for evolving a phishing rule, generating, by the computing system, a new phishing detection rule based on selected parameter scores meeting the rule evolution criteria and on corresponding content of the phishing indicia relating to those selected parameter scores;
by the computing system, recursively performing (b)-(e) based on any new phishing detection rules having been evolved in (e);
identifying, by the computing system, any phishing-related objects based on selected parameter scores exceeding a phishing detection threshold and on corresponding content of the phishing indicia relating to those selected parameter scores;
modifying, by the computing system, content relating to the phishing-related objects in the incoming data to remove or reduce maliciousness of the phishing-related objects.
2. The method of claim 1, wherein in obtaining the incoming data, the destination to which the incoming data is directed is a remote client computer system.
3. The method of claim 1, wherein obtaining the incoming data includes intercepting incoming data prior to arrival of the incoming data at the destination.
4. The method of claim 1, wherein detecting any indicia of phishing present in the incoming data includes emulating, in an isolated computing environment, any code that is present in the incoming data.
5. The method of claim 1, further comprising:
categorizing, by the computing system, items of content of the intercepted data into a plurality of predefined categories representing different types of content, wherein each category is associated with a corresponding set of the parameters.
6. The method of claim 5, wherein generating a new phishing detection rule includes re-categorizing certain items of content of the intercepted data into other categories, and applying phishing detection rules for those other categories to those certain items of content.
7. The method of claim 1, wherein in computationally determining the quantitative score for each of the parameters, at least one quantitative score represents a result of application of a combination of different phishing detection rules to detect a related combination of phishing indicia.
8. The method of claim 1, wherein the rule evolution criteria includes a first rule evolution threshold against which the combination of the determined quantitative scores are applied.
9. The method of claim 8, wherein the first rule evolution threshold is different from the phishing detection threshold.
10. The method of claim 8, wherein the first rule evolution threshold is the same as the phishing detection threshold.
11. The method of claim 8, wherein the rule evolution criteria includes a second rule evolution threshold against which the combination of the determined quantitative scores are applied, the second rule evolution threshold being lower than the first rule evolution threshold, wherein the rule evolution criteria is met when any individual quantitative score of the combination exceeds the first rule evolution threshold, and wherein the rule evolution criteria is independently met when a specified plurality of quantitative scores of the combination exceeds the second rule evolution threshold.
12. The method of claim 1, wherein the rule evolution criteria includes a rule evolution threshold against which the an aggregation of the determined quantitative scores of the combination are applied.
13. The method of claim 1, wherein in recursively performing (b)-(e), multiple successive iterations of (b)-(e) are performed, and wherein each new phishing detection rule is applied to the same incoming data from a previous iteration.
14. A system for automatically developing detection rules for detecting phishing content, the system comprising:
a computing platform having a processor, data storage, and a network interface device the computing platform containing instructions that, when executed by the computing platform, cause the computing platform to implement:
a data capture engine configured to obtain incoming data directed to a destination;
a phishing content detection engine operatively coupled to the data capture engine and configured to detect any indicia of phishing present in the incoming data, the detection being based on application of a plurality of phishing detection rules, and to determine a quantitative score for each of a plurality of predefined parameters, each of the parameters relating to at least one of the phishing indicia, and each quantitative score representing a likelihood of a presence of phishing content in the incoming data for the at least one of the phishing indicia;
a rule development engine operatively coupled to the phishing content detection engine and configured to:
assess a requirement for evolving a phishing detection rule, based on application of a predefined set of rule evolution criteria to a combination of the determined quantitative scores of a plurality of parameters by the phishing content detection engine;
generate a new phishing detection rule based on selected parameter scores meeting the rule evolution criteria and on corresponding content of the phishing indicia relating to those selected parameter scores in response to an assessment of the requirement for evolving a phishing rule;
pass the new phishing detection rule to the phishing content detection engine to cause the phishing content detection engine to apply the new phishing detection rule to the incoming data;
recursively assess the requirement for evolving a phishing detection rule, and generate a new phishing rule in response to application of a new phishing detection rule to the incoming data;

a phishing content identifier engine operatively coupled to the phishing content detection engine and the rule development engine, and configured to identify any phishing-related objects based on selected parameter scores exceeding a phishing detection threshold and on corresponding content of the phishing indicia relating to those selected parameter scores; and
a modification engine configured to modify content relating to the phishing-related objects in the incoming data to remove or reduce maliciousness of the phishing-related objects.
15. The system of claim 14, wherein the destination to which the incoming data is directed is the computing platform.
16. The system of claim 14, wherein the data capture engine is part of a proxy.
17. The system of claim 14, wherein the data capture engine is implemented as part of a driver executing on the computing platform.
18. The system of claim 14, wherein the data capture engine includes an interceptor engine configured to intercept incoming data prior to arrival of the incoming data at the destination.
19. The system of claim 14, wherein the data capture engine includes an emulator engine configured to execute, in an isolated computing environment, any code that is present in the incoming data.
20. The system of claim 14, wherein the data capture engine includes a categorization engine configured to categorize items of content of the intercepted data into a plurality of predefined categories representing different types of content, wherein each category is associated with a corresponding set of the parameters.
21. The system of claim 20, wherein the rule development engine is configured to generate the new phishing detection rule in response to a re-categorization of certain items of content of the intercepted data into other categories, and application of phishing detection rules for those other categories to those certain items of content.
22. The system of claim 14, wherein at least one quantitative score represents a result of application of a combination of different phishing detection rules to detect a related combination of phishing indicia.
23. The system of claim 14, wherein the rule evolution criteria includes a first rule evolution threshold against which the combination of the determined quantitative scores are applied.
24. The system of claim 23, wherein the first rule evolution threshold is different from the phishing detection threshold.
25. The system of claim 23, wherein the first rule evolution threshold is the same as the phishing detection threshold.
26. The system of claim 23, wherein the rule evolution criteria includes a second rule evolution threshold against which the combination of the determined quantitative scores are applied, the second rule evolution threshold being lower than the first rule evolution threshold, wherein the rule evolution criteria is met when any individual quantitative score of the combination exceeds the first rule evolution threshold, and wherein the rule evolution criteria is independently met when a specified plurality of quantitative scores of the combination exceeds the second rule evolution threshold.
27. The system of claim 14, wherein the rule evolution criteria includes a rule evolution threshold against which the an aggregation of the determined quantitative scores of the combination are applied.
28. A computing system for automatically developing detection rules, the system comprising:
means for obtaining incoming data directed to a destination;
means for detecting any indicia of phishing present in the incoming data, the detecting being performed by application of a plurality of phishing detection rules;
means for determining a quantitative score for each of a plurality of predefined parameters, each of the parameters relating to at least one of the phishing indicia, and each quantitative score representing a likelihood of a presence of phishing content in the incoming data for the at least one of the phishing indicia;
means for assessing a requirement for evolving a phishing detection rule, including applying a predefined set of rule evolution criteria to a combination of the determined quantitative scores of a plurality of parameters;
means for evolving a phishing rule, including means for generating a new phishing detection rule based on selected parameter scores meeting the rule evolution criteria and on corresponding content of the phishing indicia relating to those selected parameter scores;
means for recursively performing detecting indicia of phishing, determining quantitative score s, assessing a requirement for evolving rules, and evolving a phishing rule based on any new phishing detection rules having been previously evolved;
means for identifying any phishing-related objects based on selected parameter scores exceeding a phishing detection threshold and on corresponding content of the phishing indicia relating to those selected parameter scores; and
means for modifying content relating to the phishing-related objects in the incoming data to remove or reduce maliciousness of the phishing-related objects.

The claims below are in addition to those above.
All refrences to claim(s) which appear below refer to the numbering after this setence.

We claim:

1. An animal registration system comprising:
a tag for a neck or a limb;
said tag having an email address affixed thereon;
wherein said email address is identifiable with a specific animal; and
wherein a finder of the animal can contact a pre-assigned individual about said animal by sending an email message to said email address on the tag and receiving said pre-assigned individual’s contact information by return email from a database.
2. The system of claim 1, wherein the database further comprises at least the following fields:
a) owner name
b) owner address
c) owner phone number(s)home, office, etc.
d) owner email address
e) emergency contact number(s)
f) veterinary or doctor contact number(s)
g) pet name, description
h) anonymity of owner wanted or not wanted
i) email address registered
j) reward information if applicable
k) other fields expandable as required.
3. The system of claim 2, wherein the tag further comprises a contact phone number.
4. The system of claim 3, wherein the database further comprises a logic module to provide web or phone access thereto, a user programmable algorithm for confirming the animal identity and for contacting the owner and emergency contacts in a desired manner.
5. The system of claim 4, wherein the algorithm further comprises sending reward and special notice data back to the finder of the animal.
6. An email registration system for an article comprising:
a tag which is attachable to said article;
said tag having an email address affixed thereon; and
wherein said email address is identifiable with a specific article, thereby allowing a finder to contact a pre-assigned individual about said article automatically by sending an email message to said email address on the tag and receiving said individual’s contact information by return email from a database.
7. A method to identify a seeker of a loststolen animal, human, or article via a registered tag having a specific email address affixed thereon and assigned to said loststolen animal, human or article, said method comprising the steps of:
sending an email message to said specific email address on the registered tag; and
obtaining information about said seeker of said loststolen animal, human, or article via an email message from a central database.
8. A method of registering an animal, an individual or an article via a registration system, said method comprising the steps of:
affixing an email ID address on a tag;
providing said tag to a purchaser who places said tag on the animal, individual or article to be registered; and
registering said email ID address located on the tag by inputting data at a central service provider website into a universal database, thereby allowing a finder of the animal to send an email message to the email ID address on the tag, to automatically query said universal database for seeker andor emergency contact information, to receive seeker andor emergency contact information, and to contact the seeker andor emergency contact to enable the seeker’s andor emergency contact’s retrieval of said animal, individual or article.
9. The process as recited in claim 8, wherein the registration step further comprises inputting physical andor name description of said animal, individual or article, said email address ID, owner contact information, emergency contact information, or reward information, if applicable into the universal database.
10. The process as recited in 8, wherein the registration step further comprises inputting information into a universal database having at least the following fields:
l) owner name
m) owner address
n) owner phone number(s)home, office, etc.
o) owner email address
p) emergency contact number(s)
q) veterinary or doctor contact number(s)
r) pet name, description
s) anonymity of owner wanted or not wanted
t) email address registered
u) reward information if applicable
v) other fields expandable as required.
11. The process as recited in claim 10, wherein the step of affixing an email ID address on a tag further comprises affixing a contact phone number on said tag.
12. The process as recited in claim 11, wherein the registration step further comprises inputting data into a universal database having a logic module to provide web or phone access thereto, a user programmable algorithm for confirming the animal identity and for contacting the owner and emergency contacts in a desired manner.
13. The process as recited in claim 12, wherein the registration step further comprises programming the user programmable algorithm to send reward and special notice data back to the finder of the animal.

1461115130-d8a4e327-7fda-4aa1-8039-9973632aaaaa

1. A system comprising:
at least one computer; and
at least one computer-readable medium coupled to the at least one computer having instructions stored thereon which, when executed by the at least one computer, causes the at least one computer to perform operations comprising:
accessing a design of a software application prior to development of code for the software application, the design defining an architecture for the software application in a modeling language;
accessing design quality rules that are defined to evaluate quality of designs of software applications and that pertain to a rigidity design quality attribute, a performance design quality attribute, and a security design quality attribute;
applying the accessed design quality rules to the accessed design of the software application to detect violations of the accessed design quality rules;
accumulating, for the rigidity design quality attribute, detected violations that pertain to extensibility of the design of the software application or detected violations that pertain to modifiability of the design of the software application;
accumulating, for the performance design quality attribute, detected violations that pertain to the performance design quality attribute;
accumulating, for the security design quality attribute, detected violations that pertain to the security design quality attribute;
computing a rigidity metric for the accessed design of the software application based on the accumulated violations that pertain to the extensibility of the design of the software application or the accumulated violations that pertain to the modifiability of the design of the software application, the rigidity metric quantifying how one or more design defects in the accessed design of the software application impact at least one of the extensibility or the modifiability of the software application;
computing, for the performance design quality attribute and based on the violations accumulated for the performance design quality attribute, a performance metric that reflects software design quality in terms of the performance design quality attribute;
computing, for the security design quality attribute and based on the violations accumulated for the security design quality attribute, a security metric that reflects software design quality in terms of the security design quality attribute;
computing a design quality composite index by combining the rigidity metric, the performance metric, and the security metric;
providing output describing one or more violations of the accessed design quality rules detected and related to design quality of the software application based on the computed rigidity metric, the performance metric, and the security metric;
based on the output, receiving user input to address the one or more violations of the accessed design quality rules; and
subsequent to receiving the user input to address the one or more violations of the accessed design quality rules:
obtaining a recovered software design by reverse engineering code developed for the software application based on a version of the design of the software application stored after receiving the user input to address the one or more violations of the accessed design quality rules, the recovered software design defining an architecture of the code developed for the software application in the modeling language,
determining an existence of the version of the design of the software application stored after receiving the user input to address the one or more violations of the accessed design quality rules,
in response to determining the existence of the version of the design of the software application stored after receiving the user input to address the one or more violations of the accessed design quality rules, comparing the recovered software design with a version of the design of the software application stored after receiving the user input to address the one or more violations of the accessed design quality rules;
based on comparison results, detecting inconsistencies between the recovered software design and the version of the design of the software application stored after receiving the user input to address the one or more violations of the accessed design quality rules, and
providing output describing one or more inconsistencies between the recovered software design and the version of the design of the software application stored after receiving the user input to address the one or more violations of the accessed design quality rules.
2. The system of claim 1 wherein the operations further comprise:
applying the accessed design quality rules to the recovered software design to detect violations of the accessed design quality rules.
3. The system of claim 1 wherein applying the accessed design quality rules to the accessed design of the software application to detect violations of the accessed design quality rules comprises:
initializing a violation list for the accessed design of the software application;
for each rule in the accessed design quality rules:
identifying a type of design element on which the rule is applied;
identifying design elements of the identified type in the accessed design of the software application;
for each identified design element:
applying the rule on the identified design element;
determining whether the rule has been violated by the identified design element based on applying the rule on the identified design element; and
conditioned on a determination that the rule has been violated by the identified design element, adding a violation to the violation list based on the rule and the identified design element.
4. The system of claim 3 wherein applying the accessed design quality rules to the accessed design of the software application to detect violations of the accessed design quality rules further comprises:
for each identified design element, determining whether the identified design element has been identified to be excluded from design quality analysis,
wherein applying the rule on the identified design element and determining whether the rule has been violated are bypassed for the identified design element based on a determination that the identified design element has been excluded from design quality analysis.
5. The system of claim 1 wherein providing output describing one or more violations of the accessed design quality rules detected comprises:
accessing, from a database, help information related to a detected violation of the accessed design quality rules;
generating a context specific help message for the detected violation of the accessed design quality rules based on the accessed help information; and
providing output based on the generated context specific help message for the detected violation.
6. The system of claim 1 wherein providing output describing one or more violations of the accessed design quality rules detected comprises:
accessing, from a database, refactoring information related to a detected violation of the accessed design quality rules;
generating a context specific refactoring suggestion for the detected violation of the accessed design quality rules based on the accessed refactoring information, the generated context specific refactoring suggestion describing a suggestion for correcting the detected violation of the accessed design quality rules; and
providing output based on the generated context specific refactoring suggestion for the detected violation.
7. The system of claim 1 wherein receiving user input to address the one or more violations of the accessed design quality rules comprises receiving user input to ignore a detected violation of the accessed design quality rules,
wherein receiving user input to ignore a detected violation of the accessed design quality rules comprises:
requiring user input of a rationale for ignoring the detected violation to allow the detected violation to be ignored;
receiving user input describing the rationale for ignoring the detected violation; and
recording the rationale for ignoring the detected violation when ignoring the detected violation.
8. The system of claim 7 wherein recording the rationale for ignoring the detected violation comprises:
adding, to an activity log, an entry to indicate that the detected violation has been ignored and the rationale for ignoring the detected violation; and
enabling a reviewer to review the activity log including the entry that indicates the detected violation has been ignored and the rationale for ignoring the detected violation.
9. The system of claim 1 wherein the operations further comprise:
subsequent to receiving the user input to address the one or more violations of the accessed design quality rules, generating an unresolved violations report that specifies at least one detected violation that has not been corrected in the design of the software application; and
providing the unresolved violations report to a reviewer.
10. The system of claim 1 wherein comparing the recovered software design with the version of the design of the software application stored after receiving the user input to address the one or more violations of the accessed design quality rules comprises comparing structural metrics of the recovered software design with structural metrics of the version of the design of the software application stored after receiving the user input to address the one or more violations of the accessed design quality rules.
11. The system of claim 1, wherein comparing the recovered software design with a version of the design of the software application stored after receiving the user input to address the one or more violations of the accessed design quality rules, comprises:
applying the accessed design quality rules to the recovered software design to detect violations of the accessed design quality rules;
detecting violations of the accessed design quality rules for the recovered software design;
applying the accessed design quality rules to the version of the design of the software application stored after receiving the user input to address the one or more violations of the accessed design quality rules to detect violations of the accessed design quality rules;
detecting violations of the accessed design quality rules for the version of the design of the software application stored after receiving the user input to address the one or more violations; and
comparing the detected violations of the accessed design quality rules for the recovered software design with the detected violations of the accessed design quality rules for the version of the design of the software application stored after receiving the user input to address the one or more violations.
12. The system of claim 1, wherein accumulating, for the rigidity design quality attribute, the detected violations that pertain to extensibility of the design of the software application or the detected violations that pertain to modifiability of the design of the software application, comprises:
aggregating, for the rigidity design quality attribute, the detected violations across each class object in terms of an object oriented programming language included in the accessed design of the software application; and
accumulating, for the rigidity design quality attribute, the detected violations across the design of the software application using the aggregated violations for each class object included in the accessed design of the software application.
13. The system of claim 1 wherein combining the performance metric, the security metric, and the rigidity metric comprises:
accessing a performance weighting factor, a security weighting factor, and a rigidity weighting factor;
multiplying the performance metric by the performance weighting factor to determine a performance value;
multiplying the security metric by the security weighting factor to determine a security value;
multiplying the rigidity metric by the rigidity weighting factor to determine a rigidity value; and
summing the performance value, the security value, and the rigidity value to determine the design quality composite index.
14. The system of claim 1:
wherein accessing design quality rules that are defined to evaluate quality of designs of software applications comprises:
accessing design quality rules that pertain to extensibility of the design of the software application, and
accessing design quality rules that pertain to modifiability of the design of the software application;

wherein accumulating, for the rigidity design quality attribute, the detected violations that pertain to extensibility of the design of the software application or the detected violations that pertain to modifiability of the design of the software application, comprises:
accumulating detected violations that pertain to the extensibility of the design of the software application, and
accumulating detected violations that pertain to the modifiability of the design of the software application; and

wherein computing a rigidity metric for the accessed design of the software application comprises:
computing an extensibility metric for the accessed design of the software application based on the accumulated violations that pertain to the extensibility of the design of the software application,
computing a modifiability metric for the accessed design of the software application based on the accumulated violations that pertain to the modifiability of the design of the software application, and
combining the extensibility metric and the modifiability metric.
15. The system of claim 14, wherein combining the extensibility metric and the modifiability metric comprises:
accessing an extensibility weighting factor and a modifiability weighting factor;
multiplying the extensibility metric by the extensibility weighting factor to determine an extensibility value;
multiplying the modifiability metric by the modifiability weighting factor to determine a modifiability value; and
summing the extensibility value and the modifiability value to determine the rigidity metric.
16. The system of claim 1 wherein the operations further comprise determining an effort estimation value associated with the accessed design of the software application that accounts for the computed rigidity metric.
17. The system of claim 16 wherein determining an effort estimation value associated with the accessed design of the software application that accounts for the computed rigidity metric comprises:
determining an effort estimation value for a change to the accessed design of the software application;
increasing the determined effort estimation value based on the computed rigidity metric; and
providing output related to the change to the accessed design of the software application based on the increased effort estimation value.
18. A computer-implemented method comprising:
accessing a design of a software application prior to development of code for the software application, the design defining an architecture for the software application in a modeling language;
accessing design quality rules that are defined to evaluate quality of designs of software applications and that pertain to a rigidity design quality attribute, a performance design quality attribute, and a security design quality attribute;
applying the accessed design quality rules to the accessed design of the software application to detect violations of the accessed design quality rules;
accumulating, for the rigidity design quality attribute, detected violations that pertain to extensibility of the design of the software application or detected violations that pertain to modifiability of the design of the software application;
accumulating, for the performance design quality attribute, detected violations that pertain to the performance design quality attribute;
accumulating, for the security design quality attribute, detected violations that pertain to the security design quality attribute;
computing a rigidity metric for the accessed design of the software application based on the accumulated violations that pertain to the extensibility of the design of the software application or the accumulated violations that pertain to the modifiability of the design of the software application, the rigidity metric quantifying how one or more design defects in the accessed design of the software application impact at least one of the extensibility or the modifiability of the software application;
computing, for the performance design quality attribute and based on the violations accumulated for the performance design quality attribute, a performance metric that reflects software design quality in terms of the performance design quality attribute;
computing, for the security design quality attribute and based on the violations accumulated for the security design quality attribute, a security metric that reflects software design quality in terms of the security design quality attribute;
computing a design quality composite index by combining the rigidity metric, the performance metric, and the security metric;
providing output describing one or more violations of the accessed design quality rules detected and related to design quality of the software application based on the computed rigidity metric, the performance metric, and the security metric;
based on the output, receiving user input to address the one or more violations of the accessed design quality rules; and
subsequent to receiving the user input to address the one or more violations of the accessed design quality rules:
obtaining a recovered software design by reverse engineering code developed for the software application based on a version of the design of the software application stored after receiving the user input to address the one or more violations of the accessed design quality rules, the recovered software design defining an architecture of the code developed for the software application in the modeling language,
determining an existence of the version of the design of the software application stored after receiving the user input to address the one or more violations of the accessed design quality rules,
in response to determining the existence of the version of the design of the software application stored after receiving the user input to address the one or more violations of the accessed design quality rules, comparing the recovered software design with a version of the design of the software application stored after receiving the user input to address the one or more violations of the accessed design quality rules;
based on comparison results, detecting inconsistencies between the recovered software design and the version of the design of the software application stored after receiving the user input to address the one or more violations of the accessed design quality rules, and

providing output describing one or more inconsistencies between the recovered software design and the version of the design of the software application stored after receiving the user input to address the one or more violations of the accessed design quality rules.
19. A non-transitory computer-readable medium storing software comprising instructions executable by one or more computers which, upon such execution, cause the one or more computers to perform operations comprising:
accessing a design of a software application prior to development of code for the software application, the design defining an architecture for the software application in a modeling language;
accessing design quality rules that are defined to evaluate quality of designs of software applications and that pertain to a rigidity design quality attribute, a performance design quality attribute, and a security design quality attribute;
applying the accessed design quality rules to the accessed design of the software application to detect violations of the accessed design quality rules;
accumulating, for the rigidity design quality attribute, detected violations that pertain to extensibility of the design of the software application or detected violations that pertain to modifiability of the design of the software application;
accumulating, for the performance design quality attribute, detected violations that pertain to the performance design quality attribute;
accumulating, for the security design quality attribute, detected violations that pertain to the security design quality attribute;
computing a rigidity metric for the accessed design of the software application based on the accumulated violations that pertain to the extensibility of the design of the software application or the accumulated violations that pertain to the modifiability of the design of the software application, the rigidity metric quantifying how one or more design defects in the accessed design of the software application impact at least one of the extensibility or the modifiability of the software application;
computing, for the performance design quality attribute and based on the violations accumulated for the performance design quality attribute, a performance metric that reflects software design quality in terms of the performance design quality attribute;
computing, for the security design quality attribute and based on the violations accumulated for the security design quality attribute, a security metric that reflects software design quality in terms of the security design quality attribute;
computing a design quality composite index by combining the rigidity metric, the performance metric, and the security metric;
providing output describing one or more violations of the accessed design quality rules detected and related to design quality of the software application based on the computed rigidity metric, the performance metric, and the security metric;
based on the output, receiving user input to address the one or more violations of the accessed design quality rules; and
subsequent to receiving the user input to address the one or more violations of the accessed design quality rules:
obtaining a recovered software design by reverse engineering code developed for the software application based on a version of the design of the software application stored after receiving the user input to address the one or more violations of the accessed design quality rules, the recovered software design defining an architecture of the code developed for the software application in the modeling language,
determining an existence of the version of the design of the software application stored after receiving the user input to address the one or more violations of the accessed design quality rules,
in response to determining the existence of the version of the design of the software application stored after receiving the user input to address the one or more violations of the accessed design quality rules, comparing the recovered software design with a version of the design of the software application stored after receiving the user input to address the one or more violations of the accessed design quality rules;
based on comparison results, detecting inconsistencies between the recovered software design and the version of the design of the software application stored after receiving the user input to address the one or more violations of the accessed design quality rules, and

providing output describing one or more inconsistencies between the recovered software design and the version of the design of the software application stored after receiving the user input to address the one or more violations of the accessed design quality rules.

The claims below are in addition to those above.
All refrences to claim(s) which appear below refer to the numbering after this setence.

1. A composition of nanoparticles, said nanoparticles consisting of a shell portion that is dominated by positively charged chitosan, and a core portion that consists of said positively charged chitosan, one negatively charged substrate, and optionally a zero-charge compound or at least one tumor necrosis factor (TNF) inhibitor.
2. The composition according to claim 1, wherein said chitosan is N-trimethyl chitosan, EDTA-chitosan, low molecular weight chitosan, pegylated chitosan (PEG-chitosan), mono-N-carboxymethyl chitosan, N-palmitoyl chitosan (NPCS), chitosan derivatives, or combinations thereof.
3. The composition according to claim 1, wherein said negatively charged substrate is PGA-complexone conjugate, \u03b3-PGA, \u03b1-PGA, derivatives of PGA, or salts of PGA.
4. The composition according to claim 1, wherein said nanoparticles are freeze-dried, thereby said nanoparticles being in a powder form.
5. The composition according to claim 1, wherein said nanoparticles are mixed with a cryoprotectant and then freeze-dried, thereby said nanoparticles being in a powder form.
6. The composition according to claim 5, wherein said cryoprotectant is selected from the group consisting of trehalose, hexan-1,2,3,4,5,6-hexyl, mannitol, dimethyl sulfoxide, ethylene glycol, glycol, 2-methyl-2,4-pentanediol, propylene, sucrose, and combinations thereof.
7. The composition according to claim 1, wherein said nanoparticles are encapsulated in a capsule.
8. The composition according to claim 7, wherein said capsule is made of methyl cellulose selected from the group consisting of hydroxypropyl methyl cellulose (HPMC), carboxymethyl cellulose, hydroxyethyl methyl cellulose (HEMC), and methyl cellulose derivatives.
9. The composition according to claim 7, wherein said capsule is treated with an enteric coating.
10. The composition according to claim 7, wherein said capsule further comprises a pharmaceutically acceptable carrier, diluent, excipient, desiccant, solubilizer, bubbling agent, or emulsifier.
11. The composition according to claim 7, wherein said capsule further comprises at least one absorption enhancer.
12. The composition according to claim 11, wherein said absorption enhancer is selected from the group consisting of bile salts, surfactants, medium-chain fatty acids, phosphate esters, chitosan, and chitosan derivatives.
13. The composition according to claim 7, wherein said capsule is made of gelatin.
14. The composition according to claim 1, wherein said nanoparticles are treated with an enteric coating or surfactants.
15. The composition according to claim 1, wherein said nanoparticles are administered via a parenteral route.
16. The composition according to claim 1, wherein said composition is administered via an oral route.
17. The composition according to claim 1, wherein the nanoparticles have a mean particle size between about 50 and 500 nanometers.
18. The composition according to claim 1, wherein the nanoparticles are formed via a simple and mild ionic-gelation process.
19. The composition according to claim 1, wherein the TNF inhibitor is selected from the group consisting of infliximab (Remicade), adalimumab (Humira), etanercept (Enbrel), and pentoxifylline.
20. The composition according to claim 1, wherein use of the composition is for treatment of inflammation, plaque psoriasis, rheumatoid arthritis, psoriatic arthritis, adult Crohn’s disease, pediatric Crohn’s disease, ulcerative colitis, and ankylosing spondylitis.