- May 11, 2020
Name of Student
Application architecture is the process of identifying a suitableand well-structured solution or application that meets allrequirements. Simultaneously, application architecture should improvethe security, give room for information updating, and deliverexcellent performance. Application architect involves makingdecisions based on the importance of some factors to the system underdesign. It is in the application architecture period that the systemstructures, interfaces, behaviours, and functionality among otherfactors are determined and created. Application architecture is whereall the important details of a system are determined (Insfran,2015).
Application architecture is important as it determines the blueprintof an application. An application architect must be able to considerboth the short and long-term effects of a decision, all possiblescenarios the system might encounter in its lifetime and the problemsthe application might face. The goal of application architecture isto produce a solution from the interplay of technical and businessrequirements. The architect finds the use cases and uses this tocreate a flexible system that will be able to manage the naturalchange that will occur. The system should also be designed in amanner to allow room for updates and modification[ CITATION DHa14 l 1033 ]
Payroll Program for a Large Organization with Offices SpreadAcross the United States
This paper takes a look at an application architecture that would befitting for a large company with multiple offices spread across thecountry. The company wants the architecture of a payroll system toserve all their offices. The organization has one main data centre,and all the other offices and subsystems must connect to the primarydata centre through a wide area network, and the smaller officenetworks can be connected through local area networks (Grover.,2015).
There are four types of processing applications is applicationarchitecture. The applications are data-processing applications,transaction processing applications, event processing applicationsand language processing applications. Data processing applications donot require much from the user as data is processed in batcheswithout user intervention. Transaction process applications are moreuser intensive, and process user requests to update the database.Event processing systems are complex in nature. They give businessentities the opportunity to analyse and identify different eventsfor example, they give room for detection of threats andopportunities. Language processing applications, input data straightfrom the user in a natural language and the system, then processes itas per the user`s request. The payroll system we are to design fallsunder data processing applications as it receives the company`spayroll in batches and process them to the data centre where alloffices and subsystems can access (Shapira, 2015).
All data processing applications must have an input-output processstructure. For the payroll application, the input will be read fromthe database for processing but is first validated then queued forprocessing. The processing unit then takes the queued data andtransformed into usable information which is the output. The outputprocess consists of saving the processed information into therequired format in the necessary database location.
fig1: input-output process structure of the payroll system
Payroll Data Centre
Data Flow Diagram
Data flow diagrams are design tools that present the movement ofinformation in the application in a visual manner DFDs show therelationship between components in the system and how theycommunicate to perform a given process. Below is the data flowdiagram for the payroll system being designed for the AmericanOrganization. The data flow diagram follows the input-output processof the payment system described earlier but shows in more detail howthe process gets conducted and which records get used where (Grover.,2015).
Fig2: Payroll system data flow diagram
Architecture Design Style
Architectural design styles are a set of principles the principleset out an abstract framework for the system and subsystems in theprimary system to follow. The architectural design style determinesthe components that can be used and in which ways they getimplemented into the system[ CITATION DHa14 l 1033 ].
Logical layered design
Any application system can be reduced to layers regardless of thetype of application. A software system can be divided into logicalgroupings that separate the different functional parts of the system.These logical groups are referred to as layers. By decomposing anapplication system into layers one can maximize the functionality ofeach layer while maintaining usability of these layers. The layereddesign also eases the maintainability of code, increases performancewhen the application is run in different ways and also creates aclear marker on the type of technology that will be required at eachlocation in the entire system (Shapira, 2015).
The payroll processing system is interconnected with otherorganization systems such as the human resources management systems(HRMS) and financial information systems. The payroll system is meantto interact and become a small part of the entire system running theorganization. The presentation layer of the system will be embodiedin XSL libraries and consist of a browser-enabled PC. XML will beused to embody the business data required in the process while XSLwill implement the user interface.
Analysis of ethical and cultural issues and their feasibilitiesamong alternative solutions
Potential Ethical Issues
The new payroll system will make work easier and benefit theorganization positively but more so if the human aspect of the systemis up to scratch. The introduction of the new payroll system willcome hand in hand with training so as to ensure all the employeeshandling the system are aware of how to use it what access levelsthey have been granted. The system is also capable of logging detailsabout who was logged in at what time and for how long so as to ensureaccountability and proper remuneration for overtime worked whilelogged into the system. The system designers will also interact withthe organization staff so as to ensure they are comfortable with thesystem and no unexpected problem arises. Therefore, this will alsomake the staff feel like the system is made for them and not toreplace them relaxing any feeling of discomfort towards the newsystem (Insfran, 2015).
Culture is the normal set out behaviour and patterns followed in aparticular region or grouping. Creating an application system for alarge company with several offices can cause cultural problems asdifferent cultures will interact with the system, and due todifference in culture something can be acceptable in one culture butnot in others. The primary focus on cultural issues is the userinterface. The user interface is what the users interact with. Theuser interface will avoid the use of controversial or possiblycontroversial images and words. The application designers will alsowork closely with the staff members of the firm so as to tailor thesystem in a non-offensive way to anybody.
Harel, D. (2014). Scaling up behavioral programming: steps frombasic application architectures. Chicago: Proceedings of theWorkshop.
Grover, M., Malaska, T., Seidman, J., &Shapira, G. (2015). Hadoop applicationarchitectures. " O`Reilly Media,Inc.".
Zúñiga-Prieto, M., Abrahao, S., & Insfran,E. (2015). An Incremental and Model-Driven Approach for the DynamicReconfiguration of Cloud s.