Sunday, December 14, 2014

Literature Review - Evaluation of the SPI approaches and activities to propose an effective Software Process Improvement (SPI) methodology for Small and Medium (SME) software development organizations to optimize their productivity.


Software Process is considered to be a set of methods, practices, and tools for producing software products based on certain plans (Paula et al. 2010). Provision of organizational stability alongside effective control is the major goals of software process.
Apart from the fact that a number of software process definitions exist, the aim of each and every one of them is assisting the software engineers in developing software that is of advanced quality. Pressman (2005) believes it to be a framework of numerous tasks for building high quality software. On the other hand, it was stated by Somerville (2001) that it is rather an activity structure for developing software systems and the major activities are Software Specification, Software Design and Implementation, Software Validation, and lastly, Software Evolution.

2.1 Software process in-the-small


In spite of the great amount of diversity that exists in the various maturity levels of the software processes that have been implemented by organizations as well as various VSEs, a number of characteristics are shared by them all/. All these features were presented as hypotheses when the work initially began, after being confirmed through the observations that were made while the experience was going on. Many other studies also corroborated the same experiences in relation to SMEs.
The life cycle of the software is very simplified, and most of its phases like maintenance, implementation and analysis are rather un-formal. The most important phases are testing and development. Even though testing is considered incredibly important, it often has to be cut off as a result of lack of funds, resources, or time.  
Variations in maturity levels of the processes in a single organization can also greatly vary, with high quality processes combined with lower quality ones. There are also many practices that have to be artificially imposed, for instance the supplier relationship practices that are considered as liabilities of the company rather than strategic assets. There is no formalization of the quality control procedures. Moreover, the incentive of adhering to regulated procedures is also discarded in such environments. 
Not many common elements were witnessed in most VSEs relating to project management as well as planning practices. While some were doing incredibly well, some simply weren’t. However, depending on the project manager, client, project, or the development team, practices within the organization itself can greatly differ. Moreover, funds for HR development and training also tend to be rather limited, and it only utilized in the face of immediate technical problems.
These are considered as emergency exists where self-training of teams is not possible.
Moreover, such small scale operations are also project driven, rarely possessing a longer term strategy. Moreover, knowledge management practices are also not carried out. Many larger structures have indicated these deficiencies as well but mostly it is apparent is VSEs. A methodological approach has to be imposed by VSEs as a result of their size.
Moreover, risk management is also not carried out, as the view is rather short term. The level of risks being entertained by the company could be incredibly high and still uncalculated. This is therefore how leveraged small structures might end up generating huge returns.
Management is not really involved with quality issues. It was also discovered that the ISO standards barely seemed applicable in the context of VSEs. A working group WG24 was established by ISO/IEC JTC1 SC7 for addressing some of these issues and providing vital guidance of how compliance can be attained with ISO software engineering standards by VSEs at substantially lower maturity levels (Laporte et al. 2006).

2.2 Software Process Improvement Models for SMEs


Software process improvement programs required qualified statements regarding the status of the software development in organizations as well as the respective strengths as well as the weaknesses that can be worked upon. The 6 methodologies presented below were deduced as a result of the literature search that is currently employed by various SMEs.
Because there are not enough assists available, and considering the level of the companies, a substantial, a proper evaluation was done on the programming techniques after outlining extensive techniques such as the ISO/IEC 90003. (2004), the TickIT scheme (1992), Kuvaja et al. (1994) and Kautz et al (2000) framework was not looked upon as a requirement, or even perhaps acceptable under these circumstances. In addition, it has also been backed up by Kautz (1998). MESOPYME’s other targets run parallel with the targets of the IDEAL model (McFeeley, 1996) of the Software Engineering Institute (SEI). Within this segment, the most prominent attributes of the application enhancement strategies have been pointed out. 

2.2.1 OWPL: A Gradual Approach for Software Process Improvement in SMEs


Application enhancement strategies, structured on three steps, have been used (Alexandre et al, 2006).
Stage 1: Micro-assessment. Here, in order to gather data regarding the ongoing observance of applications in minor organizations, and to raise awareness on how significant the standard of applications is, a fairly refined questionnaire is used, which is named as micro-evaluation (Alexandre et al, 2006). It covers namely 6 fields (supervising the standards, monitoring consumers, administering the subcontractor, controlling the growth and expansion of the scheme, supervising units, guidance and HR operations), and is accustomed by the judge who uses it to analyze the spokesperson of the company (Habra et al, 2008). It is important for the judge to have an insight on application standard maintenance and application development, and for the spokesperson to have enough information regarding the IT operations of their firms (Habra et al, 2008).  The outcomes of the micro-evaluations are failed, and displayed in a document prepared by the judge. Keeping in mind the company and its targets, the report offers suggestions, and certain steps to augment the activities of the firm (Habra et al, 2008).
Stage 2: OWPL evaluation. Making use of the micro-evaluation, a comprehensive review is obtained. With the OWPL evaluation, up to 10 practice segments can be taken care of, however, it calls for multiple people to be questioned for each practice (Habra et al, 2008). Together with the explanation, and a catalog of methods that makeup the procedure, each practice is shown next to its targets (Renault et al. 2006). This step-by-step outline of each methodology presents a target, the efforts and the results, and the material required (Renault et al. 2006). OWPL was crafted in a way that it would immediately point out the methods required for the enhancement of the applications, and not just that, another aspect was that it would assist in sketching a basic, yet effective master-plan that would strengthen the methodologies and keep a note on the developments (Renault et al. 2006). Generally, an OWPL evaluation aims only on certain methods that are picked out depending on previous evaluations, like the micro-evaluation, or questioning the applicant before carrying out the OWPL evaluation (Renault et al. 2006). The very direct requirements of companies to evaluate, or the outcomes of the value-chain evaluation of a company can have direct influence on how much emphasis is paid on certain procedures (Renault et al. 2006).

Stage 3: SPICE assessment. If suitable, larger firms with moderate or excellent standards are ultimately asked to carry out an ISO/IEC15504 or a CMMI assessment (Alexandre et al. 2006). 

2.2.2 Software Process Matrix (SPM) Model


Making use of this system, firms can understand the significance of application methods. Operations that are of higher priority, Software Process Matrix (SPM) determines the operations that ought to be done. Quality Function Deployment (QFD) lays the foundations for SPM. QFD takes into account the reviews of the consumers, the extent to which these reviews are significant are calculated. In the standard maintenance department, these reviews are then utilized to determine the factors that influence the needs of the consumers in the best possible manner. Even though there are several departments in QFD, more emphasis is laid on this department, largely because it could go on and have a considerable big influence on the assembling methods (Fortuna, 1988). With the QFD, the application assembling system is addressed as a consumer, whereby the needs of the consumers are the application systems. The literary work relating the application systems helped in the revealing of these operations. Another one of the operations that were revealed as a result of the literary application system work were the styling properties that were a must-follow for the system to be productive.
Figuring out the associations among the procedures and the operation was a significant element in the enhancement of the application programming department. The ones that had been clearly stated in the literary work were found effortlessly. However, the remaining associations between the two were recognized by making use of the viewpoints of the professionals, as well as several records. It helped in enhancing and authentication of the application systems in the market, which were later certified.
Any company based on a small scale which plans on using an application system to be more efficient, it is vital that only marginal energy be spent. And with SPM, they are offered simplified divisions that had been concluded, and could be utilized for their firms. In order to gain information of the present operation of the company, its scheduled long-term operation, and the significance each practice hold, the company is presented a questionnaire. From where the firms are, they only have to present details regarding the analytics for working out the general significance of the application systems, keeping in mind these points (Richardson, 2002):
·         Existing potential according to the their own evaluations
·         Potential for the coming years as an effort from the administration
·         Significance of the applications systems to the company
·         Economic evaluations
·         Influence in terms of firm’s absolute needs. e.g. ISO-certification
The stiffness of the system depends on whether the administration has been allowed to incorporate stats for a better economic position, and influencing the industry.
Basing the practices of the organization is the most crucial aspect, and thus, it is recommended that this factor should be focused and worked upon within the organization primarily. This shall be of help to the organization in designing the strategy of improvement by deciding upon the main concerns to incorporate in any of the process of improving the software. Through a complete SPM, the organization is provided with a group of options of actions, that are rated, to be used as inputs in their approach towards software process enhancement. The list can be used to determine the plan of action of the organization by combining the list with the cost and time saving calculations.

2.2.3 MESOPYME


MESOPYME has been explained, by taking into account a generic SPI model explained by the ISPI in four stages whose aims are identical to those of the IDEAL model from the SEI (Calvo-Manzano et al. 2002). The main characteristics of MESOPYME are as follows:
Stage 1: Commitment to improvement
Its aim is to gather the support of the senior management to start the necessary improvement project.
Stage 2: Software process evaluation
Its main aim is to get gold of the strengths and weaknesses of the methods assessed with regards to a software process model known as the CMM (Capability Maturity Model). From this evaluation, processes (usually 1 to 3) to be improved are chosen.
Stage 3: Improvement Solution
It aim is to give the necessary infrastructure to bring about the improvements (in selected processes), and to create the plan to follow in order to describe and apply improvements in the necessary processes. The improvement solution phase is taken through the application of a generic series of components which we have called an Action package. An action Package is a general answer to the necessary software process are which should be customized for a business, taking into consideration its business goals and assessment results. An action package is carried out in the selected plot projects.
Stage 4: Institutionalize
Lastly, the improvement should be institutionalized.

2.3 An Approach for Software Process Establishment in Micro and Small Companies (ASPE-MSC)


The Approach for Software Process Establishment in Micro and Small Companies (ASPE-MSC) is explained with the inclusion and adaptation of the present methods (Ahonen et al. 2002, Becker-Kornstaedt, 2001, Madhavji et al. 1994, Scott, 2000) for the small sized companies of software in their characteristics. The main stages of method are:
Planning.
The establishing of the procedure is planned, in the start, at a high stage. The plan is then reviewed, finished and applied, further on during the analysis, with respect to what was decided upon.
Phase 1, This stage is aimed towards obtaining a snapshot, which is a high level one, of the process currently in place, by placing the organization in context. The basis for calculating and comparing can be confirmed upon by the help of the assessment of the software taking into use e.g. MARES (Gresse von Wangenheim, 2006) and ISO/IEC 15504; a process of assessment made for companies smaller in size.
Phase 2, Strategic analysis.
This stage is aimed at specifying the capacity along with putting up the processes of the candidate to be stated on the basis of what the diagnosis depicted along with the goals regarding improvisation and goals regarding business of the organization. The SWOT analysis method (Strengths/Weaknesses/Opportunities/Threats) can be brought into use regarding the significance of the procedures and their calculated potential.
Phase 3, Definition.
This stage aims to explain the process(s) of the software that have been chosen, forming a manual to help the performers of the procedure. Usually to express the process that has been selected modeling of the actual process in done descriptively. The action includes a procedure of the phase of familiarizing and then comes the stage of eliciting it in detail. In the stage of familiarizing, an outline of the process of the software and the major structure of it, how it interacts and the sequence followed is taken and acknowledged, the flow diagram of a process may be a good example. Next, identification is done of the roles of each activity along with the competencies and the responsibilities (Becker-Kornstaedt, 2001).
Phase 4, Implementation.
The process(s) defined is evaluated with respect to their application, first. The reviewing of how the methods are defined to observe and evaluate the how effective and appropriate the process(s) have been and if the anticipated returns have been achieved.
Monitoring & Control.
Monitoring is done of the process(s) getting completed and set, along with controlling. Thus, collection and analysis of the data is done by the engineer of the process along with the assistant. If seeming necessary, and update of the strategy is done after doing remedial actions.
Post-mortem.
After the completion of a proper process cycle, the approach of establishing the process in reviewed with respect to constant betterment. By collecting the feedback of the performers of the process and evaluating it, the evaluation is done, along with the feedbacks of sponsors, the engineer and the assistant. The feedback is collected through questionnaires or meetings.

2.4 PRISMS: An Approach to Software Process Improvement for Small to Medium Enterprises


PRISMS is a three year study based with three participant researchers belonging to the Leeds Metropolitan University, who work along with the managers of the participating companies and their developers, who assist them and advise with regards to the preparation and application of the programs of  improvement of the process of software. This research is based on researching upon action.
The main aspects of the process are given below:
The available informal process is investigated and on the availability of resources, a clear moeld is formulated.
The business objectives are chalked out in advance by the administration in a PRISMS program. The activity following this action is carried out by these goals, particularly the choice and ordering of main process fields for betterment and the choice of dimensions.
A discussion activity comprising of every member of development group is conducted. Either such a discussion conference or a survey based on questionnaire assist the team of the developers to own the SPI programmer and to contribute in it right from the beginning.
The research team member conduct a custom made copy of CMM evaluation principally to assist in locating the key process areas (KPAs) for the betterment.
The KPAs are located and ranked by employing these inputs. The key standard should be the degree to which it is possible for the KPAs to add to the set business objectives. Martin (2002) describes a measured choice technique which a company found to be useful. For this purpose, Richardson’s (2001) practice/process techniques can also be employed.  Measurements are also regarded as an essential share of the process of SPI planning. Generally managers look for more exact methods of locating main resources and standard pointers. Designated attributes depending on the business objectives can be formulated for SPI program with the help of Goal Question Metric paradigm.
The plan of SPI is occasionally studied. This plan facilitates in gathering stakeholder’s feedback. An extremely significant feature of calibration for SPI programs in small scale companies is that they must be simple enough to collect and understand and help in the process of decision making and planning. Mere automation can assist in cutting down the overhead cost related to the collection and data and processing.

2.5 Improvement Framework Utilizing Light Weight Assessment and Improvement Planning (iFLAP)


iFlap may either be employed to assess one process field or be calibrated in order to assess a single or all the process fields (Pettersson et al, 2008).  iFlap comprises of three essential phases:
Step 1: Selection.
It is essential that right persons are chosen from the company as members of the research in order to evaluate and make the stages as being representative of all the staff members (Pettersson et al, 2008). Evaluators must have a fundamental comprehension of the company before this phase starts (Pettersson et al, 2008). Workshops are organized by the persons from the organizations so that evaluators can be assisted in understanding the company (Pettersson et al, 2008). These choice phases are carried out in three main phases: firstly projects are selected for the research, then roles (in line organizations and project) are selected. Lastly, people are appointed to represent those roles (Pettersson et al, 2008).
Step 2: Assessment.
In this phase, betterment problems are collected from the company by means of interviews from the specialists. The betterment problems collected are matched against process and project documentation for authorization. An evaluation comprises of two essential components: a project research, inspecting projects along with a line research which inspects the pertinent areas of the company which are not associated with a project (Pettersson et al, 2008).
Step 3: Improvement Planning.

First of all, representatives who will participate in this phase are chosen from the company. Specialists who participated in evaluation phase can be employed for this phase; however, those roles which are not linked with system development can be eliminated (Pettersson et al, 2008). The risks and costs attached to the incorporate all the improvements at one go will be too high and it is necessary that the focus of the effort should be focused on a few issues at a single time, in order to take evolutionary steps. Thus, the improvement issues will be prioritized according to the factors such as the cost of implementation, practical restrictions and business goals. Finally, the packaging improvement issues will be done in order to guide planning the implementation and planning of the changes in the whole process.

Friday, December 12, 2014

The advent of Long Scrolling pages

Over the past there has been a visible change in trend in website design towards long scrolling pages. These pages often have a great visual design that engages visitors and leads to better conversion rates.
The way long scrolling pages work is that they tell narrative about a company or a product using techniques that are visually stimulating. And now they have become even more successful in engaging visitors with richer graphics, neat design, anchored navigation, moving widgets and parallax effects. This has enabled marketers to narrative stories in a whole new way and persuades visitors to scroll further.
This trend of long scrolling pages was not always considered good, in the early 2000s most websites were focusing on making pages that did not require visitors to scroll. They focused on finding where the “fold” is in a webpage so that they can stuff all the data in a way that did not require scrolling, and all the content that did not fit above the fold had to be put on a different page. At that time marketers focused on getting visitors to click on links on a website and go deeper.
But why did this trend change? In the last two years Web analytics has produced numerous reports emphasizing on the engagement level of visitors, the findings were that in every case higher visitor engagement level led to higher conversion rates. And the measure of engagement is that the website entices the visitor to scroll down a page a read the story.
To check how successful a long scrolling page is website owners track mouse movement and scrolling, this gives them an idea about the level of user engagement on individual pages. They implement mouse/activity tracking and scroll tracking on long scrolling pages to check whether visitors are scrolling down the page or not.

For more interesting topics, please visit www.dsource.co/blog/

Sunday, December 7, 2014

Evaluation of the SPI approaches and activities to propose an effective Software Process Improvement (SPI) methodology for Small and Medium (SME) software development organizations to optimize their productivity.

1.     Introduction


It’s largely recognized that the process used for the creation of the software is a major influential factor of its quality. Many companies have started to realize software process improvement (SPI) is a useful tool in enhancing software quality as well as the company’s overall productivity (Scott et al, 2001). Software processes can be defined as many interconnected resources managing an entire sequence of activities through utilizing relevant practices and methods for developing software that are in accordance with the requirements of the customer. The result is cost-effective software. As it is understood that the process largely influences the quality of the software, therefore any software enhancement would have to begin from there. Such processes are incredibly useful as they enable the coordination of large teams within organizations so that they are always interconnected. Ideally, such software should be a combination of creativity and flexibility, but in reality this is rather hard (Glass, 1995).Much evidence has indicated that a large number of small software companies have not been adopting the standards as they consider them to be rather made for larger organizations. Studies have also indicated that the reasons for their negative perceptions in this regard are as a result of the different levels of bureaucracy, documentation, and costs involved. A number of software organizations have yet failed in adopting methodologies for improving their software, which results in them bearing greater costs and therefore un-competitiveness in the global market where organizations are increasingly adopting such methods (Herrera, 2003).Many models have been identified for increasing the quality of software, for instance the ISO 9000 norms provided by the ISO, the Software Process Improvement and Capability Determination (SPICE), and the Capability Maturity Model Integration (CMMI). Quality patterns are provided by such models that need to be implemented by organizations for improving their software development processes. However, it has often been experienced that such models fail to apply to SMEs as their size is rather small and they are therefore unable to afford such costly investments. Moreover, as a result of limited resources and time limits, they are unable to properly implement software engineering techniques (Wangenheim, 2006). External assistance is usually required by small organization is conceiving and implementing such projects to keep up-to-date with technological advancements and practices. A number of SMEs have identified such requirements of enhancing software quality, but it is well understood that the quality cannot be enhanced without working on the process carried out in achieving that outcome. Thus, process and product evaluation is being inferred by such firms. Moreover, it has also justified the researches of many scholars that such organizations are rather limited in their usage of HR, deficiency of supporting and lacking environments, budget shortages an dependency on larger companies, and therefore this is a huge challenge for them. Process culture is also not present in such organizations as well as process management principles and process-oriented thinking as they are the major influencers of employees’ behaviors and customs (Valtanen, 2008). It was indicated by Dyba (2003) that SPI can be utilized as a competitive advancement strategy for all organizations alike.
It has been established that the process capability of various small and medium-sized software developing companies has enhanced using the help of process improvement program (Cater-Steel, 2004). Among all other industries, software sector is one of the leading industries in terms of expansion and growth. A continual increase in the number of small companies, out of which many have an eye for software process improvement (Calvo-Manzano, 2002), helps in improving the economy (Wangenheim, 2006). Small and Medium-sized Enterprises comprising of 1-50 employees produce a large number of software all around the world (Gresse, 2003). The market for such SMEs in Germany was 77% and in Brazil was 69% during the year of 2001. The small sized software firms in Ireland require an improvement in their software process (Richardson, 2002). Around 73 % of software firms in Northern Ireland would like to benefit from process improvement program of software using Capability Maturity Model Integration (Mcfall, 2003). A project with less than 20 members and a company with less than 100 employees are named as a small setting. Majority of the total budget of such companies would be utilized to provide for the process improvement program as outlined on the website of Software Engineering Institute. Additionally, a company with less than 50 software developers is known as Small Organization and a project with less than 20 developers is termed as Small Project (Johnson and Brodman, 1998).

1.1 Related Works and Rationale of SPI in SMEs


The aim behind the evaluation and enhancement of a process is to gather data about the required changes and to find out the ways in which those enhancements so that product quality is maximized and development cost is minimized (Pettersson et al, 2008).
In order to assess the capacity of a process, process evaluation is used (Makinen et al, 2008). As per available organization development literature and software engineering, there are basic operational discrepancies between large and small companies (Dyba, 2003). Large organizations prefer formal process whereas small organizations prefer practice (Dyba, 2003). It was noted by Russ and McGregor (2000) the process of software development can be crucial to the success of a small project as it can be crucial for a large one because of the amount of dependencies for every team member. It was further argued by them that its aim is to generate timely and greater quality outcomes for the today’s market without putting a great overhead cost on a small scale project. It was identified by Paquin (1998) that project focus, evaluations, desired functions, documentation and maturity attributes pose as problems for small scale organizations. Six ways of software process enhancement are identified by Abbott (1997) which is applicable is small organizations:
ΓΌ  Support by senior management
ΓΌ  Appropriate staffing
ΓΌ  Linking process improvement with project management philosophies
ΓΌ  ISO 9001 certification
ΓΌ  Support provided by process development consultants
ΓΌ  Emphasis on the provision of value to the business and the project
Seven challenges which can be faced by small organizations are identified by Johnson and Brodman (1998):
ΓΌ  Handling needs
ΓΌ  Preparing documents
ΓΌ  Handling projects
ΓΌ  Assigning resources
ΓΌ  Determining the progress of the project
ΓΌ  Carrying out reviews
ΓΌ  Carrying out training sessions
When these organizations plan to incorporate process improvement programs they are hesitant because of the huge amount of expenses they expect due to the costs of process assessment, tools and trainings and investment of time and personal resources. Without the assistance of external consultants, it proves to be very challenging for the SMEs to choose and implement improvement programs in their organizations. Ample investment and time of their software managers are imperative too. Also, the developers are faced with antagonism from their employees who resist changing and the management side which labels the efforts required of them for better quality as an extra load (Kuvaja et al., 1999). The culture of the country also puts some effects on the methods of process improvement (Biro et al., 2002). The leading problem faced by SMEs is that they ought to purchase the necessary expertise needed for software process improvement from the extrinsic sources since they cannot sustain on their own. Additionally, these SMEs are challenged as to how to determine the way to initiate the process of improvement and whom to use as an expert (Kuvaja et al., 1999).
The managers have realized the importance for achieving international quality standards to ensure a fine quality program and thus, are trying hard to get there, expecting to gain benefits from it in the future. However, owing to lack of ample budget, consulting an expert organization is nearly impossible for these SMEs. If the characteristics of these organizations are kept in mind, the software process improvements are very beneficial even for small companies (Kautz, 1999).
Large organizations and small organizations both implement software process improvement to enhance the performance and quality of their organization (Dyba, 2003). As outlined by his study, the small software organizations ought to invest on their strengths by opening new arenas of information and by active participation of its employees. There are multiple ways, languages and instruments to achieve process definition. However, these are infrequently implemented in routine and particularly by small sized companies.
Moreover, an insufficient number of studies are conducted with reference to small software organizations (Kurniawati, et al, 2004, Scott et al, 2001, and Scott et al, 2002). It is very important for the small sized companies to repeatedly enhance and improve their software process on the basis of feedback gained from the multiple stakeholders, to overcome the pressure of the competitive environment of software development worldwide. For the betterment of the organization, it is imperative for the small sized firms to maintain equilibrium between the work done under direct supervisions and mutual adjustment of the parties with the predefined documented procedures (Mintzberg, 1993). Although, In US majority of the software producing companies are small and require improvements they however, have little knowledge about SIP.Small sized companies, even with 2 or more than 2 software developers can gain benefit from working upon an outlined methodology (Kautz, 1999).  Determined by his research results, if procedures are outlined with succinct detailing and testing, the results from these procedures can determine and be worked upon to enhance procedures and routines.
Kuvaja et al (1999) states that it is commonly believed among SMEs that large scale evaluation techniques are fruitful only in large companies and cannot cater to the needs of SMEs properly. However, small teams of software development can make the processes of software better and so can the large ones (Damele, 1995). To conclude we can say that majority of the formerly mentioned research is aimed at SPI models, case studies and evaluation techniques which can be executed in SMEs. As opposed to this, this research paper adopts a comparative view point, and deliberates and relates software process enhancement techniques for SMEs. According to our knowledge, Mishra and Mishra (2008) provide the best work in this regard. They studied and linked numerous SPI techniques on various important features possessed by different researches. This paper considerably covers the former work Mishra and Mishra (2008). The main parts which make this study more interested includes:
1) latest SPI models of OQPL and iFLAP;
2) reviewed and detailed deliberations;
3) Added points of comparison;
4) Difficult and latest literature review comprising of recent referenced linked with SPIs being used in SMEs .

1.2 Need and History of Reserach

Watts Humphrey and his co workers began developing the SPI in the 1980’s, and these early thought were the base for the CMM. At that time only a single major line of software engineering study focused on software infrastructures and factories. Process modeling came to assist the making of third generation CASE tools which would allow tailor made software methods to be explained in formal models. The focus on formal model goes back to a highly recognized 1987 research paper by Leon Ossterweil which was published when he Watts Humphrey developed the initial CMM version. The earliest movement to develop process programming came when Leon Osterweils met with Watts Humphrey and his colleagues at IBM in the early 1980. Osterwiel recommended that we should explain software processes by programming them as much as we program computer applications. The activity where software process descriptions are expressed with the help of programming techniques is referred to as process programming and it also suggests that such activities need to be the focal point of software engineering.
A similar view was adopted by Peter Feiler and Watts Humphrey when they argued that software processes tend to have a number of artifacts in common and similar methods disciplines are also required. Therefore, they suggested that SPI in software should be considered from a developmental perspective. Still, such approaches distinguish software process designs from usage in space and time, much similar to the traditional linear sequential waterfall paradigm. Even though they suggested that prototyping or evolutionary approaches be utilized, in the end the process use is disconnected from the process design. The IDEAL process improvement model for instance presents the various steps for software process design, analysis, diagnosis, and assessment alongside the process rollout for the process users. This model is very similar to the waterfall approach and is one of the most well knowing user guides for enhancing processes. Such programming approaches also externalize process knowledge through the representation and formalization of the users’ heads. Various CMM concepts indicate how CMM is pervaded by formalization. For instance, capability maturity model describes the various stages software companies have to pass when defining, implementing, measuring, controlling, and eventually improving their software processes. Software process maturity indicates how clearly processes are controlled, measured, managed, defined, and most importantly, effective. In a similar manner, software process description operationally indicates process components that have been identified in the defined process of the project or the company’s standard process. It accurately verifies the documents, its requirements, behavior, and various other characteristics including its design. This can be referred to as structuration—which is defining the process parts for forming coherent systems.
Even though explicit models of the software processes or the process parts are required for supporting the developers with tools and methods, such methods are not recommended for achieving the SPI goals. Structuration, separation, and externalization can be considered important for mapping the present behavior of people, but not as much for changing them.
Yingxu Wang and Graham King (2002) states that concepts and methodologies of software process improvement (SPI) have been largely inspired by the work in management science, particularly in quality system principles and enterprise reengineering research. Shewhart developed a concept of plan-do-check-act iteration based process improvement which was later extremely used in Japanese manufacturing industry known as KAIZEN method and that was later extended and interpreted by Deming known as Deming Cycle. The "Plan-Do-Check-Act" cycle described by Deming (Deming, 1992) might be a candidate for a generic model because the CMM as well as the ISO 9000 quality standards are based on this cycle. However, the issues of changing software processes seem to be underrepresented in this cycle: Only the "Do" element deals with changing the process. In last two decades, a number of SPI methodologies were developed, they are either model based or benchmark based. The model-based SPI has been developed by Humphrey, Paulk et al. where the benchmark based SPI was developed by IBM. Software process improvement is a very complicated, systematic task, requires theories, models and highly skilled technical and managerial professionals and contribution and commitment of top management. In model based methodologies, SEI CMM, ISO 9000 norms can be adapted for SPI. CMM uses maturity model to measure software capability and improvement where ISO uses quality standard for SPI. Research has found that it is easy to adapt these models for larger software organizations where because of cost, resources it is difficult for SMEs to go for model based SPI. There is evidence that the majority of small software organizations are not adopting existing standards as they perceive them as being orientated towards large organizations and studies have shown that small firms’ negative perceptions of process model standards are primarily driven by negative views of cost, documentation and bureaucracy (Laporte, Alexandre et al, 2008). It is further supported by many researchers that small software organizations are characterized by their insufficient human resources, lack of development and supporting environment, lack of budget and dependency on the large organizations and find software process improvement a major challenge. Several authors (Curtis 1997; Mattingly, Abreo 1997) suggest that the problems software companies encounter while implementing process improvement initiatives might result from insufficient organizational change management. Therefore, various authors have stressed the importance of organizational change in software process improvement programs (Bottcher 1997; Curtis 1997; Humphrey 1989). Some authors (Coffman, Thompson 1997; Goldenson, Herbsleb 1995; Stelzer et al. 1997) indicate that software organizations usually underestimate the efforts needed to accomplish the change process. Here the concern is cultural mind set of the top management to the bottom level employees. Resources and knowledge can be limited but 2-4 person release is not a very hard task even after meeting the project deadline. Implementing software engineering technique may be difficult task but we will produce a methodology and framework and approach where the positive mind set can easily implement SPI in SMEs. Even some of the important process establishment of CMM is not also very costly. It is even better to work for employees as a role based workers where now they are working wherever they can contribute which also creates complexity (Individual skill based). Since it is found that CMM and ISO 9000 based SPI is difficult in SMEs, there are some SPI methodologies like OWPL, ASPE-MSC, iFLAP, PRISMS, SPM, MESOPYME for SMEs which were significantly applied on SMEs. Most of them requires external consultant to conduct SPI. Our proposed SPI will follow Deming cycle along with PSP, assessment and continuous improvement. Our SPI will show the step by step guidelines from start to several cycle of process improvement serve as a built in consultant for SPI for the SMEs.

1.3 Dissertation Aims and Objectives

The overall aim of the dissertation is to gain an in depth knowledge of the SPI approaches both in goal oriented, model based methodology for SPI and benchmarked based approaches. In the research, we will aim to find out the advantages of SPI for big companies as well as small/medium size enterprises. We will focus why the SPI approaches are not suitable for small/mid size companies and we will propose a SPI methodology for the SMEs which will be suitable for increasing their productivity. We will test our methodology by more than 20 software development organization’s key players.
We will achieve the aim by the following objectives:
1.      To research the software process improvement frameworks, approaches and methodologies by using online journals, case studies, eBooks and Google search engine to understand their weakness and strength.
2.      To find out what is the current state of software engineering and management practice in the SMEs.
3.      To find out the weaknesses of SPI in SMEs and also the key process areas which can be applied to the SMEs while SPI.
4.      Based on the SPI research and knowledge, find out the strengths of different software development approaches and methodologies.
5.      By doing quantitative and qualitative survey, find out the processes and principles that can be used to develop a SPI methodology for SMEs.
6.      We will validate that our proposed solution that will give more productivity for SMEs in development projects. 

1.4 Flow of Dissertation


Chapter 1: Introduction
The introduction is given in this chapter, along with the reasons behind carrying out this research. A short summary is given of brand equity, identity and personality with regards to smartphones. The chapter also shows who will benefit and who should show interest in this research.
Chapter 2: Literature Review
The ideas which were put in use for this research are shown in this section next to the relations in the conceptual models. A software process improvement was defined and along with the models that are mostly used. As SPI was the keyword we have defined it first, as it should help in bringing about an ease and utility to carry out the research which made the research much simpler and comprehensible.
Chapter 3: Methodology
The techniques which were used to collect and evaluate the findings are shown in this chapter, by using interviews.  The techniques which were adopted were reliable and legitimate for data collection and analysis.
Chapter 4: Findings and Analysis
The score of preferences shown by the students regarding the two brands, apple and Samsung, were gathered with the help of interviews.  The experimented information gathered was a detailed analysis of the concepts and theories in the research to reach a definite conclusion.
Chapter 5: Conclusion
The main aim of the chapter is to present the final results of the study which was carried out by analysing the data gathered from different sources. Furthermore, this chapter will conclude the overall findings of the study and will reveal the key points which were known through this research. Also, the aims and the purpose of the study will be verified in this section, so that the reliability of the study can be established in a proper manner.
Chapter 6: Recommendations

The aim of this section is to give the recommendations on the basis of the data gathered and is mainly dependent upon what is revealed by the overall material gathered by the researcher. The suggestion put forward on the basis of the research is that if Software Process Improvement is a massive process and by proper planning and management it can give long lasting progress and prosperity to the SMEs.

Transition from BYOD (Bring Your Own Device) to BYOS (Bring Your Own Software)

After BYOD or “bring your own device” – the concept that people bring their own devices like laptops, IPad and smartphones to work, IT experts have now thought up of a new phrase “bring your own software” or BYOS.
In the last few years employers have accepted the idea to let employees use their own devices at work, to give them the freedom to choose their favorite devices. Although at first employers were concerned about security risks but BYOD let to increased employee satisfaction. After BYOD employers are now considering if they should let their employees use the same software they use at their homes.
“Bring your own software” is quickly gaining support from employers and it has already started in workplaces. Many office employees have started forgoing MS Word and are switching to Google Docs. And instead of using FTP company servers they are using Dropbox.
A few years back employees used to ask the IT department of the company whenever they wanted a software. But this trend has changed now as people can get so many applications online for free, so instead of going to the IT department employees just download what they like. Furthermore, developers are constantly releasing communication and productivity tools that are helpful to people in both their professional as well as personal lives and this trend will give a boost to the BYOS culture.

Like “Bring your own device”, “Bring your own software” can save employers a lot of time and money. Previously employers had to spend huge amounts of money to buy software programs and then more money to train employees to use the software. But with the BYOS employers don’t have to spend money to buy software programs as employees bring their own software and they have been using them in their personal lives so don’t require any training.

For more interesting topics, please visit www.dsource.co/blog/

Thursday, December 4, 2014

How Marketing and Sales Can Work Together to Close More Leads in an online world?

When it comes to marketing management and generating sales from different platforms than one can easily say that they dynamics of an online world are different as compared to real world scenarios. In an online world, people of related departments can coordinate on real time basis to attain viable results in both the short and the long run. In an online environment where business sells through different online platforms like websites, email marketing, applications, and social media pages etc., such an environment would endorse the collaboration of two departments. Marketing and sales possess the credibility to coordinate with each other and ultimately to end up giving more sales to the organization.
The marketing department would attract and influence the customer by several scenarios like promotional material, attractive content, etc. Similarly, the sales individuals can follow the same leads and coordinate with them through platforms like live chat support and real time visitor management software. This would benefit both the departments and close more leads in an online world. However, individuals should make sure that people should coordinate with each to generate best possible results.

Customers prefer this model of operations too because they believe that things get synchronized in a proactive way and they would attain the ultimate benefit through this scenario. However, marketing and sales department should also realize the fact that they are closing the leads in a proactive way and they should focus on after sales support too so that customers remain motivated for a long-term period. Customers would return in such scenarios if they face motivational trends from the organization they are dealing with. However, it solely depends on the fact that how well things are implemented and what impact would it made on the organization.

Uzair Hamid has been working as a Sales & Marketing Data Analyst for 2 years now. He is open for discussion on the topics related to Lead Funnel Management, Attribution Analysis, Progression of leads, Reverse Engineering, Lead Scoring and Lead Journey Path.

For more interesting topics, please visit www.dsource.co/blog/