¶ … information system requires knowledge of development tools in addition to expertise in software development methodologies. As each of these areas requires expertise the typical user does not have, it is daunting for them to create information systems entirely on their own. Often what is required is a project team of software development experts who are skilled in specific development methodologies to complete the design, development and launch of an information system. Software development teams often rely on Computer-Aided Software Engineering (CASE) applications, tools and methodologies to increase system development efficiency and accuracy (Limayem, Khalifa, Chin, 2004). CASE Tools take the many programming tasks, processes and systematic validation of software code for accuracy and quality, and automate them to reduce the amount of time needed for software development, testing and release of the developed system (Limayem, Khalifa, Chin, 2004).
CASE Tools for Web Applications
Considering the complexity of software development for the Internet, users who set out to create their own online information systems face daunting challenges at the integration, network, and security layers of their proposed applications as well. Adding to this complexity is the rapid rate of change in programming languages, platforms, standards, security requirements and the continual evolution of the Web itself, and it is clear that CASE development suites specifically for Internet applications can save much time and expense (Montero, Diaz, Aedo, 2007)
CASE development suites have progressed from being object-oriented programming (OOP) and the use of recompiled programming code (Limayem, Khalifa, Chin, 2004) to the development of model-based Web development frameworks that include rapid prototyping (Mattsson, Lundell, Fitzgerald, 2009) and context-aware AJAX-based applications (Ceri, Daniel, Matera, Facca, 2007).
CASE environments include Life-Cycle Support, Integration Dimension, Construction Dimension and Knowledge-Based CASE analysis (Manolescu, Brambilla, Ceri, Comai, Fraternali, 2005). In addition to these dimensions often there is a Workbench that acts as the integration platform across all dimensions and their associated applications and tools (Montero, Diaz, Aedo, 2007). The collection of tools and applications streamline application development and have test sets for ensuring coding validity and accuracy, in addition to testing for security. All of these applications provide rapid prototyping that significantly increases development efficiency, accuracy and security.
In developing a Web-based course registration system at a college or university, the most critical task is in defining design objectives that meet the needs of each group of users who will rely on the system. For the university, there is the need to track which classes are filling up, when another session needs to be added, and also use the class loads to optimize professors' schedules given their areas of specialization. CASE applications can be used to create a constraint engine that takes this data and create an optimal set of allocations of professors given their areas of expertise by the needs of students to progress through their programs. This constraint engine could also be used for specifically designing upper limits as to how many total sessions to allow to be created given the constraint of professor time and availability. In addition, the Web-based college or university registration system also needs to have a front-end interface or graphical user interface that is intuitive enough for the first-year or freshman students to navigate yet robust enough in functionality to allow students who are pursuing master's and PhD level studies to also schedule independent study and consultation times with their professors. There must be a degree of flexibility in the system design to specifically allow for this type of role-based access and use, from the entry-level freshman to the advanced master's and PhD-level students. To ensure the system is used correctly and there is sufficient security, it is also critically important for the design to allow for role-based and authentication-based use over the career of a student at the university. Role-based refers to the courses they will be required to take given their major and minor emphasis, and what semester or trimester they are attending the university, taking into account the course availability. There will also need to be second- and third-order levels of security and role-based validation including a valid student ID and also for upper-division courses in their major, potential prior approval of instructors with a given registration code. Finally this system would need to be engineered to provide for specific threaded programming for each student login and use. The use of a multi-threaded operating system such as Linux or on the Web, AJAX with security extensions would allow for these sessions to be kept completely separate from each other and confidential.
You’re 100% through this paper. Sign up to read the full paper.
Sign Up Now — Instant Access Already a member? Log inAlways verify citation format against your institution’s current style guide requirements.