JP 的个人资料Wireless Earth, wireless...照片日志列表 工具 帮助
10月6日

Modular JavaEE Application

Since Jurassic of software development, modular is the golden rule. There every programming language has some kind of mechanism that reflects this rule. Such as module of Visual Basic. Later on, when software development got into the era of OO, many OO languages introduce class instead of old style module like structures. Why it is so popular and lasting so long? I guess it is because of the golden solution for complex issues, divide and conquer. It was said that human being can only remember and manage up to 7 things and the same time. So people split complex issue into smaller ones, and spilt smaller issue into tiny ones, until the smallest issue can be handled directly. Software is complex, possible the most complex thing in our world. It is definitely beyond human ability to handle it as one big thing. So since long time ago, there are module like mechanisms.

But class is too fine-grained for modern software, which usually has more than hundreds of thousands lines of code. So there came many other modular mechanisms. Such as EJB, DLL, COM, jar/war, package... Among them, some of them are binary level module, some of them are source code level module.

But for JavaEE applications, there never is any complete modular structure. Usually we have layered structure, presentation layer, business logic layer, persistent layer... And web presentation layer is packaged into a war file, EJB can be packaged into jar file, but you can never strip one group of functions off easily.

These years, OSGi became a very hot buzz word. It is declared as a dynamic, versioned, module system. OSGi based system can install, uninstall, update different versions of modules on-the-fly. It is very attractive. And most important, it is proved. Not only in embedded world, but in JavaEE application...servers, like WebLogic, WebShere and Glassfish. But NOT for JavaEE applications. JavaEE application server is actually a standalone Java application.

SpringSource released of Spring Dynamic Module recently. It was declared to enable OSGi for server side applications. But it is still confusing. How could it spit all the famous layers into vertical modules? We will see.

Exempt and Nonexempt Employees

All employees in your business must be classified by you as either exempt or nonexempt for purposes of complying with the FLSA — the federal law that governs wages and hours. Based on the criteria set out by the law, you can determine which classification is appropriate for each of your employees.

What does "exempt" mean?When an employee is exempt from the FLSA, it means that that employee is not entitled to the benefits and protections of the FLSA, and you, as an employer, are not subject to its rules for that employee. That means that an exempt employee may not have to be paid minimum wage or paid in accordance with the overtime requirements specified by the FLSA, for example.

What does nonexempt mean? When an employee is classified as nonexempt, it means that the employee is entitled to a minimum wage, overtime pay at the rate of time and one-half the regular rate for all hours worked in excess of 40 hours per week, as well as other protections under child labor and equal pay, as prescribed by the FLSA.

If you want to treat an employee as exempt, you must pay him or her a salary. Employees who are paid by hourly wage are automatically considered to be nonexempt. However, you can have nonexempt employers who are paid by salary.

Which employees are considered "exempt?" An exemption from the minimum wage, equal pay, overtime pay and child labor provisions of the FLSA applies to:

  • Employees engaged in delivery of newspapers to consumers.
  • Homeworkers making evergreen wreaths.

An exemption from the minimum wage, equal pay, and overtime requirements of the FLSA (but not the child labor laws) applies to:

  • Employees of amusement or recreational establishments having seasonal peaks.
  • Seamen on non-American vessels.
  • Employees engaged in the fishing industry, including offshore seafood processing.
  • Agricultural employees of an employer who did not use more than 500 person-days of agricultural labor in any quarter of the preceding calendar year; agricultural employees who are members of the employer's immediate family; hand-harvest laborers who are paid on a piece rate basis, commute daily from their permanent residences, and whose agricultural employment, if any, during the preceding calendar year was for less than 13 weeks; hand-harvest laborers under 17 years of age who are employed at a piece rate on the same farm as their parents; and workers principally engaged in the range production of livestock, such as cowboys and shepherds.
  • Employees of weekly, semiweekly or daily newspapers of less than 4,000 circulation, the major part of which is in the county of publication or contiguous counties.
  • Switchboard operators employed by independently owned public telephone companies having not more than 750 stations.
  • Employees who are casual babysitters or companions to ill or aged persons unable to care for themselves.

Effective August 23, 2004, the Department of Labor has revised the exemptions for the federal overtime pay laws. An exemption from the minimum wage and overtime laws (but not the equal pay or child labor laws) applies to:

  • Executives: an employee is an executive if the employee's primary duty is (1) management-related and the employee (2) customarily and regularly directs the work of two or more employees including the authority to hire or fire other employees or is in a position to make suggestions and recommendations as to the hiring, firing, advancement, promotion or another change of status of other employees that will be given particular weight. Retail supervisors are included under the executive exemption, even if they perform the same duties as subordinates, if they also perform managerial functions including assigning work, scheduling employees, and/or managing inventory.
  • Administrative: an employee is in an administrative position if the employee's primary duty is (1) the performance of office or non-manual work directly related to the management or general business operations of the employer or the employer's customers and (2) the exercise of discretion and independent judgment with respect to matters of significance.
  • Professionals: an employee is a professional if the employee's primary work (1) requires advanced knowledge in the field of science or learning, is predominantly intellectual, and includes work requiring the consistent exercise of discretion and judgment and (2) the advanced knowledge must be customarily acquired by a prolonged course of specialized intellectual instruction; or a creative professional whose primary duty is the performance of work requiring invention, imagination, originality or talent in a recognized field of artistic or creative endeavor.
  • Computer: an employee who is a computer systems analyst, a computer programmer, a software engineer, or is a similarly skilled worker in the computer field is exempt from the overtime pay rules if the primary duties performed consist of the application of systems analysis techniques and procedures; the design, development, documentation, analysis, creation, testing or modification of computer systems and/or programs based on and related to user or system design specifications; the design, documentation, testing, creation or modification of computer programs related to machine operating systems; or a combination of these duties, requiring the same level of skills.
  • Outside salespersons

The minimum salary level to qualify for exemption from the overtime requirements as an executive, administrative, professional or computer employee is $455 per week or $23,660 annually. An employee paid below this minimum salary level is not exempt from the FLSA overtime pay rules even if the employee meets the executive, administrative, professional or computer job duty requirements.

Executives, administrative employees and professionals who earn $100,000 or more annually are required to satisfy only one of the requirements in order to be classified as exempt.

Employees who own a 20 percent or more interest in a business and are employed by that business and actively engaged in its management do not have to meet the overtime pay salary requirements for exempt employees.

Once you've determined the status of each employee, you can then begin addressing the specific issues involved in complying with:

  • minimum wage law requirements
  • overtime pay requirements
  • child labor requirements
  • equal pay for equal work requirements

Note that each of these four major requirements exempts certain other employees from its scope; see the individual descriptions of these requirements for more information.