In this part we discuss the 'problem' which motivated the need for a developer to take over the project. We consider the "main aims and objectives" of the project which is to be designed and implemented. The objectives are the goals to be achieved by the end of the project. We also discuss the 'Importance of human resources' in a company and the methodology we implemented to work with the project. Finally the thesis layout is presented explaining all sections briefly.
Allocating the resources and releasing the software are the main problems faced by the companies having a large set of human power. Allocating the resources according to the client's requirements is crucial for project success.
Generally when new project is assigned to the company, the manager assembles his employees and allocates the work. But in the proposed system, with the arrival of the project requirements from the user, the manager forwards them to the team leaders. The team leader who is out of work and has the specified requirements replies to the manager. This is how the proposed system works. In the next phase the team leaders estimates the technical requirements and assigns a developer to design the next stage.
Main Aim and Objectives:
The aim of the project is to show a working system on how the project is tackled with the submission of the requirements from the user to approval of the release date. The resources are allocated accordingly. The SQL server maintains the database of the employee, users and their work status.
The objective of the project is to develop the following features.
- Develop an interface through which clients have the facility to post requirements on the work to be done by the Employees.
- Develop a database in which the administrator has the permission the view the client and employee details and the work and the Employee status.
- Develop a tool for adding new clients and Employees and medium for sharing messages between them.
The Waterfall model methodology is used for the Application develop by following the steps to requirements, design and finally Implementing the application or software. The waterfall is mainly applicable for small and medium sized projects. This model is a sequential Software Development Lifecycle (SDLC).In the waterfall model, a new stage is dealt when its preceding stage is perfected. Overlapping between the stages does not happen in this model.
Some argue it as a bad practise for large projects where the change in the features and requirements leads to project failure or delay as a lot of time and effort will be wasted. Also, perfecting the stage and moving to the other does not suite for some of large and vital projects.
The requirements are proposed initially by the client. The requirements are then evaluated by the manager and technical requirements are set. The project is then processed by the developer and the artefact for the system is designed. Then the design is coded to make a practical system to view its features. The testing stage is done to find any errors occur in the system implementation. Each stage is clearly discussed in chapter 4.
With the increase in globalization the impact of the Human resources on the organization grew. The importance of people in organization success gave rise to a field of study as Strategic Human Resource Management. Research has been conducted on SHRM over the past 10 years.
Allocation of the Human resources must be done in an economic way keeping in view of the resource availability and the project requirements. In this project the assigning of developers to the tasks is addressed. The developer availability is checked and assigned so that the he can complete the task by the release date.
The fact is that the business performance of an organization is increased with the effective management of the human resources. [PF Boxall J Purcell: Strategy and Human Resource Management, 2003].
This section of the thesis describes all the chapters briefly. Each of the fields are individually explained.
Chapter1 contain the information regarding the problem, the mail aim and objectives. The software development lifecycle model (waterfall) is discussed. The definition of the human resource in context of an organisation is given.
Chapter 2 deals with the research part of the subject. The background research on the keywords is done. The problem in real time on the subject and the work by other researchers on the problem is discussed. The technologies that were utilised were given a short description.
Chapter 3 hold the technical and core part of the thesis. The working methodology and the description of the system are discussed. The structural formation and its design are explained diagrammatically.
Chapter 4 tells the results of the testing performed on the Implemented system. The testing is performed on all the components to verify its functioning.
Chapter 5 tells the Conclusion of the project and explains any future work can be done. An overall evaluation is done to check the system working.
Chapter 6 shows the references used for the research work. The references are arranged in Harvard format.
RESEARCH or LITERATURE REVIEW:
A conceptual research was made as literature review. It starts with the 'Background' of the subject where the related literature on Resource Allocation and Release Planning are discussed. It is followed by the 'Problem statement' which tells about the problems faced on the above methods. Then the 'Studies on Issues' is written to discuss how the same problem was tackled by the other researchers. This is the core part of the thesis structure as the Project improvements can be made from the research methods.
People play a crucial role for the software development in a company/organization by increasing its business value. The Human power is more to be considered than the technical power. The objective of the Human resource management is to select eligible and productive people and assigning them to the development projects. Despite of the Importance of the Human resources, more importance is given to the technical resources.
Gaining the importance, many research topics have been conducted on the HR field which gave good results. The importance for the HR field increased in the past few years by maintaining a decent HR department.
Assigning the people to their respective roles is a three step procedure which is conducted by the manager. Firstly, the individual capabilities are known and tested. Secondly, roles and capabilities are defined for the individual based on his Capabilities. Lastly, the individual is suited with a role that matches him the best.
To know the human resource capabilities, his personal behaviour and his capabilities should be examined. A method of testing called the "Myers-Briggs Type Indicator" was brought to identify the individual's sensing, judging and thinking. The results from the indicator proved good for the software development to analyse its team success.
Along with the personal skills, the technical skills are also tested and the individual is allocated the required role. Developments capabilities are categorized into four types. They are:
- Intrapersonal: The skills that fall into this category are: decision-making, creativity, analysis and control over stress.
- Organisational: The individual who fall in this category should have risk management tactics self organisation and environmental orientation.
- Interpersonal: The individual should posses inter skills which they exhibit. They are: teamwork, customer service and have good negotiating skills.
- Management: This category requires planning, leadership and control over the team members.
All the Employees falls into one the above category. "The Career-Space Consortium and the US Department of Labour" provided a set of job roles that cover the software Industry. The figure 2 and figure 3 shows the set of the roles that have the different capabilities. The figure 3 shows the matching for software role.
A software release is considered as a process a handling the software product to the client. Planning is a release is important in project success as a time is allocated by which the product need to be handed. The technical, resource, time and budget constraints are provided to release the project by time. "The lack of good release plan results in unsatisfied customers, waste of time and budget and loss in business value [Penny 02].
The features are assigned for release depending upon the priority and its importance for the final product. The problems that affect the release plans are: Providing insufficient data, change in the requirements as the work progresses and many others.
DIFFICULTIES WITH RELEASE PLANNING
Release planning is the most critical part of the software development stage. The plans for the release of the software include all the stages. The design stage, Implementation stage and the testing stage should be performed before the release. The Release of the Software involves many crucial issues between the stages. There may be change in the plans, Budget constraints, cost reduction and the change in the requirements and objectives. All these actions extend the release date of the software.
The Release Plan need to be updated regularly with the change in any of the above Issues involved.
Release planning is a complex situation which is supposed to meet the competing objectives and different constraints. Most of the features that make the situation complex are dependent on each other. For example, with the increase of the resources the cost of the product is increased with decrease in time constraint."The Unique goal is to create a good release plan so that the customer satisfaction must be maximised. The stakeholder involvement should be increased.
Features are not well specified: The project description and its requirements should be specified in a standard format that the developers can understand. Incomplete set of features distracts the system design and time complexity matters when it comes to re-model the system. All the features and requirements must be well understood and specified in a standard format to make its maximum usage.
Stakeholder involvement: The stakeholder in the work place involves the manager, team leaders, developers and the users. Any one short in the list leads to insufficient data in the project plan. The complexity of the problem increases as the work progresses. Stakeholders should be sure to have a plan that works efficiently. Involvement of all the stakeholders yields a good project plan and that in turn results in better software update and release plan.
Change of features with change in requirements: The change in features makes the project complex. The change in the features results in change in the requirements and the time and cost associated with it too increases. With the change in features and requirements the complexity of the project and its dynamic nature poses many other challenges.
So, it should be made sure that the features are well set before the planning stage.
Size and Complexity: The Manager should choose a plan which is easy to implement and is of low complex. As some of the projects have numerous features to be done the complexity increases. All the problems need to be involved and the plan selected should face all the problems and clear them so as to release the project by the release date.
Availability of data: Information is important portion in the project success. Different information is collected from different sources. The information for designing, implementation and testing are conducted by different users and different information is required. For good release planning the required information should be shared effectively.
Constraints: The project manager should consider all the constraints to as allocate the features. There are resource and budget constraints that need to be considered the most. Allocating the constraints accordingly reduces the time and budget risks.
Tool support: For software release, now-a-days a few general purpose tools are used for the project management. There are short of tools that completely rely on the purpose of release planning.[G ruhe Et al 2004].
Studies on Specific Issues:
By observing the above problems, we understand that making Release plan is not easy. It is difficult because of its size, complexity and its inherent behaviour. The problems shown above cannot be cleared in one execution because the problem is faced in each stage of the software lifecycle. So the researcher named Dr Gunther Ruhe designed an architecture through which the size and the problem complexity are decreased gradually clearing a path to project release.
The EVOLVE method is designed in a way that the problems are tackled in a set of iterations as a evolutionary procedure which acts as mediator between the human intelligence and the software tools that handle the data.
At the design of the structure, we understand that three stages are involved. The performance of the EVOLVE* is described by the spiral wave.
The Iteration field assigns the features and makes sure that the process runs without any interruption. The computer Intelligence is the support tools which are used to design and implement the project. The human resource with combined effort of the other two fields assigns the features and makes sure the project is done by the release date.
- The modelling phase defines the variables and gives the tool support to achieve a solution. The modelling phase also deals with the stakeholder evaluation of the features.
- In the Exploration phase of the design the optimization techniques to search the solution space are generated. A set of solutions are evaluated and one is chosen from the set.
- In the Consolidation stage, the human resource or the human intelligence explores for the solution alternatives for the problem. The resource understands the problem and can make the necessary modifications in the design of the system. By doing the complexity of the problem decreases for the next iteration.
"Release Planner is a web-based tool suite" provides the tool support in the modelling phase. The tool provides support to minimize the budget and tool risks. The Iterative development process makes use of the release planner tools to have a support for the priority criteria and for software development through the Iterations. The tool has the integrating approach between the Human and the computer Intelligence to address the problems.
The Tool provided the following features:
It has the design of accepting inputs from the users and maintains an interaction with the stakeholders. This facility is results in customer satisfaction. The tools can be used for different OS in different platforms. Generates alternative solutions which the Human uses to solve the problem. It posses the computational strength which is capable of solving big problems in no time.[G ruhe 2004].
Problem solving is important in aspect of the professional exercise [bereiter and scardamalia, 1993].Problem is solved using the problem based approach in organizations. They are categorised into four types of approaches:
- Case study
- Problem based
- Action learning.
These approaches are used on complex problems to solve.
In the case study scenario, the basic information is to be known. The concepts that need to be applied are determined. Then the possible solution for the problem is selected and evaluated. It is followed by the Implementation to solve the problem completely.
The goal-based approach is simple. The situation causing the problem is identified. Information is gathered about the problem and a solution is applied to solve it.
The problem based approach takes a bit time. The problem is found and framed to analyse its causes and possible solutions are analysed. Identify hidden facts and issues of the problem. A research is made and the results obtained are applied to the problem.
The Action learning is an easy method. The problem is framed and a set of alternative solutions are explored. Select a solution and implement on the problem. The solutions need to be monitored and evaluated. If the same problem arises, the other solutions are used. [Darlene F. Russ-Eft 2002].
Technologies for Implementation:
The .NET framework is such a flexible component that it can be referred as platform for development and the Environment for execution. With the increase of the technological applications for implementing applications in the existing world, the execution environment helped a lot for the developer and starters. The .NET framework is CLR (common language runtime) just as the JVM (java virtual machine) for java. In addition it posses base libraries and frameworks for programming tasks. In developers point of view the .NET is framed as development platform that provides security, flexibility and managing tools that are made used to create robust and reliable software. It is also defined as "Multi-language development platform" because of its working with other languages.
The .net framework is mostly used by the developers. New software can be developed with the managed code and the reuse of the framework. The framework provides the basic and inherent needs of the programmer. The c# language uses the class libraries to run as it doesn't have its own.
The asp.net is the application that handles request for the services and responds to them dynamically. It is an element of the .NET framework.Asp.net deals with configuration and .aspx extension files and gives dynamic responses. The asp.net provides with client server debugging and validating the data forms. The event handling is one specific feature of the ASP.NET compared with the other classical languages such as ASP and server side languages. For Example, a page having multiple buttons, a check needs to be done only for one particular button. This situation is easily handled by the ASP.NET by simple event handling. But the other languages need to do a conditional check. Many Events are checked when a dynamic ASP.net page is opened and modified. [Kevin Marshall, 2004].
Visual studio .NET:The visual studio deliver the environment and the necessary tools to create a high level service or applications that can be made use of. The developers and the programmers make use of this tool to develop applications. "DREAM an open source tool" is made use for the simulating, optimizing and verifying the embedded systems. The visual studio 6 compiler was made use to compile and report [Gabor Madl, Nikil Dutt].
Analysis, Design and Implementation
The requirements are the software technologies and hardware requirements to setup the system to develop a project. The requirements list is finalized by analysing the basic needs and the client's needs to satisfy the budget constraint. As the set of software are available online we have no issue on Budget.
The hardware and software requirements that need to be installed on the system before use are:
- Pentium 4 processor and above
- Minimum of 1GB RAM
- Minimum of 6 GB Hard Disk
- WINDOWS OS Family
- Visual Studio .Net 2008
- Visual studio .NET framework
- SQL Server Express 2008
- C#.NET as coding language
- Visual Paradigm 7.2 Community Edition
The Feasibility study mainly focus on the study of problem, technical requirements and the analyzing the solutions. Depending on the initial research conducted, feasibility study should be done to verify the design and Implementation can be done with requirements. It is kind of test on the project proposal regarding its ability and to satisfy the users.
The steps involved to study the feasibility analysis are:
- Study the problem and research on it.
- Develop a proposed system.
- Define the requirements and characteristics of the proposed system.
- Estimate the performance of the system.
- Select and make a procedure for the design and Implementation of the proposed system.
The elements that are involved in the Feasibility Analysis are:
This thesis is a student project and does not have any sponsorship. The system that was designed to be developed needs the Microsoft Software Technologies. The software technologies are required are available online for free of cost. No need of concern for the Expenses. No cost investment for the installation and maintenance of the software products.
This element checks the technical resources proposed for the system. The system after the development will be technically feasible. The .NET framework component handles the implementation of the system. The system should be designed in a way that minimal changes can be done without change in the large set of features and requirements.[ Teppo Kevinto 2001].
This thesis deals between the Administrator and the end user. They both access through the Web browser as a medium. The staffs focus on the development and make a manual on the usage of the system for the end user. The End user must be satisfied with the work accomplished. The manual should be made to make it easier for the client to run the system.
The proposed system relies on the methods that establish connection between the database, employees and the users. The design of the database is independent on creating the tables and giving the forms. Most of the time is spent on designing, Implementing and testing the system. The Gantt chart is used to represent the work schedule.
The project is made following the procedure of the Waterfall methodology. The steps involved in the procedure are:
- Initially, feasible study has been done on the problem and the research background.
- After the study, the next phase is to explore the requirements to design and implement the system. The hardware and software requirements are discussed and arranged. The Microsoft technologies are used as software for the Implementation.
- After the analysis stage, the design of the system and its function with other modules are drawn. The Visual paradigm software served this purpose. The UML diagrams were chosen to design and view the system overview.
- With the completion of the design stage, the implementation part comes. The software technologies are used to code the design into practical view. The coding of the modules is done using C# language. All the codes are run on Visual studio to check for the design and overview. The SQL server is used to create the entries which enter the required information into the fields.
- Testing is done after the Implementation stage. Many companies focus on the testing phase as it yields any errors that are made in the implementation stage. The Unit and Integration check is performed to verify that are modules are running smoothly.
- If any errors are encountered in the testing phase, it is sent for modification. Then the software is maintained and delivered to the client by the release date.
The project is designed on how the clients interact with an organisation to get his software developed. The posting of the requirements, forwarding them to the employees and the Interaction between them is shown in this project. The allocation of the developer and the section of the team leader are shown practically.
The project has three different users. They are:
The project aims at providing a medium through which the users post the requirements to an organization for developing software. A set of requirements can be posted by him. The requirements are then sent to the team leaders by the Administrator. The requirements are analysed and the team leader who satisfies them and free from work replies with a technical Estimation. After a set of Steps the team leader assigns the requirements to a developer who has the capability of developing. In addition, a release date is specified for the software release date.
Administrator: The Administrator is the soul of the Manager. He accepts the software request. He can monitor the previous work and can add new Employees. He has the feature of accepting the user requests to develop an application.
This Module has sub-modules:
New Employee Registration: The function is to add new employee in the organization. It accepts the Employee roles and accepts the user ID and the password. The details of his information are stored in the database. The database is connected through the connection string Class.
New Projects: It contains the new proposals from the client. The requirements from the client are posted and can be viewed by the Administrator only. All the Modules have a user ID and a password.
Price Fixing: This field is used to make a price for the project to be done. The price details are sent to the user for acceptance.
Employee Information: This field of the Admin has a list all employee and their skills. This can be used to check the list to appoint the team leader for the approved project.
Logout: Signing off from the Administrator Session.
Users: The users are the people or organisation who wants their software to be developed. The user posts the requirements of his work to the Admin. The interaction is continued till the completion of the project. A single user can post more than one software requirements.
This module has three functions:
Post requirements: This field has entries where the requirements for the task to be done are stated. These are sent to Admin and in turn they are sent to the team leaders.
View requirements: In the progress, the user has the opportunity to change the requirements. But it might lead to some basic problem as the time and cost are wasted.
Project Estimation: The field is to only view the project estimation from the Admin and can do only the one task: Accept the Estimation or reject. If the estimation is accepted, a developer is assigned to the task to develop the user requirement application.
The Employee is a part of the organisation. The employee may be a Team leader, developer or a tester. This module is designed to accept the requirements and post the technical estimation. The technical estimation can only be posted by a team leader. The developer and tester will have the similar roles like viewing the approved projects.
New project: This section holds the list of all the new projects posed from all users. The team leaders will have the opportunity to view them and if they satisfy their capabilities they make estimation and send them to the Admin.
Timesheet: The Developer will have this function. The work updates can be posted by this function.
System Architecture and Design:
The system Architecture is defined as a graphical or pictorial representation of the structure of the system. The behaviour is also specified. The system described in an architectural form reveals the structural properties of the system. The linking with the other components are included and cited. The system components are defined and the flow from the initial stage to the final stages is depicted. The overall system design and its functions with the other components are specified. The designs are drawn to view the lifecycle of the components and its mappings with the other components. The represented system shows the mapping of software to hardware and from the software to database components. To select a design for the systems many different alternatives have been chosen. As per the importance of handling the work and to show its initial maintenance, the design has been chosen.
The arrangement of the physical elements should provide a design solution which should satisfy all the requirements and the functions. The designed Architecture must be in a top-level format, satisfying all the requirements throughout the design.UML is general model for designing the software models. The UML is used to create, modify and specify the requirements of the system. The Visual Paradigm software is used for drawing the design for a structure.
Data Flow Diagrams
The dataflow diagrams design the structural flow of the system. Many users have been using it for years. The usage of the mathematical theory is only used in the big projects for DFD. De-Macro introduced the DFD procedure to describe a functional behaviour of a system. The best DFD is produced by a Interactive procedure which shows all the functions. As the DFD is shown as network flow the tree representation cannot be used to represent the data flow for the systems.
In DFD, the data from the input flows to the sink having an internal structure or process. The output received from one design is reformulated as input for the other design. The flow of data between the functions has no time-limit as with that of the flowchart.
Use case Diagram:
The use case belongs to the behavioural diagram a part of the UML. The main use of the design is show a design on relationship between the actors and the features in the design. The diagram shows the functions of the users with the modules. The Admin, Employee and the users have the access for the following modules.
The above diagram shows that, for example the Admin, the Employee and the user will have the access to view the new projects. The Admin only has the authority to accept or reject the registration of the new employees.
The sequence diagram is a kind of behavioural diagram which interacts with the other users to shows its function. The Sequence diagram is also referred as the Interactive diagram based on its function properties. This diagram shows users with a life-time running and interacting with other user's n the form of sending and receiving messages. This diagram is of simple logic and cannot be used for complex and large projects.
The following sequence diagram shows the functions of the whole system briefly. The individual components are discussed in the next stage.
A collaboration diagram is described by showing the modelling objects of the system with its association or relation with the other Objects. This is similar to that of the sequence design. The objects that are interacting with the other is represented in rectangle field have a name specification fields. A link is drawn to show the connection between the two objects. An ordering sequence is maintained to show its functioning with the messages.
The database is designed in a view to meet the requirements and not to produce any errors at run time.SELECT TOP 1000 [username],[password]
The above is to show the fuction of the Admin login.In the similar way, the requirements,Employee info and the other functions have the dtabse and is updated regularly.
The system Implementation is done after the system design is completed. Implementation is the main phase of the Software Development Life Cycle (SDLC). The Implementation is practical view of the design phase. This is the most critical phase to build a successful system for the client, so as to work effectively. The Unit testing can be performed simultaneously with the Implementation stage where each individual component can be tested.
The SQL server Express is used as Back-end and C#.net for coding. Developing this system took a bit long time as basic needs are to be set. This product developed will have a user-friendly environment, which will have a menu-based and graphical interface for the users.
The basic needs for interaction were noticed and developed.
- Sending and receiving messages.
- Posting and viewing requirements
- Login and logout
- New Registrations
- New projects
- Approved projects
After the files are coded, the system is executed and sent for the testing phase. The unit and Integration testing will be performed and generation of any errors will bring back the code to the Implementation stage for re-modelling.
The Implimentation of the System is started with the Installation of the Visual studio 2008 sp1.The version id downloaded from the Microsoft website for fre of cost.The IIS manager is Enabled prior to the Installation.
With the Installation the SQL server is installed as the minimum requirement for the Express version is to have a Visual studio sp1.After the installation of the SQL server the process of Implementation begins.
The server is assigned with the System configuration and the connection strings are done in the web.config.Ado.net script is used to for database interaction.
The coding for a particular page is written and sent to the C# compiler where the file is converted to Intermediate language Compiler. The JIT (Just-in-time) compiler converts the intermediate language to the native code which is the Machine code that runs on the system.
The software testing is to be done to confirm a successful execution of the components. This stage in SDLC is performed to find out any fault or weakness in the final product. This stage runs with the inputs received from the Implementation or Development stage. The inputs include: Work product (Software), Implementation map and updated test plan. The test is performed on every component of the system to ensure that the client's requirements are met and are fulfilled.
Many test types are in action to find the faults. Each test has a requirement from the product to fulfil. These are like addressing each and every component in the final product. After the testing phase, the integrated software, its working map and the Updated project schedule are submitted as inputs to the next stage of the Lifecycle.
The software testing is done to identify the errors at the early stage where by it prevents problems in the early stage saving lot of time and effort. Many organizations pit a lot of effort on the testing, as it is the last and crucial stage to find any errors before releasing the software to the client.
TYPES OF TESTS
Unit testing is performed on each and individual component of the product. The testing is performed on the links created and the internal logic associated. The Administrator, Employee features are checked. The Login Authentication is checked to verify if it's working properly or not. Unit testing is performed to get valid outputs. An error messages like Error 500 occurs when logic is missing or an Error 404 which tells that the page is missing.
All the branches are validated that any they gave the desired output results. After the completion of the individual testing, the system is performed to testing in integrated fashion. The Components are validated separately in a periodic fashion. The results from the unit testing ensured that the defined inputs gave expected results.
Integrated system aims at checking the product as a set of individual components. After the completion of Unit testing, the Integration testing is performed to check for the results. The Integration system exposed a few problems despite of successful Unit testing. The flaws were seen in the Employee module where the home page of an Employee returns to the Home page of the system. This problem needs to be verified to make the product to release to the client.
Functional Testing is performed in order to meet the technical requirements, business requirements and system documentation. The test is done to clarify how effectively the requirements were utilized.
The Software technologies installed on the system were running successfully and the software system was designed by making the usage of the technologies.
The system testing is aimed at testing the System as one module. It is to make sure that the integrated system meets the client requirements. System testing is performed as retrieved the Predictable results. The system check is done on integration points and process links.
There are some minor tasks that are not completed and show error. The concept of the system on providing the Relationship and the connections are shown correctly.
Unit testing is performed at the time of coding. They are not two distinctive processes. After the coding, check was performed on its working. It can be viewed as the one single process.
Test strategy and approach:
Unit test is performed on all the menus and link-driven modules.
First the requirement list is checked. Use-case based are tested later.
- Visual studio: The functioning and features are well set for the implementation and execution of the system.
- SQL Server Express: The Updated version SQL Server serves best for the database storage and achieved the desired result.
- Each individual page is pushed to check its presence.
- Each page should give result or show some function.
- New Project
- Approved projects
- New User Registration.
- Forgot password
- Post and View requirements
- Employee Information.
The results retrieved have a valid output and the test is passed onto the next level.
The Unit test is done to achieve the following Objectives:
Field values must function correctly.
A page must be activated when its corresponding link is pressed.
Time delay should not be too long for receiving Inbox messages.
The values entered should be sure to be accurate.
Duplicate entries must be restricted.
The navigation page should be correct without much delay.
Integration testing for software is a collection of two or more software components on the same platform to get the desired result.
In this product, the Administrator sends the Requirements of the new project to all the team leaders working in the company. The integration test assured that all the team leaders received the message from the Administrator. The Aim of the Integration test is to make sure that all the components collectively work together without any errors.
The test errors mainly occur when the command pass through the interfaces. Integration testing is more important for large projects. This testing can be performed in top-down, Critical first and Bottom-up approaches. For testing some applications, it would be impractical to test as they may have errors completely. A top to bottom method can be used. The Testing from the high-level code to the low level can be made. The vice versa method can also be applied as like the bottom to top method.
Most of the Integration testing can be performed by the "Black-book" techniques [HETZEL].
This section provides the total thesis shortly to review the feedback personally. The Methodology, Hardware, Software technologies and the design and Implementation process are discussed.
The SDLC method used is waterfall model. The stages have been studied individually and explored how its working system runs for the real time situations. The methodology was made use to the maximum level to reach the final goal with some defects.
The System hardware provided the full support for the installation and smooth running of the software. No issues were raised and it was suitable for software development.
The Software was available online reducing the risk of cost Increment.
- SQL server express served as a database engine with management of the data using the tools. It included GUI for database management. It served a lot of time and effort. It was installed with the installation of Visual studio 2008 service pack 1. The Express pack cannot be installed for the visual studio 2008. The Tables were designed in a way to store all the fields normally the employee and the users possess.
- Visual studio .NET 08: The usage of the .NET framework and Visual studio improved the skills and practiced during the development stage and run time. The visual studio 08 has been installed on the system and provided many new features from the old version. The versions are available for students for free of cost through the Microsoft website.
- C# Language: This language was developed by the Microsoft with the .NET framework. The source code developed through this language is portable to use. It is event driven and easy to use.
- Visual Paradigm: This is a community edition used for designing the UML diagrams which are represented for the system design. The diagrams drawn were used to implement the system in the .NET framework.
Design of the system:
The design of the system was done easily. This thesis have studied and enquired about the working scenario in organizations. The procedure was so simple to design. But the implementation was a long time process. Initial Development was easy, but as the picture progressed it became difficult. Some of the functions were not actually done exactly as thought at the time of design. The last picture of the development was satisfactory as the desired and required functions were done correctly.
This thesis explains the Importance of resource allocation and release planning in the software development cycle. The release planning is well executed by satisfying the resource and budget constraints. Assigning the resources accordingly was important in planning and incrementing the software development. A service through which a user interacts with a company to make his work to be done is developed. This thesis also attracts the problems of software release and the methods practised by researchers are discussed.
The human resource is of vital importance in work progress. Better business values are achieved by better allocation of resources. The contribution is to make the concept in practical view to see its behaviour and function. The importance of the technologies has been understood and can make more effective usage in future.
The release planning is not a simple task. Every time a new problem arises. This project can be viewed as beginning. Many enhancements can be made with this thesis.
- The projects can be varied with the objectives and can be allocated through priority.
- Shuffling the resources according to the work can be done.
- Many real-time problems need to be tackled in software release.
Though the project features were designed and implemented to some extent, some improvements must be done to enhance the system in various fields.
Some of the design issues need to be improved. The Monitor design is to be re-modelled to ensure its safe working. There are some defects which need to be improved. With this experience, an important point that was noticed is to check all the design patterns to reach the project goal and all the aspects must be thoroughly checked.
In the development phase of the project, initially the creating the pages was well. But with the depth of the subject some errors have occurred initially with database and Event handling. More work should be made to ensure that this situation does not repeat.
Journals and Books Online:
- Amandeep, G. Ruhe, and M. Stanford, "Intelligent Support for Software Release Planning," 2004.
- [Bereiter and scardamalia, 1993].
- Darlene F. Russ-Eft, "Human Resource Development Quarterly" Editor VOL 13 Fall 2002.
- PF Boxall J Purcell "Strategy and Human Resource Management", 2003].
- S. Acun a, N. Juristo Et al 2006 "Emphasizing Human Capabilities in Software Development,"
- Teppo Kevinto "Technical Feasibility" 2001.
- G. Ruhe 2004 "Software Release Planning".
- Kevin Marshall, 2004 "ASP.NET Events".
- Rittel & Webber 84 "Wicked Problems".
- Clarke, M. Shepperd Et al, Reformulating Software Engineering as a Search Problem, 2003.
- Federico Vazquez 1994 "Identification of Complete Data flow diagrams"