Sunteți pe pagina 1din 26

Module Code : CT046-3-2 SDM – SYSTEM DEVELOPMENT METHODS

Intake Code : UC2F1704


Lecturer Name : Zailan Arabee bin Abdul Salam
Hand in Date : 8th May 2017
Group No. : 12

Student ID Student Name


TP032057 Joshua Jebaraj Joseph
TP041920 Nasser Muhammad
TP034284 Thachyane Thamilmani
TP038138 Rajveer Singh

Table of Contents
1.0 Introduction...............................................................................................................................3
1.0 Scope...............................................................................................................................................5
1.1 Justification..................................................................................................................................5
1.2 Project Scope...............................................................................................................................5
2.0 Agile Principles and IS Methodologies......................................................................................6
2.1 Agile Principles.............................................................................................................................6
2.1.1 Brief History of agile Principles.............................................................................................6
2.1.2 Agile Principles for Developing this system...........................................................................7
2.2 IS Methodologies.......................................................................................................................10
2.2.1 Comparing of methodologies.............................................................................................10
3.0 System Analysis........................................................................................................................11
3.1 Methods in obtaining feedback from users...............................................................................11
3.1.1 Advantages of using Analysis methods...............................................................................12
3.2 Methods in obtaining Output of this Analysis............................................................................12
3.3 Compiling the acquired data................................................................................................13
3.4 Data Analysis........................................................................................................................14
3.4.1 Chosen Analysis..................................................................................................................15
4.0 System Design.........................................................................................................................16
4.1 System Architecture...................................................................................................................16
4.2 Conceptual design.....................................................................................................................17
4.2.1 Use Case diagram................................................................................................................17
4.3 Logical design.............................................................................................................................18
4.3.1 Data Flow Diagram..............................................................................................................18
4.4 Physical design...........................................................................................................................18
4.4.1 Prototype............................................................................................................................18
5.0 Implementation and Deployment....................................................................................19
5.1 Construction........................................................................................................................19
5.2 Testing........................................................................................................................................19
5.3 System Deployment...................................................................................................................22

1.0 Introduction

ProTect is a new software-house which is planning to develop software for corporate


clients. The company has three core departments handling Mobile Applications, Games and
Web Application projects respectively. Each department employ developers with specific
skills and all three are governed by a central management team. On any given day, each
department could handle several projects from various clients. In some cases, a client may
need a system consisting several applications (such as both web and mobile) which would
require the departments to collaborate their projects. MyCloths has engaged ProTect to
produce a web based system with database to improve their business efficiency

MyCloths is a leading Malaysia local retail and distributor for all kinds of Malaysian
traditional cloths. They currently serve walk-in customers in their shop located at KLCC. The
company has wide varieties of clothing’s that they receive from suppliers all over Malaysia.
Their line of clothing’s include traditional and modern line clothing. To increase customer
satisfaction , they offer delivery services which helps the customer purchase their products
and deliver them to their doorstep via phone calls or emails. At the moment , business is
expanding for this company , therefore the number of customer visit is increasing rapidly.
Therefore the company is in need for a system that can accommodate the request of the
customers.

The current system that is being used to monitor the company’s growth is assumed to be
out of date. They have been using this system since the early birth of the company. Therefore
to accommodate the customers then , it was sufficient enough. Besides that , tracking of
supplies , delivery schedule , payment details ,etc was easily monitored in the old system. As
the years passed by , the company expanded and the amount of suppliers increased as well as
the number of customers. Therefore the current system has become too slow and very hard to
monitor. Therefore they have requested ProTect to develop a new working software for the
company.

Based on the requirements that will be stated in this document , the correct methodology
will be used to obtain and deliver the best working software for MyCloths.
1.0 Scope

1.1 Justification

MyCloths is a leading Malaysia local retail and distributor for all kinds of Malaysian
traditional cloths. They currently serve walk-in customers in their shop located at KLCC.
They also receive call and email orders from customers and deliver the cloths to their door
step. As their business grows, MyCloths would like to have a better management of their
orders, inventory and relationship with the customers. The vision of MyCloths is to be a
market leader in the use of technology to provide the best possible customer service with the
broadest range of Malaysian traditional cloths. In view of the growing number of customers,
MyCloths is planning to establish an online store by September 2017. MyCloths has engaged
ProTect to produce a web based system with database to improve their business efficiency.

1.2 Project Scope

The system is to be developed due to the business growth and the system is going to
help MyCloth update their system as their current system is very limited. The limitation of
the system is that it can’t handle too many members as their log in the
system server can only accommodate a certain number of request. This
makes their system support limited members access which reduced the
uptime of their system. Besides that , this system that is being developed
is to overcome ordering problems as only people from Malaysia can log in
the system and place their orders. The IP addresses from overseas does
not accommodate in the system which makes international ordering a
hassle and brings loss to the company. The system would not accept any
fake member ID as the current system allows multiple accounts with the
same email to receive the sign in discount.
2.0 Agile Principles and IS Methodologies.

2.1 Agile Principles

2.1.1 Brief History of agile Principles

The Agile Manifesto and the Twelve Principles of Agile Software were the
consequences of industry frustration in the 1990s. Before the “Agile Manifesto” existed ,
software development wasn’t a particularly fast process. This situation often led to many
projects in the pipeline being cancelled due to changing business needs. As a result, the
software development industry was prime for disruption. The Agile Manifesto and the Twelve
Principles of Agile Software sought to change things, speed up development time, and a
produce a quality. The Twelve Principles are the guiding principles for the methodologies
that are included under the title “The Agile Movement.” They describe a culture in which
change is welcome, and the customer is the focus of the work. The twelve principles of agile
development include:

1. Customer satisfaction through early and continuous software delivery –


Customers are happier when they receive working software at regular
intervals, rather than waiting extended periods of time between releases.
2. Accommodate changing requirements throughout the development process –
The ability to avoid delays when a requirement or feature request changes.
3. Frequent delivery of working software – Scrum accommodates this principle
since the team operates in software sprints or iterations that ensure regular
delivery of working software.
4. Collaboration between the business stakeholders and developers throughout
the project – Better decisions are made when the business and technical team
are aligned.
5. Support, trust, and motivate the people involved – Motivated teams are more
likely to deliver their best work than unhappy teams.
6. Enable face-to-face interactions – Communication is more successful when
development teams are co-located.
7. Working software is the primary measure of progress – Delivering functional
software to the customer is the ultimate factor that measures progress.
8. Agile processes to support a consistent development pace – Teams establish a
repeatable and maintainable speed at which they can deliver working software,
and they repeat it with each release.
9. Attention to technical detail and design enhances agility – The right skills and
good design ensures the team can maintain the pace, constantly improve the
product, and sustain change.
10. Simplicity – Develop just enough to get the job done for right now.
11. Self-organizing teams encourage great architectures, requirements, and
designs – Skilled and motivated team members who have decision-making
power, take ownership, communicate regularly with other team members, and
share ideas that deliver quality products.
12. Regular reflections on how to become more effective – Self-improvement,
process improvement, advancing skills, and techniques help team members
work more efficiently.

The intention of Agile is to align development with business needs, and the success of
Agile is apparent. Agile projects are customer focused and encourage customer guidance and
participation. As a result, Agile has grown to be an overarching view of software
development throughout the software industry and an industry all by itself.

2.1.2 Agile Principles for Developing this system

Holding up meetings

The initial step to being more Agile is by holding up meetings. In some cases, stand up
meetings are referred to as "scrums". The scrum meeting, aka the daily stand-up, is the 15
minute meeting that makes product development teams more productive and efficient. 4A
stand-up ought to occur each day and ought to dependably cover these three things, and just
these things :

 What did you accomplish since the last meeting?


 What are you working on until the next meeting?
 What is getting in your way or keeping you from doing your job?

You'll need this meeting to be at similar time each day, regardless the possibilities that
somebody will be late or miss the meeting. The meeting should be under 13 minutes, as
indicated by Goh-Livorness. Likewise, have a talking token, implying that the individual
holding the token (it can be anything - like a toy or wand) can talk and nobody can interfere
with them and all the consideration is on the speaker. Likewise, the speaker ought to actually
stand up, since they'll unwittingly keep their part short since when individuals are standing
then tend not to need to talk to such an extent.

Reviews

A review is another sort of meeting utilized as a part of the agile procedure. "Reviews are an
extraordinary approach to keep vision on your entire venture," Goh-Livorness said. These
gatherings ought to happen generally at regular intervals toward the finish of the Sprint. A
Sprint is one to four weeks of your advancement cycle and will be comprised of work things
or elements that you're moving in the direction of in your tasks. A greater form of this is a
Post-Mortem, which could happen following a couple of months, at a turning point, or the
finish of a venture. Keep in mind to keep, stop and begin. The greater forms, similar to Post-
Mortems are chances to welcome partners and talk about greater issues like spending plans.
A Retrospective will have three particular arguments for every individual, based around these
inquiries:

 What things would it be advisable for me to continue doing?


 What things would it be advisable for me to quit doing?
 What things would it be advisable for me to begin doing?

You can discuss anything that is either specialized or prepare related. The meeting ought to be
around an hour long.

Quality and prioritizing

You ought to see yourself as a guardian of value on the grounds that our name is distributed
on the credits and you ought to be glad for your work, Goh-Livorness said. Utilize the M. S.
C. W. (Moscow) strategy to sort errands into basins and keep quality and organizing at the
front line. Must - Requirements that must be incorporated to be viewed as a win

 Should - Requirements that ought to be incorporated


 Could - Requirements could be incorporated if time and assets are accessible
 Won't - Requirements that won't be incorporated by partners

Making containers like these to organize will help you set objectives without getting
excessively into subtle elements.

Keep roles in the loop

Utilizing R. A. C. I. graphs can help you ensure that you're keeping everybody that should be
included tuned in of your advancement.

 Capable - The individual who's really in charge of doing the assignment in your
improvement cycle.
 Responsible - The individual who has extreme possession and settling on an
official conclusion or an assignment.
 Counsel - Someone who should be counselled before a choice is made.
 Educated - Someone who should be educated once a choice has been made.

Make an outline for your parts and errands and after that you can allot parts a R, A, C, or I for
each of the undertakings. Occasionally a few parts may get a C and an I. This is because it's
critical to know who oversees what and will help with stand ups and reviews too.

Utilize planning walls

Setting up your work on a board that will demonstrate some advance that you can move
around will help you enhance deceivability and get a brisk look at your advance. Scrum
sheets are an illustration or an arranging divider. You move the post-it’s through the segments
as advance has been made or to demonstrate the status of an assignment

2.2 IS Methodologies

2.2.1 Comparing of methodologies.

These are the chosen methodologies by our team. Based on the case study, we have chosen 4
of the best methodologies and have compared as below :
Facts WISDM XP Scrum Waterfall
Types of Projects Direct Solution Direct Solution Direct Solution Direct solution
Knowledge of Expert needed. Expert needed during Depends on the No experts
developer implementation stage project. needed.

Size of Project Medium Small to Medium Large Very Large


Type of Product Web based and Web based and Web Anything. Anything.
Web Application Application
Budget of project Expensive. Not so expensive. Intermediate. Expensive.
Requirements are fixed Can be changed Can be changed at Fixed. Fixed.
or can be often but needs a longer anytime.
changing. time.

Table 1.0 : Comparison of the chosen IS methodology

The table above shows comparison of 4 methodologies. They have been compared in
terms of type of project, knowledge of developer, size of project, type of product, Budget of
project and whether the requirements can be changed often. The details in the table above
helped us to choose the suitable methodology.

For instance, RAD is more suitable for small type of projects but with
high budget where the project speed is faster and sure the customers
would like to have fast delivery project. On the other hand, spiral and
scrum is more suitable for large types of projects. Scrum uses the sprint
method for iteration whereas spiral uses the iterative and incremental
method for development. Yet both of those methodology is fast but the
cost for spiral is higher compare to scrum. As for the waterfall, it is
suitable for small projects and it is less costly. The user requirement for
scrum is rigid which makes the project to be slow.

3.0 System Analysis.

The objective of this assignment is methods of analysing information to


build an online store for MyCloth. The complete the analysis stage, system
analysis method is used to identify the a frequent users, the resources
they need, the usage of those resources, and how this Web system gives
them output to cater for the users’ objectives.

3.1 Methods in obtaining data from users

1. OBSERVATION

– This method is used to acquire data for the project that will help in
the analysis. It is a type of non-experimental research in which the
researcher observes a need of the potential users of the system

2. INTERVIEW

– This method is used to interview people around the environment


about general population view on how to improve the website, how
they prefer the website to be, what are information they wants in the
website and etc. Here the people come with many ideas which are
productive to build the project.

3. ONLINE SURVEY

- The Online Survey method is meant to reach as far user as possible,


it’s an online form that is being filled by the end users and can help in
getting additional views on how to possibly come with a product that
works perfect and doesn’t have the negativity of others produced
before.
3.1.1 Advantages of using Analysis methods.

 Observation
- Access to people where questionnaire and interviews cannot be
conducted.
- Good for explanation the content of project.

 Interview
- You can ask more detailed question if the need to question is there
- Response is nearly 100% since it’s a face to face activity

 Online Survey
- it is less costly, the only resource needed is an internet access
- It is easy for end user participant to take the survey since most
people in the current generation are internet oriented

3.2 Methods in obtaining Output of this Analysis

1. Every observation analysis done is recorded in the video format.

2. Interviewing is done by our team, which we interviewed one


individual after another and the result of the interview is recorded on
an MP3 because the important thing is their voice during the
interview.

3. Online Survey is kept as Text Format, when the individual fills the
survey form online, he or she returns the filled form back to the team
after it is submitted.
3.3 Compiling the acquired data.

All the raw data that were collected using multiple techniques must be
merged which enables the team to conduct intense analysis and the data
will be divided easily into respective parts and segments. This can be
done in following ways:

1. The actual objectives are divided in smaller sections separately by


analytical techniques.

2. Questions of the questionnaire are arranged carefully where analysis


could be done more effectively.

3. All the audio (interview) which were recorded should be compiled into
file , and a back up copy is created in case they get lost in the process.

4. Two different individual might answer the questionnaire with the same
answers. The same answers are then arranged accordingly by grouping
them up. The results are then calculated by average answers and
compared it to the normal with benchmark statistics. This helps the
organization to determine which division or service need to be
leveraged.
5. Combining up all the responses in numerical format for all the
questions in a shown table. For an example, if the inquiry is ‘How would
you want the services provided by the Website’ and the response is 4
points on the scale then putting it as it is. Normally in big companies,
they have large data to be analysed and the scale substantially goes to
8 or 9 figures. It can be decreased to a scale of 3 to 5 figures to
decrease the hardship and cost in analysis. But perfect on the other
hand will be decreased as the numerical need to be rounded off in case
the scale is decreased.

3.4 Data Analysis

TECHNIQUE TOOL FEATURES ADVANTAGE DISADVANTAGE


BUSINESS SWOT Focusses on the Provides visual over view It does not priorities
INTELLIGENCE Analysis opportunities the solutions
ANALYSIS company has

Decision on what will It includes high level decisions that It is costly


Most Analysis help to attain the shape what is done
objective

DATA MINING Weka Classifying Capable of storing infinite amount Can only handle small
ANALYSIS of data Datasets

Orange Data coloring It has improved pre-processing data Technical deployment well
beyond layman
understandings
STATISTICAL SPSS Use simulated data as It is spreadsheet software which At times pops some errors
ANAYLSIS inputs makes it easy navigation when put data with
numeric

Stata Multi-level mixed It Quickly and easy Navigation Data loss


effect models

Table 2.0 Data analysis table

3.4.1 Chosen Analysis.

WEKA – Weka has tools which are for data pre-processing, classification,
regression, clustering, association rules, and visualisation. It is also known
as a collection of machine
Reading algorithms for data mining analysis. The algorithms are used
directly to a dataset. It is also well-suited for developing new machine
learning schemes.

Justification :

Weka is a method to evaluate a business by quality and may help


website owners to add their income. Weka mining allows companies to
identify their finest selling points and allows them to decide the benefits
from a project. For example, if a pharmacy displays their product of lip
balm on the cashier counter, weka data mining can detect how many
people purchased lip balm through cashier counter. Weka helps to point
the peak point of the sale of a retailer, or if a promotion went smoothly
one month, but did not work well the following month. Companies will
make delivers according to the purchasing behaviour of these clients also.
Weka data mining can truly assist companies to reach their desired
incomes by prioritising to the consumer trends.

4.0 System Design.

System design can be classified into three steps ; architectural design,


logical design, and physical design. The architectural design shows the
structure, behaviour and the views of that system. On the other hand,
logical design of a system is the representation of the data flows, inputs
and outputs of that system. And, the physical design describes about the
actual input and output processes of that system. For our research, we are
going to represent and justify most suitable modelling techniques for web
development and mobile application development.

4.1 System Architecture


Image 1.0 Software Architecture

Helps to manage complexity

Nowadays, systems are seemed to be more complex, this complexity


needs to be managed. Since the architecture focuses mainly on those
elements that are important and significant. Thus, it gives abstraction of
the system and therefore it also helps to manage the complexity.
[ CITATION Pet06 \l 17417 ]

It is reusable

Architecting process supports reusable assets. Reusable assets are very useful
for the organisation because they can reuse it , reduce the cost of a system and
also improve its quality. The creation of architecture supports the identification of
possible reuse opportunities.

Less maintenance cost

This helps to reduce the cost in many ways. This process will assure that
the maintainer of the system is a key stakeholder
4.2 Conceptual design

4.2.1 Use Case diagram

Encourage common agreement about system requirements

Above is an example picture of use case diagram. The reason why I chose
use case diagram because it give important outcomes such as clarity and
commitments. It very common that most of the product owners were not
clear about the system they own actually. With use case diagram it helps
them to understand more on the process. Sometime, the product owners
would not agree about the specs of several core processes it because of
the complex process of the system. Remarkably, use case often helps
them to reach a common agreement on “best practise” processes well. As
a result of this product, the owners would understand the function of the
system which satisfies the developer. It is also an opportunity to declare
which function they need the most or which ones they need first.

Understand business processes

Most of the time software developers were not sure of the customers
need. A system should help business people get work done efficiently,
effectively and inexpensively. To reach this target, the development team
should build something which supports the process. Use case gives this
information very clearly structured language that developers can
understand. Moreover, use case also supports on stakeholder’s goals to
achieve their target using the system. Use case gives and provides
developers a solid foundation in developing cost-effective solution to
business challenges.[ CITATION Joe07 \l 17417 ]

4.3 Logical design

4.3.1 Data Flow Diagram


Overview of A System

Data flow diagram (DFD) normally it represents the flow of data through
and information of a system and aspects for the process. The main use of
this diagram is it is an over view of the system without going detail into it.
Compare to the previous which is use case diagram, DFD is a bit much
more detail about the system. This would the rough imagination of the
system. DFD shows information about the input and output of the system
and how the data will advance about the timing of process or information
an information about whether processes will operate in sequence or in
parallel unlike a flowchart which also shows this information.

4.4 Physical design

4.4.1 Prototype

We have chosen the prototyping method because;

Reduced time and costs:


Using prototyping, quality of the requirement and specification can be
improved which provided to the developers. Because changes cost
exponentially more to implement as they are detected later in
development, the early determination of what the user really wants can
result in faster and less expensive software.

Improved and increased user involvement:


Prototyping acquires the user to involve which allows them to see and
interact with the prototype. This allows them to give a better and more
complete comments and feedbacks and as the user examines the
prototype it also prevents miss understanding and miscommunication
between the developer and the product owner.
5.0 Implementation and Deployment

5.1 Construction

Accelerate the process

This issue is very significant for the customer to make them feel very
comfortable for your service, in the previous the store needs at least 7
working days transferring clothes to the customer, but due to the new
system and after make the Agile principle more development, it will take 5
working days only from store to their customer regardless the customer’s
door step, and furthermore the regardless the quantity of clothes that
customer ordered.

Requirements Accompaniment

Due to the Malaysian holidays, Feasts (hari-raya), banquet and Ceremony,


the people will need different type of traditional clothes and the ordering
will be increased, so MyCloths will be circumspect to provide
requirements and orders for all the customers in every customer, for
example in previous system MyCloths had faced many awkwardness and
that caused embarrassments for the company infant of its customers, but
now this problem has been solved.

5.2 Testing

Testing is considered as one of the most important phase system development. It is conducted
in order to make sure the system that is being developed performs the required functional and
no-functional requirement in a predictable manner. So that, there are many
programming testing sorts and we give you outline of a portion of the
significant ones here:
1. Black box testing

A product testing strategy in which the interior structure/plan/execution


of the thing being tried is not known to the analyser. These tests can be
useful or non-utilitarian, however typically useful. Test outline systems
include: Equivalence apportioning, Boundary Value Analysis, Cause
Effect Graphing.

Figure: Black Box Testing

2. White box testing

A product testing technique in which the interior


structure/plan/execution of the thing being tried is known to the
analyser. Test plan methods include: Control stream testing, Data
stream testing, Branch testing, and Path testing.
Figure: White Box Testing

3. Grey box testing

A product testing strategy which is a mix of Black Box Testing


technique and White Box Testing technique. The benefit of grey-box
testing is that it sustains the boundary between independent
experimenter and developers.

Figure: Grey Box Testing

4. Agile testing

Agile testing is a software testing practice that follows the principles of


agile software development and it is a strategy for programming
testing that takes after the standards of lithe programming
advancement.
Figure: Agile Testing

5.3 System Deployment

The process of changing the old data framework. Framework changeover


is the way toward putting the new data framework on the system online
and resigning the old framework.

Direct Cutover

In basic words direct cutover approach is an immediate approach where


old framework is cut and over compose by new framework. The direct
cutover approach makes the changeover from the old framework the new
framework to happen instantly when the new framework ends up
noticeably operational [3].

Direct cutover includes more dangers of aggregate framework failure and


if there is a framework difficulties in our market then it will be hard to
store data of person who visits the market online and this will bring about
dishonorable stockpiling of information. However, as there is absence of
assets, this approach will be a conceivable alternative on account of its
minimal effort application among every one of the methodologies.
Figure: Direct Cutover Method

Parallel Operation

Parallel word is utilize when two things run instantaneously. The parallel
operation changeover strategy requires that both the old and the new
data frameworks work completely for a predetermined period. Whenever
customers, service, and the software group are fulfilled that the new
framework works effectively, the old framework is end.

Parallel operation is having low measure of hazard as though the new


framework does not work accurately, the organization can utilize the old
framework as a reinforcement. In any case, it is the most exorbitant
changeover technique. Data must be contribution to both frameworks.
Customers must work in both framework and result in expanded workload
and handling delays.

Figure: Parallel Operation Method

Pilot Operation

The pilot operation changeover technique includes executing the total


new framework at a chosen area of the organization. The one which uses
the new framework initially is known as the pilot site. The old framework
keeps on working for the whole association including the pilot site. After
the framework demonstrates fruitful at the pilot site, it is actualized in
whatever remains of the association, ordinarily utilizing direct cutover
technique. Pilot operation is mix of direct cutover and parallel operation
methods.

Pilot site guarantee the working of new framework and diminishes the
danger of framework failure. This is additionally more affordable than the
parallel operation as just at one area both framework works for restricted
period.

This is more affordable and more secure approach as its mix of both direct
cutover and parallel operation. It will spare money of MyCloths Company
and furthermore protect their information with smooth working [4].

Figure: Pilot Operation Method

Phased Operation

Phased operation works in various stages. Usage of new framework in


modules or stages is phased operation. This is likewise a mix of direct
cutover and parallel like pilot operation. In any case, in this approach the
whole framework is given to a few customers rather a piece of framework
to all customers.

In phased operation the danger of mistakes or failures is restricted to the


executed module just and furthermore phased operation is more
affordable than the full parallel operation. In any case, now and again,
phased operation can cost more than a pilot approach where the
framework includes countless stages.

MyCloths includes different phases, for example, registrations, purchases,


payments, and product selections, then some. Due to the association of
such a variety of stages it would be not easy and not cheap to apply

phased operation approach.

Figure: Phased Operation Method

In conclusion, it is certain that direct cutover and parallel operation


approach alone is not appropriate for MyCloths in light of disadvantages
like high hazard or high cost however the mix of both methodologies to be
specific pilot operation and phased operation methodologies is more
productive. Still phased operation is not appropriate approach as we
probably aware there are part of stages include in our data framework and
furthermore absence of reserve is there. So conclusion is pilot operation is
the most suggested approach.

S-ar putea să vă placă și